Post your final solution (e.g. some patch in .diff) and what advantages it
gives you so others would benefit too :)


2014-04-30 15:22 GMT+04:00 Saurabh Pandey <sam.it.develo...@gmail.com>:

> Thanks a lot Rene. perfect solution.
> Also I used another gw function to retrieve last item, so that's okay.
> Thanks again for your help.
>
>
> On Wed, Apr 30, 2014 at 4:33 PM, Rene Kluwen <rene.klu...@chimit.nl>wrote:
>
>> Try:
>>
>>
>>
>> octstr_format("
>> http://someurl.com/somescript.php?mobile=%%p&dlr=%%d&msgid=%s";,
>> octstr_get_cstr(msgid));
>>
>>
>>
>> This will replace %%p with %p, %%d with %d and %s with the msgid.
>>
>>
>>
>> Also: I don’t think gw_extract_last() doesn’t exist in the gw library.
>>
>>
>>
>> == Rene
>>
>>
>>
>>
>>
>> *From:* Saurabh Pandey [mailto:sam.it.develo...@gmail.com]
>> *Sent:* dinsdag 29 april 2014 16:55
>> *To:* Rene Kluwen
>> *Cc:* users@kannel.org
>> *Subject:* Re: SMS ID and DLR-URL concatenation issue
>>
>>
>>
>> Rene my dlr-url contains other parameters also like %d for dlr etc. Also
>> C is supposed to replace %d with passed integer value right? So I want this
>>
>> "http://someurl.com/somescript.php?mobile=%p&dlr=%d&msgid=<i want my id
>> here>"
>>
>> Now, based on your suggestion I did this:
>>
>> octstr_format("
>> http://someurl.com/somescript.php?mobile=%p&dlr=%d&msgid=%s";,
>> octstr_get_cstr(msgid));
>>
>> compiled just fine, but when got DLR, it panicked:
>>
>> 2014-04-29 11:44:39 [29025] [12] PANIC: octstr_format format string
>> syntax error.
>>
>> What can I do in this situation? Please help. I appreciate your support.
>>
>>
>>
>> On Tue, Apr 29, 2014 at 7:57 PM, Saurabh Pandey <
>> sam.it.develo...@gmail.com> wrote:
>>
>> Thanks for the valuable guidance Rene. I'll give it a shot and afterwards
>> will look into that memory leak issue.
>>
>> One quick question, above this code the dlr_url is separated by splitting
>> it and picking the first part. Here is the code :
>>
>> parts = octstr_split(msg->sms.dlr_url, octstr_imm("vmsgid="));
>> msgid = gwlist_extract_first(parts);
>>
>> However, now according to my scenario, I need to extract the last item in
>> the list. I tried this:
>>
>> parts = octstr_split(msg->sms.dlr_url, octstr_imm("vmsgid="));
>> msgid = gwlist_extract_last(parts);
>>
>> But it throws error: undefined reference to `gwlist_extract_last'
>>
>> Would you happen to know how can I do that, it s a very simple task.
>> Sorry if the question is too stupid :( I'm no C programmer.
>>
>>
>>
>>
>>
>> On Tue, Apr 29, 2014 at 7:23 PM, Rene Kluwen <rene.klu...@chimit.nl>
>> wrote:
>>
>> I didn’t see the end of your email.
>>
>>
>>
>> Use:
>>
>>
>>
>> msg->sms.dlr_url = octstr_format(http://someurl.com/myscript.php?msgid=%s”,
>> octstr_get_cstr(msgid));
>>
>>
>>
>> Btw, in the code that you gave below, there’s a memory leak.
>>
>>
>>
>> == Rene
>>
>>
>>
>> *From:* Rene Kluwen [mailto:rene.klu...@chimit.nl]
>> *Sent:* dinsdag 29 april 2014 15:51
>> *To:* 'Saurabh Pandey'; 'users@kannel.org'
>> *Subject:* RE: SMS ID and DLR-URL concatenation issue
>>
>>
>>
>> Use octstr_format(http://someurl.com/myscript.php?msgid=%s”, msgid);
>>
>>
>>
>> This is if msgid is a string. If it is an integer use %d instead of %s.
>>
>>
>>
>> == Rene
>>
>>
>>
>> *From:* users [mailto:users-boun...@kannel.org <users-boun...@kannel.org>]
>> *On Behalf Of *Saurabh Pandey
>> *Sent:* dinsdag 29 april 2014 13:41
>> *To:* users@kannel.org
>> *Subject:* SMS ID and DLR-URL concatenation issue
>>
>>
>>
>> Hi everyone,
>>
>> this should be very simple for an expert C programmer to fix. I am trying
>> to edit source of Opensmppbox.c to suit my requirements, but I am very poor
>> in C. What I had was:
>>
>> msg->sms.dlr_url = octstr_create("http://someurl.com/myscript.php";);
>>
>> and it was working fine. In my dlr-table this URL was inserted as dlr-url
>> and was fired when I received DLR. Now what I need is:
>>
>> msg->sms.dlr_url = octstr_create("http://someurl.com/myscript.php
>> *?msgid=*"+*msgid*);
>>
>> where msgid is fetched above like this:
>>
>> msgid = generate_smppid(msg,box->version);
>> msgid = octstr_duplicate(msgid);
>>
>> *Issue: *How do I append msgid to my dlr url and pass it. I used
>> strcpy/strcat but it gives me incompatible pointer type errors.
>>
>> Please help me here. Thanks a lot in advance.
>>
>> -Sam
>>
>>
>>
>>
>>
>
>

Reply via email to