<div dir="ltr"><p style="margin-top:0px;color:rgb(51,51,51);font-family:Helvetica,Arial,Sens-serif;font-size:14px;line-height:21px"><strong><span style="color:rgb(255,0,0)">Hello ,<br>This is the first time to put a question on </span></strong><a href="http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users" style="font-family:'Times New Roman';font-size:medium;font-style:italic;line-height:normal">sr-users</a><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:medium;font-style:italic;line-height:normal"> mailing list </span><strong><span style="color:rgb(255,0,0)"> and i hope to help me to solve my issue...i'm following this post <a href="http://saevolgo.blogspot.com/2013/08/rtpproxy-revisited-kamailio-40.html" rel="nofollow" style="text-decoration:none;color:rgb(1,121,181)">http://saevolgo.blogspot.com/2013/08/rtpproxy-revisited-kamailio-40.html</a> to setup RTP Proxy for kamailio 4 but it's NOT working as predicted  and i'm receiving this error message on asterisk...</span></strong><br>
<br>[2013-10-16 05:20:04] ERROR[3216][C-0000002c]: netsock2.c:269 ast_sockaddr_resolve: getaddrinfo("192.168.1.80192.168.1.80", "(null)", ...): Name or service not known<br>[2013-10-16 05:20:04] WARNING[3216][C-0000002c]: chan_sip.c:10873 process_sdp_c: Unable to lookup RTP Audio host in c= line, 'IN IP4 192.168.1.80192.168.1.80'<br>
[2013-10-16 05:20:04] WARNING[3216][C-0000002c]: chan_sip.c:10464 process_sdp: Insufficient information in SDP (c=)...</p><p style="margin-top:0px;color:rgb(51,51,51);font-family:Helvetica,Arial,Sens-serif;font-size:14px;line-height:21px">
<span style="color:rgb(255,0,0);font-family:arial,helvetica,sans-serif;font-size:12px;line-height:normal">The problem is NOT at the asterisk side but at the proxy side...when kamailio rewrites the SDP message it adds the public IP twice in the "C" filed of the SDP message instead of only one time like this  'IN IP4 192.168.1.80192.168.1.80' but i don't know why it's doing this...? if u have any idea or recommendations plz tell me cuz i'm new to kamailio...waiting ur reply and thanks in advance...</span><span style="color:rgb(255,0,0);font-family:arial,helvetica,sans-serif"> also here's my config file if u want to take a look at it...</span><br>
</p><p style="margin-top:0px;color:rgb(51,51,51);font-family:Helvetica,Arial,Sens-serif;font-size:14px;line-height:21px"><span style="color:rgb(255,0,0);font-family:arial,helvetica,sans-serif"><br></span></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!KAMAILIO</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!define WITH_MYSQL</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!define WITH_AUTH</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!define WITH_USRLOCDB</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!define WITH_ASTERISK</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!define WITH_NAT </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><br>
</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># Kamailio (OpenSER) SIP Server v4.0 - default configuration script</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#     - web: <a href="http://www.kamailio.org">http://www.kamailio.org</a></span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#     - git: <a href="http://sip-router.org">http://sip-router.org</a></span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># Direct your questions about this file to: <<a href="mailto:sr-users@lists.sip-router.org">sr-users@lists.sip-router.org</a>></span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># Refer to the Core CookBook at <a href="http://www.kamailio.org/dokuwiki/doku.php">http://www.kamailio.org/dokuwiki/doku.php</a></span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># for an explanation of possible statements, functions and parameters.</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># Several features can be enabled using '#!define WITH_FEATURE' directives:</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># *** To run in debug mode: </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#     - define WITH_DEBUG</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># *** To enable mysql: </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#     - define WITH_MYSQL</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># *** To enable authentication execute:</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#     - enable mysql</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#     - define WITH_AUTH</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#     - add users using 'kamctl'</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># *** To enable IP authentication execute:</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#     - enable mysql</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#     - enable authentication</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#     - define WITH_IPAUTH</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#     - add IP addresses with group id '1' to 'address' table</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># *** To enable persistent user location execute:</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#     - enable mysql</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#     - define WITH_USRLOCDB</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># *** To enable presence server execute:</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#     - enable mysql</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#     - define WITH_PRESENCE</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># *** To enable nat traversal execute:</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#     - define WITH_NAT</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#     - install RTPProxy: <a href="http://www.rtpproxy.org">http://www.rtpproxy.org</a></span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#     - start RTPProxy:</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#        rtpproxy -l _your_public_ip_ -s udp:localhost:7722</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># *** To enable PSTN gateway routing execute:</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#     - define WITH_PSTN</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#     - set the value of pstn.gw_ip</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#     - check route[PSTN] for regexp routing condition</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># *** To enable database aliases lookup execute:</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#     - enable mysql</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#     - define WITH_ALIASDB</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># *** To enable speed dial lookup execute:</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#     - enable mysql</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#     - define WITH_SPEEDDIAL</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># *** To enable multi-domain support execute:</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#     - enable mysql</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#     - define WITH_MULTIDOMAIN</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># *** To enable TLS support execute:</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#     - adjust CFGDIR/tls.cfg as needed</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#     - define WITH_TLS</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># *** To enable XMLRPC support execute:</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#     - define WITH_XMLRPC</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#     - adjust route[XMLRPC] for access policy</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># *** To enable anti-flood detection execute:</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#     - adjust pike and htable=>ipban settings as needed (default is</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#       block if more than 16 requests in 2 seconds and ban for 300 seconds)</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#     - define WITH_ANTIFLOOD</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># *** To block 3XX redirect replies execute:</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#     - define WITH_BLOCK3XX</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># *** To enable VoiceMail routing execute:</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#     - define WITH_VOICEMAIL</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#     - set the value of voicemail.srv_ip</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#     - adjust the value of voicemail.srv_port</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># *** To enhance accounting execute:</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#     - enable mysql</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#     - define WITH_ACCDB</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#     - add following columns to database</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef ACCDB_COMMENT</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">  ALTER TABLE acc ADD COLUMN src_user VARCHAR(64) NOT NULL DEFAULT '';</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">  ALTER TABLE acc ADD COLUMN src_domain VARCHAR(128) NOT NULL DEFAULT '';</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">  ALTER TABLE acc ADD COLUMN src_ip varchar(64) NOT NULL default '';</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">  ALTER TABLE acc ADD COLUMN dst_ouser VARCHAR(64) NOT NULL DEFAULT '';</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">  ALTER TABLE acc ADD COLUMN dst_user VARCHAR(64) NOT NULL DEFAULT '';</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">  ALTER TABLE acc ADD COLUMN dst_domain VARCHAR(128) NOT NULL DEFAULT '';</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">  ALTER TABLE missed_calls ADD COLUMN src_user VARCHAR(64) NOT NULL DEFAULT '';</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">  ALTER TABLE missed_calls ADD COLUMN src_domain VARCHAR(128) NOT NULL DEFAULT '';</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">  ALTER TABLE missed_calls ADD COLUMN src_ip varchar(64) NOT NULL default '';</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">  ALTER TABLE missed_calls ADD COLUMN dst_ouser VARCHAR(64) NOT NULL DEFAULT '';</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">  ALTER TABLE missed_calls ADD COLUMN dst_user VARCHAR(64) NOT NULL DEFAULT '';</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">  ALTER TABLE missed_calls ADD COLUMN dst_domain VARCHAR(128) NOT NULL DEFAULT '';</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">####### Defined Values #########</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># *** Value defines - IDs used later in config</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_MYSQL</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># - database URL - used to connect to database server by modules such</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#       as: auth_db, acc, usrloc, a.s.o.</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!define DBURL "mysql://kamailio:kamailiorw@localhost/kamailio"</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_ASTERISK</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!define DBASTURL "mysql://<a href="http://root:passw0rd@192.168.1.10/mya2billing">root:passw0rd@192.168.1.10/mya2billing</a>"</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_MULTIDOMAIN</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># - the value for 'use_domain' parameters</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!define MULTIDOMAIN 1</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!else</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!define MULTIDOMAIN 0</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># - flags</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#   FLT_ - per transaction (message) flags</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#<span class="" style="white-space:pre">        </span>FLB_ - per branch flags</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!define FLT_ACC 1</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!define FLT_ACCMISSED 2</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!define FLT_ACCFAILED 3</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!define FLT_NATS 5</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!define FLB_NATB 6</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!define FLB_NATSIPPING 7</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">####### Global Parameters #########</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_DEBUG</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">debug=4</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">log_stderror=yes</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!else</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">debug=2</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">log_stderror=no</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">memdbg=5</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">memlog=5</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">log_facility=LOG_LOCAL0</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">fork=yes</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">children=4</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">/* uncomment the next line to disable TCP (default on) */</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#disable_tcp=yes</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">/* uncomment the next line to disable the auto discovery of local aliases</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">   based on reverse DNS on IPs (default on) */</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#auto_aliases=no</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">/* add local domain aliases */</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#alias="<a href="http://sip.mydomain.com">sip.mydomain.com</a>"</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">/* uncomment and configure the following line if you want Kamailio to </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">   bind on a specific interface/port/proto (default bind on all available) */</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#listen=udp:<a href="http://10.0.0.10:5060">10.0.0.10:5060</a></span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">/* port to listen to</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> * - can be specified more than once if needed to listen on many ports */</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">port=5060</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_TLS</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">enable_tls=yes</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># life time of TCP connection when there is no traffic</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># - a bit higher than registration expires to cope with UA behind NAT</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">tcp_connection_lifetime=3605</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">mhomed=1</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">####### Custom Parameters #########</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># These parameters can be modified runtime via RPC interface</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># - see the documentation of 'cfg_rpc' module.</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># Format: <a href="http://group.id">group.id</a> = value 'desc' description</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># Access: $sel(<a href="http://cfg_get.group.id">cfg_get.group.id</a>) or @<a href="http://cfg_get.group.id">cfg_get.group.id</a></span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_PSTN</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># PSTN GW Routing</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># - pstn.gw_ip: valid IP or hostname as string value, example:</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># pstn.gw_ip = "10.0.0.101" desc "My PSTN GW Address"</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># - by default is empty to avoid misrouting</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">pstn.gw_ip = "" desc "PSTN GW Address"</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_VOICEMAIL</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># VoiceMail Routing on offline, busy or no answer</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># - by default Voicemail server IP is empty to avoid misrouting</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">voicemail.srv_ip = "" desc "VoiceMail IP Address"</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">voicemail.srv_port = "5060" desc "VoiceMail Port"</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_ASTERISK</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">asterisk.bindip = "192.168.1.10" desc "Asterisk IP Address"</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">asterisk.bindport = "5060" desc "Asterisk Port"</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">kamailio.bindip = "192.168.1.40" desc "Kamailio IP Address"</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">kamailio.bindport = "5060" desc "Kamailio Port"</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">####### Modules Section ########</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># set paths to location of modules (to sources or installation folders)</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_SRCPATH</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">mpath="modules_k:modules"</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!else</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">mpath="/usr/local/lib/kamailio/modules_k/:/usr/local/lib/kamailio/modules/"</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_MYSQL</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">loadmodule "db_mysql.so"</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">loadmodule "mi_fifo.so"</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">loadmodule "kex.so"</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">loadmodule "tm.so"</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">loadmodule "tmx.so"</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">loadmodule "sl.so"</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">loadmodule "rr.so"</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">loadmodule "pv.so"</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">loadmodule "maxfwd.so"</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">loadmodule "usrloc.so"</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">loadmodule "registrar.so"</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">loadmodule "textops.so"</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">loadmodule "siputils.so"</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">loadmodule "xlog.so"</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">loadmodule "sanity.so"</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">loadmodule "ctl.so"</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">loadmodule "cfg_rpc.so"</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">loadmodule "mi_rpc.so"</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">loadmodule "acc.so"</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">loadmodule "dispatcher.so"</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">loadmodule "ipops.so"</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">loadmodule "sqlops.so"</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_AUTH</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">loadmodule "auth.so"</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">loadmodule "auth_db.so"</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_IPAUTH</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">loadmodule "permissions.so"</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_ALIASDB</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">loadmodule "alias_db.so"</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_SPEEDDIAL</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">loadmodule "speeddial.so"</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_MULTIDOMAIN</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">loadmodule "domain.so"</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_PRESENCE</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">loadmodule "presence.so"</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">loadmodule "presence_xml.so"</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_NAT</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">loadmodule "nathelper.so"</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">loadmodule "rtpproxy.so"</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_TLS</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">loadmodule "tls.so"</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_ANTIFLOOD</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">loadmodule "htable.so"</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">loadmodule "pike.so"</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_XMLRPC</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">loadmodule "xmlrpc.so"</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_DEBUG</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">loadmodule "debugger.so"</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_ASTERISK</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">loadmodule "uac.so"</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># ----------------- setting module-specific parameters ---------------</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># ----- mi_fifo params -----</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("mi_fifo", "fifo_name", "/tmp/kamailio_fifo")</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># ----- tm params -----</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># auto-discard branches from previous serial forking leg</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("tm", "failure_reply_mode", 3)</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># default retransmission timeout: 30sec</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("tm", "fr_timer", 30000)</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># default invite retransmission timeout after 1xx: 120sec</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("tm", "fr_inv_timer", 120000)</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># ----- rr params -----</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># add value to ;lr param to cope with most of the UAs</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("rr", "enable_full_lr", 1)</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># do not append from tag to the RR (no need for this script)</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_ASTERISK</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("rr", "append_fromtag", 1)</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!else</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("rr", "append_fromtag", 0)</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># ----- registrar params -----</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("registrar", "method_filtering", 1)</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">/* uncomment the next line to disable parallel forking via location */</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># modparam("registrar", "append_branches", 0)</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">/* uncomment the next line not to allow more than 10 contacts per AOR */</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#modparam("registrar", "max_contacts", 10)</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># max value for expires of registrations</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("registrar", "max_expires", 3600)</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># set it to 1 to enable GRUU</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("registrar", "gruu_enabled", 0)</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># ----- acc params -----</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">/* what special events should be accounted ? */</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("acc", "early_media", 0)</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("acc", "report_ack", 0)</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("acc", "report_cancels", 0)</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">/* by default ww do not adjust the direct of the sequential requests.</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">   if you enable this parameter, be sure the enable "append_fromtag"</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">   in "rr" module */</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("acc", "detect_direction", 0)</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">/* account triggers (flags) */</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("acc", "log_flag", FLT_ACC)</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("acc", "log_missed_flag", FLT_ACCMISSED)</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("acc", "log_extra", </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">    </span>"src_user=$fU;src_domain=$fd;src_ip=$si;"</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>"dst_ouser=$tU;dst_user=$rU;dst_domain=$rd")</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("acc", "failed_transaction_flag", FLT_ACCFAILED)</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">/* enhanced DB accounting */</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_ACCDB</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("acc", "db_flag", FLT_ACC)</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("acc", "db_missed_flag", FLT_ACCMISSED)</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("acc", "db_url", DBURL)</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("acc", "db_extra",</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">     </span>"src_user=$fU;src_domain=$fd;src_ip=$si;"</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">     </span>"dst_ouser=$tU;dst_user=$rU;dst_domain=$rd")</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># ----- usrloc params -----</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">/* enable DB persistency for location entries */</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_USRLOCDB</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("usrloc", "db_url", DBURL)</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("usrloc", "db_mode", 2)</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("usrloc", "use_domain", MULTIDOMAIN)</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># ----- auth_db params -----</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_AUTH</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("auth_db", "calculate_ha1", yes)</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("auth_db", "load_credentials", "")</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_ASTERISK</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("auth_db", "user_column", "username")</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("auth_db", "password_column", "secret")</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("auth_db", "db_url", DBASTURL)</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("auth_db", "version_table", 0)</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!else</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("auth_db", "db_url", DBURL)</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("auth_db", "password_column", "password")</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("auth_db", "use_domain", MULTIDOMAIN)</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># ----- permissions params -----</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_IPAUTH</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("permissions", "db_url", DBURL)</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("permissions", "db_mode", 1)</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># ----- alias_db params -----</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_ALIASDB</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("alias_db", "db_url", DBURL)</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("alias_db", "use_domain", MULTIDOMAIN)</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># ----- speedial params -----</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_SPEEDDIAL</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("speeddial", "db_url", DBURL)</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("speeddial", "use_domain", MULTIDOMAIN)</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># ----- domain params -----</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_MULTIDOMAIN</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("domain", "db_url", DBURL)</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># register callback to match myself condition with domains list</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("domain", "register_myself", 1)</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_PRESENCE</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># ----- presence params -----</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("presence", "db_url", DBURL)</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># ----- presence_xml params -----</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("presence_xml", "db_url", DBURL)</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("presence_xml", "force_active", 1)</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_NAT</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># ----- rtpproxy params -----</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("rtpproxy", "rtpproxy_sock", "udp:<a href="http://127.0.0.1:7722">127.0.0.1:7722</a>")</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># ----- nathelper params -----</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("nathelper", "natping_interval", 30)</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("nathelper", "ping_nated_only", 1)</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("nathelper", "sipping_bflag", FLB_NATSIPPING)</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("nathelper", "sipping_from", "<a href="mailto:sip%3Apinger@kamailio.org">sip:pinger@kamailio.org</a>")</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># params needed for NAT traversal in other modules</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("nathelper|registrar", "received_avp", "$avp(RECEIVED)")</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("usrloc", "nat_bflag", FLB_NATB)</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_TLS</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># ----- tls params -----</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("tls", "config", "/usr/local/etc/kamailio/tls.cfg")</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_ANTIFLOOD</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># ----- pike params -----</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("pike", "sampling_time_unit", 2)</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("pike", "reqs_density_per_unit", 16)</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("pike", "remove_latency", 4)</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># ----- htable params -----</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># ip ban htable with autoexpire after 5 minutes</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("htable", "htable", "ipban=>size=8;autoexpire=300;")</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_XMLRPC</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># ----- xmlrpc params -----</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("xmlrpc", "route", "XMLRPC");</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("xmlrpc", "url_match", "^/RPC")</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_DEBUG</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># ----- debugger params -----</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("debugger", "cfgtrace", 1)</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># ------- Load-balancer params ------</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("dispatcher", "db_url","mysql://kamailio:kamailiorw@localhost/kamailio")</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("dispatcher", "table_name", "dispatcher")</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("dispatcher", "setid_col", "setid")</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("dispatcher", "destination_col", "destination")</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("dispatcher", "flags_col", "flags")</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("dispatcher", "priority_col", "priority")</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("dispatcher", "force_dst", 1)</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("dispatcher", "flags", 2)</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("dispatcher", "dst_avp", "$avp(i:271)")</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("dispatcher", "grp_avp", "$avp(i:272)")</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("dispatcher", "cnt_avp", "$avp(i:273)")</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("dispatcher", "ds_ping_from", "<a href="mailto:sip%3AKamailio-Proxy@192.168.1.40">sip:Kamailio-Proxy@192.168.1.40</a>")</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("dispatcher", "ds_ping_interval",15)</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("dispatcher", "ds_probing_threshhold", 3)</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("dispatcher", "ds_ping_method", "OPTIONS")</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("dispatcher", "ds_probing_mode", 1)</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("dispatcher", "ds_ping_reply_codes", "class=2;code=403;code=404;code=484;class=3")</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><br></span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># ----- SQLops params -----</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">modparam("sqlops","sqlcon","ca=>mysql://kamailio:kamailiorw@localhost/kamailio")</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><br></span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">####### Routing Logic ########</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># Main SIP request routing logic</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># - processing of any incoming SIP request starts with this route</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># - note: this is the same as route { ... }</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">request_route {</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">  </span># per request initial checks</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>route(REQINIT);</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">    </span># NAT detection</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>route(NATDETECT);</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">    </span># handle requests within SIP dialogs</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>route(WITHINDLG);</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">    </span>### only initial requests (no To tag)</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">  </span># CANCEL processing</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>if (is_method("CANCEL"))</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>{</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">             </span>if (t_check_trans())</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                      </span>t_relay();</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">           </span>exit;</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">     </span>}</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>t_check_trans();</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">    </span># authentication</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>route(AUTH);</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">    </span># record routing for dialog forming requests (in case they are routed)</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span># - remove preloaded route headers</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>remove_hf("Route");</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>if (is_method("INVITE|SUBSCRIBE"))</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">           </span>record_route();</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">    </span># account only INVITEs</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>if (is_method("INVITE"))</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>{</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">             </span>setflag(FLT_ACC); # do accounting</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">     </span>}</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span># dispatch requests to foreign domains</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>route(SIPOUT);</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">    </span>### requests for my local domains</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">  </span># handle presence related requests</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>route(PRESENCE);</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">    </span># handle registrations</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>route(REGISTRAR);</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">    </span>if ($rU==$null)</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>{</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">             </span># request with no Username in RURI</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">             </span>sl_send_reply("484","Address Incomplete");</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">           </span>exit;</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">     </span>}</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span># dispatch destinations to PSTN</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>route(PSTN);</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">    </span># user location service</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>route(LOCATION);</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">    </span>route(RELAY);</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">}</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">route[RELAY] {</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">  </span># enable additional event routes for forwarded requests</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span># - serial forking, RTP relaying handling, a.s.o.</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>if (is_method("INVITE|SUBSCRIBE")) {</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">           </span>t_on_branch("MANAGE_BRANCH");</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">           </span>t_on_reply("MANAGE_REPLY");</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>}</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">     </span>if (is_method("INVITE")) {</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">             </span>t_on_failure("MANAGE_FAILURE");</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">     </span>}</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>if (!t_relay()) {</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">             </span>sl_reply_error();</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre"> </span>}</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>exit;</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">}</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># Per SIP request initial checks</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">route[REQINIT] {</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_ANTIFLOOD</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">     </span># flood dection from same IP and traffic ban for a while</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span># be sure you exclude checking trusted peers, such as pstn gateways</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span># - local host excluded (e.g., loop to self)</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>if(src_ip!=myself)</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">     </span>{</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">         </span>if($sht(ipban=>$si)!=$null)</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">           </span>{</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                     </span># ip is already blocked</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                   </span>xdbg("request from blocked IP - $rm from $fu (IP:$si:$sp)\n");</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                   </span>exit;</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">             </span>}</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">         </span>if (!pike_check_req())</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">           </span>{</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                     </span>xlog("L_ALERT","ALERT: pike blocking $rm from $fu (IP:$si:$sp)\n");</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                   </span>$sht(ipban=>$si) = 1;</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                   </span>exit;</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">             </span>}</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre"> </span>}</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>if (!mf_process_maxfwd_header("10")) {</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">           </span>sl_send_reply("483","Too Many Hops");</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">           </span>exit;</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">     </span>}</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>if(!sanity_check("1511", "7"))</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>{</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">             </span>xlog("Malformed SIP message from $si:$sp\n");</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">           </span>exit;</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">     </span>}</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">}</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># Handle requests within SIP dialogs</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">route[WITHINDLG] {</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre"> </span>if (has_totag()) {</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">           </span># sequential request withing a dialog should</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">           </span># take the path determined by record-routing</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">           </span>if (loose_route()) {</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                     </span>if (is_method("BYE")) {</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                             </span>setflag(FLT_ACC); # do accounting ...</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                             </span>setflag(FLT_ACCFAILED); # ... even if the transaction fails</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                   </span>}</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                     </span>if ( is_method("ACK") ) {</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                             </span># ACK is forwarded statelessy</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                             </span>route(NATMANAGE);</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                 </span>}</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                   </span>route(RELAY);</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">             </span>} else {</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                  </span>if (is_method("SUBSCRIBE") && uri == myself) {</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                           </span># in-dialog subscribe requests</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                           </span>route(PRESENCE);</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                             </span>exit;</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                     </span>}</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                   </span>if ( is_method("ACK") ) {</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                           </span>if ( t_check_trans() ) {</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                                   </span># no loose-route, but stateful ACK;</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                                   </span># must be an ACK after a 487</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                                   </span># or e.g. 404 from upstream server</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                                   </span>t_relay();</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                                     </span>exit;</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                             </span>} else {</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                                   </span># ACK without matching transaction ... ignore and discard</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                                   </span>exit;</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                             </span>}</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                 </span>}</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                   </span>sl_send_reply("404","Not here");</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">           </span>}</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">             </span>exit;</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">     </span>}</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">}</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># Handle SIP registrations</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">route[REGISTRAR] {</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>if (is_method("REGISTER"))</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>{</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">             </span>if(isflagset(FLT_NATS))</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">           </span>{</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                   </span>setbflag(FLB_NATB);</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                     </span># uncomment next line to do SIP NAT pinging </span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                     </span>setbflag(FLB_NATSIPPING);</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">             </span>}</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">         </span>if (!save("location"))</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                   </span>sl_reply_error();</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><br></span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">        if (!(isflagset(FLT_NATS) || isbflagset(FLB_NATB))){</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">                return;</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">        }</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><br></span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">                route(NATMANAGE); </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><br></span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_ASTERISK</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">           </span>route(REGFWD);</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">           </span>exit;</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">     </span>}</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">}</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># USER location service</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">route[LOCATION] {</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_SPEEDIAL</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">      </span># search for short dialing - 2-digit extension</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>if($rU=~"^[0-9][0-9]$")</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">           </span>if(sd_lookup("speed_dial"))</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                   </span>route(SIPOUT);</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_ALIASDB</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">       </span># search in DB-based aliases</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>if(alias_db_lookup("dbaliases"))</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">           </span>route(SIPOUT);</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_ASTERISK</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">      </span>if(is_method("INVITE") && (!route(FROMASTERISK))) {</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">           </span># if new call from out there - send to Asterisk</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">           </span># - non-INVITE request are routed directly by Kamailio</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">           </span># - traffic from Asterisk is routed also directy by Kamailio</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">           </span>route(TOASTERISK);</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">             </span>exit;</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">     </span>}</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>$avp(oexten) = $rU;</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">     </span>if (!lookup("location")) {</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">             </span>$var(rc) = $rc;</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">           </span>route(TOVOICEMAIL);</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">           </span>t_newtran();</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">             </span>switch ($var(rc)) {</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                       </span>case -1:</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                   </span>case -3:</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                             </span>send_reply("404", "Not Found");</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                           </span>exit;</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                     </span>case -2:</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                          </span>send_reply("405", "Method Not Allowed");</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                           </span>exit;</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">             </span>}</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre"> </span>}</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">  </span># when routing via usrloc, log the missed calls also</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>if (is_method("INVITE"))</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>{</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">             </span>setflag(FLT_ACCMISSED);</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>}</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">}</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># Presence server route</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">route[PRESENCE] {</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>if(!is_method("PUBLISH|SUBSCRIBE"))</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">           </span>return;</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_PRESENCE</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>if (!t_newtran())</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">     </span>{</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">         </span>sl_reply_error();</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">           </span>exit;</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">     </span>};</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>if(is_method("PUBLISH"))</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>{</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">             </span>handle_publish();</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">         </span>t_release();</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>}</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">     </span>else</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">      </span>if( is_method("SUBSCRIBE"))</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>{</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">             </span>handle_subscribe();</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">               </span>t_release();</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>}</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">     </span>exit;</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">  </span># if presence enabled, this part will not be executed</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>if (is_method("PUBLISH") || $rU==$null)</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>{</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">             </span>sl_send_reply("404", "Not here");</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">           </span>exit;</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">     </span>}</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre"> </span>return;</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">}</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># Authentication route</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">route[AUTH] {</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_AUTH</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_ASTERISK</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">      </span># do not auth traffic from Asterisk - trusted!</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>if(route(FROMASTERISK))</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">             </span>return;</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_IPAUTH</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>if((!is_method("REGISTER")) && allow_source_address())</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>{</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">             </span># source IP allowed</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">               </span>return;</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>}</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>if (is_method("REGISTER") || from_uri==myself)</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>{</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">             </span># authenticate requests</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_ASTERISK</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">           </span>if (!auth_check("$fd", "cc_sip_buddies", "1")) {</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!else</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">             </span>if (!auth_check("$fd", "subscriber", "1")) {</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                    </span>auth_challenge("$fd", "0");</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                   </span>exit;</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">             </span>}</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">         </span># user authenticated - remove auth header</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">           </span>if(!is_method("REGISTER|PUBLISH"))</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                   </span>consume_credentials();</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">     </span>}</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre"> </span># if caller is not local subscriber, then check if it calls</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span># a local destination, otherwise deny, not an open relay here</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>if (from_uri!=myself && uri!=myself)</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>{</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">             </span>sl_send_reply("403","Not relaying");</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">           </span>exit;</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">     </span>}</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">    </span>return;</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">}</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># Caller NAT detection route</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">route[NATDETECT] {</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_NAT</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>force_rport();</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>if (nat_uac_test("19")) {</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">           </span>if (is_method("REGISTER")) {</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                   </span>fix_nated_register();</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">             </span>} else {</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                  </span>fix_nated_contact();</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">           </span>}</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">             </span>setflag(FLT_NATS);</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">        </span>}</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">    </span>return;</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">}</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># RTPProxy control</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">route[NATMANAGE] {</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">        if (is_method("INVITE")){</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">                sql_query("ca", "select destination from dispatcher where destination like '%$dd%'","ra");</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">                if($dbr(ra=>rows)>0){</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">                        $avp(duip)=$(du{s.select,-2,:});</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">                        if (is_ip_rfc1918("$avp(duip)")) {</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">                                xlog("L_INFO", "Call is going to private IPv4 Media Server Engage RTPProxy Now\n");</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">                                #rtpproxy_manage("crwie","192.168.1.40");</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">                                rtpproxy_manage("rwie");</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">                        }</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><br>
</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">                }</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">                else if(ds_is_from_list()){</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">                        if (is_ip_rfc1918("$si")) {</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">                                xlog("L_INFO", " Call is coming from a private IPv4 Media Server Engage RTPProxy Now\n");</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">                                #rtpproxy_manage("crwei","192.168.1.80");</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">                                rtpproxy_manage("rwei");</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><br></span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">                        }</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">                }else if(!ds_is_from_list()){</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><br>
</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">                          rtpproxy_manage("rwie");</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><br></span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">                }</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">      }</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><br>
</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><br></span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">}</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># Routing to foreign domains</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">route[SIPOUT] {</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">    </span>if (!uri==myself)</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>{</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">             </span>append_hf("P-hint: outbound\r\n");</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">             </span>route(RELAY);</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">     </span>}</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">}</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># PSTN GW routing</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">route[PSTN] {</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_PSTN</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">  </span># check if PSTN GW IP is defined</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>if (strempty($sel(cfg_get.pstn.gw_ip))) {</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">           </span>xlog("SCRIPT: PSTN rotuing enabled but pstn.gw_ip not defined\n");</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">           </span>return;</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">     </span>}</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span># route to PSTN dialed numbers starting with '+' or '00'</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>#     (international format)</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span># - update the condition to match your dialing rules for PSTN routing</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>if(!($rU=~"^(\+|00)[1-9][0-9]{3,20}$"))</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">           </span>return;</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">    </span># only local users allowed to call</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>if(from_uri!=myself) {</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">             </span>sl_send_reply("403", "Not Allowed");</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">           </span>exit;</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">     </span>}</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>$ru = "sip:" + $rU + "@" + $sel(cfg_get.pstn.gw_ip);</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">  </span>route(RELAY);</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>exit;</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>return;</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">}</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># XMLRPC routing</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_XMLRPC</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">route[XMLRPC] {</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">    </span># allow XMLRPC from localhost</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>if ((method=="POST" || method=="GET")</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                   </span>&& (src_ip==127.0.0.1)) {</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">           </span># close connection only for xmlrpclib user agents (there is a bug in</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">           </span># xmlrpclib: it waits for EOF before interpreting the response).</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">           </span>if ($hdr(User-Agent) =~ "xmlrpclib")</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                   </span>set_reply_close();</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">             </span>set_reply_no_connect();</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">           </span>dispatch_rpc();</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">           </span>exit;</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">     </span>}</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre"> </span>send_reply("403", "Forbidden");</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>exit;</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">}</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># route to voicemail server</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">route[TOVOICEMAIL] {</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_VOICEMAIL</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>if(!is_method("INVITE"))</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">           </span>return;</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">    </span># check if VoiceMail server IP is defined</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>if (strempty($sel(cfg_get.voicemail.srv_ip))) {</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">           </span>xlog("SCRIPT: VoiceMail rotuing enabled but IP not defined\n");</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">           </span>return;</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">     </span>}</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre"> </span>if($avp(oexten)==$null)</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">           </span>return;</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">    </span>$ru = "sip:" + $avp(oexten) + "@" + $sel(cfg_get.voicemail.srv_ip)</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                           </span>+ ":" + $sel(cfg_get.voicemail.srv_port);</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>route(RELAY);</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">     </span>exit;</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">  </span>return;</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">}</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># manage outgoing branches</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">branch_route[MANAGE_BRANCH] {</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>xdbg("new branch [$T_branch_idx] to $ru\n");</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>route(NATMANAGE);</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">}</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># manage incoming replies</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">onreply_route[MANAGE_REPLY] {</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>xdbg("incoming reply\n");</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>if(status=~"[12][0-9][0-9]")</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">           </span>route(NATMANAGE);</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">}</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># manage failure routing cases</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">failure_route[MANAGE_FAILURE] {</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>route(NATMANAGE);</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">    </span>if (t_is_canceled()) {</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">           </span>exit;</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">     </span>}</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_BLOCK3XX</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">      </span># block call redirect based on 3xx replies.</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>if (t_check_status("3[0-9][0-9]")) {</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">           </span>t_reply("404","Not found");</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">           </span>exit;</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">     </span>}</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_VOICEMAIL</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span># serial forking</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">     </span># - route to voicemail on busy or no answer (timeout)</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>if (t_check_status("486|408")) {</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">           </span>route(TOVOICEMAIL);</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">             </span>exit;</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">     </span>}</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">}</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!ifdef WITH_ASTERISK</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># Test if coming from Asterisk</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">route[FROMASTERISK] {</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">   if(ds_is_from_list()){</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">         rtpproxy_manage("cawie"); </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">  xlog("L_INFO","[$fU@$si:$sp]{$rm} Call from Media-Server Cluster\n");</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">        return 1;</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">   }</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> return -1;</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">}</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># Send to Asterisk</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">route[TOASTERISK] {</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">        ds_mark_dst("IP");</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">        if(!ds_select_dst("1", "9")) {</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">                sl_send_reply("500", "Service Unavailable");</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">                xlog("L_INFO","[$fU@$si:$sp]{$rm} No destinations available for $rd \n");</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">                exit;</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">        }</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><br></span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">        xlog("L_INFO","[$fU@$si:$sp]{$rm} From Outside World to Asterisk Box $du\n");</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">        rtpproxy_manage("cawei");</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><br>
</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> route(RELAY);</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> exit;</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">}</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"> </span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"># Forward REGISTER to Asterisk</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">route[REGFWD] {</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>if(!is_method("REGISTER"))</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>{</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">             </span>return;</span></font></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>}</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>$var(rip) = $sel(cfg_get.asterisk.bindip);</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>$uac_req(method)="REGISTER";</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>$uac_req(ruri)="sip:" + $var(rip) + ":" + $sel(cfg_get.asterisk.bindport);</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>$uac_req(furi)="sip:" + $au + "@" + $var(rip);</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>$uac_req(turi)="sip:" + $au + "@" + $var(rip);</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>$uac_req(hdrs)="Contact: <sip:" + $au + "@"</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                           </span>+ $sel(cfg_get.kamailio.bindip)</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">                           </span>+ ":" + $sel(cfg_get.kamailio.bindport) + ">\r\n";</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>if($sel(contact.expires) != $null)</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">           </span>$uac_req(hdrs)= $uac_req(hdrs) + "Expires: " + $sel(contact.expires) + "\r\n";</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>else</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">             </span>$uac_req(hdrs)= $uac_req(hdrs) + "Expires: " + $hdr(Expires) + "\r\n";</span></font></p>
<p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px"><span class="" style="white-space:pre">   </span>uac_req_send();</span></font></p><p style="margin-top:0px">
<font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">}</span></font></p><p style="margin-top:0px"></p><p style="margin-top:0px"><font color="#ff0000" face="arial, helvetica, sans-serif"><span style="font-size:14px;line-height:21px">#!endif</span></font></p>
</div>