hi all
configuration:
inalp gw (pstn) ------> ser ------> asterisk (only voicemail)
the following problems occur:
1) ser forwards the call to asterisk (if the user is in the voicemail
group) if the client does not answer after 30 sec.
from sip to sip is working.
but if a call comes from the pstn to a sip client, the client rings and
hangs up after 30 sec. ser then forwards it to the asterisk, but the pstn
call keeps on ringing and no voicemail is to hear.
ser writes the following error
Mar 29 13:24:39 sip /usr/local/sbin/ser[7017]:
++++++++++++INVITE******************
Mar 29 13:24:39 sip /usr/local/sbin/ser[7017]:
++++++++++++voicemail***********************
Mar 29 13:25:19 sip /usr/local/sbin/ser[7022]:
++++++++++++Failure Route******************
Mar 29 13:25:19 sip /usr/local/sbin/ser[7022]:
++++++++++++Failure Route******************
Mar 29 13:25:19 sip /usr/local/sbin/ser[7017]:
++++++++++++voicemail***********************
Mar 29 13:25:19 sip /usr/local/sbin/ser[7016]: ERROR:
t_should_relay_response: status rewrite by UAS: stored: 408, received: 200
Mar 29 13:25:20 sip /usr/local/sbin/ser[7017]: ERROR:
t_should_relay_response: status rewrite by UAS: stored: 408, received: 200
Mar 29 13:25:21 sip /usr/local/sbin/ser[7016]: ERROR:
t_should_relay_response: status rewrite by UAS: stored: 408, received: 200
Mar 29 13:25:24 sip last message repeated 3 times
Mar 29 13:25:28 sip /usr/local/sbin/ser[7015]:
++++++++++++Loose Route******************
Mar 29 13:25:28 sip /usr/local/sbin/ser[7014]: contact_parser(): Empty body
Mar 29 13:25:28 sip /usr/local/sbin/ser[7014]: parse_contact(): Error
while parsing
Mar 29 13:25:28 sip /usr/local/sbin/ser[7014]: get_contact_uri: Error
while parsing Contact body
2) if ua1 call ua2 (and ua2 is in the voicemail group) and ua1 hangs up
ser forwards to asterisk and the voicemail is run in the background,
but instead the call should be cancelled and not forwarded to the voicemail
does anyone know about these problems?
regards
raid
ser config snip:
loadmodule "/usr/local/lib/ser/modules/sl.so"
loadmodule "/usr/local/lib/ser/modules/tm.so"
# ------------- tm parameters
modparam("tm", "fr_timer", 30)
modparam("tm", "fr_inv_timer", 25)
modparam("tm", "wt_timer", 5)
modparam("tm", "fr_inv_timer_avp", "inv_timeout")
route {
if (lookup("location") | lookup("aliases")) {
if (is_user_in("Request-URI", "voicemail")) {
log (1, "++++++++++++voicemail***********************");
t_on_failure("1");
avp_write("i:30", "inv_timeout");
t_relay();
route(2);
break;
} else {
log (1, "++++++++++++no voicemail********************");
route(2);
break;
}
}
}
route [2] {
if (uri=~"[@:](192\.168\.|10\.|172\.(1[6-9]|2[0-9]|3[0-1])\.)"
&&
!search("^Route:")){
sl_send_reply("479", "We don't forward to private IP
addresses");
break;
};
if (isflagset(2)) {
force_rtp_proxy();
};
t_on_reply("1");
if (!t_relay()) {
sl_reply_error();
};
}
failure_route[1] {
log (1, "++++++++++++Failure Route******************");
revert_uri();
rewritehostport("XXX.XXX.XXX.XXX:5060");
append_branch();
t_on_failure("1");
t_relay();
break();
}
Show replies by date