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