任何人都可以帮助我解决这个 kamailio 问题,我使用 kamailio 作为代理和路由器,PSTN 路由工作正常,但是响应 200OK 的 ACK 有问题,kamailio 没有转发。
在客户端的 SIP 流下方。
Messages Retrans Timeout Unexpected-Msg
INVITE ----------> 1 0
100 <---------- 1 0 0 0
183 <---------- 0 0 0 0
180 <---------- E-RTD1 1 0 0 0
200 <---------- E-RTD1 1 1 0 0
ACK ----------> 1 1
Pause [ 3000ms] 1 0
BYE ----------> 1 0 0
200 <---------- 0 0 0 1
在 200 OK 之后,我收到了来自 kamailio 的 404“不在此处”。这是我的 cfg .. 不知道如何解决这个问题,因为我是 kamailio 工具的新手。
# Handle requests within SIP dialogs
route[WITHINDLG] {
if (!has_totag()) return;
# sequential request withing a dialog should
# take the path determined by record-routing
if (loose_route()) {
route(DLGURI);
if (is_method("BYE")) {
setflag(FLT_ACC); # do accounting ...
setflag(FLT_ACCFAILED); # ... even if the transaction fails
} else if ( is_method("ACK") ) {
# ACK is forwarded statelessly
route(NATMANAGE);
} else if ( is_method("NOTIFY") ) {
# Add Record-Route for in-dialog NOTIFY as per RFC 6665.
record_route();
}
route(RELAY);
exit;
}
if (is_method("SUBSCRIBE") && uri == myself) {
# in-dialog subscribe requests
route(PRESENCE);
exit;
}
if ( is_method("ACK") ) {
if ( t_check_trans() ) {
# no loose-route, but stateful ACK;
# must be an ACK after a 487
# or e.g. 404 from upstream server
route(RELAY);
exit;
} else {
# ACK without matching transaction ... ignore and discard
exit;
}
}
sl_send_reply("404","Not here");
exit;
}
请帮助..提前谢谢。