Lars Wirzenius
Open Source WAP and SMS gateway
Kalle Marjola
Andreas Fink
Aarno Syvänen
Bruno Rodrigues
Stipe Tolj
Kannel 1.3.1 User’s Guide Open Source WAP and SMS gateway
Table of Contents
Extended headers Kannel Post XML Post
Fake messages Fakesmsc command line options
Vii
List of Tables
Overview of WAP
Introduction
Overview of WAP Push
Overview of SMS
Requirements
Features
Introduction
This section needs to be written
Page
Finding the documentation
Installing the gateway
Getting the source code
Compiling the gateway
Installing Kannel from RPM packages
Installing the gateway
Using pre-compiled binary packages
Removing Kannel Log in as root Remove the RPM package
Installing the gateway
Installing Kannel from DEB packages
If you don’t want Kannel to run as a daemon, run
Installing the gateway Install or upgrade the DEB package
Remove the package completely
Page
Configuration file syntax
Using the gateway
Configuring the gateway
Inclusion of configuration files
Variable Value Description
Core configuration
Lower network layer. Defaults
With admin-port, this can be
Bool Layer. Defaults to no
IP-listseveral addresses, separated with
filename
VariableValue
IP or ’*’
Numbers, for Smsc routing
String to unify received phone
Handle them properly. This is
Receiving SMS messages from
filename Down violently Enable the use of an Http
Using this variable, no SMS
SMS service requests to
Only, i.e. for the administration
When Kannel message queues
Type Default this is set to ’internal’
Kannel is willing to trust when
Working as a Https client. If
Running Kannel
Command line options
Starting the gateway
After the bearer box, you can start the WAP box
Kannel statuses
Using the gateway Set debug-places for ’debug’ level output
Http administration
Space. Password required
Bring down the gateway, by setting state to
Shutdown a single Smsc link. Password
No other chance to resume normal operation
Wapbox configuration
Setting up a WAP gateway
WAP gateway configuration
Map-url setting. Thus,
Default gives you 10 mappings
Adds a single mapping for
Left side URL to the given
Checking whether the WAP gateway is alive
Running WAP gateway
Required components
Setting up a SMS Gateway
SMS gateway configuration
SMS centers
Specify the used SMS-service
Problems, so avoid it and any
See below for a complete list
An optional name or id for
Through this SMSC. Multiple
Which are accepted to be sent
Entries are separated with
Semicolon ’’. For example
Nokia Cimd 1.37
Value. Set it to 0 to disable this
Setting up a SMS Gateway
Feature
Machine that runs the Smsc
Kannel. If Kannel is asked to
All messages sent from
Send a message, it will remove
This prefix from the sender
Defaults to send. All outgoing
Connecting over a modem to an
Service
Or hostname
Feature. Requires username or
Keepalive command will be
More than this time. Defaults to
If set, only connections from
When this parameter is unset or
Disconnect/reconnect, default
Defaults to the maximum
Error ocur
Smpp
Use value 0 to disable this I/O
Transceiver mode
Password matching
Attempt to use a
Not defined the default device
Default if not set is
That no more than 10 default
Change the interface version
VariableValue
Sema Group SMS2000 OIS 4.0
SM/ASI for CriticalPath InVoke SMS Center
GSM modem
Modem Type Modems
Nokia 6210, 7110, 8210 tested
Default value 0 means to try to
Probably other Nokia phones
Too
To work with this setting are
Using the ’message-storage’
For this many seconds. If
Optional phone number
Optional. Defaults to false
String to use when trying to
Before first command
Command, enable this
Fake Smsc
HTTP-based relay and content gateways
Feature checklist
Using multiple SMS centers
Featurecimd
Sema Ois At2 Http
Can set Validity Can set Deferred Can set PID Can set RPI
Smsc driver internal features
Can send 8 bits Correctly send GSM alphabet
Can send octet data without UDH
Smsbox configuration
Symbol Meaning
Optional smsbox instance
Smsbox Group Variables
An smsbox connected to an
Bearerbox for the purpose
Sendsms-charsstring Global-sender
Non-zero value
Typical ’smsbox’ group could be something like this
Defines for which smsbox
Smsbox routing inside bearerbox
Instance the routing rules do
Apply
SMS-service configurations
Word Message contains If the service has aliases, they
Services are identified by
URL corresponds to one
Word in the SMS message
Use these kind of services is
You use this sms-service type
Checked using white/black-list
Service. b Multiple entries are
Allowed to this service
Service. This may be used to
Allow only inbound SMS to
Certain shortcut numbers to be
Used for url type services,
Content-Type for reply, it is
If client does not set
Normally
See notes of phone number
Black-list service is defined
Format from numhash.h header
file
How sms-service interprets the Http response
SMSPush equivalent Kannel Header
Extended headers
XML Post
Kannel Post
Parameter escape code Kannel Header Equivalent
Hex format
Setting up a SMS Gateway
SendSMS-user configurations
Some sample ’sendsms-user’ groups
Internal DLR storage
External delivery report DLR storage
MySQL DLR storage
LibSDB DLR storage
DLR database field configuration
Sample ’dlr-db’ group
Variable
Table field that is used for the timestamp data
Over-The-Air configurations
MySQL connection configuration
For your WAP services, i.e
Ota-setting. Any string is
Description of the service
Defaults to data
A ’sendsms-user’ to use with it. With concatenation enabled
Setting up more complex services
14. OTA Bookmark Group Variables
Ota-bookmark. Any string is
Redirected replies
Setting up operator specific services
Setting up multi-operator Kannel
Running SMS gateway
Using the Http interface to send SMS messages
’Authorization failed’ reply
Bits or to UCS2. Defaults to
Content can be more than
Returned
Phone number of the sender
Indicator bits in DCS field. If
Default-smscvariable can
Indicator. The accepted values
Indicator, or 5,6,7,8 for
Indicator RPI value. See Etsi
Configuration, or 0X per default
Optional. If given, kannel will
Inform SMS Center that it should
GET method for the OTA Http interface
Using the Http interface to send OTA configuration messages
Bookmark document looks like this
Not given the first ’ota-setting’
Name or ID of the ’ota-setting’
When a XML document is
Configuration, or ’Authorization
Running SMS&WAP gateway
Setting up a SMS&WAP gateway
SMS&WAP gateway configuration
Configuring ppg core group, for push initiator PI interface
Setting up Push Proxy Gateway
PPG core group configuration variables
Mandatory value. Tells that we
Configuring PPG user group variables
Wap-push-user
String Password for this user
String An user
String Username for this user
Finishing ppg configuration
Setting up Push Proxy Gateway
An example using Http Smsc
You can, of course, use more complex command line options
Running a push proxy gateway
Default network and bearer used by push proxy gateway
Using SSL client support
Using SSL for Http
Using SSL for Http
Using SSL server support for the sendsms Http interface
Using SSL server support for PPG Https interface
Delivery Reports
Getting help and reporting bugs
Appendix A. Using the fake WAP sender
Running Kannel with fakesmsc connections
Appendix B. Using the fake SMS center
Setting up fakesmsc
Fake messages
Fakesmsc command line options
Switch Value Description
Send a maximum of max
Creating push content and control document for testing
Starting necessary programs
Use content qualifier string
Table C-1. Testppg’s command line options
Instead of default si service
Default any. Application
101
Using Nokia Toolkit as a part of a developing environment
Testing PAP protocol over Https
Directive Value Description
String User’s password 103
filename Document Mandatory value. PPG service
String User’s username Mandatory value. PPG service
Analog modem
Appendix D. Setting up a dial-up line
Add the following lines to /etc/ppp/options.server
104
This section needs to be written 105
Isdn terminal
Configure your phone this example is for Nokia
Log rotation
Bearerbox Access Log
Appendix E. Log files
107
Appendix E. Log files
Coding
Glossary
MClass
RFC 2616 Hypertext Transfer Protocol -- HTTP/1.1 Society 109
Bibliography