Re: DLR-URL and parameters confusion
I think you're looking at it the wrong way. The application posts the sms to kannel. kannel just answer, if it accepts the message. After the delivery (mind: if the handset is off, this might take hours...) kannel posts the DLR to an URL you define. So you send the SMS to the kannel URL and kannel posts the DLR to your application. These are 2 isolated cases, you could even get multiple DLRs for one message. Regards Falko Am 05.03.2009 um 08:39 schrieb Elton Hoxha: Hi again, Lets put it in different way; When I try to call http://10.1.21.184:13014/cgi-bin/sendsms?username=bpassword=bto=355666from=15106text=ab How can I be able to return both the receipted_message_id (like this: 235584602526) and the deliver status to the external application. I just need these 2 parameters. Thanks Elton On Thu, Mar 5, 2009 at 8:22 AM, Elton Hoxha elt...@gmail.com wrote: Hi Nikos, In the manual I read the following: Must set dlr-url on sendsms-user group or use the dlr-url CGI variable. Where is the problem at my configuration file? On Wed, Mar 4, 2009 at 10:07 PM, Nikos Balkanas nbalka...@gmail.com wrote: Hi, You are using the wrong dlr-url. Seems you are trying to push through (!) dlrs to another sendsms service and you not provide the credentials (b,b). You r dlr-url shouldn't point to your sendsms service. BR, Nikos - Original Message - From: Elton Hoxha To: users@kannel.org User Sent: Wednesday, March 04, 2009 8:24 PM Subject: DLR-URL and parameters confusion Hi, I have the below sms-service and sendsms-user blocks; group = sendsms-user username = b password = b dlr-url = http://10.1.21.184:13014/cgi-bin/sendsms?mid=%F; group = sms-service keyword = default catch-all = true max-messages = 0 get-url = http://10.1.21.236:2468/GetMOSms.asmx/GetSms?originator= %pdestination=%Ptext=%tstatus=%dsystemtype=%B When I try to invoke http://10.1.21.184:13014/cgi-bin/sendsms?username=bpassword=bto=3556722from=15106text=abidlr-mask=3 , I expect that kannel returns to me with the message ID (defined in the dlr-url, mid=%F). I get the following logs; The browser returnes 0: Accepted for delivery message but I just want to get the mesage id highlighted below. Also from the logs below I assume that get-url inside the sms- service block is being called. Is is true? How can we prevent it? 2009-03-03 11:42:57 [6013] [9] DEBUG: Parsing URL `http://10.1.21.184:13014/cgi-bin/sendsms?status=236980399409' : 2009-03-03 11:42:57 [6013] [9] DEBUG: Scheme: http:// 2009-03-03 11:42:57 [6013] [9] DEBUG: Host: 10.1.21.184 2009-03-03 11:42:57 [6013] [9] DEBUG: Port: 13014 2009-03-03 11:42:57 [6013] [9] DEBUG: Username: (null) 2009-03-03 11:42:57 [6013] [9] DEBUG: Password: (null) 2009-03-03 11:42:57 [6013] [9] DEBUG: Path: /cgi-bin/sendsms 2009-03-03 11:42:57 [6013] [9] DEBUG: Query: status=236980399409 2009-03-03 11:42:57 [6013] [9] DEBUG: Fragment: (null) 2009-03-03 11:42:57 [6013] [9] DEBUG: HTTP: Opening connection to `10.1.21.184:13014' (fd=27). 2009-03-03 11:42:57 [6013] [9] DEBUG: Socket connecting 2009-03-03 11:42:57 [6013] [2] DEBUG: HTTP: Creating HTTPClient for `10.1.21.184'. 2009-03-03 11:42:57 [6013] [2] DEBUG: HTTP: Created HTTPClient area 0x9afd570. 2009-03-03 11:42:57 [6013] [8] DEBUG: Thread 8 (gwlib/ fdset.c:poller) maps to pid 6013. 2009-03-03 11:42:57 [6013] [8] DEBUG: Get info about connecting socket 2009-03-03 11:42:57 [6013] [8] DEBUG: HTTP: Sending request: 2009-03-03 11:42:57 [6013] [8] DEBUG: Octet string at 0x9afd5e0: 2009-03-03 11:42:57 [6013] [8] DEBUG: len: 128 2009-03-03 11:42:57 [6013] [8] DEBUG: size: 1024 2009-03-03 11:42:57 [6013] [8] DEBUG: immutable: 0 2009-03-03 11:42:57 [6013] [8] DEBUG: data: 47 45 54 20 2f 63 67 69 2d 62 69 6e 2f 73 65 6e GET /cgi-bin/sen 2009-03-03 11:42:57 [6013] [8] DEBUG: data: 64 73 6d 73 3f 73 74 61 74 75 73 3d 32 33 36 39 dsms?status=2369 2009-03-03 11:42:57 [6013] [8] DEBUG: data: 38 30 33 39 39 34 30 39 20 48 54 54 50 2f 31 2e 80399409 HTTP/1. 2009-03-03 11:42:57 [6013] [8] DEBUG: data: 31 0d 0a 48 6f 73 74 3a 20 31 30 2e 31 2e 32 31 1..Host: 10.1.21 2009-03-03 11:42:57 [6013] [8] DEBUG: data: 2e 31 38 34 3a 31 33 30 31 34 0d 0a 43 6f 6e 6e .184:13014..Conn 2009-03-03 11:42:57 [6013] [8] DEBUG: data: 65 63 74 69 6f 6e 3a 20 6b 65 65 70 2d 61 6c 69 ection: keep-ali 2009-03-03 11:42:57 [6013] [8] DEBUG: data: 76 65 0d 0a 55 73 65 72 2d 41 67 65 6e 74 3a 20 ve..User-Agent: 2009-03-03 11:42:57 [6013] [8] DEBUG: data: 4b 61 6e 6e 65 6c 2f 31 2e 34 2e 33 0d 0a 0d 0a Kannel/1.4.3 2009-03-03 11:42:57 [6013] [8] DEBUG: Octet string dump ends. 2009-03-03 11:42:57 [6013] [3] INFO: smsbox: Got HTTP request /cgi- bin/sendsms from 10.1.21.184 2009-03-03 11:42:57 [6013] [3] DEBUG: Status: 403 Answer: Authorization failed for sendsms 2009-03-03 11:42:57 [6013] [3] DEBUG: HTTP: Resetting HTTPClient for `10.1.21.184'. 2009-03-03
Not ACKED message found, will retransmit
Hi All, Hope your all doing well, I have the following warning in my logs, 2009-03-04 16:45:56 [2825] [14] WARNING: SMPP[MT_CONNICTION]: Not ACKED message found, will retransmit. SENT62sec. ago, SEQ11674, DST+ 2009-03-04 16:47:24 [2825] [14] WARNING: SMPP[MT_CONNICTION]: Not ACKED message found, will retransmit. SENT88sec. ago, SEQ11684, DST+9888 2009-03-04 16:47:24 [2825] [14] WARNING: SMPP[MT_CONNICTION]: Not ACKED message found, will retransmit. SENT88sec. ago, SEQ11685, DST+ 2009-03-04 16:47:24 [2825] [14] WARNING: SMPP[MT_CONNICTION]: Not ACKED message found, will retransmit. SENT88sec. ago, SEQ11686, DST+ 2009-03-04 16:47:24 [2825] [14] WARNING: SMPP[MT_CONNICTION]: Not ACKED message found, will retransmit. SENT88sec. ago, SEQ11682, DST+ 2009-03-04 16:47:24 [2825] [14] WARNING: SMPP[MT_CONNICTION]: Not ACKED message found, will retransmit. SENT88sec. ago, SEQ11683, DST+9888 2009-03-04 16:48:54 [2825] [14] WARNING: SMPP[MT_CONNICTION]: Not ACKED message found, will retransmit. SENT90sec. ago, SEQ11693, DST+ 2009-03-04 16:48:54 [2825] [14] WARNING: SMPP[MT_CONNICTION]: Not ACKED message found, will retransmit. SENT89sec. ago, SEQ11694, DST+ 2009-03-04 16:48:54 [2825] [14] WARNING: SMPP[MT_CONNICTION]: Not ACKED message found, will retransmit. SENT89sec. ago, SEQ11695, DST+9888 2009-03-04 16:48:54 [2825] [14] WARNING: SMPP[MT_CONNICTION]: Not ACKED message found, will retransmit. SENT90sec. ago, SEQ11691, DST+9888 2009-03-04 16:48:54 [2825] [14] WARNING: SMPP[MT_CONNICTION]: Not ACKED message found, will retransmit. SENT90sec. ago, SEQ11692, DST+ 2009-03-04 16:50:24 [2825] [14] WARNING: SMPP[MT_CONNICTION]: Not ACKED message found, will retransmit. SENT90sec. ago, SEQ11701, DST+9888 2009-03-04 16:50:24 [2825] [14] WARNING: SMPP[MT_CONNICTION]: Not ACKED message found, will retransmit. SENT90sec. ago, SEQ11702, DST+9888 2009-03-04 16:50:24 [2825] [14] WARNING: SMPP[MT_CONNICTION]: Not ACKED message found, will retransmit. SENT89sec. ago, SEQ11703, DST+ 2009-03-04 16:50:24 [2825] [14] WARNING: SMPP[MT_CONNICTION]: Not ACKED message found, will retransmit. SENT90sec. ago, SEQ11699, DST+ some users like the user +, received the SMS 2 times and every time he is billed, I search about the problem and I found the following code: case SMPP_WAITACK_REQUEUE: /* requeue */ smpp_msg = dict_remove(smpp-sent_msgs, key); if (smpp_msg != NULL) { warning(0, SMPP[%s]: Not ACKED message found, will retransmit. SENT%ldsec. ago, SEQ%s, DST%s, octstr_get_cstr(smpp-conn-id), (long)difftime(now, smpp_msg-sent_time) , octstr_get_cstr(key), octstr_get_cstr(smpp_msg-msg-sms.receiver)); bb_smscconn_send_failed(smpp-conn, smpp_msg-msg, SMSCCONN_FAILED_TEMPORARILY,NULL); smpp_msg_destroy(smpp_msg, 0); (*pending_submits)--; } As I understand from the code that the connection was down so kannel requeue the SMS, is that right? and how can I be sure that the user will get the SMS only one time? please advice. BR, Hafez
Re: Not ACKED message found, will retransmit
It looks like your SMPP service provider hasn't send a correct ACK for the message but delivered it. Please take a look in the smpp-logfile, what you provider answered to the submit_sm. Strongly looks like an error on your providers side. Regards Falko Am 05.03.2009 um 10:40 schrieb hafez ahmad: Hi All, Hope your all doing well, I have the following warning in my logs, 2009-03-04 16:45:56 [2825] [14] WARNING: SMPP[MT_CONNICTION]: Not ACKED message found, will retransmit. SENT62sec. ago, SEQ11674, DST+ 2009-03-04 16:47:24 [2825] [14] WARNING: SMPP[MT_CONNICTION]: Not ACKED message found, will retransmit. SENT88sec. ago, SEQ11684, DST+9888 2009-03-04 16:47:24 [2825] [14] WARNING: SMPP[MT_CONNICTION]: Not ACKED message found, will retransmit. SENT88sec. ago, SEQ11685, DST+ 2009-03-04 16:47:24 [2825] [14] WARNING: SMPP[MT_CONNICTION]: Not ACKED message found, will retransmit. SENT88sec. ago, SEQ11686, DST+ 2009-03-04 16:47:24 [2825] [14] WARNING: SMPP[MT_CONNICTION]: Not ACKED message found, will retransmit. SENT88sec. ago, SEQ11682, DST+ 2009-03-04 16:47:24 [2825] [14] WARNING: SMPP[MT_CONNICTION]: Not ACKED message found, will retransmit. SENT88sec. ago, SEQ11683, DST+9888 2009-03-04 16:48:54 [2825] [14] WARNING: SMPP[MT_CONNICTION]: Not ACKED message found, will retransmit. SENT90sec. ago, SEQ11693, DST+ 2009-03-04 16:48:54 [2825] [14] WARNING: SMPP[MT_CONNICTION]: Not ACKED message found, will retransmit. SENT89sec. ago, SEQ11694, DST+ 2009-03-04 16:48:54 [2825] [14] WARNING: SMPP[MT_CONNICTION]: Not ACKED message found, will retransmit. SENT89sec. ago, SEQ11695, DST+9888 2009-03-04 16:48:54 [2825] [14] WARNING: SMPP[MT_CONNICTION]: Not ACKED message found, will retransmit. SENT90sec. ago, SEQ11691, DST+9888 2009-03-04 16:48:54 [2825] [14] WARNING: SMPP[MT_CONNICTION]: Not ACKED message found, will retransmit. SENT90sec. ago, SEQ11692, DST+ 2009-03-04 16:50:24 [2825] [14] WARNING: SMPP[MT_CONNICTION]: Not ACKED message found, will retransmit. SENT90sec. ago, SEQ11701, DST+9888 2009-03-04 16:50:24 [2825] [14] WARNING: SMPP[MT_CONNICTION]: Not ACKED message found, will retransmit. SENT90sec. ago, SEQ11702, DST+9888 2009-03-04 16:50:24 [2825] [14] WARNING: SMPP[MT_CONNICTION]: Not ACKED message found, will retransmit. SENT89sec. ago, SEQ11703, DST+ 2009-03-04 16:50:24 [2825] [14] WARNING: SMPP[MT_CONNICTION]: Not ACKED message found, will retransmit. SENT90sec. ago, SEQ11699, DST+ some users like the user +, received the SMS 2 times and every time he is billed, I search about the problem and I found the following code: case SMPP_WAITACK_REQUEUE: /* requeue */ smpp_msg = dict_remove(smpp-sent_msgs, key); if (smpp_msg != NULL) { warning(0, SMPP[%s]: Not ACKED message found, will retransmit. SENT%ldsec. ago, SEQ%s, DST%s, octstr_get_cstr(smpp-conn-id), (long)difftime(now, smpp_msg-sent_time) , octstr_get_cstr(key), octstr_get_cstr(smpp_msg-msg-sms.receiver)); bb_smscconn_send_failed(smpp-conn, smpp_msg-msg, SMSCCONN_FAILED_TEMPORARILY,NULL); smpp_msg_destroy(smpp_msg, 0); (*pending_submits)--; } As I understand from the code that the connection was down so kannel requeue the SMS, is that right? and how can I be sure that the user will get the SMS only one time? please advice. BR, Hafez
Re: Not ACKED message found, will retransmit
Dear falko, Thanks for reply I check the submit_sm_respon and I think everything works fine, Please advice, this is my log 2009-03-03 21:00:16 [2825] [14] DEBUG: SMPP PDU 0xa732ad00 dump: 2009-03-03 21:00:16 [2825] [14] DEBUG: type_name: submit_sm 2009-03-03 21:00:16 [2825] [14] DEBUG: command_id: 4 = 0x0004 2009-03-03 21:00:16 [2825] [14] DEBUG: command_status: 0 = 0x 2009-03-03 21:00:16 [2825] [14] DEBUG: sequence_number: 3684 = 0x0e64 2009-03-03 21:00:16 [2825] [14] DEBUG: service_type: V 2009-03-03 21:00:16 [2825] [14] DEBUG: source_addr_ton: 5 = 0x0005 2009-03-03 21:00:16 [2825] [14] DEBUG: source_addr_npi: 0 = 0x 2009-03-03 21:00:16 [2825] [14] DEBUG: source_addr: T2ME 2009-03-03 21:00:16 [2825] [14] DEBUG: dest_addr_ton: 1 = 0x0001 2009-03-03 21:00:16 [2825] [14] DEBUG: dest_addr_npi: 1 = 0x0001 2009-03-03 21:00:16 [2825] [14] DEBUG: destination_addr: 2009-03-03 21:00:16 [2825] [14] DEBUG: esm_class: 67 = 0x0043 2009-03-03 21:00:16 [2825] [14] DEBUG: protocol_id: 0 = 0x 2009-03-03 21:00:16 [2825] [14] DEBUG: priority_flag: 0 = 0x 2009-03-03 21:00:16 [2825] [14] DEBUG: schedule_delivery_time: NULL 2009-03-03 21:00:16 [2825] [14] DEBUG: validity_period: NULL 2009-03-03 21:00:16 [2825] [14] DEBUG: registered_delivery: 0 = 0x 2009-03-03 21:00:16 [2825] [14] DEBUG: replace_if_present_flag: 0 = 0x 2009-03-03 21:00:16 [2825] [14] DEBUG: data_coding: 8 = 0x0008 2009-03-03 21:00:16 [2825] [14] DEBUG: sm_default_msg_id: 0 = 0x 2009-03-03 21:00:16 [2825] [14] DEBUG: sm_length: 140 = 0x008c 2009-03-03 21:00:16 [2825] [14] DEBUG: short_message: 2009-03-03 21:00:16 [2825] [14] DEBUG:Octet string at 0xa732af00: 2009-03-03 21:00:16 [2825] [14] DEBUG: len: 140 2009-03-03 21:00:16 [2825] [14] DEBUG: size: 1024 2009-03-03 21:00:16 [2825] [14] DEBUG: immutable: 0 2009-03-03 21:00:16 [2825] [14] DEBUG: data: 05 00 03 83 04 01 06 23 06 47 06 45 00 20 06 48 ...#.G.E. .H 2009-03-03 21:00:16 [2825] [14] DEBUG: data: 06 35 06 41 06 27 06 2a 00 20 06 4a 06 48 06 33 .5.A.'.*. .J.H.3 2009-03-03 21:00:16 [2825] [14] DEBUG: data: 06 41 00 20 06 27 06 44 06 34 06 31 06 41 06 27 .A. .'.D.4.1.A.' 2009-03-03 21:00:16 [2825] [14] DEBUG: data: 06 21 00 20 06 44 06 39 06 44 06 27 06 2c 00 20 .!. .D.9.D.'.,. 2009-03-03 21:00:16 [2825] [14] DEBUG: data: 06 27 06 44 06 43 06 48 06 44 06 4a 06 33 06 2a .'.D.C.H.D.J.3.* 2009-03-03 21:00:16 [2825] [14] DEBUG: data: 06 31 06 48 06 44 00 3a 00 20 06 2a 06 24 06 2e .1.H.D.:. .*.$.. 2009-03-03 21:00:16 [2825] [14] DEBUG: data: 06 30 00 20 06 46 06 33 06 28 00 20 06 45 06 2a .0. .F.3.(. .E.* 2009-03-03 21:00:16 [2825] [14] DEBUG: data: 06 33 06 27 06 48 06 4a 06 29 00 20 06 45 06 46 .3.'.H.J.). .E.F 2009-03-03 21:00:16 [2825] [14] DEBUG: data: 00 20 06 27 06 44 06 44 06 48 06 32 . .'.D.D.H.2 2009-03-03 21:00:16 [2825] [14] DEBUG:Octet string dump ends. 2009-03-03 21:00:16 [2825] [14] DEBUG: more_messages_to_send: 1 = 0x0001 2009-03-03 21:00:16 [2825] [14] DEBUG: SMPP PDU dump ends. 2009-03-03 21:00:16 [2825] [14] DEBUG: SMPP[MYMTCONN]: Got PDU: 2009-03-03 21:00:16 [2825] [14] DEBUG: SMPP PDU 0xa732ad00 dump: 2009-03-03 21:00:16 [2825] [14] DEBUG: type_name: submit_sm_resp 2009-03-03 21:00:16 [2825] [14] DEBUG: command_id: 2147483652 = 0x8004 2009-03-03 21:00:16 [2825] [14] DEBUG: command_status: 0 = 0x 2009-03-03 21:00:16 [2825] [14] DEBUG: sequence_number: 3680 = 0x0e60 2009-03-03 21:00:16 [2825] [14] DEBUG: message_id: 4129215894 2009-03-03 21:00:16 [2825] [14] DEBUG: SMPP PDU dump ends. 2009-03-03 21:00:16 [2825] [14] DEBUG: SMPP[MYMTCONN]: Manually forced source addr ton = 5, source add npi = 1 2009-03-03 21:00:16 [2825] [14] DEBUG: SMPP[MYMTCONN]: Manually forced dest addr ton = 1, dest add npi = 1 2009-03-03 21:00:16 [2825] [14] DEBUG: SMPP[MYMTCONN]: Sending PDU: BR, Hafez On Thu, Mar 5, 2009 at 11:49 AM, Falko Ziemann fal...@gmail.com wrote: It looks like your SMPP service provider hasn't send a correct ACK for the message but delivered it. Please take a look in the smpp-logfile, what you provider answered to the submit_sm. Strongly looks like an error on your providers side. Regards Falko Am 05.03.2009 um 10:40 schrieb hafez ahmad: Hi All, Hope your all doing well, I have the following warning in my logs, 2009-03-04 16:45:56 [2825] [14] WARNING: SMPP[MT_CONNICTION]: Not ACKED message found, will retransmit. SENT62sec. ago, SEQ11674, DST+ 2009-03-04 16:47:24 [2825] [14] WARNING: SMPP[MT_CONNICTION]: Not ACKED message found, will retransmit. SENT88sec. ago, SEQ11684, DST+9888 2009-03-04 16:47:24 [2825] [14] WARNING: SMPP[MT_CONNICTION]: Not ACKED message found, will retransmit. SENT88sec. ago, SEQ11685, DST+ 2009-03-04 16:47:24 [2825] [14]
Re: Not ACKED message found, will retransmit
Nope take a closer look: submit_sm: sequence_number: 3684 = 0x0e64 submit_sm_resp: sequence_number: 3680 = 0x0e60 That's not the ACK for the message you have posted but for 4 messages earlier. Regards Falko Am 05.03.2009 um 12:10 schrieb hafez ahmad: Dear falko, Thanks for reply I check the submit_sm_respon and I think everything works fine, Please advice, this is my log 2009-03-03 21:00:16 [2825] [14] DEBUG: SMPP PDU 0xa732ad00 dump: 2009-03-03 21:00:16 [2825] [14] DEBUG: type_name: submit_sm 2009-03-03 21:00:16 [2825] [14] DEBUG: command_id: 4 = 0x0004 2009-03-03 21:00:16 [2825] [14] DEBUG: command_status: 0 = 0x 2009-03-03 21:00:16 [2825] [14] DEBUG: sequence_number: 3684 = 0x0e64 2009-03-03 21:00:16 [2825] [14] DEBUG: service_type: V 2009-03-03 21:00:16 [2825] [14] DEBUG: source_addr_ton: 5 = 0x0005 2009-03-03 21:00:16 [2825] [14] DEBUG: source_addr_npi: 0 = 0x 2009-03-03 21:00:16 [2825] [14] DEBUG: source_addr: T2ME 2009-03-03 21:00:16 [2825] [14] DEBUG: dest_addr_ton: 1 = 0x0001 2009-03-03 21:00:16 [2825] [14] DEBUG: dest_addr_npi: 1 = 0x0001 2009-03-03 21:00:16 [2825] [14] DEBUG: destination_addr: 2009-03-03 21:00:16 [2825] [14] DEBUG: esm_class: 67 = 0x0043 2009-03-03 21:00:16 [2825] [14] DEBUG: protocol_id: 0 = 0x 2009-03-03 21:00:16 [2825] [14] DEBUG: priority_flag: 0 = 0x 2009-03-03 21:00:16 [2825] [14] DEBUG: schedule_delivery_time: NULL 2009-03-03 21:00:16 [2825] [14] DEBUG: validity_period: NULL 2009-03-03 21:00:16 [2825] [14] DEBUG: registered_delivery: 0 = 0x 2009-03-03 21:00:16 [2825] [14] DEBUG: replace_if_present_flag: 0 = 0x 2009-03-03 21:00:16 [2825] [14] DEBUG: data_coding: 8 = 0x0008 2009-03-03 21:00:16 [2825] [14] DEBUG: sm_default_msg_id: 0 = 0x 2009-03-03 21:00:16 [2825] [14] DEBUG: sm_length: 140 = 0x008c 2009-03-03 21:00:16 [2825] [14] DEBUG: short_message: 2009-03-03 21:00:16 [2825] [14] DEBUG:Octet string at 0xa732af00: 2009-03-03 21:00:16 [2825] [14] DEBUG: len: 140 2009-03-03 21:00:16 [2825] [14] DEBUG: size: 1024 2009-03-03 21:00:16 [2825] [14] DEBUG: immutable: 0 2009-03-03 21:00:16 [2825] [14] DEBUG: data: 05 00 03 83 04 01 06 23 06 47 06 45 00 20 06 48 ...#.G.E. .H 2009-03-03 21:00:16 [2825] [14] DEBUG: data: 06 35 06 41 06 27 06 2a 00 20 06 4a 06 48 06 33 .5.A.'.*. .J.H.3 2009-03-03 21:00:16 [2825] [14] DEBUG: data: 06 41 00 20 06 27 06 44 06 34 06 31 06 41 06 27 .A. .'.D.4.1.A.' 2009-03-03 21:00:16 [2825] [14] DEBUG: data: 06 21 00 20 06 44 06 39 06 44 06 27 06 2c 00 20 .!. .D.9.D.'.,. 2009-03-03 21:00:16 [2825] [14] DEBUG: data: 06 27 06 44 06 43 06 48 06 44 06 4a 06 33 06 2a .'.D.C.H.D.J.3.* 2009-03-03 21:00:16 [2825] [14] DEBUG: data: 06 31 06 48 06 44 00 3a 00 20 06 2a 06 24 06 2e .1.H.D.:. .*.$.. 2009-03-03 21:00:16 [2825] [14] DEBUG: data: 06 30 00 20 06 46 06 33 06 28 00 20 06 45 06 2a .0. .F.3.(. .E.* 2009-03-03 21:00:16 [2825] [14] DEBUG: data: 06 33 06 27 06 48 06 4a 06 29 00 20 06 45 06 46 .3.'.H.J.). .E.F 2009-03-03 21:00:16 [2825] [14] DEBUG: data: 00 20 06 27 06 44 06 44 06 48 06 32 . .'.D.D.H.2 2009-03-03 21:00:16 [2825] [14] DEBUG:Octet string dump ends. 2009-03-03 21:00:16 [2825] [14] DEBUG: more_messages_to_send: 1 = 0x0001 2009-03-03 21:00:16 [2825] [14] DEBUG: SMPP PDU dump ends. 2009-03-03 21:00:16 [2825] [14] DEBUG: SMPP[MYMTCONN]: Got PDU: 2009-03-03 21:00:16 [2825] [14] DEBUG: SMPP PDU 0xa732ad00 dump: 2009-03-03 21:00:16 [2825] [14] DEBUG: type_name: submit_sm_resp 2009-03-03 21:00:16 [2825] [14] DEBUG: command_id: 2147483652 = 0x8004 2009-03-03 21:00:16 [2825] [14] DEBUG: command_status: 0 = 0x 2009-03-03 21:00:16 [2825] [14] DEBUG: sequence_number: 3680 = 0x0e60 2009-03-03 21:00:16 [2825] [14] DEBUG: message_id: 4129215894 2009-03-03 21:00:16 [2825] [14] DEBUG: SMPP PDU dump ends. 2009-03-03 21:00:16 [2825] [14] DEBUG: SMPP[MYMTCONN]: Manually forced source addr ton = 5, source add npi = 1 2009-03-03 21:00:16 [2825] [14] DEBUG: SMPP[MYMTCONN]: Manually forced dest addr ton = 1, dest add npi = 1 2009-03-03 21:00:16 [2825] [14] DEBUG: SMPP[MYMTCONN]: Sending PDU: BR, Hafez On Thu, Mar 5, 2009 at 11:49 AM, Falko Ziemann fal...@gmail.com wrote: It looks like your SMPP service provider hasn't send a correct ACK for the message but delivered it. Please take a look in the smpp-logfile, what you provider answered to the submit_sm. Strongly looks like an error on your providers side. Regards Falko Am 05.03.2009 um 10:40 schrieb hafez ahmad: Hi All, Hope your all doing well, I have the following warning in my logs, 2009-03-04 16:45:56 [2825] [14] WARNING: SMPP[MT_CONNICTION]: Not ACKED message found, will retransmit. SENT62sec. ago, SEQ11674, DST+
Re: Not ACKED message found, will retransmit
Sorry, thats the correct 2009-03-03 21:00:16 [2825] [14] DEBUG: SMPP PDU 0xa732ad00 dump: 2009-03-03 21:00:16 [2825] [14] DEBUG: type_name: submit_sm 2009-03-03 21:00:16 [2825] [14] DEBUG: command_id: 4 = 0x0004 2009-03-03 21:00:16 [2825] [14] DEBUG: command_status: 0 = 0x 2009-03-03 21:00:16 [2825] [14] DEBUG: sequence_number: 3684 = 0x0e64 2009-03-03 21:00:16 [2825] [14] DEBUG: service_type: V 2009-03-03 21:00:16 [2825] [14] DEBUG: source_addr_ton: 5 = 0x0005 2009-03-03 21:00:16 [2825] [14] DEBUG: source_addr_npi: 0 = 0x 2009-03-03 21:00:16 [2825] [14] DEBUG: source_addr: T2ME 2009-03-03 21:00:16 [2825] [14] DEBUG: dest_addr_ton: 1 = 0x0001 2009-03-03 21:00:16 [2825] [14] DEBUG: dest_addr_npi: 1 = 0x0001 2009-03-03 21:00:16 [2825] [14] DEBUG: destination_addr: 2009-03-03 21:00:16 [2825] [14] DEBUG: esm_class: 67 = 0x0043 2009-03-03 21:00:16 [2825] [14] DEBUG: protocol_id: 0 = 0x 2009-03-03 21:00:16 [2825] [14] DEBUG: priority_flag: 0 = 0x 2009-03-03 21:00:16 [2825] [14] DEBUG: schedule_delivery_time: NULL 2009-03-03 21:00:16 [2825] [14] DEBUG: validity_period: NULL 2009-03-03 21:00:16 [2825] [14] DEBUG: registered_delivery: 0 = 0x 2009-03-03 21:00:16 [2825] [14] DEBUG: replace_if_present_flag: 0 = 0x 2009-03-03 21:00:16 [2825] [14] DEBUG: data_coding: 8 = 0x0008 2009-03-03 21:00:16 [2825] [14] DEBUG: sm_default_msg_id: 0 = 0x 2009-03-03 21:00:16 [2825] [14] DEBUG: sm_length: 140 = 0x008c 2009-03-03 21:00:16 [2825] [14] DEBUG: short_message: 2009-03-03 21:00:16 [2825] [14] DEBUG:Octet string at 0xa732af00: 2009-03-03 21:00:16 [2825] [14] DEBUG: len: 140 2009-03-03 21:00:16 [2825] [14] DEBUG: size: 1024 2009-03-03 21:00:16 [2825] [14] DEBUG: immutable: 0 2009-03-03 21:00:16 [2825] [14] DEBUG: data: 05 00 03 83 04 01 06 23 06 47 06 45 00 20 06 48 ...#.G.E. .H 2009-03-03 21:00:16 [2825] [14] DEBUG: data: 06 35 06 41 06 27 06 2a 00 20 06 4a 06 48 06 33 .5.A.'.*. .J.H.3 2009-03-03 21:00:16 [2825] [14] DEBUG: data: 06 41 00 20 06 27 06 44 06 34 06 31 06 41 06 27 .A. .'.D.4.1.A.' 2009-03-03 21:00:16 [2825] [14] DEBUG: data: 06 21 00 20 06 44 06 39 06 44 06 27 06 2c 00 20 .!. .D.9.D.'.,. 2009-03-03 21:00:16 [2825] [14] DEBUG: data: 06 27 06 44 06 43 06 48 06 44 06 4a 06 33 06 2a .'.D.C.H.D.J.3.* 2009-03-03 21:00:16 [2825] [14] DEBUG: data: 06 31 06 48 06 44 00 3a 00 20 06 2a 06 24 06 2e .1.H.D.:. .*.$.. 2009-03-03 21:00:16 [2825] [14] DEBUG: data: 06 30 00 20 06 46 06 33 06 28 00 20 06 45 06 2a .0. .F.3.(. .E.* 2009-03-03 21:00:16 [2825] [14] DEBUG: data: 06 33 06 27 06 48 06 4a 06 29 00 20 06 45 06 46 .3.'.H.J.). .E.F 2009-03-03 21:00:16 [2825] [14] DEBUG: data: 00 20 06 27 06 44 06 44 06 48 06 32 . .'.D.D.H.2 2009-03-03 21:00:16 [2825] [14] DEBUG:Octet string dump ends. 2009-03-03 21:00:16 [2825] [14] DEBUG: more_messages_to_send: 1 = 0x0001 2009-03-03 21:00:16 [2825] [14] DEBUG: SMPP PDU dump ends. 2009-03-03 21:00:16 [2825] [14] DEBUG: SMPP[MYMTCONN]: Got PDU: 2009-03-03 21:00:16 [2825] [14] DEBUG: SMPP PDU 0xa732ad00 dump: 2009-03-03 21:00:16 [2825] [14] DEBUG: type_name: submit_sm_resp 2009-03-03 21:00:16 [2825] [14] DEBUG: command_id: 2147483652 = 0x8004 2009-03-03 21:00:16 [2825] [14] DEBUG: command_status: 0 = 0x 2009-03-03 21:00:16 [2825] [14] DEBUG: sequence_number: 3684 = 0x0e64 2009-03-03 21:00:16 [2825] [14] DEBUG: message_id: 4129216897 2009-03-03 21:00:16 [2825] [14] DEBUG: SMPP PDU dump ends. Regards, Hafez On Thu, Mar 5, 2009 at 1:14 PM, Falko Ziemann fal...@gmail.com wrote: Nope take a closer look: submit_sm: sequence_number: 3684 = 0x0e64 submit_sm_resp: sequence_number: 3680 = 0x0e60 That's not the ACK for the message you have posted but for 4 messages earlier. Regards Falko Am 05.03.2009 um 12:10 schrieb hafez ahmad: Dear falko, Thanks for reply I check the submit_sm_respon and I think everything works fine, Please advice, this is my log 2009-03-03 21:00:16 [2825] [14] DEBUG: SMPP PDU 0xa732ad00 dump: 2009-03-03 21:00:16 [2825] [14] DEBUG: type_name: submit_sm 2009-03-03 21:00:16 [2825] [14] DEBUG: command_id: 4 = 0x0004 2009-03-03 21:00:16 [2825] [14] DEBUG: command_status: 0 = 0x 2009-03-03 21:00:16 [2825] [14] DEBUG: sequence_number: 3684 = 0x0e64 2009-03-03 21:00:16 [2825] [14] DEBUG: service_type: V 2009-03-03 21:00:16 [2825] [14] DEBUG: source_addr_ton: 5 = 0x0005 2009-03-03 21:00:16 [2825] [14] DEBUG: source_addr_npi: 0 = 0x 2009-03-03 21:00:16 [2825] [14] DEBUG: source_addr: T2ME 2009-03-03 21:00:16 [2825] [14] DEBUG: dest_addr_ton: 1 = 0x0001 2009-03-03 21:00:16 [2825] [14] DEBUG: dest_addr_npi: 1 = 0x0001 2009-03-03 21:00:16 [2825] [14] DEBUG: destination_addr:
Re: DLR-URL and parameters confusion
Thanks Falko, I caught the logic, but I`m just receiving some errors, maybe misplacement of parameters in the URL So in my case; get-url = http://10.1.21.236:2468/GetMOSms.asmx/GetSms?originator=%pdestination=%Ptext=%a dlr-url = http://10.1.21.236:2468/GetMOSms.asmx/GetStatus?status=%ddlrid=%F; Calling API from the browser like this; http://10.1.21.184:13014/cgi-bin/sendsms?username=bpassword=bfrom=15106to=355672103379text=hello world!dlr-url=' http://10.1.21.236:53372/GetMOSms.asmx/GetStatus?dlrv=%dstatus=%Fhttp://10.1.21.236:53372/GetMOSms.asmx/GetStatus?dlrv=%25dstatus=%25F ' and I get: *2009-03-03 20:58:14 [7141] [3] INFO: smsbox: Got HTTP request /cgi-bin/sendsms from 10.1.21.236 2009-03-03 20:58:14 [7141] [3] INFO: sendsms used by b 2009-03-03 20:58:14 [7141] [3] INFO: sendsms sender:b:15106 (10.1.21.236) to:355672103379 msg:hello world! 2009-03-03 20:58:14 [7141] [3] DEBUG: Status: 400 Answer: DLR-URL field misformed, rejected 2009-03-03 20:58:14 [7141] [3] DEBUG: HTTP: Resetting HTTPClient for `10.1.21.236'. * On Thu, Mar 5, 2009 at 9:36 AM, Falko Ziemann fal...@gmail.com wrote: I think you're looking at it the wrong way. The application posts the sms to kannel. kannel just answer, if it accepts the message. After the delivery (mind: if the handset is off, this might take hours...) kannel posts the DLR to an URL you define. So you send the SMS to the kannel URL and kannel posts the DLR to your application. These are 2 isolated cases, you could even get multiple DLRs for one message. Regards Falko Am 05.03.2009 um 08:39 schrieb Elton Hoxha: Hi again, Lets put it in different way; When I try to call http://10.1.21.184:13014/cgi-bin/sendsms?username=bpassword=bto=355666from=15106text=ab How can I be able to return both the receipted_message_id (like this: 235584602526) and the deliver status to the external application. I just need these 2 parameters. Thanks Elton On Thu, Mar 5, 2009 at 8:22 AM, Elton Hoxha elt...@gmail.com wrote: Hi Nikos, In the manual I read the following: Must set dlr-url on sendsms-user group or use the dlr-url CGI variable. Where is the problem at my configuration file? On Wed, Mar 4, 2009 at 10:07 PM, Nikos Balkanas nbalka...@gmail.comwrote: Hi, You are using the wrong dlr-url. Seems you are trying to push through (!) dlrs to another sendsms service and you not provide the credentials (b,b). You r dlr-url shouldn't point to your sendsms service. BR, Nikos - Original Message - *From:* Elton Hoxha elt...@gmail.com *To:* users@kannel.org User us...@kannel.org+user *Sent:* Wednesday, March 04, 2009 8:24 PM *Subject:* DLR-URL and parameters confusion Hi, I have the below sms-service and sendsms-user blocks; group = sendsms-user username = b password = b dlr-url = http://10.1.21.184:13014/cgi-bin/sendsms?mid=%F; group = sms-service keyword = default catch-all = true max-messages = 0 get-url = http://10.1.21.236:2468/GetMOSms.asmx/GetSms?originator=%pdestination=%Ptext=%tstatus=%dsystemtype=%B When I try to invoke http://10.1.21.184:13014/cgi-bin/sendsms?username=bpassword=bto=3556722from=15106text=abidlr-mask=3;, I expect that kannel returns to me with the message ID (defined in the dlr-url, mid=%F). I get the following logs; The browser returnes 0: Accepted for delivery message but I just want to get the mesage id highlighted below. Also from the logs below I assume that get-url inside the sms-service block is being called. Is is true? How can we prevent it? 2009-03-03 11:42:57 [6013] [9] DEBUG: Parsing URL ` http://10.1.21.184:13014/cgi-bin/sendsms?status=*236980399409*': 2009-03-03 11:42:57 [6013] [9] DEBUG: Scheme: http:// 2009-03-03 11:42:57 [6013] [9] DEBUG: Host: 10.1.21.184 2009-03-03 11:42:57 [6013] [9] DEBUG: Port: 13014 2009-03-03 11:42:57 [6013] [9] DEBUG: Username: (null) 2009-03-03 11:42:57 [6013] [9] DEBUG: Password: (null) 2009-03-03 11:42:57 [6013] [9] DEBUG: Path: /cgi-bin/sendsms 2009-03-03 11:42:57 [6013] [9] DEBUG: Query: status=236980399409 2009-03-03 11:42:57 [6013] [9] DEBUG: Fragment: (null) 2009-03-03 11:42:57 [6013] [9] DEBUG: HTTP: Opening connection to ` 10.1.21.184:13014' (fd=27). 2009-03-03 11:42:57 [6013] [9] DEBUG: Socket connecting 2009-03-03 11:42:57 [6013] [2] DEBUG: HTTP: Creating HTTPClient for `10.1.21.184'. 2009-03-03 11:42:57 [6013] [2] DEBUG: HTTP: Created HTTPClient area 0x9afd570. 2009-03-03 11:42:57 [6013] [8] DEBUG: Thread 8 (gwlib/fdset.c:poller) maps to pid 6013. 2009-03-03 11:42:57 [6013] [8] DEBUG: Get info about connecting socket 2009-03-03 11:42:57 [6013] [8] DEBUG: HTTP: Sending request: 2009-03-03 11:42:57 [6013] [8] DEBUG: Octet string at 0x9afd5e0: 2009-03-03 11:42:57 [6013] [8] DEBUG: len: 128 2009-03-03 11:42:57 [6013] [8] DEBUG: size: 1024 2009-03-03 11:42:57 [6013] [8] DEBUG: immutable: 0 2009-03-03 11:42:57 [6013] [8] DEBUG: data: 47 45 54 20 2f 63 67
Re: msg-id-type not working
a workarround would be to set a fake script so kannel will call it, found it and be happy XD and set dlr-mask to 8 so you just receive a dlr from kannel saying smsc received message |-| Envíe y Reciba Datos y mensajes de Texto (SMS) hacia y desde cualquier celular y Nextel en el Perú, México y en mas de 180 paises. Use aplicaciones 2 vias via SMS y GPRS online Visitenos en www.perusms.NET www.smsglobal.com.mx y www.pravcom.com On Thu, Mar 5, 2009 at 12:50 AM, jyotiranjan panda tell2jy...@gmail.com wrote: Thanks Alex, Now its not giving any error, with configuring msg-id-type = 1,dlr-mask and dlr-url. But if I am giving only msg-id-type, dlr-mask without dlr-url ,kannel gives below error. [r...@testgw TEST]# 2009-03-05 10:54:02 [16980] [9] ERROR: URL doesn't start with `http://' nor `https://' 2009-03-05 10:54:02 [16980] [9] ERROR: Couldn't send request to Since some of my clients don't require any dlr , As I need it for confirmation for my side, does it is mandatory that if I am giving dlr-mask then I have to give a dlr-url ? Thanks Regards Jyoti Ranjan Panda On Wed, Mar 4, 2009 at 5:45 PM, Alexander Malysh amal...@kannel.org wrote: Hi again, ok, that's clear why it's not working... SMSC is buggy because it send DLRs although you didn't requested it. Therefore kannel doesn't add this submit_sm to the waiting requests and can't match DLR at the end. Please add dlr-mask dlr-url to you request (seee userguide) and it will work... Thanks, Alex jyotiranjan panda schrieb: Thnks Alex, I am posting the debug log, I am not using any database. i.e using default 'internal' for storage type. 2009-03-04 17:16:08 [14297] [6] DEBUG: type_name: *submit_sm* 2009-03-04 17:16:08 [14297] [6] DEBUG: command_id: 4 = 0x0004 2009-03-04 17:16:08 [14297] [6] DEBUG: command_status: 0 = 0x 2009-03-04 17:16:08 [14297] [6] DEBUG: sequence_number: 3 = 0x0003 2009-03-04 17:16:08 [14297] [6] DEBUG: service_type: NULL 2009-03-04 17:16:08 [14297] [6] DEBUG: source_addr_ton: 5 = 0x0005 2009-03-04 17:16:08 [14297] [6] DEBUG: source_addr_npi: 0 = 0x 2009-03-04 17:16:08 [14297] [6] DEBUG: source_addr: AMEX 2009-03-04 17:16:08 [14297] [6] DEBUG: dest_addr_ton: 1 = 0x0001 2009-03-04 17:16:08 [14297] [6] DEBUG: dest_addr_npi: 1 = 0x0001 2009-03-04 17:16:08 [14297] [6] DEBUG: destination_addr: 919911274740 2009-03-04 17:16:08 [14297] [6] DEBUG: esm_class: 3 = 0x0003 2009-03-04 17:16:08 [14297] [6] DEBUG: protocol_id: 0 = 0x 2009-03-04 17:16:08 [14297] [6] DEBUG: priority_flag: 0 = 0x 2009-03-04 17:16:08 [14297] [6] DEBUG: schedule_delivery_time: NULL 2009-03-04 17:16:08 [14297] [6] DEBUG: validity_period: NULL 2009-03-04 17:16:08 [14297] [6] DEBUG: registered_delivery: 0 = 0x flag is 0 so you didn't requested DLR 2009-03-04 17:16:08 [14297] [6] DEBUG: replace_if_present_flag: 0 = 0x 2009-03-04 17:16:08 [14297] [6] DEBUG: data_coding: 0 = 0x 2009-03-04 17:16:08 [14297] [6] DEBUG: sm_default_msg_id: 0 = 0x 2009-03-04 17:16:08 [14297] [6] DEBUG: sm_length: 8 = 0x0008 2009-03-04 17:16:08 [14297] [6] DEBUG: short_message: test msg 2009-03-04 17:16:08 [14297] [6] DEBUG: SMPP PDU dump ends. 2009-03-04 17:16:08 [14297] [6] DEBUG: SMPP[hrtestgw1]: Got PDU: 2009-03-04 17:16:08 [14297] [6] DEBUG: SMPP PDU 0x8968450 dump: 2009-03-04 17:16:08 [14297] [6] DEBUG: type_name: *submit_sm_resp* 2009-03-04 17:16:08 [14297] [6] DEBUG: command_id: 2147483652 = 0x8004 2009-03-04 17:16:08 [14297] [6] DEBUG: command_status: 0 = 0x 2009-03-04 17:16:08 [14297] [6] DEBUG: sequence_number: 3 = 0x0003 2009-03-04 17:16:08 [14297] [6] DEBUG: * message_id: 3A75A43* 2009-03-04 17:16:08 [14297] [6] DEBUG: SMPP PDU dump ends. 2009-03-04 17:16:11 [14297] [6] DEBUG: SMPP[hrtestgw1]: Got PDU: 2009-03-04 17:16:11 [14297] [6] DEBUG: SMPP PDU 0x89668a0 dump: 2009-03-04 17:16:11 [14297] [6] DEBUG: type_name: *deliver_sm* 2009-03-04 17:16:11 [14297] [6] DEBUG: command_id: 5 = 0x0005 2009-03-04 17:16:11 [14297] [6] DEBUG: command_status: 0 = 0x 2009-03-04 17:16:11 [14297] [6] DEBUG: sequence_number: 1 = 0x0001 2009-03-04 17:16:11 [14297] [6] DEBUG: service_type: NULL 2009-03-04 17:16:11 [14297] [6] DEBUG: source_addr_ton: 1 = 0x0001 2009-03-04 17:16:11 [14297] [6] DEBUG: source_addr_npi: 1 = 0x0001 2009-03-04 17:16:11 [14297] [6] DEBUG: source_addr: 919911274740 2009-03-04 17:16:11 [14297] [6] DEBUG: dest_addr_ton: 2 = 0x0002 2009-03-04 17:16:11 [14297] [6] DEBUG: dest_addr_npi: 1 = 0x0001 2009-03-04 17:16:11 [14297] [6] DEBUG: destination_addr:
Re: DLR-URL and parameters confusion
You are missing dlr-mask parameter |-| Envíe y Reciba Datos y mensajes de Texto (SMS) hacia y desde cualquier celular y Nextel en el Perú, México y en mas de 180 paises. Use aplicaciones 2 vias via SMS y GPRS online Visitenos en www.perusms.NET www.smsglobal.com.mx y www.pravcom.com On Thu, Mar 5, 2009 at 7:56 AM, Elton Hoxha elt...@gmail.com wrote: Thanks Falko, I caught the logic, but I`m just receiving some errors, maybe misplacement of parameters in the URL So in my case; get-url = http://10.1.21.236:2468/GetMOSms.asmx/GetSms?originator=%pdestination=%Ptext=%a; dlr-url = http://10.1.21.236:2468/GetMOSms.asmx/GetStatus?status=%ddlrid=%F; Calling API from the browser like this; http://10.1.21.184:13014/cgi-bin/sendsms?username=bpassword=bfrom=15106to=355672103379text=helloworld!dlr-url='http://10.1.21.236:53372/GetMOSms.asmx/GetStatus?dlrv=%dstatus=%F' and I get: 2009-03-03 20:58:14 [7141] [3] INFO: smsbox: Got HTTP request /cgi-bin/sendsms from 10.1.21.236 2009-03-03 20:58:14 [7141] [3] INFO: sendsms used by b 2009-03-03 20:58:14 [7141] [3] INFO: sendsms sender:b:15106 (10.1.21.236) to:355672103379 msg:hello world! 2009-03-03 20:58:14 [7141] [3] DEBUG: Status: 400 Answer: DLR-URL field misformed, rejected 2009-03-03 20:58:14 [7141] [3] DEBUG: HTTP: Resetting HTTPClient for `10.1.21.236'. On Thu, Mar 5, 2009 at 9:36 AM, Falko Ziemann fal...@gmail.com wrote: I think you're looking at it the wrong way. The application posts the sms to kannel. kannel just answer, if it accepts the message. After the delivery (mind: if the handset is off, this might take hours...) kannel posts the DLR to an URL you define. So you send the SMS to the kannel URL and kannel posts the DLR to your application. These are 2 isolated cases, you could even get multiple DLRs for one message. Regards Falko Am 05.03.2009 um 08:39 schrieb Elton Hoxha: Hi again, Lets put it in different way; When I try to call http://10.1.21.184:13014/cgi-bin/sendsms?username=bpassword=bto=355666from=15106text=ab How can I be able to return both the receipted_message_id (like this: 235584602526) and the deliver status to the external application. I just need these 2 parameters. Thanks Elton On Thu, Mar 5, 2009 at 8:22 AM, Elton Hoxha elt...@gmail.com wrote: Hi Nikos, In the manual I read the following: Must set dlr-url on sendsms-user group or use the dlr-url CGI variable. Where is the problem at my configuration file? On Wed, Mar 4, 2009 at 10:07 PM, Nikos Balkanas nbalka...@gmail.com wrote: Hi, You are using the wrong dlr-url. Seems you are trying to push through (!) dlrs to another sendsms service and you not provide the credentials (b,b). You r dlr-url shouldn't point to your sendsms service. BR, Nikos - Original Message - From: Elton Hoxha To: users@kannel.org User Sent: Wednesday, March 04, 2009 8:24 PM Subject: DLR-URL and parameters confusion Hi, I have the below sms-service and sendsms-user blocks; group = sendsms-user username = b password = b dlr-url = http://10.1.21.184:13014/cgi-bin/sendsms?mid=%F; group = sms-service keyword = default catch-all = true max-messages = 0 get-url = http://10.1.21.236:2468/GetMOSms.asmx/GetSms?originator=%pdestination=%Ptext=%tstatus=%dsystemtype=%B; When I try to invoke http://10.1.21.184:13014/cgi-bin/sendsms?username=bpassword=bto=3556722from=15106text=abidlr-mask=3;, I expect that kannel returns to me with the message ID (defined in the dlr-url, mid=%F). I get the following logs; The browser returnes 0: Accepted for delivery message but I just want to get the mesage id highlighted below. Also from the logs below I assume that get-url inside the sms-service block is being called. Is is true? How can we prevent it? 2009-03-03 11:42:57 [6013] [9] DEBUG: Parsing URL `http://10.1.21.184:13014/cgi-bin/sendsms?status=236980399409': 2009-03-03 11:42:57 [6013] [9] DEBUG: Scheme: http:// 2009-03-03 11:42:57 [6013] [9] DEBUG: Host: 10.1.21.184 2009-03-03 11:42:57 [6013] [9] DEBUG: Port: 13014 2009-03-03 11:42:57 [6013] [9] DEBUG: Username: (null) 2009-03-03 11:42:57 [6013] [9] DEBUG: Password: (null) 2009-03-03 11:42:57 [6013] [9] DEBUG: Path: /cgi-bin/sendsms 2009-03-03 11:42:57 [6013] [9] DEBUG: Query: status=236980399409 2009-03-03 11:42:57 [6013] [9] DEBUG: Fragment: (null) 2009-03-03 11:42:57 [6013] [9] DEBUG: HTTP: Opening connection to `10.1.21.184:13014' (fd=27). 2009-03-03 11:42:57 [6013] [9] DEBUG: Socket connecting 2009-03-03 11:42:57 [6013] [2] DEBUG: HTTP: Creating HTTPClient for `10.1.21.184'. 2009-03-03 11:42:57 [6013] [2] DEBUG: HTTP: Created HTTPClient area 0x9afd570. 2009-03-03 11:42:57 [6013] [8] DEBUG: Thread 8 (gwlib/fdset.c:poller) maps to pid 6013. 2009-03-03 11:42:57 [6013] [8] DEBUG: Get info about
Re: DLR-URL and parameters confusion
Also dlr-Url should be urlencoded |-| Envíe y Reciba Datos y mensajes de Texto (SMS) hacia y desde cualquier celular y Nextel en el Perú, México y en mas de 180 paises. Use aplicaciones 2 vias via SMS y GPRS online Visitenos en www.perusms.NET www.smsglobal.com.mx y www.pravcom.com On Thu, Mar 5, 2009 at 8:11 AM, Alvaro Cornejo cornejo.alv...@gmail.com wrote: You are missing dlr-mask parameter |-| Envíe y Reciba Datos y mensajes de Texto (SMS) hacia y desde cualquier celular y Nextel en el Perú, México y en mas de 180 paises. Use aplicaciones 2 vias via SMS y GPRS online Visitenos en www.perusms.NET www.smsglobal.com.mx y www.pravcom.com On Thu, Mar 5, 2009 at 7:56 AM, Elton Hoxha elt...@gmail.com wrote: Thanks Falko, I caught the logic, but I`m just receiving some errors, maybe misplacement of parameters in the URL So in my case; get-url = http://10.1.21.236:2468/GetMOSms.asmx/GetSms?originator=%pdestination=%Ptext=%a; dlr-url = http://10.1.21.236:2468/GetMOSms.asmx/GetStatus?status=%ddlrid=%F; Calling API from the browser like this; http://10.1.21.184:13014/cgi-bin/sendsms?username=bpassword=bfrom=15106to=355672103379text=helloworld!dlr-url='http://10.1.21.236:53372/GetMOSms.asmx/GetStatus?dlrv=%dstatus=%F' and I get: 2009-03-03 20:58:14 [7141] [3] INFO: smsbox: Got HTTP request /cgi-bin/sendsms from 10.1.21.236 2009-03-03 20:58:14 [7141] [3] INFO: sendsms used by b 2009-03-03 20:58:14 [7141] [3] INFO: sendsms sender:b:15106 (10.1.21.236) to:355672103379 msg:hello world! 2009-03-03 20:58:14 [7141] [3] DEBUG: Status: 400 Answer: DLR-URL field misformed, rejected 2009-03-03 20:58:14 [7141] [3] DEBUG: HTTP: Resetting HTTPClient for `10.1.21.236'. On Thu, Mar 5, 2009 at 9:36 AM, Falko Ziemann fal...@gmail.com wrote: I think you're looking at it the wrong way. The application posts the sms to kannel. kannel just answer, if it accepts the message. After the delivery (mind: if the handset is off, this might take hours...) kannel posts the DLR to an URL you define. So you send the SMS to the kannel URL and kannel posts the DLR to your application. These are 2 isolated cases, you could even get multiple DLRs for one message. Regards Falko Am 05.03.2009 um 08:39 schrieb Elton Hoxha: Hi again, Lets put it in different way; When I try to call http://10.1.21.184:13014/cgi-bin/sendsms?username=bpassword=bto=355666from=15106text=ab How can I be able to return both the receipted_message_id (like this: 235584602526) and the deliver status to the external application. I just need these 2 parameters. Thanks Elton On Thu, Mar 5, 2009 at 8:22 AM, Elton Hoxha elt...@gmail.com wrote: Hi Nikos, In the manual I read the following: Must set dlr-url on sendsms-user group or use the dlr-url CGI variable. Where is the problem at my configuration file? On Wed, Mar 4, 2009 at 10:07 PM, Nikos Balkanas nbalka...@gmail.com wrote: Hi, You are using the wrong dlr-url. Seems you are trying to push through (!) dlrs to another sendsms service and you not provide the credentials (b,b). You r dlr-url shouldn't point to your sendsms service. BR, Nikos - Original Message - From: Elton Hoxha To: users@kannel.org User Sent: Wednesday, March 04, 2009 8:24 PM Subject: DLR-URL and parameters confusion Hi, I have the below sms-service and sendsms-user blocks; group = sendsms-user username = b password = b dlr-url = http://10.1.21.184:13014/cgi-bin/sendsms?mid=%F; group = sms-service keyword = default catch-all = true max-messages = 0 get-url = http://10.1.21.236:2468/GetMOSms.asmx/GetSms?originator=%pdestination=%Ptext=%tstatus=%dsystemtype=%B; When I try to invoke http://10.1.21.184:13014/cgi-bin/sendsms?username=bpassword=bto=3556722from=15106text=abidlr-mask=3;, I expect that kannel returns to me with the message ID (defined in the dlr-url, mid=%F). I get the following logs; The browser returnes 0: Accepted for delivery message but I just want to get the mesage id highlighted below. Also from the logs below I assume that get-url inside the sms-service block is being called. Is is true? How can we prevent it? 2009-03-03 11:42:57 [6013] [9] DEBUG: Parsing URL `http://10.1.21.184:13014/cgi-bin/sendsms?status=236980399409': 2009-03-03 11:42:57 [6013] [9] DEBUG: Scheme: http:// 2009-03-03 11:42:57 [6013] [9] DEBUG: Host: 10.1.21.184 2009-03-03 11:42:57 [6013] [9] DEBUG: Port: 13014 2009-03-03 11:42:57 [6013] [9] DEBUG: Username: (null) 2009-03-03 11:42:57 [6013] [9] DEBUG: Password: (null) 2009-03-03 11:42:57 [6013] [9] DEBUG: Path: /cgi-bin/sendsms 2009-03-03 11:42:57 [6013] [9] DEBUG: Query: status=236980399409 2009-03-03 11:42:57
Re: Not ACKED message found, will retransmit
Hmm, sorry, no idea. Seems like kannel forgets about the ack... A hotfix would be to set wait-ack-expire = 0x02 in the smsc group. That would make kannel waiting forever for the ACK and never retry. Very dirty hack, but should do the job until someone comes around with a better solution... Regards Falko Am 05.03.2009 um 13:37 schrieb hafez ahmad: Sorry, thats the correct 2009-03-03 21:00:16 [2825] [14] DEBUG: SMPP PDU 0xa732ad00 dump: 2009-03-03 21:00:16 [2825] [14] DEBUG: type_name: submit_sm 2009-03-03 21:00:16 [2825] [14] DEBUG: command_id: 4 = 0x0004 2009-03-03 21:00:16 [2825] [14] DEBUG: command_status: 0 = 0x 2009-03-03 21:00:16 [2825] [14] DEBUG: sequence_number: 3684 = 0x0e64 2009-03-03 21:00:16 [2825] [14] DEBUG: service_type: V 2009-03-03 21:00:16 [2825] [14] DEBUG: source_addr_ton: 5 = 0x0005 2009-03-03 21:00:16 [2825] [14] DEBUG: source_addr_npi: 0 = 0x 2009-03-03 21:00:16 [2825] [14] DEBUG: source_addr: T2ME 2009-03-03 21:00:16 [2825] [14] DEBUG: dest_addr_ton: 1 = 0x0001 2009-03-03 21:00:16 [2825] [14] DEBUG: dest_addr_npi: 1 = 0x0001 2009-03-03 21:00:16 [2825] [14] DEBUG: destination_addr: 2009-03-03 21:00:16 [2825] [14] DEBUG: esm_class: 67 = 0x0043 2009-03-03 21:00:16 [2825] [14] DEBUG: protocol_id: 0 = 0x 2009-03-03 21:00:16 [2825] [14] DEBUG: priority_flag: 0 = 0x 2009-03-03 21:00:16 [2825] [14] DEBUG: schedule_delivery_time: NULL 2009-03-03 21:00:16 [2825] [14] DEBUG: validity_period: NULL 2009-03-03 21:00:16 [2825] [14] DEBUG: registered_delivery: 0 = 0x 2009-03-03 21:00:16 [2825] [14] DEBUG: replace_if_present_flag: 0 = 0x 2009-03-03 21:00:16 [2825] [14] DEBUG: data_coding: 8 = 0x0008 2009-03-03 21:00:16 [2825] [14] DEBUG: sm_default_msg_id: 0 = 0x 2009-03-03 21:00:16 [2825] [14] DEBUG: sm_length: 140 = 0x008c 2009-03-03 21:00:16 [2825] [14] DEBUG: short_message: 2009-03-03 21:00:16 [2825] [14] DEBUG:Octet string at 0xa732af00: 2009-03-03 21:00:16 [2825] [14] DEBUG: len: 140 2009-03-03 21:00:16 [2825] [14] DEBUG: size: 1024 2009-03-03 21:00:16 [2825] [14] DEBUG: immutable: 0 2009-03-03 21:00:16 [2825] [14] DEBUG: data: 05 00 03 83 04 01 06 23 06 47 06 45 00 20 06 48 ...#.G.E. .H 2009-03-03 21:00:16 [2825] [14] DEBUG: data: 06 35 06 41 06 27 06 2a 00 20 06 4a 06 48 06 33 .5.A.'.*. .J.H.3 2009-03-03 21:00:16 [2825] [14] DEBUG: data: 06 41 00 20 06 27 06 44 06 34 06 31 06 41 06 27 .A. .'.D.4.1.A.' 2009-03-03 21:00:16 [2825] [14] DEBUG: data: 06 21 00 20 06 44 06 39 06 44 06 27 06 2c 00 20 .!. .D.9.D.'.,. 2009-03-03 21:00:16 [2825] [14] DEBUG: data: 06 27 06 44 06 43 06 48 06 44 06 4a 06 33 06 2a .'.D.C.H.D.J.3.* 2009-03-03 21:00:16 [2825] [14] DEBUG: data: 06 31 06 48 06 44 00 3a 00 20 06 2a 06 24 06 2e .1.H.D.:. .*.$.. 2009-03-03 21:00:16 [2825] [14] DEBUG: data: 06 30 00 20 06 46 06 33 06 28 00 20 06 45 06 2a .0. .F.3.(. .E.* 2009-03-03 21:00:16 [2825] [14] DEBUG: data: 06 33 06 27 06 48 06 4a 06 29 00 20 06 45 06 46 .3.'.H.J.). .E.F 2009-03-03 21:00:16 [2825] [14] DEBUG: data: 00 20 06 27 06 44 06 44 06 48 06 32 . .'.D.D.H.2 2009-03-03 21:00:16 [2825] [14] DEBUG:Octet string dump ends. 2009-03-03 21:00:16 [2825] [14] DEBUG: more_messages_to_send: 1 = 0x0001 2009-03-03 21:00:16 [2825] [14] DEBUG: SMPP PDU dump ends. 2009-03-03 21:00:16 [2825] [14] DEBUG: SMPP[MYMTCONN]: Got PDU: 2009-03-03 21:00:16 [2825] [14] DEBUG: SMPP PDU 0xa732ad00 dump: 2009-03-03 21:00:16 [2825] [14] DEBUG: type_name: submit_sm_resp 2009-03-03 21:00:16 [2825] [14] DEBUG: command_id: 2147483652 = 0x8004 2009-03-03 21:00:16 [2825] [14] DEBUG: command_status: 0 = 0x 2009-03-03 21:00:16 [2825] [14] DEBUG: sequence_number: 3684 = 0x0e64 2009-03-03 21:00:16 [2825] [14] DEBUG: message_id: 4129216897 2009-03-03 21:00:16 [2825] [14] DEBUG: SMPP PDU dump ends. Regards, Hafez On Thu, Mar 5, 2009 at 1:14 PM, Falko Ziemann fal...@gmail.com wrote: Nope take a closer look: submit_sm: sequence_number: 3684 = 0x0e64 submit_sm_resp: sequence_number: 3680 = 0x0e60 That's not the ACK for the message you have posted but for 4 messages earlier. Regards Falko Am 05.03.2009 um 12:10 schrieb hafez ahmad: Dear falko, Thanks for reply I check the submit_sm_respon and I think everything works fine, Please advice, this is my log 2009-03-03 21:00:16 [2825] [14] DEBUG: SMPP PDU 0xa732ad00 dump: 2009-03-03 21:00:16 [2825] [14] DEBUG: type_name: submit_sm 2009-03-03 21:00:16 [2825] [14] DEBUG: command_id: 4 = 0x0004 2009-03-03 21:00:16 [2825] [14] DEBUG: command_status: 0 = 0x 2009-03-03 21:00:16 [2825] [14] DEBUG: sequence_number: 3684 = 0x0e64 2009-03-03 21:00:16 [2825] [14] DEBUG: service_type: V 2009-03-03 21:00:16 [2825]
UCP-53
Hello List, I'm using Kannel version 1.4.1 on EMI/UCP protocol. I'm already using DLR - however the ACK/ or NACK/ comes from the SMS G/W and not from the Operator SMSC In order to check if the message was received by the user I need to implement Delivery notification operation -53 UCP-53. I was guided by the SMS G/W integrators - to change the following parameters NrqNotification Request set with value 1 NT Notification Typeset with value 3 See 1 and 3 after the largeaccount (short code number) .07/00347/O/51/msisdn/largeaccount//1//3/4/904/024A3A6DB9BD7DBDB9957DB5BDB9BC04009916A65AB6551649A2D9845A2A8B86916CC30AB2C9365A2AC26CB2447708C2D138592B0B459B6CB32D1561661541365B2292A8B44D061055170D22D9865A2AC26C2AC26CB6446461689C0AC2D966DA2CC2AC2CCB6551689B0AB2C9365A226000///1/1//01070605041581FE09323632373338393132///C8 Does anyone knows if Kannel supports this operation, and how to implement it? I was also explained that this query is not in RealTime and I will have to check the status. In return I'm suppose to receive 0 for positive delivery or one of the following error codes: Table B-3: Error Messages and Reason Codes in Notifications Reason Code Meaning 000 Unknown subscriber 001 Service temporary not available 002 Service temporary not available 003 Service temporary not available 004 Service temporary not available 005 Service temporary not available 006 Service temporary not available 007 Service temporary not available 008 Service temporary not available 009 Illegal error code 010 Network time-out 100 Facility not supported 101 Unknown subscriber 102 Facility not provided 103 Call barred 104 Operation barred 105 SC congestion 106 Facility not supported 107 Absent subscriber 108 Delivery fail 109 Sc congestion 110 Protocol error 111 MS not equipped 112 Unknown SC 113 SC congestion 114 Illegal MS 115 MS not a subscriber 116 Error in MS 117 SMS lower layer not provisioned 118 System fail 119 PLMN system failure 120 HLR system failure 121 VLR system failure 122 Previous VLR system failure 123 Controlling MSC system failure 124 VMSC system failure 125 EIR system failure 126 System failure 127 Unexpected data value 200 Error in address service centre 201 Invalid absolute Validity Period 202 Short message exceeds maximum 203 Unable to Unpack GSM message 204 Unable to convert to IRA ALPHABET 205 Invalid validity period format 206 Invalid destination address 207 Duplicate message submit 208 Invalid message type indicator Thanks in advance, Oren Ein-Gal Chief Operating Officer Volas Entertainment | unleash your content T +972 73 252 5252 (ext. 129) F +972 9 956 7481 M + 972 54 522 4183 o...@volasent.com www.VolasEnt.com Part of the LogiaGroup
deliver_sm
Hi users, yesterday i sent Two mails .but i am not getting responce . any help appriciated. TIA. Best Regards, Narendra Reddy, +91 9985167784, Hyderabad.
setup Kannel Mac OSX 10.4, Samba 75 Modem, daemon + parachute
Users, I'm planning a project so I am looking for advice and corrections on what I think Kannel can do. I have: Mac OS X 10.4.11 Samba 75 (Siemens MC75) USB modem with the modem scripts - it can connect with another SMSC program on port ../tty.usbmodem1B11 or ../cu.usbmodem1B11 (not sure the difference but both seem to work) I have compiled Kannel 1.4.2 on my Mac but haven't properly configured and used it as a SMSC to send and receive messages. I plan on recompling with Kannel 1.4.3 as the bug report suggests. I also have php scripts setup to receive the HTTP GET requests. Here's what I need Kannel to do: (1) forward the received messages through a HTTP GET across the internet; (2) to run as a Mac daemon so I can sleep the computer and it will still run (3) to tell me the signal strength of the modem (i.e. how many 'bars' so I know I'm not in a deadzone); (4) automatically restart itself if it loses connection to modem (I believe this is called parachute mode); (5) and store messages received locally in a database (I believe this done through an addon called sqlbox; I use MAMP for a local instance of MySQL but would use anything that would work with this system). So I am hoping Kannel can hit a home run and do all that! Please correct me if I'm wrong and point me in the right direction on these 5 things to create this Kannel system. Thanks.
Re: DLR-URL and parameters confusion
Hi Dlr-url is defined on sendsms-user if you want a dlr with no info from your own. In your case, as you are going to use your own message Id, you have to create it dynamically for each MT and put it in each call to kannel, as my example in previous mail. In your sendsms-user do not add dlr-url parameter. sms statuses are read backwards: 16 = not delivered to smsc 8 = you submitted to smsc. ie smsc tell kannel he has the msg 4 = msg is in smsc queue. ie smsc tell kannel he queued the msg in its queue. 2 = failed 1 = delivered to phone Also note that not all smsc provide all the statuses, mainly status 4 is not provided by all smsc's since smsc's asume that if they got the message, it is queued if not rejected for any reason nor delivered¡?¡? Alvaro On Thu, 2009-03-05 at 17:51 +0100, Elton Hoxha wrote: As dlr-url is defined statically in the conf file, so which is the respective parameter for , , etc group = sendsms-user username = b password = b dlr-url = http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv=% dstatus=%Fmyid=(something like $parameter - ?) It is so simple issue, thats why its driving me crazy :) By the wayin the delivery reports explanations, which is the difference between status 4 and status 8? Thanks Alvaro On Thu, Mar 5, 2009 at 5:38 PM, Alvaro Cornejo cornejo.alv...@gmail.com wrote: Hi It can be just as simple as: dlr-url =http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv= % dmyid= or add any additional info you might need. This might be your full call to kannel. Note you will better urlencode() the full dlr-url (as well as message text) prior to post it to kannel to avoid issues with some chars: http://localhost:13004/cgi-bin/sendsms?username=remindmepassword=alertsto=4043078165text=testdlr-mask=31drl-url='http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv=%dmyid=' So, for each MT you send to kannel you need to change the value of myid Finally take a look at dlr-mask value in order to get only the statuses you are interested in. (31 = All statuses) And that's it Regards Alvaro On Thu, 2009-03-05 at 17:01 +0100, Elton Hoxha wrote: Thanks for your reply. I think that %i parameter is useful when we deal with multiple smpp connections, making possible to defer the shortcodes from eachother. The scenario that i`m interested is like this: My application submits an MT message to Kannel adding that extra generated ID (let`s say , to keep track of that sms) to the URL, Kannel forwards it to SMSC and SMSC returns absent subscriber (phone switched off) Nak. Then kannel returns the value 8 or 4 (I guess so, just being submitted to SMSC waiting in the queue). Now, whenever the subscriber switches on the phone and the sms get delivered, SMSC will send an ack to kannel, and I want KAnnel at that moment to send back to me the message status (i guess it will send 1) and that generated ID . As all parameters are predefined in kannel, please can you tell me how to put the correct parameter for myid. dlr-url =http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv= %dstatus=%Fmyid=? Many thanks On Thu, Mar 5, 2009 at 4:42 PM, Alvaro Cornejo cornejo.alv...@gmail.com wrote: Hi If you are refering to the message unique identifier, you must generate it and feed it into the dlr-url. You can feed any info you like to dlr-ulr. Kannel will honour that url and will only replace the values he know about (%P,%a, %q, etc) the rest of url will be send back exactly as you sent it to kannel. Then when kannel has an dlr to feed you back to your application, kannel will sent the info provided by the dlr-url and your script will handle it as you wish... or simply does nothing if don't need dlr but use a fake script just to make kannel feel good ;D Note that depending on your needs,
[Fwd: Re: DLR-URL and parameters confusion]
Sorry, forget to cc list Forwarded Message From: Alvaro Cornejo cornejo.alv...@gmail.com To: Elton Hoxha elt...@gmail.com Subject: Re: DLR-URL and parameters confusion Date: Thu, 05 Mar 2009 11:38:27 -0500 Hi It can be just as simple as: dlr-url =http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv=% dmyid= or add any additional info you might need. This might be your full call to kannel. Note you will better urlencode() the full dlr-url (as well as message text) prior to post it to kannel to avoid issues with some chars: http://localhost:13004/cgi-bin/sendsms?username=remindmepassword=alertsto=4043078165text=testdlr-mask=31drl-url='http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv=%dmyid=' So, for each MT you send to kannel you need to change the value of myid Finally take a look at dlr-mask value in order to get only the statuses you are interested in. (31 = All statuses) And that's it Regards Alvaro On Thu, 2009-03-05 at 17:01 +0100, Elton Hoxha wrote: Thanks for your reply. I think that %i parameter is useful when we deal with multiple smpp connections, making possible to defer the shortcodes from eachother. The scenario that i`m interested is like this: My application submits an MT message to Kannel adding that extra generated ID (let`s say , to keep track of that sms) to the URL, Kannel forwards it to SMSC and SMSC returns absent subscriber (phone switched off) Nak. Then kannel returns the value 8 or 4 (I guess so, just being submitted to SMSC waiting in the queue). Now, whenever the subscriber switches on the phone and the sms get delivered, SMSC will send an ack to kannel, and I want KAnnel at that moment to send back to me the message status (i guess it will send 1) and that generated ID . As all parameters are predefined in kannel, please can you tell me how to put the correct parameter for myid. dlr-url =http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv= %dstatus=%Fmyid=? Many thanks On Thu, Mar 5, 2009 at 4:42 PM, Alvaro Cornejo cornejo.alv...@gmail.com wrote: Hi If you are refering to the message unique identifier, you must generate it and feed it into the dlr-url. You can feed any info you like to dlr-ulr. Kannel will honour that url and will only replace the values he know about (%P,%a, %q, etc) the rest of url will be send back exactly as you sent it to kannel. Then when kannel has an dlr to feed you back to your application, kannel will sent the info provided by the dlr-url and your script will handle it as you wish... or simply does nothing if don't need dlr but use a fake script just to make kannel feel good ;D Note that depending on your needs, that unique id might not be necessary. Dlr is used to track message status -either for billing/stats/other- and you can get different parameters for having the detailed info, again if needed. However, if you are refering to smsc id (the identification of the route) it is %i and it will be the id you set on your smcs config. Regards Alvaro On Thu, 2009-03-05 at 16:21 +0100, Elton Hoxha wrote: Hi Alvaro, I was checking the mail list and I am reading your communication with other guy regarding dlr-url. Refering to: --- On Tue, 1/13/09, Alvaro Cornejo cornejo.alv...@gmail.com wrote: From: Alvaro Cornejo cornejo.alv...@gmail.com Subject: Re: dlr-url To: Drew Stockler psustock1...@yahoo.com Cc: users@kannel.org Date: Tuesday, January 13, 2009, 6:27 PM Hi Drew The status of your message is dlrv=8 that means message delivered to your smsc. Check docs for the other status values. I'm not sure but I think that %a and % A is ACK%2F because it is the sms text part of the dlr message. In this case, the text received is the ACK from bearerbox
[Fwd: Re: DLR-URL and parameters confusion]
this one too forget to cc list Forwarded Message From: Alvaro Cornejo cornejo.alv...@gmail.com To: Elton Hoxha elt...@gmail.com Subject: Re: DLR-URL and parameters confusion Date: Thu, 05 Mar 2009 10:42:57 -0500 Hi If you are refering to the message unique identifier, you must generate it and feed it into the dlr-url. You can feed any info you like to dlr-ulr. Kannel will honour that url and will only replace the values he know about (%P,%a, %q, etc) the rest of url will be send back exactly as you sent it to kannel. Then when kannel has an dlr to feed you back to your application, kannel will sent the info provided by the dlr-url and your script will handle it as you wish... or simply does nothing if don't need dlr but use a fake script just to make kannel feel good ;D Note that depending on your needs, that unique id might not be necessary. Dlr is used to track message status -either for billing/stats/other- and you can get different parameters for having the detailed info, again if needed. However, if you are refering to smsc id (the identification of the route) it is %i and it will be the id you set on your smcs config. Regards Alvaro On Thu, 2009-03-05 at 16:21 +0100, Elton Hoxha wrote: Hi Alvaro, I was checking the mail list and I am reading your communication with other guy regarding dlr-url. Refering to: --- On Tue, 1/13/09, Alvaro Cornejo cornejo.alv...@gmail.com wrote: From: Alvaro Cornejo cornejo.alv...@gmail.com Subject: Re: dlr-url To: Drew Stockler psustock1...@yahoo.com Cc: users@kannel.org Date: Tuesday, January 13, 2009, 6:27 PM Hi Drew The status of your message is dlrv=8 that means message delivered to your smsc. Check docs for the other status values. I'm not sure but I think that %a and %A is ACK%2F because it is the sms text part of the dlr message. In this case, the text received is the ACK from bearerbox when submitting the message to your smsc. I think you don't need this info to match your dlr, I'll add intead an ID from your own in the dlr-url so you can use it to match dlr with your database and update the appropiate reccord accordingly to the dlr. you can use something like: http://localhost:13004/cgi-bin/sendsms?username=remindmepassword=alertsto=4043078165text=testdlr-mask=31drl-url='http://localhost/sms.php?phone=%psmsid=[YourOwnId]timestamp=%Tdlrv=%d' and have your sms.php script look at the db for the smsid value and update the status field accordingly. Something like: UPDATE table SET dlrv = $dlrv, timestamp= $timestamp WHERE msg_id = $smsid AND from_number = $phone Hope helps I would like to ask, while setting this unique ID from application side, how can I represent it in the sendsms-user block? So dlr-url = http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv=% dstatus=%Fsmsid=? Table 6.9 has all the parameters that we can use, how can I add the escape code here for the smsid?? Thanks Elton
Re: DLR-URL and parameters confusion
Hi again, the below suggestion In your sendsms-user do not add dlr-url parameter. didnt succeded. I removed the line of drl-url from the conf and after restarted the kannel, it didnt return back any value at all. 2009-03-03 23:18:13 [7543] [4] INFO: Starting delivery report b from 15106 2009-03-03 23:18:13 [7543] [9] DEBUG: Queue contains 0 pending requests. 2009-03-03 23:18:13 [7543] [9] ERROR: URL doesn't start with `http://' nor `https://' 2009-03-03 23:18:13 [7543] [9] ERROR: Couldn't send request to *Table 6-16. SMS Push (send-sms) CGI Variables says about dlr-mask: *Request for delivery reports with the state of the sent message. The value is a bit mask composed of: 1: Delivered to phone, 2: Non-Delivered to Phone, 4: Queued on SMSC, 8: Delivered to SMSC, 16: Non-Delivered to SMSC. *Must set dlr-url on sendsms-userdlr-url CGI variable. * group or use the * *I have to consider the first alternative, defining the url in the sendsms-user block and feeding the myid parameter like %p, %Pis it possible? Elton On Thu, Mar 5, 2009 at 6:10 PM, Alvaro Cornejo cornejo.alv...@gmail.comwrote: Hi Dlr-url is defined on sendsms-user if you want a dlr with no info from your own. In your case, as you are going to use your own message Id, you have to create it dynamically for each MT and put it in each call to kannel, as my example in previous mail. In your sendsms-user do not add dlr-url parameter. sms statuses are read backwards: 16 = not delivered to smsc 8 = you submitted to smsc. ie smsc tell kannel he has the msg 4 = msg is in smsc queue. ie smsc tell kannel he queued the msg in its queue. 2 = failed 1 = delivered to phone Also note that not all smsc provide all the statuses, mainly status 4 is not provided by all smsc's since smsc's asume that if they got the message, it is queued if not rejected for any reason nor delivered¡?¡? Alvaro On Thu, 2009-03-05 at 17:51 +0100, Elton Hoxha wrote: As dlr-url is defined statically in the conf file, so which is the respective parameter for , , etc group = sendsms-user username = b password = b dlr-url = http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv=% dstatus=%Fmyid=(something like $parameter - ?) It is so simple issue, thats why its driving me crazy :) By the wayin the delivery reports explanations, which is the difference between status 4 and status 8? Thanks Alvaro On Thu, Mar 5, 2009 at 5:38 PM, Alvaro Cornejo cornejo.alv...@gmail.com wrote: Hi It can be just as simple as: dlr-url =http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv= % dmyid= or add any additional info you might need. This might be your full call to kannel. Note you will better urlencode() the full dlr-url (as well as message text) prior to post it to kannel to avoid issues with some chars: http://localhost:13004/cgi-bin/sendsms?username=remindmepassword=alertsto=4043078165text=testdlr-mask=31drl-url='http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv=%dmyid=http://localhost:13004/cgi-bin/sendsms?username=remindmepassword=alertsto=4043078165text=testdlr-mask=31drl-url=%27http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv=%dmyid= ' So, for each MT you send to kannel you need to change the value of myid Finally take a look at dlr-mask value in order to get only the statuses you are interested in. (31 = All statuses) And that's it Regards Alvaro On Thu, 2009-03-05 at 17:01 +0100, Elton Hoxha wrote: Thanks for your reply. I think that %i parameter is useful when we deal with multiple smpp connections, making possible to defer the shortcodes from eachother. The scenario that i`m interested is like this: My application submits an MT message to Kannel adding that extra generated ID (let`s say , to keep track of that sms) to the URL, Kannel forwards it to SMSC and SMSC returns absent subscriber (phone switched off) Nak. Then kannel returns the value 8 or 4 (I guess so, just being submitted to SMSC waiting in the queue). Now, whenever the subscriber switches on the phone and the sms get delivered, SMSC will send an ack to kannel, and I want KAnnel at that moment to send back to me the message status (i guess it will send 1) and that generated ID . As all parameters are predefined in kannel, please can you tell me how to put the correct parameter for myid. dlr-url
Re: DLR-URL and parameters confusion
how are you feeding the message to kannel? |-| Envíe y Reciba Datos y mensajes de Texto (SMS) hacia y desde cualquier celular y Nextel en el Perú, México y en mas de 180 paises. Use aplicaciones 2 vias via SMS y GPRS online Visitenos en www.perusms.NET www.smsglobal.com.mx y www.pravcom.com On Thu, Mar 5, 2009 at 12:33 PM, Elton Hoxha elt...@gmail.com wrote: Hi again, the below suggestion In your sendsms-user do not add dlr-url parameter. didnt succeded. I removed the line of drl-url from the conf and after restarted the kannel, it didnt return back any value at all. 2009-03-03 23:18:13 [7543] [4] INFO: Starting delivery report b from 15106 2009-03-03 23:18:13 [7543] [9] DEBUG: Queue contains 0 pending requests. 2009-03-03 23:18:13 [7543] [9] ERROR: URL doesn't start with `http://' nor `https://' 2009-03-03 23:18:13 [7543] [9] ERROR: Couldn't send request to Table 6-16. SMS Push (send-sms) CGI Variables says about dlr-mask: Request for delivery reports with the state of the sent message. The value is a bit mask composed of: 1: Delivered to phone, 2: Non-Delivered to Phone, 4: Queued on SMSC, 8: Delivered to SMSC, 16: Non-Delivered to SMSC. Must set dlr-url on sendsms-userdlr-url CGI variable. group or use the I have to consider the first alternative, defining the url in the sendsms-user block and feeding the myid parameter like %p, %Pis it possible? Elton On Thu, Mar 5, 2009 at 6:10 PM, Alvaro Cornejo cornejo.alv...@gmail.com wrote: Hi Dlr-url is defined on sendsms-user if you want a dlr with no info from your own. In your case, as you are going to use your own message Id, you have to create it dynamically for each MT and put it in each call to kannel, as my example in previous mail. In your sendsms-user do not add dlr-url parameter. sms statuses are read backwards: 16 = not delivered to smsc 8 = you submitted to smsc. ie smsc tell kannel he has the msg 4 = msg is in smsc queue. ie smsc tell kannel he queued the msg in its queue. 2 = failed 1 = delivered to phone Also note that not all smsc provide all the statuses, mainly status 4 is not provided by all smsc's since smsc's asume that if they got the message, it is queued if not rejected for any reason nor delivered¡?¡? Alvaro On Thu, 2009-03-05 at 17:51 +0100, Elton Hoxha wrote: As dlr-url is defined statically in the conf file, so which is the respective parameter for , , etc group = sendsms-user username = b password = b dlr-url = http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv=% dstatus=%Fmyid=(something like $parameter - ?) It is so simple issue, thats why its driving me crazy :) By the wayin the delivery reports explanations, which is the difference between status 4 and status 8? Thanks Alvaro On Thu, Mar 5, 2009 at 5:38 PM, Alvaro Cornejo cornejo.alv...@gmail.com wrote: Hi It can be just as simple as: dlr-url =http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv= % dmyid= or add any additional info you might need. This might be your full call to kannel. Note you will better urlencode() the full dlr-url (as well as message text) prior to post it to kannel to avoid issues with some chars: http://localhost:13004/cgi-bin/sendsms?username=remindmepassword=alertsto=4043078165text=testdlr-mask=31drl-url='http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv=%dmyid=' So, for each MT you send to kannel you need to change the value of myid Finally take a look at dlr-mask value in order to get only the statuses you are interested in. (31 = All statuses) And that's it Regards Alvaro On Thu, 2009-03-05 at 17:01 +0100, Elton Hoxha wrote: Thanks for your reply. I think that %i parameter is useful when we deal with multiple smpp connections, making possible to defer the shortcodes from eachother. The scenario that i`m interested is like this: My application submits an MT message to Kannel adding that extra generated ID (let`s say , to keep track of that sms) to the URL, Kannel forwards it to SMSC and SMSC returns absent subscriber (phone switched off) Nak. Then kannel returns the value 8 or 4 (I guess so, just being submitted to SMSC waiting in the queue). Now, whenever the subscriber switches on the phone and the sms get delivered, SMSC will send an ack to kannel, and I want KAnnel at that moment to send back
Re: DLR-URL and parameters confusion
I called it inside the loop making 3 attempts; http://10.1.21.184:13014/cgi-bin/sendsms?username=bpassword=bfrom=15106to=35567250text=helloworld!dlr-mask=3%dlr-url=%27http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv=%dstatus=%Fmyid=%27 http://10.1.21.184:13014/cgi-bin/sendsms?username=bpassword=bfrom=15106to=35567250text=helloworld!dlr-mask=3%dlr-url=%27http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv=%dstatus=%Fmyid=1112%27 http://10.1.21.184:13014/cgi-bin/sendsms?username=bpassword=bfrom=15106to=35567250text=helloworld!dlr-mask=3%dlr-url=%27http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv=%dstatus=%Fmyid=1113%27 On Thu, Mar 5, 2009 at 6:38 PM, Alvaro Cornejo cornejo.alv...@gmail.comwrote: how are you feeding the message to kannel? |-| Envíe y Reciba Datos y mensajes de Texto (SMS) hacia y desde cualquier celular y Nextel en el Perú, México y en mas de 180 paises. Use aplicaciones 2 vias via SMS y GPRS online Visitenos en www.perusms.NET www.smsglobal.com.mx y www.pravcom.com On Thu, Mar 5, 2009 at 12:33 PM, Elton Hoxha elt...@gmail.com wrote: Hi again, the below suggestion In your sendsms-user do not add dlr-url parameter. didnt succeded. I removed the line of drl-url from the conf and after restarted the kannel, it didnt return back any value at all. 2009-03-03 23:18:13 [7543] [4] INFO: Starting delivery report b from 15106 2009-03-03 23:18:13 [7543] [9] DEBUG: Queue contains 0 pending requests. 2009-03-03 23:18:13 [7543] [9] ERROR: URL doesn't start with `http:// ' nor `https://' 2009-03-03 23:18:13 [7543] [9] ERROR: Couldn't send request to Table 6-16. SMS Push (send-sms) CGI Variables says about dlr-mask: Request for delivery reports with the state of the sent message. The value is a bit mask composed of: 1: Delivered to phone, 2: Non-Delivered to Phone, 4: Queued on SMSC, 8: Delivered to SMSC, 16: Non-Delivered to SMSC. Must set dlr-url on sendsms-userdlr-url CGI variable. group or use the I have to consider the first alternative, defining the url in the sendsms-user block and feeding the myid parameter like %p, %Pis it possible? Elton On Thu, Mar 5, 2009 at 6:10 PM, Alvaro Cornejo cornejo.alv...@gmail.com wrote: Hi Dlr-url is defined on sendsms-user if you want a dlr with no info from your own. In your case, as you are going to use your own message Id, you have to create it dynamically for each MT and put it in each call to kannel, as my example in previous mail. In your sendsms-user do not add dlr-url parameter. sms statuses are read backwards: 16 = not delivered to smsc 8 = you submitted to smsc. ie smsc tell kannel he has the msg 4 = msg is in smsc queue. ie smsc tell kannel he queued the msg in its queue. 2 = failed 1 = delivered to phone Also note that not all smsc provide all the statuses, mainly status 4 is not provided by all smsc's since smsc's asume that if they got the message, it is queued if not rejected for any reason nor delivered¡?¡? Alvaro On Thu, 2009-03-05 at 17:51 +0100, Elton Hoxha wrote: As dlr-url is defined statically in the conf file, so which is the respective parameter for , , etc group = sendsms-user username = b password = b dlr-url = http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv=% dstatus=%Fmyid=(something like $parameter - ?) It is so simple issue, thats why its driving me crazy :) By the wayin the delivery reports explanations, which is the difference between status 4 and status 8? Thanks Alvaro On Thu, Mar 5, 2009 at 5:38 PM, Alvaro Cornejo cornejo.alv...@gmail.com wrote: Hi It can be just as simple as: dlr-url = http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv= % dmyid= or add any additional info you might need. This might be your full call to kannel. Note you will better urlencode() the full dlr-url (as well as message text) prior to post it to kannel to avoid issues with some chars: http://localhost:13004/cgi-bin/sendsms?username=remindmepassword=alertsto=4043078165text=testdlr-mask=31drl-url='http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv=%dmyid=http://localhost:13004/cgi-bin/sendsms?username=remindmepassword=alertsto=4043078165text=testdlr-mask=31drl-url=%27http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv=%dmyid= ' So, for each MT you send to kannel you need to change the value of myid Finally take a look at dlr-mask value in order to get only the statuses you are interested in. (31 = All
Re: DLR-URL and parameters confusion
Your call is wrong: dlr-mask can not be 3 it should be something like: http://10.1.21.184:13014/cgi-bin/sendsms?username=bpassword=bfrom=15106to=35567250text=helloworlddlr-mask=31dlr-url=http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv=%dstatus=%Fmyid= It should work Alvaro |-| Envíe y Reciba Datos y mensajes de Texto (SMS) hacia y desde cualquier celular y Nextel en el Perú, México y en mas de 180 paises. Use aplicaciones 2 vias via SMS y GPRS online Visitenos en www.perusms.NET www.smsglobal.com.mx y www.pravcom.com On Thu, Mar 5, 2009 at 12:47 PM, Elton Hoxha elt...@gmail.com wrote: I called it inside the loop making 3 attempts; http://10.1.21.184:13014/cgi-bin/sendsms?username=bpassword=bfrom=15106to=35567250text=helloworld!dlr-mask=3%dlr-url=%27http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv=%dstatus=%Fmyid=%27 http://10.1.21.184:13014/cgi-bin/sendsms?username=bpassword=bfrom=15106to=35567250text=helloworld!dlr-mask=3%dlr-url=%27http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv=%dstatus=%Fmyid=1112%27 http://10.1.21.184:13014/cgi-bin/sendsms?username=bpassword=bfrom=15106to=35567250text=helloworld!dlr-mask=3%dlr-url=%27http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv=%dstatus=%Fmyid=1113%27 On Thu, Mar 5, 2009 at 6:38 PM, Alvaro Cornejo cornejo.alv...@gmail.com wrote: how are you feeding the message to kannel? |-| Envíe y Reciba Datos y mensajes de Texto (SMS) hacia y desde cualquier celular y Nextel en el Perú, México y en mas de 180 paises. Use aplicaciones 2 vias via SMS y GPRS online Visitenos en www.perusms.NET www.smsglobal.com.mx y www.pravcom.com On Thu, Mar 5, 2009 at 12:33 PM, Elton Hoxha elt...@gmail.com wrote: Hi again, the below suggestion In your sendsms-user do not add dlr-url parameter. didnt succeded. I removed the line of drl-url from the conf and after restarted the kannel, it didnt return back any value at all. 2009-03-03 23:18:13 [7543] [4] INFO: Starting delivery report b from 15106 2009-03-03 23:18:13 [7543] [9] DEBUG: Queue contains 0 pending requests. 2009-03-03 23:18:13 [7543] [9] ERROR: URL doesn't start with `http://' nor `https://' 2009-03-03 23:18:13 [7543] [9] ERROR: Couldn't send request to Table 6-16. SMS Push (send-sms) CGI Variables says about dlr-mask: Request for delivery reports with the state of the sent message. The value is a bit mask composed of: 1: Delivered to phone, 2: Non-Delivered to Phone, 4: Queued on SMSC, 8: Delivered to SMSC, 16: Non-Delivered to SMSC. Must set dlr-url on sendsms-userdlr-url CGI variable. group or use the I have to consider the first alternative, defining the url in the sendsms-user block and feeding the myid parameter like %p, %Pis it possible? Elton On Thu, Mar 5, 2009 at 6:10 PM, Alvaro Cornejo cornejo.alv...@gmail.com wrote: Hi Dlr-url is defined on sendsms-user if you want a dlr with no info from your own. In your case, as you are going to use your own message Id, you have to create it dynamically for each MT and put it in each call to kannel, as my example in previous mail. In your sendsms-user do not add dlr-url parameter. sms statuses are read backwards: 16 = not delivered to smsc 8 = you submitted to smsc. ie smsc tell kannel he has the msg 4 = msg is in smsc queue. ie smsc tell kannel he queued the msg in its queue. 2 = failed 1 = delivered to phone Also note that not all smsc provide all the statuses, mainly status 4 is not provided by all smsc's since smsc's asume that if they got the message, it is queued if not rejected for any reason nor delivered¡?¡? Alvaro On Thu, 2009-03-05 at 17:51 +0100, Elton Hoxha wrote: As dlr-url is defined statically in the conf file, so which is the respective parameter for , , etc group = sendsms-user username = b password = b dlr-url = http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv=% dstatus=%Fmyid=(something like $parameter - ?) It is so simple issue, thats why its driving me crazy :) By the wayin the delivery reports explanations, which is the difference between status 4 and status 8? Thanks Alvaro On Thu, Mar 5, 2009 at 5:38 PM, Alvaro Cornejo cornejo.alv...@gmail.com wrote: Hi It can be just as simple as: dlr-url =http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv= % dmyid= or add any additional info you might need. This might be your full call to kannel. Note you will better urlencode()
Re: DLR-URL and parameters confusion
Sorry but failed again 2009-03-03 23:36:55 [7621] [4] INFO: Starting delivery report b from 15106 2009-03-03 23:36:55 [7621] [9] DEBUG: Queue contains 0 pending requests. 2009-03-03 23:36:55 [7621] [9] ERROR: URL doesn't start with `http://' nor `https://' 2009-03-03 23:36:55 [7621] [9] ERROR: Couldn't send request to 2009-03-03 23:36:58 [7621] [1] ERROR: Error reading from fd 22: Its not a matter of dlr-mask because i put all combinations. On Thu, Mar 5, 2009 at 6:58 PM, Alvaro Cornejo cornejo.alv...@gmail.comwrote: Your call is wrong: dlr-mask can not be 3 it should be something like: http://10.1.21.184:13014/cgi-bin/sendsms?username=bpassword=bfrom=15106to=35567250text=helloworlddlr-mask=31dlr-url=http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv=%dstatus=%Fmyid= It should work Alvaro |-| Envíe y Reciba Datos y mensajes de Texto (SMS) hacia y desde cualquier celular y Nextel en el Perú, México y en mas de 180 paises. Use aplicaciones 2 vias via SMS y GPRS online Visitenos en www.perusms.NET www.smsglobal.com.mx y www.pravcom.com On Thu, Mar 5, 2009 at 12:47 PM, Elton Hoxha elt...@gmail.com wrote: I called it inside the loop making 3 attempts; http://10.1.21.184:13014/cgi-bin/sendsms?username=bpassword=bfrom=15106to=35567250text=helloworld!dlr-mask=3%dlr-url=%27http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv=%dstatus=%Fmyid=%27http://10.1.21.184:13014/cgi-bin/sendsms?username=bpassword=bfrom=15106to=35567250text=helloworld%21dlr-mask=3%dlr-url=%27http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv=%dstatus=%Fmyid=%27 http://10.1.21.184:13014/cgi-bin/sendsms?username=bpassword=bfrom=15106to=35567250text=helloworld!dlr-mask=3%dlr-url=%27http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv=%dstatus=%Fmyid=1112%27http://10.1.21.184:13014/cgi-bin/sendsms?username=bpassword=bfrom=15106to=35567250text=helloworld%21dlr-mask=3%dlr-url=%27http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv=%dstatus=%Fmyid=1112%27 http://10.1.21.184:13014/cgi-bin/sendsms?username=bpassword=bfrom=15106to=35567250text=helloworld!dlr-mask=3%dlr-url=%27http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv=%dstatus=%Fmyid=1113%27http://10.1.21.184:13014/cgi-bin/sendsms?username=bpassword=bfrom=15106to=35567250text=helloworld%21dlr-mask=3%dlr-url=%27http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv=%dstatus=%Fmyid=1113%27 On Thu, Mar 5, 2009 at 6:38 PM, Alvaro Cornejo cornejo.alv...@gmail.com wrote: how are you feeding the message to kannel? |-| Envíe y Reciba Datos y mensajes de Texto (SMS) hacia y desde cualquier celular y Nextel en el Perú, México y en mas de 180 paises. Use aplicaciones 2 vias via SMS y GPRS online Visitenos en www.perusms.NET www.smsglobal.com.mx y www.pravcom.com On Thu, Mar 5, 2009 at 12:33 PM, Elton Hoxha elt...@gmail.com wrote: Hi again, the below suggestion In your sendsms-user do not add dlr-url parameter. didnt succeded. I removed the line of drl-url from the conf and after restarted the kannel, it didnt return back any value at all. 2009-03-03 23:18:13 [7543] [4] INFO: Starting delivery report b from 15106 2009-03-03 23:18:13 [7543] [9] DEBUG: Queue contains 0 pending requests. 2009-03-03 23:18:13 [7543] [9] ERROR: URL doesn't start with `http://' nor `https://' 2009-03-03 23:18:13 [7543] [9] ERROR: Couldn't send request to Table 6-16. SMS Push (send-sms) CGI Variables says about dlr-mask: Request for delivery reports with the state of the sent message. The value is a bit mask composed of: 1: Delivered to phone, 2: Non-Delivered to Phone, 4: Queued on SMSC, 8: Delivered to SMSC, 16: Non-Delivered to SMSC. Must set dlr-url on sendsms-userdlr-url CGI variable. group or use the I have to consider the first alternative, defining the url in the sendsms-user block and feeding the myid parameter like %p, %Pis it possible? Elton On Thu, Mar 5, 2009 at 6:10 PM, Alvaro Cornejo cornejo.alv...@gmail.com wrote: Hi Dlr-url is defined on sendsms-user if you want a dlr with no info from your own. In your case, as you are going to use your own message Id, you have to create it dynamically for each MT and put it in each call to kannel, as my example in previous mail. In your sendsms-user do not add dlr-url parameter. sms statuses are read backwards: 16 = not delivered to smsc 8 = you submitted to smsc. ie smsc tell kannel he has the msg 4 = msg is in smsc queue. ie smsc tell kannel he queued the msg in its queue. 2 = failed
Re: DLR-URL and parameters confusion
You have to urlencode whole dlr-url field before you concat it with your URL try this: http://10.1.21.184:13014/cgi-bin/sendsms?username=bpassword=bfrom=15106to=35567250text=helloworlddlr-mask=31dlr-url=http%3A%2F%2F10.1.21.236%3A2469%2FKannelGetStatus.asmx%2FGetStatus%3Fdlrv%3D%25d%26status%3D%25F%26myid%3D - Original Message - From: Elton Hoxha To: Alvaro Cornejo Cc: kannel users Sent: Thursday, March 05, 2009 6:07 PM Subject: Re: DLR-URL and parameters confusion Sorry but failed again 2009-03-03 23:36:55 [7621] [4] INFO: Starting delivery report b from 15106 2009-03-03 23:36:55 [7621] [9] DEBUG: Queue contains 0 pending requests. 2009-03-03 23:36:55 [7621] [9] ERROR: URL doesn't start with `http://' nor `https://' 2009-03-03 23:36:55 [7621] [9] ERROR: Couldn't send request to 2009-03-03 23:36:58 [7621] [1] ERROR: Error reading from fd 22: Its not a matter of dlr-mask because i put all combinations. On Thu, Mar 5, 2009 at 6:58 PM, Alvaro Cornejo cornejo.alv...@gmail.com wrote: Your call is wrong: dlr-mask can not be 3 it should be something like: http://10.1.21.184:13014/cgi-bin/sendsms?username=bpassword=bfrom=15106to=35567250text=helloworlddlr-mask=31dlr-url=http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv=%dstatus=%Fmyid= It should work Alvaro |-| Envíe y Reciba Datos y mensajes de Texto (SMS) hacia y desde cualquier celular y Nextel en el Perú, México y en mas de 180 paises. Use aplicaciones 2 vias via SMS y GPRS online Visitenos en www.perusms.NET www.smsglobal.com.mx y www.pravcom.com On Thu, Mar 5, 2009 at 12:47 PM, Elton Hoxha elt...@gmail.com wrote: I called it inside the loop making 3 attempts; http://10.1.21.184:13014/cgi-bin/sendsms?username=bpassword=bfrom=15106to=35567250text=helloworld!dlr-mask=3%dlr-url=%27http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv=%dstatus=%Fmyid=%27 http://10.1.21.184:13014/cgi-bin/sendsms?username=bpassword=bfrom=15106to=35567250text=helloworld!dlr-mask=3%dlr-url=%27http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv=%dstatus=%Fmyid=1112%27 http://10.1.21.184:13014/cgi-bin/sendsms?username=bpassword=bfrom=15106to=35567250text=helloworld!dlr-mask=3%dlr-url=%27http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv=%dstatus=%Fmyid=1113%27 On Thu, Mar 5, 2009 at 6:38 PM, Alvaro Cornejo cornejo.alv...@gmail.com wrote: how are you feeding the message to kannel? |-| Envíe y Reciba Datos y mensajes de Texto (SMS) hacia y desde cualquier celular y Nextel en el Perú, México y en mas de 180 paises. Use aplicaciones 2 vias via SMS y GPRS online Visitenos en www.perusms.NET www.smsglobal.com.mx y www.pravcom.com On Thu, Mar 5, 2009 at 12:33 PM, Elton Hoxha elt...@gmail.com wrote: Hi again, the below suggestion In your sendsms-user do not add dlr-url parameter. didnt succeded. I removed the line of drl-url from the conf and after restarted the kannel, it didnt return back any value at all. 2009-03-03 23:18:13 [7543] [4] INFO: Starting delivery report b from 15106 2009-03-03 23:18:13 [7543] [9] DEBUG: Queue contains 0 pending requests. 2009-03-03 23:18:13 [7543] [9] ERROR: URL doesn't start with `http://' nor `https://' 2009-03-03 23:18:13 [7543] [9] ERROR: Couldn't send request to Table 6-16. SMS Push (send-sms) CGI Variables says about dlr-mask: Request for delivery reports with the state of the sent message. The value is a bit mask composed of: 1: Delivered to phone, 2: Non-Delivered to Phone, 4: Queued on SMSC, 8: Delivered to SMSC, 16: Non-Delivered to SMSC. Must set dlr-url on sendsms-userdlr-url CGI variable. group or use the I have to consider the first alternative, defining the url in the sendsms-user block and feeding the myid parameter like %p, %Pis it possible? Elton On Thu, Mar 5, 2009 at 6:10 PM, Alvaro Cornejo cornejo.alv...@gmail.com wrote: Hi Dlr-url is defined on sendsms-user if you want a dlr with no info from your own. In your case, as you are going to use your own message Id, you have to create it dynamically for each MT and put it in each call to kannel, as my example in previous mail. In your sendsms-user do not add dlr-url parameter. sms statuses are read backwards: 16 = not delivered to smsc 8 = you submitted to smsc. ie smsc tell kannel he has the msg 4 = msg is in smsc queue. ie smsc tell kannel he queued the msg in its queue. 2 = failed 1 = delivered to phone Also note that not all smsc provide all the statuses, mainly status 4 is not provided by all smsc's since smsc's asume that if they got the message, it is queued if not rejected for any reason nor delivered¡?¡? Alvaro On Thu, 2009-03-05 at 17:51 +0100,
Re: DLR-URL and parameters confusion
Thank you so so so much guys It worked :) On Thu, Mar 5, 2009 at 7:34 PM, Cezary Siwek cza...@thebestisp.co.ukwrote: You have to urlencode whole dlr-url field before you concat it with your URL try this: http://10.1.21.184:13014/cgi-bin/sendsms?username=bpassword=bfrom=15106to=35567250text=helloworlddlr-mask=31dlr-url=http%3A%2F%2F10.1.21.236%3A2469%2FKannelGetStatus.asmx%2FGetStatus%3Fdlrv%3D%25d%26status%3D%25F%26myid%3D - Original Message - From: Elton Hoxha To: Alvaro Cornejo Cc: kannel users Sent: Thursday, March 05, 2009 6:07 PM Subject: Re: DLR-URL and parameters confusion Sorry but failed again 2009-03-03 23:36:55 [7621] [4] INFO: Starting delivery report b from 15106 2009-03-03 23:36:55 [7621] [9] DEBUG: Queue contains 0 pending requests. 2009-03-03 23:36:55 [7621] [9] ERROR: URL doesn't start with `http://' nor `https://' 2009-03-03 23:36:55 [7621] [9] ERROR: Couldn't send request to 2009-03-03 23:36:58 [7621] [1] ERROR: Error reading from fd 22: Its not a matter of dlr-mask because i put all combinations. On Thu, Mar 5, 2009 at 6:58 PM, Alvaro Cornejo cornejo.alv...@gmail.com wrote: Your call is wrong: dlr-mask can not be 3 it should be something like: http://10.1.21.184:13014/cgi-bin/sendsms?username=bpassword=bfrom=15106to=35567250text=helloworlddlr-mask=31dlr-url=http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv=%dstatus=%Fmyid= It should work Alvaro |-| Envíe y Reciba Datos y mensajes de Texto (SMS) hacia y desde cualquier celular y Nextel en el Perú, México y en mas de 180 paises. Use aplicaciones 2 vias via SMS y GPRS online Visitenos en www.perusms.NET www.smsglobal.com.mx y www.pravcom.com On Thu, Mar 5, 2009 at 12:47 PM, Elton Hoxha elt...@gmail.com wrote: I called it inside the loop making 3 attempts; http://10.1.21.184:13014/cgi-bin/sendsms?username=bpassword=bfrom=15106to=35567250text=helloworld!dlr-mask=3%dlr-url=%27http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv=%dstatus=%Fmyid=%27http://10.1.21.184:13014/cgi-bin/sendsms?username=bpassword=bfrom=15106to=35567250text=helloworld%21dlr-mask=3%dlr-url%3D%27http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv=%dstatus=%Fmyid=%27 http://10.1.21.184:13014/cgi-bin/sendsms?username=bpassword=bfrom=15106to=35567250text=helloworld!dlr-mask=3%dlr-url=%27http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv=%dstatus=%Fmyid=1112%27http://10.1.21.184:13014/cgi-bin/sendsms?username=bpassword=bfrom=15106to=35567250text=helloworld%21dlr-mask=3%dlr-url%3D%27http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv=%dstatus=%Fmyid=1112%27 http://10.1.21.184:13014/cgi-bin/sendsms?username=bpassword=bfrom=15106to=35567250text=helloworld!dlr-mask=3%dlr-url=%27http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv=%dstatus=%Fmyid=1113%27http://10.1.21.184:13014/cgi-bin/sendsms?username=bpassword=bfrom=15106to=35567250text=helloworld%21dlr-mask=3%dlr-url%3D%27http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv=%dstatus=%Fmyid=1113%27 On Thu, Mar 5, 2009 at 6:38 PM, Alvaro Cornejo cornejo.alv...@gmail.com wrote: how are you feeding the message to kannel? |-| Envíe y Reciba Datos y mensajes de Texto (SMS) hacia y desde cualquier celular y Nextel en el Perú, México y en mas de 180 paises. Use aplicaciones 2 vias via SMS y GPRS online Visitenos en www.perusms.NET www.smsglobal.com.mx y www.pravcom.com On Thu, Mar 5, 2009 at 12:33 PM, Elton Hoxha elt...@gmail.com wrote: Hi again, the below suggestion In your sendsms-user do not add dlr-url parameter. didnt succeded. I removed the line of drl-url from the conf and after restarted the kannel, it didnt return back any value at all. 2009-03-03 23:18:13 [7543] [4] INFO: Starting delivery report b from 15106 2009-03-03 23:18:13 [7543] [9] DEBUG: Queue contains 0 pending requests. 2009-03-03 23:18:13 [7543] [9] ERROR: URL doesn't start with `http://' nor `https://' 2009-03-03 23:18:13 [7543] [9] ERROR: Couldn't send request to Table 6-16. SMS Push (send-sms) CGI Variables says about dlr-mask: Request for delivery reports with the state of the sent message. The value is a bit mask composed of: 1: Delivered to phone, 2: Non-Delivered to Phone, 4: Queued on SMSC, 8: Delivered to SMSC, 16: Non-Delivered to SMSC. Must set dlr-url on sendsms-userdlr-url CGI variable. group or use the I have to consider the first alternative, defining the url in the sendsms-user block and feeding the myid parameter like %p, %Pis it possible? Elton On Thu, Mar 5, 2009 at 6:10 PM, Alvaro Cornejo cornejo.alv...@gmail.com
Re: DLR-URL and parameters confusion
You are right another confusion XD |-| Envíe y Reciba Datos y mensajes de Texto (SMS) hacia y desde cualquier celular y Nextel en el Perú, México y en mas de 180 paises. Use aplicaciones 2 vias via SMS y GPRS online Visitenos en www.perusms.NET www.smsglobal.com.mx y www.pravcom.com On Thu, Mar 5, 2009 at 1:58 PM, Falko Ziemann fal...@gmail.com wrote: Why can't it be 3??? 3 = 2 + 1 (Delivered + Undelivered Notifications) Cheers Falko Am 05.03.2009 um 18:58 schrieb Alvaro Cornejo: Your call is wrong: dlr-mask can not be 3 it should be something like: http://10.1.21.184:13014/cgi-bin/sendsms?username=bpassword=bfrom=15106to=35567250text=helloworlddlr-mask=31dlr-url=http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv=%dstatus=%Fmyid= It should work Alvaro |-| Envíe y Reciba Datos y mensajes de Texto (SMS) hacia y desde cualquier celular y Nextel en el Perú, México y en mas de 180 paises. Use aplicaciones 2 vias via SMS y GPRS online Visitenos en www.perusms.NET www.smsglobal.com.mx y www.pravcom.com On Thu, Mar 5, 2009 at 12:47 PM, Elton Hoxha elt...@gmail.com wrote: I called it inside the loop making 3 attempts; http://10.1.21.184:13014/cgi-bin/sendsms?username=bpassword=bfrom=15106to=35567250text=helloworld!dlr-mask=3%dlr-url=%27http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv=%dstatus=%Fmyid=%27 http://10.1.21.184:13014/cgi-bin/sendsms?username=bpassword=bfrom=15106to=35567250text=helloworld!dlr-mask=3%dlr-url=%27http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv=%dstatus=%Fmyid=1112%27 http://10.1.21.184:13014/cgi-bin/sendsms?username=bpassword=bfrom=15106to=35567250text=helloworld!dlr-mask=3%dlr-url=%27http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv=%dstatus=%Fmyid=1113%27 On Thu, Mar 5, 2009 at 6:38 PM, Alvaro Cornejo cornejo.alv...@gmail.com wrote: how are you feeding the message to kannel? |-| Envíe y Reciba Datos y mensajes de Texto (SMS) hacia y desde cualquier celular y Nextel en el Perú, México y en mas de 180 paises. Use aplicaciones 2 vias via SMS y GPRS online Visitenos en www.perusms.NET www.smsglobal.com.mx y www.pravcom.com On Thu, Mar 5, 2009 at 12:33 PM, Elton Hoxha elt...@gmail.com wrote: Hi again, the below suggestion In your sendsms-user do not add dlr-url parameter. didnt succeded. I removed the line of drl-url from the conf and after restarted the kannel, it didnt return back any value at all. 2009-03-03 23:18:13 [7543] [4] INFO: Starting delivery report b from 15106 2009-03-03 23:18:13 [7543] [9] DEBUG: Queue contains 0 pending requests. 2009-03-03 23:18:13 [7543] [9] ERROR: URL doesn't start with `http://' nor `https://' 2009-03-03 23:18:13 [7543] [9] ERROR: Couldn't send request to Table 6-16. SMS Push (send-sms) CGI Variables says about dlr-mask: Request for delivery reports with the state of the sent message. The value is a bit mask composed of: 1: Delivered to phone, 2: Non-Delivered to Phone, 4: Queued on SMSC, 8: Delivered to SMSC, 16: Non-Delivered to SMSC. Must set dlr-url on sendsms-userdlr-url CGI variable. group or use the I have to consider the first alternative, defining the url in the sendsms-user block and feeding the myid parameter like %p, %Pis it possible? Elton On Thu, Mar 5, 2009 at 6:10 PM, Alvaro Cornejo cornejo.alv...@gmail.com wrote: Hi Dlr-url is defined on sendsms-user if you want a dlr with no info from your own. In your case, as you are going to use your own message Id, you have to create it dynamically for each MT and put it in each call to kannel, as my example in previous mail. In your sendsms-user do not add dlr-url parameter. sms statuses are read backwards: 16 = not delivered to smsc 8 = you submitted to smsc. ie smsc tell kannel he has the msg 4 = msg is in smsc queue. ie smsc tell kannel he queued the msg in its queue. 2 = failed 1 = delivered to phone Also note that not all smsc provide all the statuses, mainly status 4 is not provided by all smsc's since smsc's asume that if they got the message, it is queued if not rejected for any reason nor delivered¡?¡? Alvaro On Thu, 2009-03-05 at 17:51 +0100, Elton Hoxha wrote: As dlr-url is defined statically in the conf file, so which is the respective parameter for , , etc group = sendsms-user username = b password = b dlr-url = http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv=% dstatus=%Fmyid=(something like $parameter - ?) It is so simple issue, thats why
Re: deliver_sm
You shouldn't make such demands. We are not on your payroll. If someone is available and knows the answer will help. If he doesn't - a frequent case in open source mailgroups - you should be able to go after it yourself (source code) or wait. Only in payed gold support, you can send 3 tickets about the same thing in 2 days and expect answer within 24 hours. Otherwise you are spamming the group. Lastly, by truncating your mail, your problem is gone and anyone who could help, cannot any more. BR, Nikos - Original Message - From: narendra reddy To: users@kannel.org Sent: Thursday, March 05, 2009 6:13 PM Subject: deliver_sm Hi users, yesterday i sent Two mails .but i am not getting responce . any help appriciated. TIA. Best Regards, Narendra Reddy, +91 9985167784, Hyderabad.
Re: setup Kannel Mac OSX 10.4, Samba 75 Modem, daemon + parachute
Hi, Please see inlined answers. For all answers check relevant info in the latest userguide. - Original Message - From: Jason Higbee ja...@covalentglobal.org To: users@kannel.org Sent: Thursday, March 05, 2009 6:43 PM Subject: setup Kannel Mac OSX 10.4, Samba 75 Modem, daemon + parachute Users, I'm planning a project so I am looking for advice and corrections on what I think Kannel can do. I have: Mac OS X 10.4.11 Samba 75 (Siemens MC75) USB modem with the modem scripts - it can connect with another SMSC program on port ../tty.usbmodem1B11 or ../cu.usbmodem1B11 (not sure the difference but both seem to work) I have compiled Kannel 1.4.2 on my Mac but haven't properly configured and used it as a SMSC to send and receive messages. I plan on recompling with Kannel 1.4.3 as the bug report suggests. I also have php scripts setup to receive the HTTP GET requests. There seems to be a confusion here. I presume you refer to DLRs (SMS delivery confirmations). Otherwise kannel doesn't have php builtin and can only use php to send HTTP requests (Push) . Here's what I need Kannel to do: (1) forward the received messages through a HTTP GET across the internet; Yes, through sms-service. (2) to run as a Mac daemon so I can sleep the computer and it will still run. Mac is Unix. I imagine that anything running unattented will also run in sleep mode. This is feature in Unix systems for the past 30 years (daemons). (3) to tell me the signal strength of the modem (i.e. how many 'bars' so I know I'm not in a deadzone); Dunno. Maybe someone else can help. But this is not strictly a kannel issue. If the modem gets garbled messages, kannel cannot help (GIGO). (4) automatically restart itself if it loses connection to modem (I believe this is called parachute mode); No. It will restart only if process panics. But not to worry. It has a queue. If it looses connection to an SMSc, this SMSc is marked inactive. Other SMSc connections can pickup the traffic. In addition, kannel will try to reconnect to the inactive SMSc, according parameters set in the configuration. (5) and store messages received locally in a database (I believe this done through an addon called sqlbox; I use MAMP for a local instance of MySQL but would use anything that would work with this system). I don't know MAMP, but yes, you can do that with sqlbox. Other embedded choices are controlled through store-type paramater in core configuration and are file or spool (directory). So I am hoping Kannel can hit a home run and do all that! Please correct me if I'm wrong and point me in the right direction on these 5 things to create this Kannel system. Thanks. Best of luck, Nikos
Re: setup Kannel Mac OSX 10.4, Samba 75 Modem, daemon + parachute
regarding the MODEM implementation as SMSC for production invironment: in general the mobile signal strength of a GMS/other modem could be extracted via AT commands please keep in mind that once the modem is binded to kannel as smsc, it will not respond to external AT commands. So its better FIRST to set the pin, then to check the signal and AFTER THAT in case the result is acceptable, to proceed with the kannel startup then, its very handy to monitor the log files for errors indicating the mobile network failure. in 99% of the cases the signal will be back, but in the rest 1% the reason is not a technical one. for example some mobile operators deactivate SIM cards after a time, in case they have no MO activity. OR, your credit is OVER.. :) life sucks so plan the project and calculate the possible failures ... it will save you lots of time cheers Nikos Balkanas wrote: Hi, Please see inlined answers. For all answers check relevant info in the latest userguide. - Original Message - From: Jason Higbee ja...@covalentglobal.org To: users@kannel.org Sent: Thursday, March 05, 2009 6:43 PM Subject: setup Kannel Mac OSX 10.4, Samba 75 Modem, daemon + parachute Users, I'm planning a project so I am looking for advice and corrections on what I think Kannel can do. I have: Mac OS X 10.4.11 Samba 75 (Siemens MC75) USB modem with the modem scripts - it can connect with another SMSC program on port ../tty.usbmodem1B11 or ../cu.usbmodem1B11 (not sure the difference but both seem to work) I have compiled Kannel 1.4.2 on my Mac but haven't properly configured and used it as a SMSC to send and receive messages. I plan on recompling with Kannel 1.4.3 as the bug report suggests. I also have php scripts setup to receive the HTTP GET requests. There seems to be a confusion here. I presume you refer to DLRs (SMS delivery confirmations). Otherwise kannel doesn't have php builtin and can only use php to send HTTP requests (Push) . Here's what I need Kannel to do: (1) forward the received messages through a HTTP GET across the internet; Yes, through sms-service. (2) to run as a Mac daemon so I can sleep the computer and it will still run. Mac is Unix. I imagine that anything running unattented will also run in sleep mode. This is feature in Unix systems for the past 30 years (daemons). (3) to tell me the signal strength of the modem (i.e. how many 'bars' so I know I'm not in a deadzone); Dunno. Maybe someone else can help. But this is not strictly a kannel issue. If the modem gets garbled messages, kannel cannot help (GIGO). (4) automatically restart itself if it loses connection to modem (I believe this is called parachute mode); No. It will restart only if process panics. But not to worry. It has a queue. If it looses connection to an SMSc, this SMSc is marked inactive. Other SMSc connections can pickup the traffic. In addition, kannel will try to reconnect to the inactive SMSc, according parameters set in the configuration. (5) and store messages received locally in a database (I believe this done through an addon called sqlbox; I use MAMP for a local instance of MySQL but would use anything that would work with this system). I don't know MAMP, but yes, you can do that with sqlbox. Other embedded choices are controlled through store-type paramater in core configuration and are file or spool (directory). So I am hoping Kannel can hit a home run and do all that! Please correct me if I'm wrong and point me in the right direction on these 5 things to create this Kannel system. Thanks. Best of luck, Nikos
Re: setup Kannel Mac OSX 10.4, Samba 75 Modem, daemon + parachute
See in line comments. -Jason Nikos Balkanas wrote: Hi, Please see inlined answers. For all answers check relevant info in the latest userguide. - Original Message - From: Jason Higbee ja...@covalentglobal.org To: users@kannel.org Sent: Thursday, March 05, 2009 6:43 PM Subject: setup Kannel Mac OSX 10.4, Samba 75 Modem, daemon + parachute Users, I'm planning a project so I am looking for advice and corrections on what I think Kannel can do. I have: Mac OS X 10.4.11 Samba 75 (Siemens MC75) USB modem with the modem scripts - it can connect with another SMSC program on port ../tty.usbmodem1B11 or ../cu.usbmodem1B11 (not sure the difference but both seem to work) I have compiled Kannel 1.4.2 on my Mac but haven't properly configured and used it as a SMSC to send and receive messages. I plan on recompling with Kannel 1.4.3 as the bug report suggests. I also have php scripts setup to receive the HTTP GET requests. There seems to be a confusion here. I presume you refer to DLRs (SMS delivery confirmations). Otherwise kannel doesn't have php builtin and can only use php to send HTTP requests (Push) . Sorry for the confusion. the php is my script on my server set up to receive HTTP GET requests. Here's what I need Kannel to do: (1) forward the received messages through a HTTP GET across the internet; Yes, through sms-service. Great. (2) to run as a Mac daemon so I can sleep the computer and it will still run. Mac is Unix. I imagine that anything running unattented will also run in sleep mode. This is feature in Unix systems for the past 30 years (daemons). Nice. I've used other daemons that run while in sleep mode and connect to the internet, so it would be great if I could get kannel to do the same. (3) to tell me the signal strength of the modem (i.e. how many 'bars' so I know I'm not in a deadzone); Dunno. Maybe someone else can help. But this is not strictly a kannel issue. If the modem gets garbled messages, kannel cannot help (GIGO). Yeah perhaps there's some AT commands I can send through kannel. (4) automatically restart itself if it loses connection to modem (I believe this is called parachute mode); No. It will restart only if process panics. But not to worry. It has a queue. If it looses connection to an SMSc, this SMSc is marked inactive. Other SMSc connections can pickup the traffic. In addition, kannel will try to reconnect to the inactive SMSc, according parameters set in the configuration. That's good. Does anyone have any practical experience with this? Does Kannel do a good job of detecting when the SMSc is down and reconnecting? (also, I'll read up on what exactly 'panic' means). (5) and store messages received locally in a database (I believe this done through an addon called sqlbox; I use MAMP for a local instance of MySQL but would use anything that would work with this system). I don't know MAMP, but yes, you can do that with sqlbox. Other embedded choices are controlled through store-type paramater in core configuration and are file or spool (directory). Yeah that's great. Just flat files are fine too. So I am hoping Kannel can hit a home run and do all that! Please correct me if I'm wrong and point me in the right direction on these 5 things to create this Kannel system. Thanks. Best of luck, Nikos Thanks for your comment Nikos, I appreciate it.
Re: setup Kannel Mac OSX 10.4, Samba 75 Modem, daemon + parachute
Hi, On a final note: Panic in kannelise means the process dies due to unexpected behaviour (core dump, etc. - never happens, though). To test parachute quickly: start bearerbox with -P flag. You should see 2 bearerbox processes running, one is the child of the other. Send an unexpected signal to the child, i.e. kill -USR1 process-id. Kannel can't be fooled by any normal signal (INT, ABRT, KILL, SIG, etc.) and will die since it will consider it a user action ;-) You will notice that a new child is spawned with new pid. If you have bearerbox logs open you will see clearly the reinitialization. Everyone in the group has plenty of experience with SMSc timeouts and disconnects. Kannel will realize it when it tries to send a message and gets an error. It will try to reconnect and resend the message. That has the danger, that if you do not send any messages, and the SMSc gets disconnecterd, kannel won't know it. Therefore most SMScs have keepalives that kannel understands and will try to reconnect. BR, Nikos - Original Message - From: Jason Higbee ja...@covalentglobal.org To: Nikos Balkanas nbalka...@gmail.com Cc: users@kannel.org Sent: Thursday, March 05, 2009 11:40 PM Subject: Re: setup Kannel Mac OSX 10.4, Samba 75 Modem, daemon + parachute See in line comments. -Jason Nikos Balkanas wrote: Hi, Please see inlined answers. For all answers check relevant info in the latest userguide. - Original Message - From: Jason Higbee ja...@covalentglobal.org To: users@kannel.org Sent: Thursday, March 05, 2009 6:43 PM Subject: setup Kannel Mac OSX 10.4, Samba 75 Modem, daemon + parachute Users, I'm planning a project so I am looking for advice and corrections on what I think Kannel can do. I have: Mac OS X 10.4.11 Samba 75 (Siemens MC75) USB modem with the modem scripts - it can connect with another SMSC program on port ../tty.usbmodem1B11 or ../cu.usbmodem1B11 (not sure the difference but both seem to work) I have compiled Kannel 1.4.2 on my Mac but haven't properly configured and used it as a SMSC to send and receive messages. I plan on recompling with Kannel 1.4.3 as the bug report suggests. I also have php scripts setup to receive the HTTP GET requests. There seems to be a confusion here. I presume you refer to DLRs (SMS delivery confirmations). Otherwise kannel doesn't have php builtin and can only use php to send HTTP requests (Push) . Sorry for the confusion. the php is my script on my server set up to receive HTTP GET requests. Here's what I need Kannel to do: (1) forward the received messages through a HTTP GET across the internet; Yes, through sms-service. Great. (2) to run as a Mac daemon so I can sleep the computer and it will still run. Mac is Unix. I imagine that anything running unattented will also run in sleep mode. This is feature in Unix systems for the past 30 years (daemons). Nice. I've used other daemons that run while in sleep mode and connect to the internet, so it would be great if I could get kannel to do the same. (3) to tell me the signal strength of the modem (i.e. how many 'bars' so I know I'm not in a deadzone); Dunno. Maybe someone else can help. But this is not strictly a kannel issue. If the modem gets garbled messages, kannel cannot help (GIGO). Yeah perhaps there's some AT commands I can send through kannel. (4) automatically restart itself if it loses connection to modem (I believe this is called parachute mode); No. It will restart only if process panics. But not to worry. It has a queue. If it looses connection to an SMSc, this SMSc is marked inactive. Other SMSc connections can pickup the traffic. In addition, kannel will try to reconnect to the inactive SMSc, according parameters set in the configuration. That's good. Does anyone have any practical experience with this? Does Kannel do a good job of detecting when the SMSc is down and reconnecting? (also, I'll read up on what exactly 'panic' means). (5) and store messages received locally in a database (I believe this done through an addon called sqlbox; I use MAMP for a local instance of MySQL but would use anything that would work with this system). I don't know MAMP, but yes, you can do that with sqlbox. Other embedded choices are controlled through store-type paramater in core configuration and are file or spool (directory). Yeah that's great. Just flat files are fine too. So I am hoping Kannel can hit a home run and do all that! Please correct me if I'm wrong and point me in the right direction on these 5 things to create this Kannel system. Thanks. Best of luck, Nikos Thanks for your comment Nikos, I appreciate it.