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, %P....is it possible? Elton On Thu, Mar 5, 2009 at 6:10 PM, Alvaro Cornejo <[email protected]>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 1111, 2222, etc > > > > group = sendsms-user > > username = b > > password = b > > dlr-url = > > "http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv=% > > d&status=%F&myid=(something like $parameter - ?)" > > > > It is so simple issue, thats why its driving me crazy :) > > > > By the way....in 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 > > <[email protected]> wrote: > > Hi > > > > It can be just as simple as: > > > > dlr-url > > ="http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv= > > % > > > > d&myid=1111" > > > > 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=remindme&password=alerts&to=4043078165&text=test&dlr-mask=31&drl-url='http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv=%d&myid=1111<http://localhost:13004/cgi-bin/sendsms?username=remindme&password=alerts&to=4043078165&text=test&dlr-mask=31&drl-url=%27http://10.1.21.236:2469/KannelGetStatus.asmx/GetStatus?dlrv=%d&myid=1111> > ' > > > > 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 1111, 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 1111. > > > > > > 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= > > > %d&status=%F&myid=?" > > > > > > > > > Many thanks > > > > > > > > > > > > > > > On Thu, Mar 5, 2009 at 4:42 PM, Alvaro Cornejo > > > <[email protected]> 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 > > > > >>> <[email protected]> wrote: > > > > > > > > >>> > From: Alvaro Cornejo > > > <[email protected]> > > > > >>> > Subject: Re: dlr-url > > > > >>> > To: "Drew Stockler" > > > <[email protected]> > > > > > > > > >>> > Cc: [email protected] > > > > >>> > 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=remindme&password=alerts&to=4043078165&text=test&dlr-mask=31&drl-url='http://localhost/sms.php?phone=%p&smsid=[YourOwnId]×tamp=%T&dlrv=%d<http://localhost:13004/cgi-bin/sendsms?username=remindme&password=alerts&to=4043078165&text=test&dlr-mask=31&drl-url=%27http://localhost/sms.php?phone=%p&smsid=%5BYourOwnId%5D×tamp=%T&dlrv=%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=% > > > > d&status=%F&smsid=?" > > > > > > > > Table 6.9 has all the parameters that we can use, > > how can I > > > add the > > > > escape code here for the smsid?? > > > > > > > > Thanks > > > > Elton > > > > > > > > > > > > > > > > > > > > >
