Mark
Thanks for the re-post
What I see in ngrep and var/log/messages is a "CANCEL" from the ua and a failure "487" on a reply. Don't know which happens first. Even if I take out the "break" if and add "487" to the if(method== statement, it goes to the asterisk server but vm doesn't play, no audio, and it drops the call anyway. I think I'll try what you suggested about creating another t_on_failure[] and test for it within the main routing block.
Rick
_____
From: Mark Aiken [mailto:aiken.mark@gmail.com] Sent: Friday, September 30, 2005 5:22 PM To: Leon Sun Cc: rthompson@vir2com.com; serusers@lists.iptel.org Subject: Re: [Serusers] ser and * voicemail
SER normally sends a 487 when the INVITE timer runs out so you would need to trigger the voicemail on that event. We have our feature server handing timeouts not SER (our SER timeout is set to a very large value) so I'm not sure the best way to proceed.
Does SER call the failure_route for a locally generated 487 timeout? If so then rather than the 'break' you have there now just forward to vm. I would set a different t_on_failure instead of reusing "1" though, so you dont keep forwarding if the vm fails.
Mark
On 9/30/05, Leon Sun leon.sun@keywestcommunications.com wrote:
Rick,
I had same problem before and I gave it up since I didn't get any answer from list. I am using another way(tricky but working) to do voice mail. Hope it can help you if you can't fix it.
1. Check location in your routing parts before relay, if not, forward to Asterisk.
2. set up unconditional forward in ATA as 00 + ATA'DID. Make a route in SER and point 00* to Asterisk.
3. Strip 00 in Asterisk and send it to voicemail2(${EXTEN})
Regards
Leon Sun
_____
From: serusers-bounces@iptel.org [mailto:serusers-bounces@lists.iptel.org mailto:nces@iptel.org ] On Behalf Of Rick Thompson Sent: Friday, September 30, 2005 12:58 PM To: serusers@lists.iptel.org Subject: [Serusers] ser and * voicemail
Hi All
I'm working with a ser script, written by someone that's gone now, that routes inbound calls to an asterisk server for voicemail. The failure_route[1], sends calls to asterisk and the IVR plays if the ua is unreachable (not in location) "404", "408" or the ua is busy "486" but it doesn't when the inv time exceeds 30 sec (rings for 30 sec or more). The call just stops ringing and 10 sec later gets a fast busy. Any ideas from anyone would be greatly appreciated. Here is the code I'm working with.
failure_route[1] {
xlog("L_ALERT", "%Tf %mf ****** Failure Route 1: <%rm> <%rr> <%rs>\n");
if(t_check_status("487")) {
break;
};
if(method=="INVITE" && (t_check_status("486|408|404|480"))) {
if(avp_db_load("$ruri", "s:mailbox"))
avp_pushto("$ruri/username", "s:mailbox");
prefix("V");
rewritehostport("A.B.C.D:5060");
append_branch();
xlog("L_ALERT", "****** Transfering to Voicemail\n");
t_on_reply("1");
t_relay();
};
}
Thanks
Rick
_______________________________________________ Serusers mailing list serusers@lists.iptel.org http://lists.iptel.org/mailman/listinfo/serusers