The timeout is generated locally, so no sip response is available from the network, the event route being executed with a faked request, having headers not related to that call -- as I said in the previous response, use $dlg(...) var:
- https://www.kamailio.org/wiki/cookbooks/devel/pseudovariables#dlg_attr
Cheers, Daniel
On 12.06.19 13:45, Igor Olhovskiy wrote:
Ok. More details.
I have INVITE and on fr_inv_timer expiry I'm catching timeout in failure_route, but not within dialog:failed. Yes, INVITE is not completing with 200 from other side, but it's actually not completing with any request from other side at all. It's terminated internally by Kamailio. And on dialog:failure in this case I see a strange OPTIONS packet.
Regards, Igor On Jun 12, 2019, 12:36 +0300, Daniel-Constantin Mierla miconda@gmail.com, wrote:
Can you be more specific about: "I can't get which dialog failed exactly"?
What do you want to get? Which attribute/value related to dialog?
Cheers, Daniel
On 12.06.19 10:57, Igor Olhovskiy wrote:
Yes, sorry, `dialog:failed` exactly.
Issue I found is quite strange. Schema of testing is
A calling B through Kamailio. B is not answering, jut keep sending 180. On dialog:failed I have this code:
event_route[dialog:failed] { xlog("L_ALERT", '[DIALOG:FAILED] "req":"$rm", "cs":"$cs", "dst":"$du", "from":"$fU", "to":"$tU", "cid":"$ci", "si":"$si", "sp":"$sp", "kts":$TV(Sn)' + "\n"); } Quite simple. But when actual dialog failed on fr_inv_timer excite, in logs I have ALERT: <script>: [DIALOG:FAILED] "req":"OPTIONS", "cs":"1", "dst":"<null>", "from":"you", "to":"you", "cid":"123", "si":"1.0.0.127", "sp":"5060", "kts":1560329373.947588 And I can't get which dialog failed exactly. But on the other hand, I can catch it on failure_route on t_branch_timeout() That was a question actually. Cause on call reject (with 5xx or 6xx) or similar I have correct dialog:failed event.
Regards, Igor On Jun 11, 2019, 13:23 +0300, Daniel-Constantin Mierla miconda@gmail.com, wrote:
Hello,
On 10.06.19 13:35, Igor Olhovskiy wrote:
Hi!
Just to confirm, is event route [dialog:end] not called on fr_inv_timer expiry? Cause it's called on call busy (486) and reject (whatever 6xx). So, what's the idea of not calling it on timeout? Or I'm missing something?
Kamailio 5.2
if the INVITE does not get 200ok, then another event route is executed:
- https://www.kamailio.org/docs/modules/stable/modules/dialog.html#idm10393078...
Cheers, Daniel
-- Daniel-Constantin Mierla -- www.asipto.com www.twitter.com/miconda -- www.linkedin.com/in/miconda
-- Daniel-Constantin Mierla -- www.asipto.com www.twitter.com/miconda -- www.linkedin.com/in/miconda