Hey all,
I'm trying to use Kannel 1.4.1 in old linux-box for sending multipart
messages to several people. Things worked just fine when we tested
sending non-multipart messages (max 160chars), but multipart sending
seems to cause serious problems. I have enabled DLR reports and got some
strange results from there too. Any help would be greatly appreciated!
And sorry about the long post...
Main parts of my configuration:
-----------start kannel.conf------------
group = core
admin-port = 13313
smsbox-port = 13314
store-file = /var/local/services/sms-service-prod/lib/bearerbox.store
dlr-storage = internal
access-log = /var/local/services/sms-service-prod/logs/bearerbox-access.log
log-file = /var/local/services/sms-service-prod/logs/bearerbox-debug.log
log-level = 0
group = smsc
smsc = at
smsc-id = TC35
modemtype = siemens-tc35
device = /dev/ttyUSB2
speed = 19200
alt-dcs = true
port = 13314
keepalive = 5
sim-buffering = true
log-file = /var/local/services/sms-service-prod/logs/tc35-smsc.log
log-level = 0
group = modems
id = siemens-tc35
name = Siemens TC35
detect-string = SIEMENS
detect-string2 = TC35
# 1,2,0,0,1 would mean that DLR reports are disabled
# 1,2,0,2,1 also tried, seems to work better with DLR reports (see below)
init-string = "AT+CNMI=1,2,0,1,1"
need-sleep = 1
group = smsbox
bearerbox-host = our-sms.box.net
sendsms-port = 13315
sendsms-chars = "0123456789 +-"
access-log = /var/local/services/sms-service-prod/logs/smsbox-access.log
log-file = /var/local/services/sms-service-prod/logs/smsbox-debug.log
log-level = 0
group = sendsms-user
concatenation = true
max-messages = 4
username = ****
password = ****
-----------end kannel.conf------------
Description of Kannel usage in our environment: sending multiple
messages is requested from Kannel by creating multiple HTTP-requests to
its sendsms interface. Each request asks kannel to send one multipart
message to one phone and defines a dlr-url with unique sms transaction
id parameter, so that we can track the status of each sent sms. The
requests are generated almost simultaneously by a self-made cgi-script
that handles client request to send a message to one or multiple phones.
For single-part sms messages we have noted absolutely no problems in our
environment.
Test1: tried to send identical 2-part message to 2 recipients,
init-string "AT+CNMI=1,2,0,1,1"
Result:
* one recipient got the whole message as expected, but other recipient
only got the latter part of the multipart message
* delivery report status: "success" for recipient of whole message,
"sent" for recipient of only latter part
* tc35-smsc produced some errors about DLR-reports:
---tc35-smsc.log begins---
2007-03-01 10:06:43 [27715] [7] ERROR: AT2[TC35]: delivery notification
requested, but I have no message ID!
2007-03-01 10:06:43 [27715] [7] DEBUG: SMSC[TC35]: creating DLR message
2007-03-01 10:06:43 [27715] [7] DEBUG: SMSC[TC35]: DLR =
http://our-sms.box.net/cgi/kannel-dlr-process.cgi?smstid=20070301100418_tukiato_2&sms-service=sms-service-prod&smsc-id=%i&status=%d&answer=%A&to=%p&ts=%t
..
2007-03-01 10:10:50 [27715] [7] DEBUG: DLR[internal]: Looking for DLR
smsc=TC35, ts=176, dst=****, type=1
2007-03-01 10:10:50 [27715] [7] WARNING: DLR[internal]: DLR for
DST<****> not found.
2007-03-01 10:10:50 [27715] [7] DEBUG: AT2[TC35]: Received delivery
notification but can't find that ID in the DLR storage
2007-03-01 10:10:50 [27715] [7] DEBUG: System error 1: Operation not
permitted
---tc35-smsc.log ends---
Test2: tried to send identical 2-part message to 3 recipients,
init-string: "AT+CNMI=1,2,0,2,1"
Result:
* 2 recipients got the whole message as expected, but one recipient got
the whole message 3 times
* delivery report status: "success" for all recipients
* some warnings in the tc35-smsc.log about delivery report handling,
though:
---tc35-smsc.log begins---
2007-03-01 10:21:44 [27814] [7] DEBUG: SMSC[TC35]: DLR =
http://our-sms.box.net/cgi/kannel-dlr-process.cgi?smstid=20070301101859_tukiato_3&sms-service=sms-service-prod&smsc-id=%i&status=%d&answer=%A&to=%p&ts=%t
2007-03-01 10:21:44 [27814] [7] INFO: AT2[TC35]: CMTI received, but no
message-storage is set in confiuration.setting now to <SM>
2007-03-01 10:21:44 [27814] [7] INFO: System error 2: No such file or
directory
---tc35-smsc.log ends---
We have also tried sending larger batches (around ~100 recipients),
which has roughly resulted in:
* some people receiving a large number of messages
* some people receiving the message as expected
* some people receiving only a part of the message
* some people not receiving anything at all
* receiving a "success" dlr-report for some request and after that
receiving a "nack" for the same request (init-string was
"AT+CNMI=1,2,0,1,1")
Also, we have tried sending to many recipients with only one request to
Kannels sendsms interface by giving it a list of phone numbers, but
results have been similar.
So.. does anybody have any idea what might be wrong here? Have you
people had success sending many multipart messages through kannel
simultaneously?
Thanks,
Tomi Tukiainen