Hi,

I've been doing some testing with Kannel 1.4.3 on Debian Squeeze.  We
want a simple smsbox/bearerbox HTTP/SMPP gateway configuration to
connect to a carrier SMSC using SMPP 3.4. When an MT message is longer
than 160 characters, we want Kannel to automatically split it into a
multi-part (or concatenated) SMS.

My reading of the Kannel User guide and
http://www.kannel.org/pipermail/users/2010-March/010370.html appear to
say it should work, but I'm not having any success. Does anyone have
any suggestions?

The config is included below, but first some test observations....

A) here we submit a long (225 chararcters) MT SMS to smsbox....

wget -O - 
"http://localhost:13013/cgi-bin/sendsms?from=3122&to=6421824152&username=jojo&password=wozza&smsc=smZZ&text=Loz%3A%20In%20addition%20to%20protocol%20translations%2C%20the%20gateway%20also%20compresses%20the%20WML%20pages%20into%20a%20more%20compact%20form%2C%20to%20save%20on-the-air%20bandwidth%20and%20to%20further%20reduce%20the%20phone%27s%20processing%20requirements.%20It%20also%20compiles%20WMLScript";

B) smsbox logging shows the full message is submitted to bearerbox. ...

2011-06-10 04:07:24 [2779] [3] INFO: smsbox: Got HTTP request
</cgi-bin/sendsms> from <127.0.0.1>
2011-06-10 04:07:24 [2779] [3] INFO: sendsms used by <jojo>
2011-06-10 04:07:24 [2779] [3] INFO: sendsms sender:<jojo:3122>
(127.0.0.1) to:<6421844538> msg:<Loz: In addition to protocol
translations, the gateway also compresses the WML pages into a more
compact form, to save on-the-air bandwidth and to further reduce the
phone's processing requirements. It also compiles WMLScript>
2011-06-10 04:07:24 [2779] [3] DEBUG: Stored UUID
734ba10e-c756-4a50-8272-9e047c8a5f64
2011-06-10 04:07:24 [2779] [3] DEBUG: message length 225, sending 1 messages
2011-06-10 04:07:24 [2779] [3] DEBUG: Status: 202 Answer: <Sent.>

C) bearerbox sends this message via SMPP and logging shows the message
is truncated
at 160 characters.

NB I've omitted this log for brevity but it's very similar to D) below, except
there's just a single sumbit_sm PDU with the message ending "reduc"
i.e. after 160 chars of the 225.

D) I CAN get bearerbox to split MT messages, but only if I set
max-sms-octets less than 160. Then it will
  i) trunctate the message and
  ii) split the message into multiple PDU...

However the overall message is still truncated at 160 characters
...
2011-06-10 03:36:24 [32046] [6] DEBUG:   short_message:
2011-06-10 03:36:24 [32046] [6] DEBUG:    Octet string at 0x84a03f0:
2011-06-10 03:36:24 [32046] [6] DEBUG:      len:  147
2011-06-10 03:36:24 [32046] [6] DEBUG:      size: 1024
2011-06-10 03:36:24 [32046] [6] DEBUG:      immutable: 0
2011-06-10 03:36:24 [32046] [6] DEBUG:      data: 05 00 03 01 02 01 4c
6f 7a 3a 20 49 6e 20 61 64   ......Loz: In ad
2011-06-10 03:36:24 [32046] [6] DEBUG:      data: 64 69 74 69 6f 6e 20
74 6f 20 70 72 6f 74 6f 63   dition to protoc
2011-06-10 03:36:24 [32046] [6] DEBUG:      data: 6f 6c 20 74 72 61 6e
73 6c 61 74 69 6f 6e 73 2c   ol translations,
2011-06-10 03:36:24 [32046] [6] DEBUG:      data: 20 74 68 65 20 67 61
74 65 77 61 79 20 61 6c 73    the gateway als
2011-06-10 03:36:24 [32046] [6] DEBUG:      data: 6f 20 63 6f 6d 70 72
65 73 73 65 73 20 74 68 65   o compresses the
2011-06-10 03:36:24 [32046] [6] DEBUG:      data: 20 57 4d 4c 20 70 61
67 65 73 20 69 6e 74 6f 20    WML pages into
2011-06-10 03:36:24 [32046] [6] DEBUG:      data: 61 20 6d 6f 72 65 20
63 6f 6d 70 61 63 74 20 66   a more compact f
2011-06-10 03:36:24 [32046] [6] DEBUG:      data: 6f 72 6d 2c 20 74 6f
20 73 61 76 65 20 6f 6e 2d   orm, to save on-
2011-06-10 03:36:24 [32046] [6] DEBUG:      data: 74 68 65 2d 61 69 72
20 62 61 6e 64 77 69 64 74   the-air bandwidt
2011-06-10 03:36:24 [32046] [6] DEBUG:      data: 68 20 61
                h a
2011-06-10 03:36:24 [32046] [6] DEBUG:    Octet string dump ends.
2011-06-10 03:36:24 [32046] [6] DEBUG:   more_messages_to_send: 1 = 0x00000001
...
then
2011-06-10 03:36:24 [32046] [6] DEBUG:   short_message:
2011-06-10 03:36:24 [32046] [6] DEBUG:    Octet string at 0x84a4200:
2011-06-10 03:36:24 [32046] [6] DEBUG:      len:  25
2011-06-10 03:36:24 [32046] [6] DEBUG:      size: 1024
2011-06-10 03:36:24 [32046] [6] DEBUG:      immutable: 0
2011-06-10 03:36:24 [32046] [6] DEBUG:      data: 05 00 03 01 02 02 6e
64 20 74 6f 20 66 75 72 74   ......nd to furt
2011-06-10 03:36:24 [32046] [6] DEBUG:      data: 68 65 72 20 72 65 64
75 63                        her reduc
2011-06-10 03:36:24 [32046] [6] DEBUG:    Octet string dump ends.


So here's the config for the latter test. I've obfuscated a few
security-related values....

group = core
admin-port = 13000
smsbox-port = 13001
admin-password = w00lt3r
log-file = "/etc/kannel/logs/kannel.log"
log-level = 1
box-deny-ip = "*.*.*.*"
box-allow-ip = "127.0.0.1"
store-file = "/tmp/kannel.store"

# SMSC CONNECTION
# ================
group = smsc
smsc = smpp
smsc-id = ****
throughput = 15
msg-id-type = 0x01
preferred-smsc-id = ****
host = N.N.N.N
port = 14031
transceiver-mode = false
smsc-username = "********"
smsc-password = "********"
system-type = "VMA"
interface-version = 34
max-sms-octets = 130

# SMSBOX SETUP
# ============
group = smsbox
bearerbox-host = localhost
sendsms-port = 13013
log-file = "/etc/kannel/logs/smsbox.log"
log-level =  1

# SEND-SMS USERS
# ==============
group = sendsms-user
username = jojo
password = wozza
max-messages = 3
concatenation = true

group = sms-service
keyword = default
get-url = 
"http://localhost:13013/cgi-bin/sendsms?from=%P&to=%p&text=ECHO:+%a&username=jojo&password=wozza&smsc=smpp";


Kind regards,
Chris Chamberlain

Reply via email to