[Serusers] ser asterisk pstn
ronald at stanford.edu
ronald at stanford.edu
Wed Aug 15 17:23:01 CEST 2007
Greger,
thanks for the reply. I have not modified the original gateway/pstn
configuration as far as digit minipulation goes. How and where would I
strip the digits in ser.cfg? I tried entering strip(2) just before
the if (uri=~"^sip:[0-9]{10}@bigu.edu") statement, but the config
failed to start. It looked like this
strip(2)
if (uri=~"^sip:[0-9]{10}@bigu.edu")
thanks,
Quoting "Greger V. Teigre" <greger at teigre.com>:
> if (uri=~"^sip:[0-9]{10}@bigu.edu") { # Domestic PSTN
> probably doesn't match the r-uri you have at that point. Have you
> stripped 2 digits by then?
> g-)
>
> ronald at stanford.edu wrote:
>>
>>
>> hello all,
>>
>> I am stuck and need your help for +xlite +ser +asterisk +pstn
>> calls. I dial 914082743304 and get "caller Not Found". I am able
>> to authenticate and complete sip -> sip calls, but cannot complete
>> PSTN calls I did monitor asterisk and no reroute was offered.
>>
>> please help!
>>
>>
>> permissions.allow:
>>
>> ^sip:91[0-9]{10}@bigu\.edu$
>> ^sip:9011[0-9]*@bigu\.edu$
>> ^sip:9[0-9]{10}@bigu\.edu$
>>
>>
>> ngrep -vvvv proto udp port 5060 produces the following response:
>>
>> 171.66.176.123:47729 -> 192.168.11.243:5060
>> INVITE sip:914082743304 at bigu.edu SIP/2.0..Via: SIP/2.0/UDP
>> 192.168.1.100:47729;br
>>
>> anch=z9hG4bK-d87543-4f5eb56fc40f1f43-1--d87543-;rport..Max-Forwards:
>> 70..Contact: <si
>> p:cell at 192.168.1.100:47729>..To:
>> "914082743304"<sip:914082743304 at bigu.edu>..From:
>> "SER EXpress"<sip:cell at bigu.edu>;tag=b9283f27..Call-ID:
>> Y2JkY2ZmMDQyMjQ3YTljYTg5
>> NTdlOGFiNGUyZWVlY2Q...CSeq: 1 INVITE..Allow: INVITE, ACK, CANCEL,
>> OPTIONS, BYE, REFER
>> , NOTIFY, MESSAGE, SUBSCRIBE, INFO..Content-Type:
>> application/sdp..User-Agent: eyeBea
>> m release 1011s stamp 41121..Content-Length: 421....v=0..o=- 1 2
>> IN IP4 192.168.1.100
>> ..s=CounterPath eyeBeam 1.5..c=IN IP4 192.168.1.100..t=0
>> 0..m=audio 32942 RTP/AVP 107
>> 100 106 6 0 105 8 18 3 5 101..a=fmtp:18 annexb=yes..a=fmtp:101
>> 0-15..a=rtpmap:107 BV
>> 32/16000..a=rtpmap:100 SPEEX/16000..a=rtpmap:106
>> SPEEX-FEC/16000..a=rtpmap:105 SPEEX-
>> FEC/8000..a=rtpmap:18 G729/8000..a=rtpmap:101
>> telephone-event/8000..a=sendrecv..a=x-r
>> tp-session-id:AEB31A44A04C4B32BD3D72349E4FBB80..
>> #
>> U 192.168.11.243:5060 -> 171.66.176.123:47729
>> SIP/2.0 404 caller Not Found..Via: SIP/2.0/UDP
>> 192.168.1.100:47729;branch=z9hG4bK-d875
>>
>> 43-4f5eb56fc40f1f43-1--d87543-;rport=47729;received=171.66.176.123..To:
>> "914082743304
>>
>> "<sip:914082743304 at bigu.edu>;tag=21f9bfca23409407a263e4a7e40abe9d.f2a8..From:
>> "SE
>> R EXpress"<sip:cell at bigu.edu>;tag=b9283f27..Call-ID:
>> Y2JkY2ZmMDQyMjQ3YTljYTg5NTdl
>> OGFiNGUyZWVlY2Q...CSeq: 1 INVITE..Server: Sip EXpress router
>> (0.9.4 (i386/linux))..Co
>> ntent-Length: 0..Warning: 392 192.168.11.243:5060 "Noisy feedback
>> tells: pid=15307 re
>> q_src_ip=171.66.176.123 req_src_port=47729
>> in_uri=sip:914082743304 at bigu.edu out_u
>> ri=sip:914082743304 at bigu.edu via_cnt==1"....
>>
>>
>> debug=3
>>
>> fork=yes
>>
>> log_stderror=no
>>
>>
>>
>> listen=1xx.x4.11.xx3 # INSERT YOUR IP ADDRESS HERE
>>
>> port=5060
>>
>> children=4
>>
>> alias=sip2.bigu.edu
>>
>>
>>
>> dns=no
>>
>> rev_dns=no
>>
>> fifo="/tmp/ser_fifo"
>>
>> fifo_db_url="mysql://ser:heslo@localhost/ser"
>>
>>
>>
>> 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/auth.so"
>>
>> loadmodule "/usr/local/lib/ser/modules/auth_db.so"
>>
>> loadmodule "/usr/local/lib/ser/modules/uri.so"
>>
>> loadmodule "/usr/local/lib/ser/modules/uri_db.so"
>>
>> loadmodule "/usr/local/lib/ser/modules/domain.so"
>>
>> loadmodule "/usr/local/lib/ser/modules/mediaproxy.so"
>>
>> loadmodule "/usr/local/lib/ser/modules/nathelper.so"
>>
>> loadmodule "/usr/local/lib/ser/modules/textops.so"
>>
>> loadmodule "/usr/local/lib/ser/modules/avpops.so"
>>
>> loadmodule "/usr/local/lib/ser/modules/permissions.so"
>>
>>
>>
>> modparam("auth_db|permissions|uri_db|usrloc", "db_url",
>> "mysql://ser:heslo@localhost/ser")
>>
>> modparam("auth_db", "calculate_ha1", 1)
>>
>> modparam("auth_db", "password_column", "password")
>>
>>
>>
>> modparam("nathelper", "rtpproxy_disable", 1)
>>
>> modparam("nathelper", "natping_interval", 0)
>>
>>
>>
>> modparam("mediaproxy","natping_interval", 30)
>>
>> modparam("mediaproxy","mediaproxy_socket", "/var/run/mediaproxy.sock")
>>
>> modparam("mediaproxy","sip_asymmetrics","/usr/local/etc/ser/sip-clients")
>>
>> modparam("mediaproxy","rtp_asymmetrics","/usr/local/etc/ser/rtp-clients")
>>
>>
>>
>> modparam("usrloc", "db_mode", 2)
>>
>>
>>
>> modparam("registrar", "nat_flag", 6)
>>
>>
>>
>> modparam("rr", "enable_full_lr", 1)
>>
>>
>>
>> modparam("tm", "fr_inv_timer", 27)
>>
>> modparam("tm", "fr_inv_timer_avp", "inv_timeout")
>>
>> #added these timers for voicemail forwarding
>>
>> modparam("tm", "fr_inv_timer", 25)
>>
>> modparam("tm", "noisy_ctimer", 1)
>>
>>
>>
>> modparam("permissions", "db_mode", 1)
>>
>> modparam("permissions", "trusted_table", "trusted")
>>
>>
>>
>> route {
>>
>>
>>
>> # -----------------------------------------------------------------
>>
>> # Sanity Check Section
>>
>> # -----------------------------------------------------------------
>>
>> if (!mf_process_maxfwd_header("10")) {
>>
>> sl_send_reply("483", "Too Many Hops");
>>
>> break;
>>
>> };
>>
>>
>>
>> if (msg:len > max_len) {
>>
>> sl_send_reply("513", "Message Overflow");
>>
>> break;
>>
>> };
>>
>>
>>
>> # -----------------------------------------------------------------
>>
>> # Record Route Section
>>
>> # -----------------------------------------------------------------
>>
>> if (method=="INVITE" && client_nat_test("3")) {
>>
>> # INSERT YOUR IP ADDRESS HERE
>>
>> record_route_preset("1xx.x4.11.xx3:5060;nat=yes");
>>
>> } else if (method!="REGISTER") {
>> record_route(); };
>>
>>
>>
>> # -----------------------------------------------------------------
>>
>> # Call Tear Down Section
>>
>> # -----------------------------------------------------------------
>>
>> if (method=="BYE" || method=="CANCEL") {
>>
>> end_media_session();
>>
>> };
>>
>>
>>
>> # -----------------------------------------------------------------
>>
>> # Loose Route Section
>>
>> # -----------------------------------------------------------------
>>
>> if (loose_route()) {
>>
>>
>>
>> if ((method=="INVITE" || method=="REFER") && !has_totag()) {
>>
>> sl_send_reply("403", "Forbidden");
>>
>> break;
>>
>> };
>>
>>
>>
>> if (method=="INVITE") {
>>
>>
>>
>> if (!allow_trusted()) {
>>
>> if
>> (!proxy_authorize("sip2.bigu.edu","subscriber")) {
>>
>> proxy_challenge("sip2.bigu.edu","0");
>>
>> break;
>>
>> } else if (!check_from()) {
>>
>> sl_send_reply("403", "Use From=ID");
>>
>> break;
>>
>> };
>>
>> consume_credentials();
>>
>> };
>>
>>
>>
>> if
>> (client_nat_test("3")||search("^Route:.*;nat=yes")){
>>
>> setflag(6);
>>
>> use_media_proxy();
>>
>> };
>>
>> };
>>
>>
>>
>> route(1);
>>
>> break;
>>
>> };
>>
>>
>>
>> # -----------------------------------------------------------------
>>
>> # Call Type Processing Section
>>
>> # -----------------------------------------------------------------
>>
>> if (!is_uri_host_local()) {
>>
>> if (is_from_local() || allow_trusted()) {
>>
>> route(4);
>>
>> route(1);
>>
>> } else {
>>
>> sl_send_reply("403", "Forbidden");
>>
>> };
>>
>> break;
>>
>> };
>>
>>
>>
>> if (method=="ACK") {
>>
>> route(1);
>>
>> break;
>>
>> } else if (method=="CANCEL") {
>>
>> route(1);
>>
>> break;
>>
>> } else if (method=="INVITE") {
>>
>> route(3);
>>
>> break;
>>
>> } else if (method=="REGISTER") {
>>
>> route(2);
>>
>> break;
>>
>> };
>>
>>
>>
>> lookup("aliases");
>>
>> if (!is_uri_host_local()) {
>>
>> route(4);
>>
>> route(1);
>>
>> break;
>>
>> };
>>
>>
>>
>> if (!lookup("location")) {
>>
>> sl_send_reply("404", "User Not Found");
>>
>> break;
>>
>> };
>>
>>
>>
>> route(1);
>>
>> }
>>
>>
>>
>> route[1] {
>>
>>
>>
>> # -----------------------------------------------------------------
>>
>> # Default Message Handler
>>
>> # -----------------------------------------------------------------
>>
>>
>>
>> t_on_reply("1");
>>
>>
>>
>> if (!t_relay()) {
>>
>>
>>
>> if (method=="INVITE" || method=="ACK") {
>>
>> end_media_session();
>>
>> };
>>
>>
>>
>> sl_reply_error();
>>
>> };
>>
>> }
>>
>>
>>
>> route[2] {
>>
>>
>>
>> # -----------------------------------------------------------------
>>
>> # REGISTER Message Handler
>>
>> # -----------------------------------------------------------------
>>
>>
>>
>> sl_send_reply("100", "Trying");
>>
>>
>>
>> if (!search("^Contact:[ ]*\*") && client_nat_test("7")) {
>>
>> setflag(6);
>>
>> fix_nated_register();
>>
>> force_rport();
>>
>> };
>>
>>
>>
>> if (!www_authorize("sip2.bigu.edu","subscriber")) {
>>
>> www_challenge("sip2.bigu.edu","0");
>>
>> break;
>>
>> };
>>
>>
>>
>> if (!check_to()) {
>>
>> sl_send_reply("401", "Unauthorized");
>>
>> break;
>>
>> };
>>
>>
>>
>> consume_credentials();
>>
>>
>>
>> if (!save("location")) {
>>
>> sl_reply_error();
>>
>> };
>>
>> }
>>
>>
>>
>> route[3] {
>>
>>
>>
>> # -----------------------------------------------------------------
>>
>> # INVITE Message Handler
>>
>> # -----------------------------------------------------------------
>>
>>
>>
>> if (client_nat_test("3")) {
>>
>> setflag(7);
>>
>> force_rport();
>>
>> fix_nated_contact();
>>
>> };
>>
>>
>>
>> if (!allow_trusted()) {
>>
>>
>>
>> if (!proxy_authorize("sip2.bigu.edu","subscriber")) {
>>
>> proxy_challenge("sip2.bigu.edu","0");
>>
>> break;
>>
>> } else if (!check_from()) {
>>
>> sl_send_reply("403", "Use From=ID");
>>
>> break;
>>
>> };
>>
>>
>>
>> consume_credentials();
>>
>> };
>>
>>
>>
>> if (uri=~"^sip:1[0-9]{10}@bigu.edu") {
>>
>> strip(1);
>>
>> };
>>
>>
>>
>> lookup("aliases");
>>
>> if (!is_uri_host_local()) {
>>
>> route(4);
>>
>> route(1);
>>
>> break;
>>
>> };
>>
>>
>>
>> if (uri=~"^sip:011[0-9]*@bigu.edu") { #
>> International PSTN
>>
>> route(4);
>>
>> route(5);
>>
>> break;
>>
>>
>>
>> };
>>
>>
>>
>> if (!lookup("location")) {
>>
>> if (uri=~"^sip:[0-9]{10}@bigu.edu") { # Domestic PSTN
>>
>> route(4);
>>
>> route(5);
>>
>> break;
>>
>> };
>>
>>
>>
>> sl_send_reply("404", "caller Not Found");
>>
>> break;
>>
>> };
>>
>>
>>
>> route(4);
>>
>> route(1);
>>
>> }
>>
>>
>>
>> route[4] {
>>
>>
>>
>> # -----------------------------------------------------------------
>>
>> # NAT Traversal Section
>>
>> # -----------------------------------------------------------------
>>
>>
>>
>> if (isflagset(6) || isflagset(7)) {
>>
>> if (!isflagset(8)) {
>>
>> setflag(8);
>>
>> use_media_proxy();
>>
>> };
>>
>> };
>>
>> }
>>
>>
>>
>> route[5] {
>>
>>
>>
>> # -----------------------------------------------------------------
>>
>> # PSTN Handler
>>
>> # -----------------------------------------------------------------
>>
>>
>>
>> rewritehost("1xx.x4.8.xx8"); # INSERT YOUR PSTN GATEWAY IP ADDRESS
>>
>>
>>
>> avp_write("i:45", "inv_timeout");
>>
>>
>>
>> route(1);
>>
>> }
>>
>>
>>
>> onreply_route[1] {
>>
>>
>>
>> if ((isflagset(6) || isflagset(7)) &&
>>
>> (status=~"(180)|(183)|2[0-9][0-9]")) {
>>
>>
>>
>> if (!search("^Content-Length:[ ]*0")) {
>>
>> use_media_proxy();
>>
>> };
>>
>> };
>>
>>
>>
>> if (client_nat_test("1")) {
>>
>> fix_nated_contact();
>>
>> };
>>
>> }
>>
>> ------------------------------------------------------------------------
>>
>> _______________________________________________
>> Serusers mailing list
>> Serusers at lists.iptel.org
>> http://lists.iptel.org/mailman/listinfo/serusers
>>
More information about the sr-users
mailing list