this is an asterisk problem not a ser one, if you debug the sip channel
in asterisk CLI, and then press the keys are the dtmf signals being
sent/picked up
Iqbal
Yan Yu Lim wrote:
Hi guys,
I currently have a sip proxy server (sip express router) which
registers the sip phones. I need to add voice mail capability, i.e.
sip express router will forward all incoming calls to Asterisk if the
user does not pick up the call in 15 seconds.
The voicemail recording stops when the user hangs up. However, the
recording does not end if the user presses the # key, i.e. it is
ignoring the user input.
Similarly, when the user dials 2102 to access his voice mail, Asterisk
plays the prompt, but it seems to ignore all the user input keys.
Please kindly advise.
Regards,
YY
*****************************************************
Config files
------------------------------
1) Ser
---------------------
ser.cfg (SER)
---------------------
# -- tm params --
# set time for which ser will be waiting for a final response;
# fr_inv_timer sets value for INVITE transactions,
# fr_timer for all others
modparam("tm","fr_inv_timer",15)
modparam("tm","fr_timer",10)
if (uri==myself) {
if (method=="REGISTER") {
# attempt handoff to PSTN
if (uri=~"^sip:9[0-9]*@magnum.test.net") { ## This assumes
that the caller
log(1, "Forwarding to PSTN\n");
## is registered in our realm
forward(10.10.10.3, 5060);
## Our Cisco router
break;
};
# retrieve voicemail
#
if (uri=~"^sip:2[0-9]*@magnum.test.net") {
log(1, "Retrieving voicemail\n");
# redirect now!
rewritehostport("202.125.25.102:5061");
append_branch();
t_relay_to_udp("202.125.25.106","5061");
break;
};
# native SIP destinations are handled using our USRLOC DB
if (!lookup("location")) {
sl_send_reply("404", "Not Found");
break;
};
timeout occurred ... now to forward to Asterisk's
voicemail service
if(method == "INVITE")
{
t_on_failure("1");
};
};
t_relay();
# leave voicemail
#
failure_route[1] {
log(1,"Activating voicemail!!\n");
revert_uri();
# redirect now to Asterisk (on the same machine) !
rewritehostport("202.125.25.102:5061");
append_branch();
t_relay_to_udp("202.125.25.106","5061");
}
--------------------
2) Asterisk
------------
sip.conf
------------
[general]
context=test
port=5061 ; UDP Port to bind to (SIP standard
port is 5060)
bindaddr=0.0.0.0 ; IP address to bind to (0.0.0.0 binds to all)
srvlookup=yes ; Enable DNS SRV lookups on outbound calls
; ip phone 1012, registered with SER
[1012]
type=friend
username=1012
canreinvite=no
context=test
mailbox=1012
host=203.125.25.106
nat=no
dtmfmode=info
disallow=all
allow=alaw
allow=ulaw
-----------------------
extensions.conf
-------------------------
[test]
;leave voice messages
exten => 1012,1,Voicemail(u1012)
exten => 1012,2,Hangup
;play voice messages
exten => 2012,1,VoiceMailMain,1012
exten => 2012,2,Hangup
-------------------------
voicemail.conf
------------------------
[default]
1012 => 1234, YY, ylim(a)test.net
_______________________________________________
Serusers mailing list
serusers(a)lists.iptel.org
http://lists.iptel.org/mailman/listinfo/serusers
.