Hello! After i changed source-addr-ton to 5 and source-addr-npi to 0
(it was 1 and 1 before) kannel started to interpret message id in
deliver_sm SMPP message in a wrong way:
2007-08-09 11:18:26 [2769] [6] DEBUG: SMPP[smpp]: Manually forced source addr
ton = 5, source add npi = 0
2007-08-09 11:18:26 [2769] [6] DEBUG: SMPP[smpp]: Manually forced dest addr ton
= 1, dest add npi = 1
2007-08-09 11:18:26 [2769] [6] DEBUG: SMPP[smpp]: Sending PDU:
2007-08-09 11:18:26 [2769] [6] DEBUG: SMPP PDU 0x8953520 dump:
2007-08-09 11:18:26 [2769] [6] DEBUG: type_name: submit_sm
...(skipped)...
2007-08-09 11:18:27 [2769] [6] DEBUG: SMPP[smpp]: Got PDU:
2007-08-09 11:18:27 [2769] [6] DEBUG: SMPP PDU 0x8953520 dump:
2007-08-09 11:18:27 [2769] [6] DEBUG: type_name: submit_sm_resp
2007-08-09 11:18:27 [2769] [6] DEBUG: command_id: 2147483652 = 0x80000004
2007-08-09 11:18:27 [2769] [6] DEBUG: command_status: 0 = 0x00000000
2007-08-09 11:18:27 [2769] [6] DEBUG: sequence_number: 853 = 0x00000355
2007-08-09 11:18:27 [2769] [6] DEBUG: message_id: "0003C463"
2007-08-09 11:18:27 [2769] [6] DEBUG: SMPP PDU dump ends.
2007-08-09 11:18:27 [2769] [6] DEBUG: DLR[internal]: Adding DLR smsc=smpp,
ts=246883, src=XXX, dst=7XXXXXXXXXX, mask=31, b
As we can see, sent message id is 246883 (0x3C463), it's ok here, but
when we get DLR:
2007-08-09 11:18:32 [2769] [6] DEBUG: data: 69 64 3a 30 30 30 30 32 34 36
38 38 33 20 73 75 id:0000246883 su
2007-08-09 11:18:32 [2769] [6] DEBUG: data: 62 3a 30 30 31 20 64 6c 76 72
64 3a 30 30 31 20 b:001 dlvrd:001
2007-08-09 11:18:32 [2769] [6] DEBUG: data: 73 75 62 6d 69 74 20 64 61 74
65 3a 30 37 30 38 submit date:0708
2007-08-09 11:18:32 [2769] [6] DEBUG: data: 30 39 30 39 31 38 20 64 6f 6e
65 20 64 61 74 65 090918 done date
2007-08-09 11:18:32 [2769] [6] DEBUG: data: 3a 30 37 30 38 30 39 30 39 31
38 20 73 74 61 74 :0708090918 stat
2007-08-09 11:18:32 [2769] [6] DEBUG: data: 3a 44 45 4c 49 56 52 44 20 65
72 72 3a 30 30 30 :DELIVRD err:000
2007-08-09 11:18:32 [2769] [6] DEBUG: data: 20 54 65 78 74 3a 31
Text:1
...(skipped)...
2007-08-09 11:18:32 [2769] [6] DEBUG: receipted_message_id: "C55725"
2007-08-09 11:18:32 [2769] [6] DEBUG: SMPP PDU dump ends.
2007-08-09 11:18:32 [2769] [6] DEBUG: SMPP[smpp] handle_pdu, got DLR
2007-08-09 11:18:32 [2769] [6] DEBUG: DLR[internal]: Looking for DLR smsc=smpp,
ts=12932901, dst=7XXXXXXXXXX, type=1
2007-08-09 11:18:32 [2769] [6] WARNING: DLR[internal]: DLR for DST<7XXXXXXXXX>
not found.
2007-08-09 11:18:32 [2769] [6] ERROR: SMPP[smpp]: got DLR but could not find
message or was not interested in it id<12932901>
dst<7XXXXXXXXXX>, type<1>
Here we got correct message id (id:0000246883) from SMPP, but Kannel
says, that it's "C55725" (12932901 decimal). Is it a kannel bug or
something? I'm using Kannel 1.4.1 & RHEL 4.
PS. I've tried all of the msg-id-type settings, but it seems that it's
fully ignored.
kannel.conf:
group = smsc
smsc = smpp
smsc-id = smpp
log-file = /var/log/kannel/smpp.log
allowed-smsc-id = smpp
msg-id-type = 0x03
host = XXX.XXX.XX.XXX
port = XXXX
receive-port = 0
system-type = "VMA"
address-range = ""
smsc-username = "XXXXXXX"
smsc-password = "XXXXXXX"
transceiver-mode=true
throughput = 1
validityperiod = 5
source-addr-autodetect = no
source-addr-ton = 5
source-addr-npi = 0
dest-addr-ton = 1
dest-addr-npi = 1