The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
								  Example
						  SMART MESSAGING SERVER

INTRODUCTION

Today I see in every popular (TV) magazine, advertisements for ringing tones 
and logo downloads. You have to call a telephone number (0900-principle) and 
then by acting upon a voice menu you can download a certain ringing tone or 
graphic. Because the GSM::SMS package does not implements a voice box we will 
use an SMS message to 'order' a ringing tone or groupgraphic. 

Anyway, if you are interested in implementing a DTMF phone service, 
you can look at the Modem::VBox module.

Of course, this is just intented as a demo for the GSM::SMS package. As such, 
the implementation can be a bit crude. But it should be functional anyway...

To receive a message, you have to send a SMS message that contains which 
ringing tone or graphic you want to receive. Such command messages consist of 
a 6 number string. The first 2 numbers indicate the type of resource you want 
to receive; 10 for a group graphic 20 for a ringing tone. The next 4 digits 
tell the server which file you actually want to receive. 

The program maps the first 2 numbers to a directory, inside this directory we 
find files with a filename like:

nnnn.rtttl
or
nnnn.gif

Just as you thought, thse 'nnnn' are the 4 last digits in the incoming command 
message.

The program picks up the file and sends it back to the commands message 
originating address.

USAGE

./sms --config=<config file> [--transportconfig=<config file>]

CONFIG FILE FORMAT

The following directives can be used in the config file.

access=^\+32475,^\+32478
	comma seperated access list. The incoming phone number must match
	one of these regular expressions to be allowed access.

rtttldir=./media/rtttl
	directory where to find ringing tones.

rtttlprefix=20
	prefix to use in the 6 digit number to map a command to a ringing tone.

groupgraphicdir=./media/groupgraphics
	directory where to find group graphics

groupgraphicprefix=10
	prefix to use in the 6 digit number to map a command to a group graphic.

log=./log.txt
	log directory to keep various logfiles (debug, output and error)

loglevel=99
	level of log verbosity.