Chapter 5. Setting up a SMS Gateway
This chapter is a more detailed guide on how to set up Kannel as an SMS gateway.
Required components
To set up an SMS gateway, you need, in addition to a machine running Kannel, access to (an operator’s)
SMS center, or possibly to multiple ones. The list of supported SMS centers and their configuration
variables is below.
If you do not have such access, you can still use Kannel as an SMS gateway via
phone-as-SMSC
feature,
by using a GSM phone as a virtual SMS center.
In addition to an SMS center (real or virtual), you need some server to handle any SMS requests
received. This server then has simple or more complex cgi-bins, programs or scripts to serve HTTP
requests generated by Kannel in response to received SMS messages. These services can also initiate
SMS push via Kannel smsbox HTTP sendsms interface.
SMS gateway configuration
To set up a SMS Kannel, you have to edit the ’core’ group in the configuration file, and define an
’smsbox’ group plus one or more ’sms-service’ groups, plus possibly one or more ’sendsms-user’ groups.
For the ’core’ group, you must set the following variable:
smsbox-port
. In addition, you may be
interested to set
unified-prefix
,
white-list
and/or
black-list
variables. See above for details
of these variables.
A sample configuration file
smskannel.conf
is supplied with the standard distribution. You may want
to take a look at that when setting up an SMS Kannel.
SMS centers
To set up the SMS center at Kannel, you have to add a ’smsc’ group into configuration file. This group
must include all the data needed to connect that SMS center. You may also want to define an ID
(identification) name for the SMSC, for logging and routing purposes.
SMSC ID is an abstract name for the connection. It can be anything you like, but you should avoid any
special characters. You do not need to use ID, but rely on SMS center IP address and other information.
However, if you use the ID, you do not need to re-define sms-services nor routing systems if the IP of the
SMS Center is changed, for example.
Common ’smsc’ group variables are defined in the following table. The first two (
group
and
smsc
) are
mandatory, but rest can be used if needed.
Table 5-1. SMSC Group Variables
Variable
Value
Description
28