I agree with Nikos, better contact them first just in case they are having any issues or something
2009/9/29 Nikos Balkanas <[email protected]>: > Hi, > > Who are these carriers? > I think before asking to make any changes to the spec in kannel, you should > contact them to see what they have to say for themselves. > > BR, > Nikos > ----- Original Message ----- From: "Michael Zervakis" <[email protected]> > To: <[email protected]> > Cc: <[email protected]> > Sent: Tuesday, September 29, 2009 2:14 PM > Subject: RE: RE: DLR parsing issue with SMPP > > >> >> >> You are right that the values are appended without labels and spaces, >> however I'm aware of two cases of carriers that use this format instead of >> the standard one. I think the only solution to my issue is to use sscanf >> with two format cases : >> >> The standard one with labels and single spaces: "id:%64[^s] sub:%d >> dlvrd:%d submit date:%14[0-9] done date:%14[0-9] stat:%15[^t^e] err:%3[^t]" >> if payload starts with chars "id:" >> And one without labels and spaces: >> "%64[^s]%d%d%14[0-9]%14[0-9]%15[^t^e]%3[^t]" >> >> >> From: Andreas Fink [mailto:[email protected]] >> Sent: Monday, September 28, 2009 9:15 PM >> To: Michael Zervakis >> Cc: [email protected] >> Subject: Re: DLR parsing issue with SMPP >> >> >> >> the delivery report is ill formatted: >> >> >> >> 2009-09-28 17:45:23 [9399] [14] DEBUG: data: 31 30 37 39 38 34 39 33 35 36 >> 30 30 31 30 30 31 1079849356001001 >> 2009-09-28 17:45:23 [9399] [14] DEBUG: data: 30 39 30 39 32 38 31 37 34 35 >> 30 39 30 39 32 38 0909281745090928 >> 2009-09-28 17:45:23 [9399] [14] DEBUG: data: 31 37 34 35 44 45 4c 49 56 52 >> 44 30 30 30 54 45 1745DELIVRD000TE >> >> >> >> See Appendix B of SMPP_v3_4_Issue_1_2.pdf >> >> >> >> SMPP provides for return of an SMSC delivery receipt via the deliver_sm or >> data_sm PDU, which indicates the delivery status of the message. >> >> The informational content of an SMSC Delivery Receipt may be inserted into >> the short_message parameter of the deliver_sm operation. The format for this >> Delivery Receipt message is SMSC vendor specific but following is a typical >> example of Delivery Receipt report. >> >> "id:IIIIIIIIII sub:SSS dlvrd:DDD submit date:YYMMDDhhmm done >> date:YYMMDDhhmm stat:DDDDDDD err:E Text: . . . . . . . . ." >> >> >> >> in above text there are no "id:" , no "sub:" no "dlvrd:" no "submit date:" >> no "done date:" so kannel can not parse it. >> >> It looks more like the parameters are just appended after each other >> without the labels. >> >> >> >> >> >> On 28.09.2009, at 17:36, Michael Zervakis wrote: >> >> >> >> Dear all, >> >> We have an issue with a SMSC using SMPP and bearerbox cvs-20090921, where >> bearerbox can't decode correctly DLR message and therefore can't find the >> dlr report. >> >> MT TCPDUMP >> ----------------- >> 17:45:19.128701 IP 172.20.20.20.59241 > 172.30.30.30.3700: P >> 3350057118:3350057172(54) ack 2867587379 win 142 <nop,nop,timestamp >> 153235712 108093610> >> 0x0000: 4500 006a 9d82 4000 4006 058c c129 e508 e.....@.@....).. >> 0x0010: 50f5 a058 e769 0e74 c7ad d09e aaeb e933 P..X.i.t.......3 >> 0x0020: 8018 008e 97dc 0000 0101 080a 0922 3100 ............."1. >> 0x0030: 0671 60aa 0000 0036 0000 0004 0000 0000 .q`....6........ >> 0x0040: 0000 87b3 0002 0139 3939 3939 0001 0139 .......99999...9 >> 0x0050: 3939 3939 3939 3939 3939 3900 0300 0000 99999999999..... >> 0x0060: 0001 0000 0004 5445 5354 ......TEST >> >> MT SMS BEARERBOX DEBUG >> ----------------------------------- >> 2009-09-28 17:45:19 [9399] [13] DEBUG: SMPP[SMSC]: Sending PDU: >> 2009-09-28 17:45:19 [9399] [13] DEBUG: SMPP PDU 0x821df38 dump: >> 2009-09-28 17:45:19 [9399] [13] DEBUG: type_name: submit_sm >> 2009-09-28 17:45:19 [9399] [13] DEBUG: command_id: 4 = 0x00000004 >> 2009-09-28 17:45:19 [9399] [13] DEBUG: command_status: 0 = 0x00000000 >> 2009-09-28 17:45:19 [9399] [13] DEBUG: sequence_number: 34739 = 0x000087b3 >> 2009-09-28 17:45:19 [9399] [13] DEBUG: service_type: NULL >> 2009-09-28 17:45:19 [9399] [13] DEBUG: source_addr_ton: 2 = 0x00000002 >> 2009-09-28 17:45:19 [9399] [13] DEBUG: source_addr_npi: 1 = 0x00000001 >> 2009-09-28 17:45:19 [9399] [13] DEBUG: source_addr: "99999" >> 2009-09-28 17:45:19 [9399] [13] DEBUG: dest_addr_ton: 1 = 0x00000001 >> 2009-09-28 17:45:19 [9399] [13] DEBUG: dest_addr_npi: 1 = 0x00000001 >> 2009-09-28 17:45:19 [9399] [13] DEBUG: destination_addr: "999999999999" >> 2009-09-28 17:45:19 [9399] [13] DEBUG: esm_class: 3 = 0x00000003 >> 2009-09-28 17:45:19 [9399] [13] DEBUG: protocol_id: 0 = 0x00000000 >> 2009-09-28 17:45:19 [9399] [13] DEBUG: priority_flag: 0 = 0x00000000 >> 2009-09-28 17:45:19 [9399] [13] DEBUG: schedule_delivery_time: NULL >> 2009-09-28 17:45:19 [9399] [13] DEBUG: validity_period: NULL >> 2009-09-28 17:45:19 [9399] [13] DEBUG: registered_delivery: 1 = 0x00000001 >> 2009-09-28 17:45:19 [9399] [13] DEBUG: replace_if_present_flag: 0 = >> 0x00000000 >> 2009-09-28 17:45:19 [9399] [13] DEBUG: data_coding: 0 = 0x00000000 >> 2009-09-28 17:45:19 [9399] [13] DEBUG: sm_default_msg_id: 0 = 0x00000000 >> 2009-09-28 17:45:19 [9399] [13] DEBUG: sm_length: 4 = 0x00000004 >> 2009-09-28 17:45:19 [9399] [13] DEBUG: short_message: "TEST" >> 2009-09-28 17:45:19 [9399] [13] DEBUG: SMPP PDU dump ends. >> 2009-09-28 17:45:19 [9399] [13] DEBUG: SMPP[SMSC]: Got PDU: >> 2009-09-28 17:45:19 [9399] [13] DEBUG: SMPP PDU 0x821df38 dump: >> 2009-09-28 17:45:19 [9399] [13] DEBUG: type_name: submit_sm_resp >> 2009-09-28 17:45:19 [9399] [13] DEBUG: command_id: 2147483652 = 0x80000004 >> 2009-09-28 17:45:19 [9399] [13] DEBUG: command_status: 0 = 0x00000000 >> 2009-09-28 17:45:19 [9399] [13] DEBUG: sequence_number: 34739 = 0x000087b3 >> 2009-09-28 17:45:19 [9399] [13] DEBUG: message_id: "405d318c" >> 2009-09-28 17:45:19 [9399] [13] DEBUG: SMPP PDU dump ends. >> 2009-09-28 17:45:19 [9399] [13] DEBUG: DLR[mysql]: Adding DLR smsc=SMSC, >> ts=405d318c, src=99999, dst=+999999999999, mask=1, boxc=GR >> 2009-09-28 17:45:19 [9399] [13] DEBUG: adding DLR entry into database >> 2009-09-28 17:45:19 [9399] [13] DEBUG: sql: INSERT INTO dlr (smsc, ts, >> source, destination, service, url, mask, boxcid, status) VALUES (?, ?, ?, ?, >> ?, ?, ?, ?, 0) >> >> >> DLR TCPDUMP >> ------------------ >> 17:45:23.627672 IP 172.30.30.30.3700 > 172.20.20.20.59242: P >> 38944887:38944987(100) ack 3343504612 win 5792 <nop,nop,timestamp 108094881 >> 153233119> >> 0x0000: 4500 0098 3a24 0000 3c06 acbc 50f5 a058 E...:$..<...P..X >> 0x0010: c129 e508 0e74 e76a 0252 4077 c749 d4e4 .)[email protected].. >> 0x0020: 8018 16a0 26cd 0000 0101 080a 0671 65a1 ....&........qe. >> 0x0030: 0922 26df 0000 0064 0000 0005 0000 0000 ."&....d........ >> 0x0040: 0042 c248 0001 0139 3939 3939 3939 3939 .B.H...999999999 >> 0x0050: 3939 3900 0201 3939 3939 3900 0400 0000 999...99999..... >> 0x0060: 0000 0000 0032 3130 3739 3834 3933 3536 .....21079849356 >> 0x0070: 3030 3130 3031 3039 3039 3238 3137 3435 0010010909281745 >> 0x0080: 3039 3039 3238 3137 3435 4445 4c49 5652 0909281745DELIVR >> 0x0090: 4430 3030 5445 5354 D000TEST >> >> DLR BEARERBOX DEBUG >> ------------------------------- >> 2009-09-28 17:45:23 [9399] [14] DEBUG: SMPP[SMSC]: Got PDU: >> 2009-09-28 17:45:23 [9399] [14] DEBUG: SMPP PDU 0x821df38 dump: >> 2009-09-28 17:45:23 [9399] [14] DEBUG: type_name: deliver_sm >> 2009-09-28 17:45:23 [9399] [14] DEBUG: command_id: 5 = 0x00000005 >> 2009-09-28 17:45:23 [9399] [14] DEBUG: command_status: 0 = 0x00000000 >> 2009-09-28 17:45:23 [9399] [14] DEBUG: sequence_number: 4375112 = >> 0x0042c248 >> 2009-09-28 17:45:23 [9399] [14] DEBUG: service_type: NULL >> 2009-09-28 17:45:23 [9399] [14] DEBUG: source_addr_ton: 1 = 0x00000001 >> 2009-09-28 17:45:23 [9399] [14] DEBUG: source_addr_npi: 1 = 0x00000001 >> 2009-09-28 17:45:23 [9399] [14] DEBUG: source_addr: "999999999999" >> 2009-09-28 17:45:23 [9399] [14] DEBUG: dest_addr_ton: 2 = 0x00000002 >> 2009-09-28 17:45:23 [9399] [14] DEBUG: dest_addr_npi: 1 = 0x00000001 >> 2009-09-28 17:45:23 [9399] [14] DEBUG: destination_addr: "99999" >> 2009-09-28 17:45:23 [9399] [14] DEBUG: esm_class: 4 = 0x00000004 >> 2009-09-28 17:45:23 [9399] [14] DEBUG: protocol_id: 0 = 0x00000000 >> 2009-09-28 17:45:23 [9399] [14] DEBUG: priority_flag: 0 = 0x00000000 >> 2009-09-28 17:45:23 [9399] [14] DEBUG: schedule_delivery_time: NULL >> 2009-09-28 17:45:23 [9399] [14] DEBUG: validity_period: NULL >> 2009-09-28 17:45:23 [9399] [14] DEBUG: registered_delivery: 0 = 0x00000000 >> 2009-09-28 17:45:23 [9399] [14] DEBUG: replace_if_present_flag: 0 = >> 0x00000000 >> 2009-09-28 17:45:23 [9399] [14] DEBUG: data_coding: 0 = 0x00000000 >> 2009-09-28 17:45:23 [9399] [14] DEBUG: sm_default_msg_id: 0 = 0x00000000 >> 2009-09-28 17:45:23 [9399] [14] DEBUG: sm_length: 50 = 0x00000032 >> 2009-09-28 17:45:23 [9399] [14] DEBUG: short_message: >> 2009-09-28 17:45:23 [9399] [14] DEBUG: Octet string at 0x821df08: >> 2009-09-28 17:45:23 [9399] [14] DEBUG: len: 50 >> 2009-09-28 17:45:23 [9399] [14] DEBUG: size: 51 >> 2009-09-28 17:45:23 [9399] [14] DEBUG: immutable: 0 >> 2009-09-28 17:45:23 [9399] [14] DEBUG: data: 31 30 37 39 38 34 39 33 35 36 >> 30 30 31 30 30 31 1079849356001001 >> 2009-09-28 17:45:23 [9399] [14] DEBUG: data: 30 39 30 39 32 38 31 37 34 35 >> 30 39 30 39 32 38 0909281745090928 >> 2009-09-28 17:45:23 [9399] [14] DEBUG: data: 31 37 34 35 44 45 4c 49 56 52 >> 44 30 30 30 54 45 1745DELIVRD000TE >> 2009-09-28 17:45:23 [9399] [14] DEBUG: data: 53 54 ST >> 2009-09-28 17:45:23 [9399] [14] DEBUG: Octet string dump ends. >> 2009-09-28 17:45:23 [9399] [14] DEBUG: SMPP PDU dump ends. >> 2009-09-28 17:45:23 [9399] [14] DEBUG: SMPP[SMSC] handle_pdu, got DLR >> 2009-09-28 17:45:23 [9399] [14] DEBUG: SMPP[SMSC]: Couldnot parse DLR >> string sscanf way,fallback to old way. Please report! >> 2009-09-28 17:45:23 [9399] [14] ERROR: SMPP[SMSC]: got DLR but could not >> find message or was not interested in it id<> dst<999999999999>, type<2> >> 2009-09-28 17:45:23 [9399] [14] DEBUG: SMPP[SMSC]: Sending PDU: >> 2009-09-28 17:45:23 [9399] [14] DEBUG: SMPP PDU 0x821de00 dump: >> 2009-09-28 17:45:23 [9399] [14] DEBUG: type_name: deliver_sm_resp >> 2009-09-28 17:45:23 [9399] [14] DEBUG: command_id: 2147483653 = 0x80000005 >> 2009-09-28 17:45:23 [9399] [14] DEBUG: command_status: 0 = 0x00000000 >> 2009-09-28 17:45:23 [9399] [14] DEBUG: sequence_number: 4375112 = >> 0x0042c248 >> 2009-09-28 17:45:23 [9399] [14] DEBUG: message_id: NULL >> 2009-09-28 17:45:23 [9399] [14] DEBUG: SMPP PDU dump ends. >> >> >> >> Sincerely, >> >> Michael Zervakis >> >> >> >> > > > -- Juan Nin 3Cinteractive / Mobilizing Great Brands http://www.3cinteractive.com
