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
