09. [Cisco] can't send BYE for SER *****why??*****
What does that mean?! Do you get an error on the 5300? Is it sent, but never reaches SER? Does SER receive, but does not recognize it? g-)
Sho Aihara wrote:
Hi all.
I have a problem for the following scenario. When I make a call for PSTN and on hook by PSTN side, Cisco As can't send BYE for SER.
- [UA via Asterisk] dialing "08022223333" -> [SER]
- [SER] prefix("0333") and
rewritehostport("my.cisco.ip.address:5060") -> [Cisco] 03. [Cisco] dial-peer voice 6000 pots, translate-outgoing called from "033308022223333" to "008022223333" 04. [Cisco] process an outbound call to "008022223333" -> [e.g. Mobile] 05. [e.g. Mobile] Catch call 06. [SER] log CDR start 07. [Cisco] talking 08. [e.g. Mobile] On hook and call disconnect 09. [Cisco] can't send BYE for SER *****why??***** 10. [UA via Asterisk] On hook 11. [UA via Asterisk] Send BYE for SER 12. [SER] log CDR End [Cisco] Call finished
But another scenario, if make a call from PSTN to Asterisk and on hook by PSTN side, Cisco As send BYE to SER.
- [e.g. Mobile] dialing "0377771111(Asterisk user number)"
- [Cisco] receive "77771111" call number
- [Cisco] dial-peer voice 5000 voip, session target
ipv4:my.ser.ip.address -> [SER] 04. [SER] process an incoming call to "0377771111" -> [UA via Asterisk] 05. [UA via Asterisk] Catch call 06. [SER] log CDR start 07. [UA via Asterisk] talking 08. [e.g. Mobile] On hook and call disconnect 09. [Cisco] Send BYE to SER 10. [SER] log CDR End [Cisco] Call finished 11. [UA via Asterisk] receive BYE from SER
And sorry for my diffucult example.
Why Cisco AS 5300 can't send BYE to SER When PSTN call is disconnected by PSTN side?
My ser.cfg as follows:
#
# global configuration parameters
#
fork=no log_stderror=yes check_via=no dns=no rev_dns=no listen=my.ser.ip.address port=5060 fifo="/tmp/ser_fifo" fifo_db_url="mysql://ser:heslo@localhost/ser"
#
# module loading
#
loadmodule "/usr/local/lib/ser/modules/mysql.so" loadmodule "/usr/local/lib/ser/modules/sl.so" loadmodule "/usr/local/lib/ser/modules/tm.so" loadmodule "/usr/local/lib/ser/modules/rr.so" loadmodule "/usr/local/lib/ser/modules/maxfwd.so" loadmodule "/usr/local/lib/ser/modules/usrloc.so" loadmodule "/usr/local/lib/ser/modules/registrar.so" loadmodule "/usr/local/lib/ser/modules/textops.so" loadmodule "/usr/local/lib/ser/modules/auth.so" loadmodule "/usr/local/lib/ser/modules/auth_db.so" loadmodule "/usr/local/lib/ser/modules/avpops.so" loadmodule "/usr/local/lib/ser/modules/permissions.so" loadmodule "/usr/local/lib/ser/modules/acc.so" loadmodule "/usr/local/lib/ser/modules/exec.so"
#
# setting module-specific parameters
#
modparam("usrloc", "db_mode", 2) modparam("auth_db", "calculate_ha1", yes) modparam("auth_db", "password_column", "password") modparam("rr", "enable_full_lr", 1) modparam("usrloc", "db_url", " mysql://ser:heslo@localhost/ser") modparam("auth_db", "db_url", "mysql://ser:heslo@localhost/ser") modparam("permissions", "db_url", "mysql://ser:heslo@localhost /ser") modparam("tm", "fr_inv_timer", 27) modparam("tm", "fr_inv_timer_avp", "inv_timeout") modparam("permissions", "db_mode", 1) modparam("permissions", "trusted_table", "trusted") modparam("acc", "db_url", "mysql://ser:heslo@localhost/ser") modparam("acc", "db_flag", 2) modparam("acc", "db_missed_flag", 3)
#
# route pattern
#
route {
if (!mf_process_maxfwd_header("10")) { sl_send_reply("483","Too Many Hops"); break; };
if ( msg:len > max_len ) { sl_send_reply("513", "Message too big"); break; };
record_route();
if (loose_route()) { if (method=="ACK") { acc_db_request("01:CallStart\n", "acc"); }; if (method=="BYE" || method=="CANCEL") { acc_db_request("02:CallEnd\n", "acc"); }; t_relay(); break; };
if (uri==myself) { if (method=="REGISTER") { if (!www_authorize("", "subscriber")) { www_challenge("", "0"); break; }; save("location"); break; };
if (search("^(f|From): .*@(my\.cisco\.ip\.address
mailto:.*@%28my%5C.cisco%5C.ip%5C.address)")) { #PSTN Incoming call from Cisco AS 5300 e.g. 0377771111 rewritehost("my.asterisk.ip.address "); };
lookup("aliases"); if (!lookup("location")) { if (method=="INVITE" && !search("^(f|From):
.*@(my.cisco.ip.address mailto:.*@%28my%5C.cisco%5C.ip%5C.address)")) { if (!proxy_authorize("", "subscriber")) { proxy_challenge("", "0"); break; }; if (uri=~"^sip:0[0-9]{10}@") { # PSTN Outgoing call to Cisco AS 5300 e.g. 08022223333 prefix("0333"); rewritehostport("my.cisco.ip.address:5060"); avp_write("i:45", "inv_timeout"); } else { sl_send_reply("404", "Not Found"); break; }; consume_credentials(); }; };
};
if (!t_relay()) { sl_reply_error(); };
}
And my Cisco AS 5300 config as follows:
voice call send-alert voice rtp send-recv
voice service pots fax protocol t38 ls-redundancy 0 hs-redundancy 0 fallback cisco
voice service voip fax protocol t38 ls-redundancy 0 hs-redundancy 0 fallback cisco sip min-se 60
translation-rule 50 Rule 0 0333 0 Rule 1 ^7777 037777
voice class codec 2 codec preference 1 g711ulaw codec preference 2 g711alaw
dial-peer voice 5000 voip tone ringback alert-no-PI description ser-asterisk-cisco-test huntstop destination-pattern 77771111$ translate-outgoing called 50 voice-class codec 2 session protocol sipv2 session target ipv4:my.ser.ip.address dtmf-relay rtp-nte max-conn 1
dial-peer voice 6000 pots application session max-conn 2 destination-pattern 0333T progress_ind alert enable 8 translate-outgoing called 50 port 0:D
Thanks, Sahria
Serusers mailing list Serusers@lists.iptel.org http://lists.iptel.org/mailman/listinfo/serusers