Hello,
I'm having some trouble with what I think is the dialog module.
I've got Kamailio 5.5.4 running well for some time. Recently I added
Asterisk to the mix and have come across an issue.
Call to Kamailio. Kamailio sends it to Asterisk. Asterisk may decide
to "forward" the call. To do this it will place a new outbound call
through Kamailio. From the user perspective, this works absolutely fine
(invite, ringing, ok, bye). The acc module handles it fine also.
However dialog does not, and the events for ok and bye do not fire on
the original call. They do fire for the forwarded call.
I've added some logging output to try to isolate the problem, but I'm no
further ahead. Here's what I have. Any suggestions?
** Call initiated **
INFO: <script>: onreply_route[MANAGE_REPLY] branch [0] rm=INVITE rs=100
ru=<null> tu=sip:destination@endpoint DLG_status=<null> dlg-h-id=3360
INFO: <script>: onreply_route[MANAGE_REPLY] branch [0] rm=INVITE rs=100
ru=<null> tu=sip:fwddest@0.0.0.1:5060 DLG_status=<null> dlg-h-id=12036
INFO: <script>: onreply_route[MANAGE_REPLY] branch [0] rm=INVITE rs=183
ru=<null> tu=sip:fwddest@0.0.0.1:5060 DLG_status=<null> dlg-h-id=12036
INFO: <script>: onreply_route[MANAGE_REPLY] branch [0] rm=INVITE rs=183
ru=<null> tu=sip:destination@endpoint DLG_status=<null> dlg-h-id=3360
INFO: <script>: onreply_route[MANAGE_REPLY] branch [0] rm=INVITE rs=200
ru=<null> tu=sip:fwddest@0.0.0.1:5060 DLG_status=<null> dlg-h-id=12036
CRITICAL: dialog [dlg_timer.c:200]: update_dlg_timer(): Trying to update
a bogus dlg tl=0x7fa0494006e8 tl->next=(nil) tl->prev=(nil)
ERROR: dialog [dlg_hash.c:1329]: update_dlg_timeout(): failed to update
dialog lifetime
CRITICAL: dialog [dlg_timer.c:200]: update_dlg_timer(): Trying to update
a bogus dlg tl=0x7fa0494006e8 tl->next=(nil) tl->prev=(nil)
ERROR: dialog [dlg_hash.c:1329]: update_dlg_timeout(): failed to update
dialog lifetime
ERROR: dialog [dlg_profile.c:1028]: dlg_set_timeout_by_profile(): Unable
to set timeout on 3306:12036
NOTICE: acc [acc.c:270]: acc_log_request(): ACC: transaction answered:
timestamp=1648611824;time_unix=1648611824.346;method=INVITE;from_tag=as292200a1;to_tag=as75834dc4;call_id=7cef233547dca0ac7882ce5249b3b54c;code=200;reason=OK
INFO: <script>: onreply_route[MANAGE_REPLY] branch [0] rm=INVITE rs=200
ru=<null> tu=sip:destination@endpoint DLG_status=<null> dlg-h-id=<null>
NOTICE: acc [acc.c:270]: acc_log_request(): ACC: transaction answered:
timestamp=1648611824;time_unix=1648611824.354;method=INVITE;from_tag=as730369e7;to_tag=as3b06b3e2;call_id=53bad4f0034b61a5745163d82daef402;code=200;reason=OK
INFO: <script>: onreply_route[MANAGE_REPLY] branch [0] rm=INVITE rs=200
ru=<null> tu=sip:destination@endpoint DLG_status=<null> dlg-h-id=<null>
WARNING: dialog [dlg_handlers.c:1328]: dlg_onroute(): unable to find
dialog for ACK with route param '161.02d' [353:3360] and call-id
'53bad4f0034b61a5745163d82daef402'
WARNING: dialog [dlg_handlers.c:1328]: dlg_onroute(): unable to find
dialog for ACK with route param '161.02d' [353:3360] and call-id
'53bad4f0034b61a5745163d82daef402'
** The call is answered and endpoints can talk to each other **
** Now the original caller hangs up **
WARNING: dialog [dlg_handlers.c:1328]: dlg_onroute(): unable to find
dialog for BYE with route param '161.02d' [353:3360] and call-id
'53bad4f0034b61a5745163d82daef402'
NOTICE: acc [acc.c:270]: acc_log_request(): ACC: transaction answered:
timestamp=1648611831;time_unix=1648611831.933;method=BYE;from_tag=as730369e7;to_tag=as3b06b3e2;call_id=53bad4f0034b61a5745163d82daef402;code=200;reason=OK
INFO: <script>: onreply_route[MANAGE_REPLY] branch [0] rm=INVITE rs=100
ru=<null> tu=sip:fwddest@0.0.0.1:5060 DLG_status=<null> dlg-h-id=12036
INFO: <script>: onreply_route[MANAGE_REPLY] branch [0] rm=INVITE rs=200
ru=<null> tu=sip:fwddest@0.0.0.1:5060 DLG_status=<null> dlg-h-id=12036
ERROR: <script>: got result for bye = Bye!; DLG_lifetime = 8
NOTICE: acc [acc.c:270]: acc_log_request(): ACC: transaction answered:
timestamp=1648611832;time_unix=1648611832.115;method=BYE;from_tag=as292200a1;to_tag=as75834dc4;call_id=7cef233547dca0ac7882ce5249b3b54c;code=200;reason=OK
ERROR: dialog [dlg_handlers.c:363]: dlg_terminated_confirmed(): failed
to get dialog from params!
** Everything ends cleanly on the other SIP endpoints **
What can I do from here to try to isolate this further?
Thanks,
--
Trevor Peirce
AcroVoice Solutions Inc