# # $Id: openser.cfg,v 1.6 2006/02/15 18:23:46 bogdan_iancu Exp $ # # simple quick-start config script # # ----------- global configuration parameters ------------------------ debug=3 # debug level (cmd line: -dddddddddd) fork=yes # Set to no to enter debugging mode log_stderror=no # (cmd line: -E) Set to yes to enter debugging mode log_facility=LOG_LOCAL0 check_via=no # (cmd. line: -v) dns=no # (cmd. line: -r) rev_dns=no # (cmd. line: -R) mhomed=1 listen=212.249.15.4 listen=195.129.125.74 port=5060 children=4 ###fifo="/tmp/openser_fifo" mpath="/usr/lib/openser/modules/" loadmodule "sl.so" loadmodule "tm.so" loadmodule "rr.so" loadmodule "maxfwd.so" loadmodule "usrloc.so"# loadmodule "registrar.so"# loadmodule "textops.so" loadmodule "xlog.so" # loadmodule "dispatcher.so" loadmodule "mysql.so" loadmodule "acc.so" loadmodule "statistics.so" loadmodule "dialog.so" # loadmodule "pdt.so" ##########loadmodule "domain.so" ##########loadmodule "mediaproxy.so" modparam("tm", "fr_timer", 30) # timer if no reply for SIP request modparam("acc", "db_url", "mysql://openser:openserrw@localhost/openser") modparam("acc", "db_flag", 1) # destination for accounting ("acc" table) modparam("acc", "db_missed_flag", 2) # destination for missed calls ("missed_calls" table) modparam("acc", "log_level", 1) # enable syslog output ##TODOmodparam("acc", "db_localtime", 1) # log GMT time #modparam("pdt", "db_url", "mysql://openser:openserrw@localhost/pdt") #modparam("pdt", "db_table", "pd_multidomain") ##########modparam("mediaproxy", "mediaproxy_socket", "/var/run/proxydispatcher.sock") #voir utilité #modparam("dispatcher", "list_file", "/etc/openser/dispatch.list") #modparam("dispatcher", "flags", 2) modparam("usrloc", "db_mode", 0) modparam("rr", "enable_full_lr", 1) # add value to ;lr param to make some broken UAs happy modparam("rr", "add_username", 1) # add username in record-route URI modparam("dialog", "dlg_flag", 2) #modparam("dialog", "use_tight_match", 1) route{ xlog("L_INFO","$Cbg[$rm from $si:$sp] $fU to $tU$Cxx\n"); t_on_reply("1"); if (!mf_process_maxfwd_header("10")) { sl_send_reply("483","Too Many Hops"); exit; }; if (msg:len >= 2048) { sl_send_reply("513", "Message too big"); exit; }; if(method=="REGISTER") { save("location"); exit; } if(method=="INVITE") { record_route(); } # Incoming calls if(to_uri=~"sip:\+4121550.*" || to_uri=~"sip:\+4122550.*" && !(to_uri=~"sip:.*5501122.*")) { xlog("L_ERROR","[$fU to $tU] Incoming\n"); if(loose_route()) { xlog("L_NOTICE","$Crx[$fU to $tU] Loose Route$Cxx\n"); t_relay(); exit; } xlog("L_NOTICE","$Crx[$fU to $tU] Relaying$Cxx\n"); subst_uri("/^sip:\+/sip:/i"); rewritehost("128.179.67.35"); #force_send_socket("212.249.15.4"); t_relay(); } # Outgoing calls (to fix) else { if(loose_route()) { xlog("L_NOTICE","$Crx[$fU to $tU] Loose Route$Cxx\n"); if(method=="BYE" && (from_uri=~".*@212.190.89.137" || from_uri=~".*@62.189.34.7")) { xlog("L_NOTICE","$Crx[$fU to $tU] Bye discarded$Cxx\n"); exit; } } xlog("L_NOTICE","$Crx[$fU to $tU] Relaying$Cxx\n"); subst_uri("/^sip:41([1-9][0-9]*)@.*/sip:+41\1@212.190.89.137/i"); subst("/^To:(.*)sip:41([1-9][0-9]*)@[0-9.]*/To:\1sip:+41\2@212.190.89.137/i"); #force_send_socket("195.129.125.74"); t_relay(); } } onreply_route[1] { xlog("L_INFO", "$Cpx[$rr ($rs) from $si:$sp concerning $rm] $fU to $tU $Cxx\n"); }