[SR-Users] t_reply in failure route with dialog module
Daniel-Constantin Mierla
miconda at gmail.com
Fri Nov 15 10:46:44 CET 2013
Hello,
can you try attached patch?
Let me know if all goes fine and I will commit it to the repository.
Cheers,
Daniel
On 11/15/13 10:25 AM, Efelin Novak wrote:
> Hi,
>
> when I use t_reply("505", "Error"); in my failure route, the response
> is not forwarded and following is written into a log:
>
> kamailio[26216]: WARNING: tm [t_lookup.c:1559]: t_unref(): WARNING:
> script writer didn't release transaction
>
> plus next line is written exactly 416000 times into a log afterwards:
>
> kamailio[32685]: CRITICAL: dialog [dlg_hash.c:794]:
> log_next_state_dlg(): bogus event 4 in state 5 for dlg 0xb4af6588
> [2575:7017] with clid '121d44f0-6555f4c8' and tags 'd12546d053aadc68o2' ''
>
> My point is to change the incoming code from users and append a Q.850
> reason code.
> Is there any other way how to do this or a way how to fix this?
> I'm using Kamilio 4.0.4 on Debian 7.1
>
>
> The code is as follows:
> failure_route[MANAGE_FAILURE]
> {
> if (t_is_canceled()) {
> exit;
> }
> if($T_reply_code == 408 && isflagset(10))
> {
> xlog("Ringing timeout");
> append_to_reply("Reason: Q.850;cause=28\r\n");
> t_reply("505", "Error");
> }
> }
>
>
> _______________________________________________
> SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
> sr-users at lists.sip-router.org
> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
--
Daniel-Constantin Mierla - http://www.asipto.com
http://twitter.com/#!/miconda - http://www.linkedin.com/in/miconda
Kamailio Advanced Trainings - Berlin, Nov 25-28
- more details about Kamailio trainings at http://www.asipto.com -
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.sip-router.org/pipermail/sr-users/attachments/20131115/0122a100/attachment.html>
-------------- next part --------------
diff --git a/modules/dialog/dlg_hash.c b/modules/dialog/dlg_hash.c
index bba619a..32365cb 100644
--- a/modules/dialog/dlg_hash.c
+++ b/modules/dialog/dlg_hash.c
@@ -858,6 +858,8 @@ void next_state_dlg(dlg_cell_t *dlg, int event,
dlg->state = DLG_STATE_DELETED;
*unref = 1;
break;
+ case DLG_STATE_DELETED:
+ break;
default:
log_next_state_dlg(event, dlg);
}
More information about the sr-users
mailing list