1. OVERVIEW

Libsms is an adaptation library for controlling SMS sending/receiving to
Nokia cellular modems. The library offers a low level
API for controlling the ISA SMS server. In practice, a single running
instance of it is reasonable, "real" clients are supposed to use
the DBus interface.

Csd-sms is a SMS plugin for the Cellular Services Daemon (CSD). The csd-sms
plugin provides a DBus interface for controlling SMS sending and receiving.


2. DOCUMENTATION

Doxygen style documentation is used throughout the code for the API
documentation. The generated documentation is included in the libsms-dev
package. csd-sms-dev provides some headers to a DBus client.

The csd-sms DBus interface is documented in:
csd-sms/sms_interface.xml,
csd-sms/handler_service.xml and
csd-sms/README

3. COMPILING AND INTALLING THE PACKAGES

Execute the following command from the top directory where the sources are
stored:

dpkg-buildpackage -rfakeroot

The debian package can be built for the x86 environment, or the phone target
in the scratchbox environment. The following packages will be created:

libsms0_x.y.z-n_ARCH.deb	Runtime shared library
libsms-dev_x.y.z-n_ARCH.deb	Development library
csd-sms-dev_x.y.z-n_ARCH.deb	Development library for DBus clients
libsms-tests_x.y.z-n_ARCH.deb	Unit tests for the base library
csd-sms-tests_x.y.z-n_ARCH.deb	Unit tests for the DBus client

These can be installed as usual with "dpkg -i <package>".

4. EXAMPLES

Please look at csd-sms/tests/csd-tests.c for examples how to use the SMS library
and the DBus interface, respectively (with dbus-glib bindings).

/tools/smsecho.c demonstrates the handler interface. Once this echo handler is
activated, it sends back the same "user_data" to the originator of the incoming
sms.


5. HACKING

Tracing to syslog is enabled, when module is compiled
to produce debug information (./configure --enable-debug).

csd can then be started in a terminal like: /sbin/start csd -l7 -p sms
