[SR-Users] Add Reason Header to kamailio generated CANCEL

David Villasmil david.villasmil.work at gmail.com
Wed Nov 18 11:45:51 CET 2020


Isn’t “message_apply_changes” applied automatically?

But I think Alfonso is talking specifically about CANCELs generated by
Kamailio on timeouts.

On Wed, 18 Nov 2020 at 09:58, Daniel-Constantin Mierla <miconda at gmail.com>
wrote:

> Hello,
> On 18.11.20 10:39, Denys Pozniak wrote:
>
> Hello!
>
> Call flow: FreeSWITCH --> SBC --> Edge Proxy
>
> In my case, the problem is related to the fact that the SBC deletes the
> Reason header from FreeSWITCH and I am trying to recover it on the Kamailio
> side (Edge Proxy).
> It is especially important to recover the message: "Call completed
> elsewhere" because this disables the missed call notification on the
> destination phone in case of hunt-groups.
> The option to forward the call through the stateless loop works well but
> it complicates the logic unnecessarily.
>
> So would be great to have a tm function to setup custom Reason, like below:
> *...*
>
> *t_cancel_reason("Reason: SIP ;cause=200 ;text=\"Call completed
> elsewhere\"\r\n"); t_relay();*
> *....*
>
> iirc, the Reason header should be propagated if it is in incoming CANCEL,
> so for this particular case, it should work if you do:
>
>
> if(is_method("CANCEL")) {
>
> append_hf("Reason: ...\r\n");
>
> msg_apply_changes();
>
> t_realy();
>
> exit;
>
> }
>
> Cheers,
> Daniel
>
>
> ср, 18 нояб. 2020 г. в 11:16, Daniel-Constantin Mierla <miconda at gmail.com
> >:
>
>> Same question here like in my other reply:
>>
>>   *
>> https://lists.kamailio.org/pipermail/sr-users/2020-November/111123.html
>>
>> How do you expect to fill the value of the header?
>>
>> Cheers,
>> Daniel
>> On 17.11.20 19:20, David Villasmil wrote:
>>
>> And on internally generated CANCELs
>>
>> On Tue, 17 Nov 2020 at 14:20, Denys Pozniak <denys.pozniak at gmail.com>
>> wrote:
>>
>>> Hello!
>>>
>>> We need to append our own Reason header for the "relayed" CANCEL
>>> message, if it is not on the input.
>>> Like below:
>>>
>>>
>>> *if ( is_method("CANCEL") && !is_present_hf("Reason") ) { *
>>> *  append_hf("Reason: ....);*
>>> *  t_relay();*
>>> *...*
>>>
>>>
>>>
>>>
>>> вт, 17 нояб. 2020 г. в 13:00, Daniel-Constantin Mierla <
>>> miconda at gmail.com>:
>>>
>>>> Hello,
>>>>
>>>> what is exactly the problem? The header is not added if you enable:
>>>>
>>>>   *
>>>> http://kamailio.org/docs/modules/stable/modules/tm.html#local_cancel_reason
>>>>
>>>> Cheers,
>>>> Daniel
>>>> On 16.11.20 20:43, Denys Pozniak wrote:
>>>>
>>>> Hello guys,
>>>>
>>>> We have faced almost the same problem adding *Reason:
>>>> SIP;cause=200;text="Call completed elsewhere"* to the t_relayed CANCEL
>>>> request.
>>>> Is there an elegant solution to add this header?
>>>>
>>>> PS. Switching to the stateless mode does not look pretty for us...
>>>>
>>>>
>>>> сб, 1 февр. 2020 г. в 06:04, Alfonso Pinto <alfonso.pinto at gmail.com>:
>>>>
>>>>> Hi guys,
>>>>>
>>>>> Thanks for your answers.
>>>>> I did try local_cancel_reason and it’s not doing anything for the
>>>>> CANCELs generated by kamailio. Isn’t that parameter intended for the
>>>>> CANCELs received and then relayed?
>>>>>
>>>>> As Alex and David mentioned, what I need is to add my own reason
>>>>> header. There are some cases that requires to set the Reason header to
>>>>> something specific. IE: terminal supported call waiting in IMS.
>>>>>
>>>>> Thanks for the piece of code, I will check what can be done here.
>>>>>
>>>>> Regards,
>>>>> Alfonso
>>>>>
>>>>> El El vie, 31 ene 2020 a las 22:10, Henning Westerholt <hw at skalatan.de>
>>>>> escribió:
>>>>>
>>>>>> Hi Alex,
>>>>>>
>>>>>> ok, I was reading that he wants to get just one reason header, not
>>>>>> one dynamic generated.
>>>>>>
>>>>>> Just looked briefly, this seems to be the code:
>>>>>>
>>>>>> t_msgbuilder.c
>>>>>> /* Build a local request based on a previous request; main
>>>>>>  * customers of this function are local ACK and local CANCEL
>>>>>>  */
>>>>>> char *build_local(struct cell *Trans,unsigned int branch,
>>>>>>         unsigned int *len, char *method, int method_len, str *to
>>>>>>         , struct cancel_reason* reason
>>>>>>         )
>>>>>>
>>>>>> Cheers,
>>>>>>
>>>>>> Henning
>>>>>>
>>>>>> --
>>>>>> Henning Westerholt – https://skalatan.de/blog/
>>>>>> Kamailio services – https://gilawa.com
>>>>>>
>>>>>> -----Original Message-----
>>>>>> From: sr-users <sr-users-bounces at lists.kamailio.org> On Behalf Of
>>>>>> Alex Balashov
>>>>>> Sent: Friday, January 31, 2020 9:45 PM
>>>>>> To: sr-users at lists.kamailio.org
>>>>>> Subject: Re: [SR-Users] Add Reason Header to kamailio generated CANCEL
>>>>>>
>>>>>> I understood Alfonso's question to implicitly be: how can I add a
>>>>>> dynamic and variable Reason header to outgoing CANCELs?
>>>>>>
>>>>>> Perhaps I was mistaken. But if I'm not, as far as I know there is no
>>>>>> means of doing that. Right?
>>>>>>
>>>>>> On Fri, Jan 31, 2020 at 08:37:48PM +0000, Henning Westerholt wrote:
>>>>>>
>>>>>> > Hello,
>>>>>> >
>>>>>> > have you tried to use this parameter:
>>>>>> >
>>>>>> >
>>>>>> http://kamailio.org/docs/modules/stable/modules/tm.html#local_cancel_r
>>>>>> > eason
>>>>>> >
>>>>>> > Cheers,
>>>>>> >
>>>>>> > Henning
>>>>>> >
>>>>>> > --
>>>>>> > Henning Westerholt – https://skalatan.de/blog/ Kamailio services –
>>>>>> > https://gilawa.com<https://gilawa.com/>
>>>>>> >
>>>>>> > From: sr-users <sr-users-bounces at lists.kamailio.org> On Behalf Of
>>>>>> > Alfonso Pinto
>>>>>> > Sent: Wednesday, January 29, 2020 8:04 PM
>>>>>> > To: Kamailio (SER) - Users Mailing List <
>>>>>> sr-users at lists.kamailio.org>
>>>>>> > Subject: [SR-Users] Add Reason Header to kamailio generated CANCEL
>>>>>> >
>>>>>> > Hi everyone,
>>>>>> >
>>>>>> > I've got a specific case: when the inv_fr times out, I need to add
>>>>>> a Reason header to the CANCEL generated by kamailio. I've tried to see if I
>>>>>> could do it in the onsend_route, but that one is not triggered for the
>>>>>> generated CANCEL. I also checked event_route[tm:local-request], but that
>>>>>> one isn't triggered either for the generated CANCEL.
>>>>>> >
>>>>>> > Is there any way to do it? Or maybe to have any pointer about where
>>>>>> to look in the code so I may try to trigger event_route[tm:local-request]
>>>>>> for these generated CANCELs?
>>>>>> >
>>>>>> > Regards,
>>>>>> > Alfonso
>>>>>>
>>>>>> > _______________________________________________
>>>>>> > Kamailio (SER) - Users Mailing List
>>>>>> > sr-users at lists.kamailio.org
>>>>>> > https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Alex Balashov | Principal | Evariste Systems LLC
>>>>>>
>>>>>> Tel: +1-706-510-6800 / +1-800-250-5920 (toll-free)
>>>>>> Web: http://www.evaristesys.com/, http://www.csrpswitch.com/
>>>>>>
>>>>>> _______________________________________________
>>>>>> Kamailio (SER) - Users Mailing List
>>>>>> sr-users at lists.kamailio.org
>>>>>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>>>>>>
>>>>> _______________________________________________
>>>>> Kamailio (SER) - Users Mailing List
>>>>> sr-users at lists.kamailio.org
>>>>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>>>>>
>>>>
>>>>
>>>> --
>>>>
>>>> BR,
>>>> Denys Pozniak
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> Kamailio (SER) - Users Mailing Listsr-users at lists.kamailio.orghttps://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>>>>
>>>> --
>>>> Daniel-Constantin Mierla -- www.asipto.comwww.twitter.com/miconda -- www.linkedin.com/in/miconda
>>>> Funding: https://www.paypal.me/dcmierla
>>>>
>>>>
>>>
>>> --
>>>
>>> BR,
>>> Denys Pozniak
>>>
>>>
>>> _______________________________________________
>>> Kamailio (SER) - Users Mailing List
>>> sr-users at lists.kamailio.org
>>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>>>
>> --
>> Regards,
>>
>> David Villasmil
>> email: david.villasmil.work at gmail.com
>> phone: +34669448337
>>
>> --
>> Daniel-Constantin Mierla -- www.asipto.comwww.twitter.com/miconda -- www.linkedin.com/in/miconda
>> Funding: https://www.paypal.me/dcmierla
>>
>> _______________________________________________
>> Kamailio (SER) - Users Mailing List
>> sr-users at lists.kamailio.org
>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>>
>
>
> --
>
> BR,
> Denys Pozniak
>
>
> --
> Daniel-Constantin Mierla -- www.asipto.comwww.twitter.com/miconda -- www.linkedin.com/in/miconda
> Funding: https://www.paypal.me/dcmierla
>
> --
Regards,

David Villasmil
email: david.villasmil.work at gmail.com
phone: +34669448337
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.kamailio.org/pipermail/sr-users/attachments/20201118/930fa5ea/attachment.htm>


More information about the sr-users mailing list