Re: How to receive sms message from smsc
Hi, There have been a number of problems with Cygwin and pthread locks. Not a kannel issue, but a general cygwin problem experienced in other software as well (openssl etc.). It is a compilation problem. Recently I here of more and more people building kannel on Cygwin, therefore I can only assume that the problem is fixed. Falco's suggestions are, however, valid. Cygwin has a number of other issues with shell scripts and other. Performance is not the least of them. It might be more informative if you download the latest CVS and run the test suite. I don't know how much faster a VM machine is (VMware?), but at least it is a pure OS, therefore as stable and reliable (and difficult to administer). But it is a pain because they give you only this tiny window, with no chance to debug if anything goes wrong. BR, Nikos - Original Message - From: Falko Ziemann To: Low Weng Kin Cc: users@kannel.org Sent: Wednesday, February 18, 2009 8:43 AM Subject: Re: How to receive sms message from smsc Hi, sorry, just read always and always that people have problems with Cygwin, pthreats and the bearerbox goes down in panic. But I'm not a developer, maybe some else can explain it better for you. Anyway I wouldn't recommend to run a software productive in an emulator. Emulators are always less stable than a native system or VM and you loose performance. Regards Falko Am 18.02.2009 um 02:55 schrieb Low Weng Kin: Dear Falko, Actually, thanks for your info... BTW, you mentioned previously the Kannel might encounter some problem inside the Window environment... Can I know what kind of risk will I be facing in more details? Regards, Low CC: users@kannel.org From: fal...@gmail.com To: powered182...@live.com Subject: Re: How to receive sms message from smsc Date: Tue, 17 Feb 2009 07:46:45 +0100 You have to set up a webserver, e.g. an Apache, and pop the messages to a script. For example you create the webserver on Port 23456 and there is a PHP script called sms.php, than you set up a config line inside kannel looking like this: group = sms-service keyword = default post-url = http://localhost:23456/sms.php?ORIGINATOR=%pRECEIVER=%PSMS=%aSOURCE_PRV=%o; max-messages = 0 Inside sms.php you can get the content of the SMS in the variables $_GET[ORIGINATOR] for the sender or $_GET[SMS] for the content and so on. Now you can use the SMS inside your script and forward it to somewhere else, create an answer (if you directly create an answer in your script, you should set the switch max-messages to something else than 0) or write it into a database. Also you can add a plugin to kannel called sqlbox. This makes kannel to put the message directly into a database. If you're interessted in that, say it, someone else could surely help you, that's not my world. Regards Falko Am 17.02.2009 um 02:50 schrieb Low Weng Kin: Hello Falko, Thanks for your reply. after I defined the URL, let's say http://localhost:23456/sms?phone=%ptext=a;, how do i retrieve the message? I know that I can see something like http://localhost:23456/sms?phone=787812121text=this_is_a_message; in the terminal every time there is a new message coming in from the SMSC. Where are the message stored? How can I actually retrieve them? Regards, Low -- CC: users@kannel.org From: fal...@gmail.com To: powered182...@live.com Subject: Re: How to receive sms message from smsc Date: Mon, 16 Feb 2009 10:36:44 +0100 The SMS is posted as HTTP-Request to an URL you can define inside the config. Please take a look at the manual. And better don't use Cygwin for kannel. Install a linux in a VM and install kannel there, you will soon experience some trouble with kannel inside cygwin. Regards Falko Am 16.02.2009 um 10:25 schrieb Low Weng Kin: Hi, I just finish installing and configuring Kannel on my local PC using Cygwin. I am currently testing it using SMPPSim. I just tested the send SMS through HTTP POST to the virtual SMSC. My question is how to get the incoming SMS from the SMSBox with a Window application? I want to know the concept on how to retrieving it.Thank you all in advance. Best regards, Low See all the ways you can stay connected to friends and family -- Share your beautiful moments with Photo Gallery. Windows Live Photo Gallery Enrich your blog with Windows Live Writer.
Re: WAP site
Hi, Please repost to the users list. No personal mail, unless it is a personal issue. Whenever you build a package from sources read the INSTALL and README files, which explain how to do it. BR, Nikos - Original Message - From: Abbas Qaizar ab...@mustafacomputers.com To: 'Nikos Balkanas' nbalka...@gmail.com Sent: Wednesday, February 18, 2009 9:45 AM Subject: RE: WAP site Hi Nikos, Sorry for my email because it's bit unusual and annoying for a person like you to answer / reply such silly questions about Kannel asked from a newbie like me but Sir, please help me as I have just stepped into LINUX World and using UBUNTU 8.10 (have downloaded and installed and did everything myself with the help of userguide) but with Kannel, I am little bit helpless. I have downloaded the version (using firefox) and it saved the tar.gz file on the desktop. Even I unpacked the file but it extracted on the desktop like this ../gateway-1.4.3 ..now how to use this ./configure and other commands from the terminal. Hope to have an early reply from your side. Thanks Kind Regards Abbas Qaizar - -Original Message- From: users-boun...@kannel.org [mailto:users-boun...@kannel.org] On Behalf Of Nikos Balkanas Sent: Tuesday, February 17, 2009 2:34 PM To: Surya; users@kannel.org Subject: Re: WAP site Sure, here you go: Download and install a webserver, aka lighttpd (or apache if you prefer). Configure it. At the root directory include index.wml: ?xml version=1.0? !DOCTYPE wml PUBLIC -//WAPFORUM//DTD WML 1.1//EN http://www.wapforum.org/DTD/wml_1.1.xml; wml card id=main title=Hello, world newcontext=true pHello, world./p /card /wml BR, Nikos - Original Message - From: Surya pyrosu...@gmail.com To: users@kannel.org Sent: Tuesday, February 17, 2009 11:14 AM Subject: WAP site Hi Users/Developers, I'm able to test and use kannel successfully for SMS. Can anyone give me some information on How to develop a wap site. TIA. Cheers, Surya
Re: How to receive sms message from smsc
Nikos, you are aware that a VM (I personal like Sun xVM, but a question of what you like best) hosts a full size OS with no restrictions? So you can for example run a SSH server inside the VM and administer it like a real server? So I don't know what you mean with tiny window and unable to debug. The console window in my MacOS is resizeable and think the putty-window under M$ OS either ;-) I'm running kannel for testing purpose in multiple instances in Sun xVM with Debian Guest on MacOS host. Works great and is an easy to configure test enviroment for all the strange ideas and settings that come to my mind. Regards Falko Am 18.02.2009 um 09:22 schrieb Nikos Balkanas: Hi, There have been a number of problems with Cygwin and pthread locks. Not a kannel issue, but a general cygwin problem experienced in other software as well (openssl etc.). It is a compilation problem. Recently I here of more and more people building kannel on Cygwin, therefore I can only assume that the problem is fixed. Falco's suggestions are, however, valid. Cygwin has a number of other issues with shell scripts and other. Performance is not the least of them. It might be more informative if you download the latest CVS and run the test suite. I don't know how much faster a VM machine is (VMware?), but at least it is a pure OS, therefore as stable and reliable (and difficult to administer). But it is a pain because they give you only this tiny window, with no chance to debug if anything goes wrong. BR, Nikos - Original Message - From: Falko Ziemann To: Low Weng Kin Cc: users@kannel.org Sent: Wednesday, February 18, 2009 8:43 AM Subject: Re: How to receive sms message from smsc Hi, sorry, just read always and always that people have problems with Cygwin, pthreats and the bearerbox goes down in panic. But I'm not a developer, maybe some else can explain it better for you. Anyway I wouldn't recommend to run a software productive in an emulator. Emulators are always less stable than a native system or VM and you loose performance. Regards Falko Am 18.02.2009 um 02:55 schrieb Low Weng Kin: Dear Falko, Actually, thanks for your info... BTW, you mentioned previously the Kannel might encounter some problem inside the Window environment... Can I know what kind of risk will I be facing in more details? Regards, Low CC: users@kannel.org From: fal...@gmail.com To: powered182...@live.com Subject: Re: How to receive sms message from smsc Date: Tue, 17 Feb 2009 07:46:45 +0100 You have to set up a webserver, e.g. an Apache, and pop the messages to a script. For example you create the webserver on Port 23456 and there is a PHP script called sms.php, than you set up a config line inside kannel looking like this: group = sms-service keyword = default post-url = http://localhost:23456/sms.php?ORIGINATOR=%pRECEIVER= %PSMS=%aSOURCE_PRV=%o max-messages = 0 Inside sms.php you can get the content of the SMS in the variables $_GET[ORIGINATOR] for the sender or $_GET[SMS] for the content and so on. Now you can use the SMS inside your script and forward it to somewhere else, create an answer (if you directly create an answer in your script, you should set the switch max-messages to something else than 0) or write it into a database. Also you can add a plugin to kannel called sqlbox. This makes kannel to put the message directly into a database. If you're interessted in that, say it, someone else could surely help you, that's not my world. Regards Falko Am 17.02.2009 um 02:50 schrieb Low Weng Kin: Hello Falko, Thanks for your reply. after I defined the URL, let's say http://localhost:23456/sms?phone= %ptext=a, how do i retrieve the message? I know that I can see something like http://localhost:23456/sms?phone=787812121text=this_is_a_message in the terminal every time there is a new message coming in from the SMSC. Where are the message stored? How can I actually retrieve them? Regards, Low CC: users@kannel.org From: fal...@gmail.com To: powered182...@live.com Subject: Re: How to receive sms message from smsc Date: Mon, 16 Feb 2009 10:36:44 +0100 The SMS is posted as HTTP-Request to an URL you can define inside the config. Please take a look at the manual. And better don't use Cygwin for kannel. Install a linux in a VM and install kannel there, you will soon experience some trouble with kannel inside cygwin. Regards Falko Am 16.02.2009 um 10:25 schrieb Low Weng Kin: Hi, I just finish installing and configuring Kannel on my local PC using Cygwin. I am currently testing it using SMPPSim. I just tested the send SMS through HTTP POST to the virtual SMSC. My question is how to get the incoming SMS from the SMSBox with a Window application? I want to know the concept on how to retrieving it.Thank you all in advance. Best regards, Low See all the ways you can stay connected to friends and family Share your beautiful
mysql
hi !! i'm using kannel and all works well(connection to the simulator(smpp), sms sending and receiving), but though i put the mysql storage i find the sms in the table for only submit_sm. send the messages through http we can set the dlr-mask value.but how we can set a dlr_mask value for for deliver_sm.the deliver_sm messages will come through simulator.So how we can inserted deliver_sm messages in table . i want some more fields in the mysql dlr table like message ,msg_type,date ,submit_time fields in a one table . is it possible?. i created in message field in table test with simulator it showing *zero* in the table.and added msg_type also it is also same *ZERO* in the table.how i can set this two parameters in mysql dlr table.can i add any fields in the config file. i am using below url for submit messages http://localhost:13005/cgi-bin/sendsms?username=pyropassword=pyrofrom=to=91971236987text=Test%20Messagecharset=UTF-16BEmclass=2coding=1pid=0dlr-mask=31 with this url how we can set dlr-mask value for deliver_sm.wat is the dlr_mask value for SMPPSimulator. please help me Thanks in Advance. Best Regards,
Re: mysql
hi!! in short, as we have mentioned several times, the dlr table is used to store the queue of messages NOT sent to the SMSC. So once sent, the cooresponding dlr table record of a particular messages is DELETED. In short, you should have EMPTY dlr table most of the time, in case your smsc connection is stable. In case you want to store the DELVERY STATUSES of e SENT massage, you need something MORE to be done. simple example: needed daemons: A db server of your choice, db table with a design according to your needs. FIRST READ twice this manual, THEN ask what is the db design. Web server, with script handling GET requests. the script, in short to name it get.dlr.status.crap, will get the HTTP GET request values and will store them in the db you have created. NOW, WHAT info may Kannel provide for you ? read here, http://kannel.org/download/kannel-userguide-snapshot/userguide.html#AEN3607 Table 6-9. Parameters (Escape Codes) in a view to make kannel feed the script with info about a sent massage, you HAVE TO SET the dlr-mask more than 1: why ? read bellow a quotation from the manual dlr-mask number (bit mask)Optional. 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-user group or use the dlr-url CGI variable. so WHEN you know what info do you want from the SMSC reports, you HAVE to SET unique dlr-url for each message example: http://localhost/dlr.pgsql.php?smscID=%idlr=%danswer=%Ato=%pfrom=%Pts=%TsmsID=3dbbe751d578416708726402f1866c5ccharset=%Ckannel_id=%I; how come this is a unique dlr-url ? because the smsID you create is unique for your system, i.e. each time you call the sendsms with another value for the dlr-url ok NOW you URLENCODE the value of the dlr-url when you compose the sendsms url http://localhost:13005/cgi-bin/sendsms?username=pyropassword=pyrofrom=to=91971236987text=Test%20Messagecharset=UTF-16BEmclass=2coding=1pid=0dlr-mask=31 dlr-url=http%3A%2F%2Flocalhost%2Fdlr.pgsql.php%3FsmscID%3D%25i%26dlr%3D%25d%26answer%3D%25A%26to%3D%25p%26from%3D%25P%26ts%3D%25T%26smsID%3D3dbbe751d578416708726402f1866c5c%26charset%3D%25C%26kannel_id%3D%25I So, now WHEN the SMSC reports a status change of the SENT sms with id 3dbbe751d578416708726402f1866c5c, Kannel will parse the dlr-url and will initiate HTTP GET request at the dlr-url with the values received from the SMSC HERE you use your proficient skills in web and database programming and administration. the called dlr.pgsql.php script could perform simple sql injection, or another more complicated task. So again FORGET about the dlr table used by kannel pandu reddy wrote: hi !! i'm using kannel and all works well(connection to the simulator(smpp), sms sending and receiving), but though i put the mysql storage i find the sms in the table for only submit_sm. send the messages through http we can set the dlr-mask value.but how we can set a dlr_mask value for for deliver_sm.the deliver_sm messages will come through simulator.So how we can inserted deliver_sm messages in table . i want some more fields in the mysql dlr table like message ,msg_type,date ,submit_time fields in a one table . is it possible?. i created in message field in table test with simulator it showing *zero* in the table.and added msg_type also it is also same /_*ZERO*_/ in the table.how i can set this two parameters in mysql dlr table.can i add any fields in the config file. i am using below url for submit messages http://localhost:13005/cgi-bin/sendsms?username=pyropassword=pyrofrom=to=91971236987text=Test%20Messagecharset=UTF-16BEmclass=2coding=1pid=0dlr-mask=31 http://localhost:13005/cgi-bin/sendsms?username=pyropassword=pyrofrom=to=91971236987text=Test%20Messagecharset=UTF-16BEmclass=2coding=1pid=0dlr-mask=31 with this url how we can set dlr-mask value for deliver_sm.wat is the dlr_mask value for SMPPSimulator. please help me Thanks in Advance. Best Regards,
URL
HI, how we can set answer for cricket is a keyword group = sms-service keyword = cricket get-url = http://localhosthost/service?sender=99from=text=itsa good game accept-x-kannel-headers = true max-messages = 3 concatenation = true but in the smsbox file it is showing below error 2009-02-18 21:06:25 [28265] [9] ERROR: Couldn't send request to http://host/service?sender=9958167784text= 2009-02-18 21:06:25 [28265] [9] ERROR: Error while gw_gethostbyname occurs. 2009-02-18 21:06:25 [28265] [9] ERROR: System error 1: Operation not permitted 2009-02-18 21:06:25 [28265] [9] ERROR: gethostbyname failed 2009-02-18 21:06:25 [28265] [9] ERROR: System error 2: No such file or directory in the smsboxacceess log file also it is showing like below. 2009-02-18 21:03:07 SMS HTTP-request sender:9958167784 request: 'Could not fetch content, sorry.' url: '' reply: -1 '' 2009-02-18 21:03:07 SMS HTTP-request sender:9958167784 request: 'Could not fetch content, sorry.' url: '' reply: -1 ' --wat is wrong in this issue.and wat is post-url and get-url .i kept the config file as above but it is showing so many errors. Best Regards,
stopping kannel from auto reply
I have setup kannel and I am using a gsm modem as my smsc. I have created an sms-service . I am able to receive and send sms, but when receiving sms, I am getting a reply back on my phone empty sms from service provider. I am using get-url to insert messages into mysql database, and it's working fine. I want to stop the auto reply. Here are my settings. Please tell me what is wrong with my configs. # Default kannel configuration file group = core admin-port = 13000 admin-password = root status-password = root #admin-deny-ip = *.*.*.* admin-allow-ip = 127.0.0.1, 10.2.2.13,192.168.171.99,192.168.171.88,*.*.*.* smsbox-port = 13001 #wapbox-port = 13002 #box-deny-ip = *.*.*.* box-allow-ip = *.*.*.* wdp-interface-name = * log-file = /var/log/kannel/bearerbox.log store-location = /var/log/kannel/kannel.store access-log = /var/log/kannel/access.log log-level = 0 #dlr-storage = mysql # SMSBOX SETUP group = smsbox bearerbox-host = localhost sendsms-port = 13013 sendsms-chars = 0123456789 +- #global-sender = 12345 log-file = /var/log/kannel/smsbox.log log-level = 0 #access-log = access.log #white-list = #black-list = #reply-couldnotfetch = #reply-couldnotrepresent = #reply-requestfailed = #reply-emptymessage = # SENDSMS USERS SETUP group = sendsms-user username = root password = root # SMSC Fake group = smsc smsc = fake port = 1 #connect-allow-ip = 127.0.0.1 #modem setup include = /etc/kannel/modems.conf group = smsc smsc = at smsc-id = atsmsc1 modemtype = auto device=/dev/ttyUSB2 #my-number = 254722490994 connect-allow-ip = 127.0.0.1 log-level = 0 # test sms service group = sms-service keyword = Test get-url = http://192.168.100.1/receive.php?from=%psms_text=%bkeyword=%kto=%P; # SMS SERVICE Default # there should be default always group = sms-service keyword = default get-url = http://192.168.100.1/receive.php?from=%psms_text=%bkeyword=%kto=%P; begin:vcard fn:James Mutuku n:Mutuku;James org:Agile Systems Limited;Technical Department adr:;;P.O Box 55686-00200;Nairobi;;00200;Kenya email;internet:jnmut...@gmail.com,jmut...@agile.co.ke title:Lead Consultant tel;work:+254-722-490994 tel;home:+254-722-490994 tel;cell:+254-722-490994 url:www.agile.co.ke version:2.1 end:vcard
information
Hi All, where this escape parameters will exactly useful and where we will use like %s,%t . cam i write the url in this way also. or will use only parameters(escape codes) only. http://localhost:13005/cgi-bin/sendsms?username=ropassword=rofrom=888555to=919text=Test%20Messagecharset=UTF-16BEmclass=2coding=1pid=0dlr-mask=3
RE: stopping kannel from auto reply
In your sms service if you don’t want kannel to reply back set the max-messages = 0 please consider the environment - do you really need to print this email? -Original Message- From: users-boun...@kannel.org [mailto:users-boun...@kannel.org] On Behalf Of James Mutuku Sent: Wednesday, February 18, 2009 17:50 To: users@kannel.org Subject: stopping kannel from auto reply I have setup kannel and I am using a gsm modem as my smsc. I have created an sms-service . I am able to receive and send sms, but when receiving sms, I am getting a reply back on my phone empty sms from service provider. I am using get-url to insert messages into mysql database, and it's working fine. I want to stop the auto reply. Here are my settings. Please tell me what is wrong with my configs. # Default kannel configuration file group = core admin-port = 13000 admin-password = root status-password = root #admin-deny-ip = *.*.*.* admin-allow-ip = 127.0.0.1, 10.2.2.13,192.168.171.99,192.168.171.88,*.*.*.* smsbox-port = 13001 #wapbox-port = 13002 #box-deny-ip = *.*.*.* box-allow-ip = *.*.*.* wdp-interface-name = * log-file = /var/log/kannel/bearerbox.log store-location = /var/log/kannel/kannel.store access-log = /var/log/kannel/access.log log-level = 0 #dlr-storage = mysql # SMSBOX SETUP group = smsbox bearerbox-host = localhost sendsms-port = 13013 sendsms-chars = 0123456789 +- #global-sender = 12345 log-file = /var/log/kannel/smsbox.log log-level = 0 #access-log = access.log #white-list = #black-list = #reply-couldnotfetch = #reply-couldnotrepresent = #reply-requestfailed = #reply-emptymessage = # SENDSMS USERS SETUP group = sendsms-user username = root password = root # SMSC Fake group = smsc smsc = fake port = 1 #connect-allow-ip = 127.0.0.1 #modem setup include = /etc/kannel/modems.conf group = smsc smsc = at smsc-id = atsmsc1 modemtype = auto device=/dev/ttyUSB2 #my-number = 254722490994 connect-allow-ip = 127.0.0.1 log-level = 0 # test sms service group = sms-service keyword = Test get-url = http://192.168.100.1/receive.php?from=%psms_text=%bkeyword=%kto=%P; # SMS SERVICE Default # there should be default always group = sms-service keyword = default get-url = http://192.168.100.1/receive.php?from=%psms_text=%bkeyword=%kto=%P;
Re: URL
Hi, I don't quite make out your request, but I can infer that smt is wrong from your logs. You have a typo in your get-url. Try: get-url = http://localhost/service?sender=99from=text=its a good game BR, Nikos - Original Message - From: narendra reddy To: users@kannel.org Sent: Wednesday, February 18, 2009 5:45 PM Subject: URL HI, how we can set answer for cricket is a keyword group = sms-service keyword = cricket get-url = http://localhosthost/service?sender=99from=text=its a good game accept-x-kannel-headers = true max-messages = 3 concatenation = true but in the smsbox file it is showing below error 2009-02-18 21:06:25 [28265] [9] ERROR: Couldn't send request to http://host/service?sender=9958167784text= 2009-02-18 21:06:25 [28265] [9] ERROR: Error while gw_gethostbyname occurs. 2009-02-18 21:06:25 [28265] [9] ERROR: System error 1: Operation not permitted 2009-02-18 21:06:25 [28265] [9] ERROR: gethostbyname failed 2009-02-18 21:06:25 [28265] [9] ERROR: System error 2: No such file or directory in the smsboxacceess log file also it is showing like below. 2009-02-18 21:03:07 SMS HTTP-request sender:9958167784 request: 'Could not fetch content, sorry.' url: '' reply: -1 '' 2009-02-18 21:03:07 SMS HTTP-request sender:9958167784 request: 'Could not fetch content, sorry.' url: '' reply: -1 ' --wat is wrong in this issue.and wat is post-url and get-url .i kept the config file as above but it is showing so many errors. Best Regards,
Re: information
Hi, You can certainly hardwire your parameters in your URL. The disadvantage is that all messages send will have the same hardwired parameters, i.e. all will go to 919, which I don't know if it is legal or not. Alternatively if you want kannel to fill-in the correct parameters for each message you should use the escape chars (%f, %s, etc.). BR, Nikos - Original Message - From: pandu reddy To: users@kannel.org Sent: Wednesday, February 18, 2009 6:00 PM Subject: information Hi All, where this escape parameters will exactly useful and where we will use like %s,%t . cam i write the url in this way also. or will use only parameters(escape codes) only. http://localhost:13005/cgi-bin/sendsms?username=ropassword=rofrom=888555to=919text=Test%20Messagecharset=UTF-16BEmclass=2coding=1pid=0dlr-mask=3
Re: conformation
Please send your full configuration file and also bearerbox and access logs. Something is not right. Also I suggest you have a look at the userguide again and again. Some answers are in there. Cheers, P. On Feb 18, 2009, at 7:25 PM, narendra reddy wrote: HI All, This one is i know but conformation i put this one. i am connecting with simulator its working fine .But i connected to SMSC this kannel gateway is not working.is this kannel gateway will work only localhost.because SMSC wat i connected in onother system .but simulator is in localhost. pls help me in this issuse. -- Best Regards, www.smsmedia.info Yes we can, yes we tried, yes we made it
Re: SUBMIT_MULTI with kannel
Nikos Balkanas schrieb: There seems to be support for it in gw/smsc/smpp_pdu.def: PDU(submit_multi, 0x0021, HEADER NULTERMINATED(service_type, 6) INTEGER(source_addr_ton, 1) INTEGER(source_addr_npi, 1) NULTERMINATED(source_addr, 21) INTEGER(number_of_dests, 1) Can someone confirm if it is actually implemented? the SMPP PDU [un]packing for it IS supported, but we don't use it for multi-destination purposes as it is intended by the spec. Stipe -- --- Kölner Landstrasse 419 40589 Düsseldorf, NRW, Germany tolj.org system architecture Kannel Software Foundation (KSF) http://www.tolj.org/ http://www.kannel.org/ mailto:st_{at}_tolj.org mailto:stolj_{at}_kannel.org ---
XML Messages in Kannel
Hello, I have an application on smart phones that send xml messages as text messages. Can kannel pass this format on? Basically what I want to happen is everything that is in the text message come in via my gsm modem and be redirected to a .net script. This is what I have so far: # Default kannel configuration file group = core admin-port = 13000 admin-password = 50006 smsbox-port = 13001 log-file = /var/log/kannel/bearerbox.log log-level = 1 group = smsc smsc = at smsc-id = gsm_modem modemtype = auto device = /dev/ttyS0 keepalive = 30 max-error-count = 5 sim-buffering = true log-file = /var/log/kannel/ttyS0.log log-level = 1 # MODEM CONFIGURATION group = modems id = generic name = Generic Modem detect-string = MULTITECH speed = 9600 group = smsbox sendsms-port = 13131 bearerbox-host = localhost bearerbox-port = 13001 log-level = 1 log-file = /var/log/kannel/smsbox.log group = sendsms-user username = adm password = adm concatenation= true max-messages = 10 group = sms-service keyword = catch-all = yes max-messages = 0 get-url = http://somedomain.com/cellhandler.aspx; [r...@kannel etc]# If I understand this correctly, when I receive an sms message, it should send the contents of that message as an http get to http://somedomain.com/cellhandler.aspx. Do I have this right? Also, if the message happens to be xml, will it pass it? Thanks, Josh -- Josh Richesin
(retry) How to set up routing to different SMSC's ?
Hmmm, I sent the email below earlier today, but looking at the message at http://www.kannel.org/pipermail/users/2009-February/005977.html , it seems to only display the first part. Is there a limit to the size of the post? Although there aren't really many lines shown in the above URL - I've seen posts much longer. So I'm trying to resend it again here, in the hope it won't get cut off this time. The last line should say: (This is the end of the request.). -- Hi, Is there any easy way to configure the mapping between SMSC ID's and short codes? We have the following requirements for a project, and I'm trying to determine what is the best and cleanest way to configure kannel to achieve them. I'm using kannel v1.4.1 . (Note that I know very little about SMSC's themselves. The SMSC's here are handled by another team and are out of my control. ) i) We need to be able to receive SMS messages from various SMSC's , e.g. messages sent by people to short code 111 would be received through one particular SMSC, and those sent to 222 would be received through another SMSC. ii) An application processes each message, and sends any reply back to the sender via kannel's normal sendsms interface: http://localhost:13013/cgi-bin/sendsms?. The message must be sent back through the same SMSC from which it was originally received, and with the same short code. (i.e. if a message is received from SMSC with short code 222, the reply has to go back through SMSC and appear to the customer as coming from '222'. ) iii) An application should also be able to send a random application-initiated message through SMSC that it wishes. If it doesn't specify any particular SMSC, it should through a specific default SMSC. I think the following relevant bits of configuration are a good start. group = smsc smsc-id = allowed-smsc-id = group = smsc smsc-id = allowed-smsc-id = group = smsc smsc-id = allowed-smsc-id = group = smsc smsc-id = denied-smsc-id = ;; From my testing, this means that if the application specifies smsc= as a parameter, i.e. http://localhost:13013/cgi-bin/sendsms?smsc= it will ALWAYS go through and nowhere else. If the application doesn't specify the smsc= parameter (or specifies a non-existant one), then the message will ALWAYS go through and nowhere else. That's what I want and I hope that's how it's meant to work. It does mean that if I add a new SMSC in the future, then we have to remember to also add it to the denied-smsc-id configuration above. A bit convoluted, but that's how kannel seems to work. Now, regarding the 'from=' parameter: From my observations, the SMSC's here (over which I have no control), tolerate only certain source numbers. So for example if I try sending back a SMS reply to a customer through SMSC , then that SMSC will accept a 'from' address of 222, but not 111 for example. http://localhost:13013/cgi-bin/sendsms?smsc=from=222 I was hoping that maybe I could leave out the from= parameter and then perhaps the SMSC itself would fill it in with a default correct value (I have no idea if our SMSC's are set up like that, but at least I would have liked to test it). But if I leave out the from= parameter from the URL above, kannel itself refuses to accept the URL, giving: ERROR 400: Bad Request Is there any clean way to configure kannel to tell it the relationships between the short codes and the SMSC ID? Continuing from above, requirement #4 is: iv) Ideally the application should be able to specify just the smsc or the 'from' field, and kannel should be able to supply the rest. http://localhost:13013/cgi-bin/sendsms?smsc= or http://localhost:13013/cgi-bin/sendsms?from=222 There's a lot of documentation in the kannel user guide so the solution may be staring me in the face, but I find a lot of it challenging to understand, especially the parts about 'routing'. The only way I could find to implement this is the following: I haven't tried to test this yet. I could set up one sendsms-user per SMSC. So for example for SMSC , I could set up with user: group = sendsms-user username = user_ default-smsc = default-sender = 61421260388 That way if the application wants to sends a message to SMSC , it (hopefully) only needs to do http://localhost:13013/cgi-bin/sendsms?username=user_ and can leave out either or both the smsc= and from= parameters. Of course, it has to then supply the correct username= parameter. Is there a more standard or neater way to do what I want? The application writers tell me that it might be hard for them to specify different username= values like this in the sendsms URL. They would rather be able to specify only the smsc= or from= parameter, and have kannel automatically work
Help... while sending Wap Push
Hi users, An urgent resolution is needed here While sending out the wap push I am getting problem as the message has been pushed as binary but need a throttling value of 2msg/sec... otherwise SMSC return Throttling error ... This mean the message is of length 2... where as its a simple wappush with small URL like http://kannel.org... I have attached the logs... May someone of you can shed some light or mechanism over troubleshooting this one... *WAPBOX Logs* 2009-02-19 02:39:57 [27549] [14] DEBUG: PPG: ip_allowed_by_ppg: ip found from allowed list 2009-02-19 02:39:57 [27549] [14] INFO: PPG: Accept request /wappush from 10.248.103.177 2009-02-19 02:39:57 [27549] [14] DEBUG: PPG: http_read_thread: pap multipart accepted 2009-02-19 02:39:57 [27549] [14] INFO: client address was +923028560772, accepted 2009-02-19 02:39:57 [27549] [14] DEBUG: PAP COMPILER: doing semantic analysis for address type a phone number 2009-02-19 02:39:57 [27549] [14] DEBUG: using defaults instead of anys 2009-02-19 02:39:57 [27549] [14] DEBUG: PPG: http_read_thread: pap control entity compiled ok 2009-02-19 02:39:57 [27549] [14] DEBUG: PPG: transform_message: push message content and headers valid 2009-02-19 02:39:57 [27549] [14] DEBUG: PPG: push machine 0 created 2009-02-19 02:39:57 [27549] [14] DEBUG: PPG: store_push_data: push machine 0 appended to unit push list 2009-02-19 02:39:57 [27549] [14] DEBUG: PPG: send_push_response: telling pi 2009-02-19 02:39:57 [27549] [14] DEBUG: HTTP: Resetting HTTPClient for `10.248.103.177'. 2009-02-19 02:39:57 [27549] [14] INFO: PPG: handle_push_message: push message accepted for processing 2009-02-19 02:39:57 [27549] [14] DEBUG: PPG: OTA request for unit push 2009-02-19 02:39:57 [27549] [14] INFO: PPG: unconfirmed push delivered to OTA 2009-02-19 02:39:57 [27549] [14] DEBUG: PPG: destroying push machine 0 2009-02-19 02:39:57 [27549] [9] DEBUG: OTA: event arrived 2009-02-19 02:39:57 [27549] [9] DEBUG: OTA: made connectionless session service request 2009-02-19 02:39:57 [27549] [2] DEBUG: WSP (UNIT): event arrived 2009-02-19 02:39:57 [27549] [2] DEBUG: WSP_UNIT: Connectionless push accepted 2009-02-19 02:39:57 [27549] [2] DEBUG: WSP: Mapping `application/vnd.wap.sic', WSP 1.2 to 0x002e. 2009-02-19 02:39:57 [27549] [2] ERROR: HTTP: Header does not contain a colon. BAD. 2009-02-19 02:39:57 [27549] [2] DEBUG: WSP: Mapping `X-Unknown', WSP 1.3 to 0x. 2009-02-19 02:39:57 [27549] [2] DEBUG: WSP: Mapping `Cache-Control', WSP 1.3 to 0x003d. 2009-02-19 02:39:57 [27549] [2] DEBUG: WSP: Mapping `Pragma', WSP 1.3 to 0x001f. 2009-02-19 02:39:57 [27549] [2] DEBUG: WSP: Mapping `User-Agent', WSP 1.3 to 0x0029. 2009-02-19 02:39:57 [27549] [2] DEBUG: WSP: Mapping `Accept', WSP 1.3 to 0x. 2009-02-19 02:39:57 [27549] [2] DEBUG: WSP: Mapping `text/html', WSP 1.2 to 0x0002. 2009-02-19 02:39:57 [27549] [2] DEBUG: WSP: Mapping `image/gif', WSP 1.2 to 0x001d. 2009-02-19 02:39:57 [27549] [2] DEBUG: WSP: Mapping `image/jpeg', WSP 1.2 to 0x001e. 2009-02-19 02:39:57 [27549] [2] DEBUG: WSP: Mapping `*', WSP 1.2 to 0x. 2009-02-19 02:39:57 [27549] [2] DEBUG: WSP: Mapping `q', WSP 1.2 to 0x. 2009-02-19 02:39:57 [27549] [2] DEBUG: WSP: Mapping `*/*', WSP 1.2 to 0x. 2009-02-19 02:39:57 [27549] [2] DEBUG: WSP: Mapping `q', WSP 1.2 to 0x. 2009-02-19 02:39:57 [27549] [2] DEBUG: WSP: Mapping `Content-Length', WSP 1.3 to 0x000d. 2009-02-19 02:39:57 [27549] [2] DEBUG: WSP: Mapping `Content-Type', WSP 1.3 to 0x0011. 2009-02-19 02:39:57 [27549] [2] DEBUG: WSP: Mapping `Encoding-Version', WSP 1.3 to 0x0043. 2009-02-19 02:39:57 [27549] [2] DEBUG: WDP (wapbox): delivering 2 segments to bearerbox 2009-02-19 02:39:57 [27549] [2] DEBUG: WSP (UNIT): delivering to wdp 2009-02-19 02:39:57 [27549] [0] WARNING: Received other message than wdp/admin, ignoring! 2009-02-19 02:39:57 [27549] [0] WARNING: Received other message than wdp/admin, ignoring! KANNEL.log 2009-02-19 12:32:16 [16854] [27] DEBUG: boxc_receiver: sms received 2009-02-19 12:32:16 [16854] [27] DEBUG: send_msg: sending msg to box: 127.0.0.1 2009-02-19 12:32:16 [16854] [6] DEBUG: SMPP[Mobilink1]: Sending PDU: 2009-02-19 12:32:16 [16854] [6] DEBUG: SMPP PDU 0x2c009f80 dump: 2009-02-19 12:32:16 [16854] [6] DEBUG: type_name: submit_sm 2009-02-19 12:32:16 [16854] [6] DEBUG: command_id: 4 = 0x0004 2009-02-19 12:32:16 [16854] [6] DEBUG: command_status: 0 = 0x 2009-02-19 12:32:16 [16854] [6] DEBUG: sequence_number: 2255 = 0x08cf 2009-02-19 12:32:16 [16854] [6] DEBUG: service_type: NULL 2009-02-19 12:32:16 [16854] [6] DEBUG: source_addr_ton: 2 = 0x0002 2009-02-19 12:32:16 [16854] [6] DEBUG: source_addr_npi: 1 = 0x0001 2009-02-19 12:32:16 [16854] [6] DEBUG: source_addr: 6261 2009-02-19 12:32:16 [16854] [6] DEBUG: dest_addr_ton: 1 = 0x0001 2009-02-19 12:32:16 [16854] [6] DEBUG: dest_addr_npi: 1 = 0x0001 2009-02-19 12:32:16 [16854] [6] DEBUG: