<br><font size=2 face="sans-serif">Thanks first of all Bogdan,</font>
<br><font size=2 face="sans-serif">But what is relevence of the acc table
in database. it seems much like raw CDR record.</font>
<br><font size=2 face="sans-serif">My problem is it is not getting updated
at all. bit sip-trace table is getting the SIP messages recorded..</font>
<br><font size=2 face="sans-serif">Even if I would populate acc table online
is like an achivement for me. but how to do it from configuration.</font>
<br><font size=2 face="sans-serif">Thanks again,</font>
<br><font size=2 face="sans-serif">Madhusudan</font>
<br>
<br>
<br>
<br>
<br>
<table width=100%>
<tr valign=top>
<td width=40%><font size=1 face="sans-serif"><b>Bogdan-Andrei Iancu &lt;bogdan@voice-system.ro&gt;</b>
</font>
<p><font size=1 face="sans-serif">10/19/2006 01:18 AM</font>
<td width=59%>
<table width=100%>
<tr valign=top>
<td>
<div align=right><font size=1 face="sans-serif">To</font></div>
<td><font size=1 face="sans-serif">Madhusudan.Jarhad@lntinfotech.com</font>
<tr valign=top>
<td>
<div align=right><font size=1 face="sans-serif">cc</font></div>
<td><font size=1 face="sans-serif">users@openser.org</font>
<tr valign=top>
<td>
<div align=right><font size=1 face="sans-serif">Subject</font></div>
<td><font size=1 face="sans-serif">Re: [Users] How to configure acc modue</font></table>
<br>
<table>
<tr valign=top>
<td>
<td></table>
<br></table>
<br>
<br>
<br><font size=2><tt>Hi,<br>
<br>
the acc module does not generate CDRs, but start / stop events you can
<br>
use for generating CDRs<br>
<br>
do you get the logs? be sure to set in the scrip the configured acc flags!!<br>
<br>
regards,<br>
bogdan<br>
<br>
Madhusudan.Jarhad@lntinfotech.com wrote:<br>
<br>
&gt;<br>
&gt; Dear All,<br>
&gt; Here is very basic question from me.<br>
&gt; I have installed openser 1.1.0. I want to record the CDR / Accounts
of <br>
&gt; calles and messages being processed. I have acc module in my <br>
&gt; opense.cfg and parameter setting is as follows<br>
&gt;<br>
&gt; # ----------------- SETTING MODULE-SPECIFIC PARAMETERS ---------------<br>
&gt;<br>
&gt; ## - - - - - - - - - - XLOG PARAMETERS - - - - - - - - - - - - - -
-<br>
&gt; modparam(&quot;xlog&quot;, &quot;force_color&quot;, 0)<br>
&gt;<br>
&gt; # - - - - - - - - - USRLOC PARAMS - - - - - - - - - - - - - - - -
- -<br>
&gt;<br>
&gt; #modparam(&quot;usrloc&quot;, &quot;db_mode&quot;, &nbsp; 1)<br>
&gt;<br>
&gt; # Uncomment this if you want to use SQL database<br>
&gt; # for persistent storage and comment the previous line<br>
&gt; modparam(&quot;usrloc&quot;, &quot;db_mode&quot;, 2)<br>
&gt; modparam(&quot;usrloc&quot;, &quot;db_url&quot;, <br>
&gt; &quot;mysql://openser:openserrw@localhost/openser&quot;)<br>
&gt;<br>
&gt;<br>
&gt; # - - - - - - AUTH PARAMS - - - - - - - - - - - -<br>
&gt; # Uncomment if you are using auth module<br>
&gt; #<br>
&gt; modparam(&quot;auth_db&quot;, &quot;calculate_ha1&quot;, yes)<br>
&gt; #<br>
&gt; # If you set &quot;calculate_ha1&quot; parameter to yes (which true
in this <br>
&gt; config),<br>
&gt; # uncomment also the following parameter)<br>
&gt; #<br>
&gt; modparam(&quot;auth_db&quot;, &quot;password_column&quot;, &quot;password&quot;)<br>
&gt; #modparam(&quot;alias_db&quot;, &quot;user_column&quot;, &quot;username&quot;)<br>
&gt; modparam(&quot;auth_db&quot;, &quot;password_column&quot;, &quot;password&quot;)<br>
&gt;<br>
&gt; ## &nbsp;- - - - - AUTH RADIUS - - - - -<br>
&gt; #modparam(&quot;auth_radius&quot;, &quot;radius_config&quot;, <br>
&gt; &quot;/usr/local/etc/radiusclient-ng/radiusclient.conf&quot;)<br>
&gt; #modparam(&quot;auth_radius&quot;, &quot;service_type&quot;, 15)<br>
&gt;<br>
&gt; ## &nbsp;- - - - - RR MODULE PARAMETERS - - - - -<br>
&gt; # add value to ;lr param to make some broken UAs happy<br>
&gt; &nbsp;modparam(&quot;rr&quot;, &quot;enable_full_lr&quot;, 1)<br>
&gt; &nbsp;modparam(&quot;rr&quot;, &quot;append_fromtag&quot;, 1)<br>
&gt; &nbsp;modparam(&quot;rr&quot;, &quot;enable_double_rr&quot;, 1)<br>
&gt; &nbsp;modparam(&quot;rr&quot;, &quot;add_username&quot;, 1)<br>
&gt;<br>
&gt; ## - - - - - &nbsp;ACCOUNTING PARAMETERS &nbsp;- - - - - - - -<br>
&gt; modparam(&quot;acc&quot;, &quot;detect_direction&quot;, 1)<br>
&gt; modparam(&quot;acc&quot;, &quot;failed_transaction_flag&quot;, 1)<br>
&gt; modparam(&quot;acc&quot;, &quot;report_cancels&quot;,1)<br>
&gt; modparam(&quot;acc&quot;, &quot;report_ack&quot;, 1)<br>
&gt; modparam(&quot;acc&quot;, &quot;early_media&quot;, 1)<br>
&gt; modparam(&quot;acc&quot;, &quot;detect_direction&quot;, 1)<br>
&gt; modparam(&quot;acc&quot;, &quot;report_cancels&quot;, 1)<br>
&gt; modparam(&quot;acc&quot;, &quot;log_level&quot;, 1)<br>
&gt; modparam(&quot;acc&quot;, &quot;log_flag&quot;, 1)<br>
&gt; modparam(&quot;acc&quot;, &quot;log_missed_flag&quot;, 1)<br>
&gt; #modparam(&quot;acc&quot;, &quot;log_extra&quot;, &quot;ua=$hdr(User-Agent);uuid=$avp(i:123)&quot;)<br>
&gt; modparam(&quot;acc&quot;, &quot;service_type&quot;, 15) # user 16
to set to Radius<br>
&gt; modparam(&quot;acc&quot;, &quot;db_flag&quot;, 2)<br>
&gt; modparam(&quot;acc&quot;, &quot;db_missed_flag&quot;, 3)<br>
&gt; modparam(&quot;acc&quot;, &quot;db_url&quot;, &quot;mysql://openser:openserrw@localhost/openser&quot;)<br>
&gt; modparam(&quot;acc&quot;, &quot;db_table_acc&quot;, &quot;acc&quot;)<br>
&gt; modparam(&quot;acc&quot;, &quot;db_table_missed_calls&quot;, &quot;missed_calls&quot;)<br>
&gt; modparam(&quot;acc&quot;, &quot;db_missed_flag&quot;, 3)<br>
&gt; modparam(&quot;acc&quot;, &quot;acc_sip_method_column&quot;, &quot;sip_method&quot;)<br>
&gt; modparam(&quot;acc&quot;, &quot;acc_from_uri_column&quot;, &quot;from_uri&quot;)<br>
&gt; modparam(&quot;acc&quot;, &quot;acc_fromtag_column&quot;, &quot;fromtag&quot;)<br>
&gt; modparam(&quot;acc&quot;, &quot;acc_to_uri_column&quot;, &quot;to_uri&quot;)<br>
&gt; modparam(&quot;acc&quot;, &quot;acc_totag_column&quot;, &quot;totag&quot;)<br>
&gt; #modparam(&quot;acc&quot;, &quot;acc_cseqno_column&quot;, &quot;cseq_no&quot;)<br>
&gt; modparam(&quot;acc&quot;, &quot;acc_sip_callid_column&quot;, &quot;sip_callid&quot;)<br>
&gt; modparam(&quot;acc&quot;, &quot;acc_time_column&quot;, &quot;time&quot;)<br>
&gt; # for mysql-based accouting, use the names of the columns<br>
&gt; # for RADIUS-based accouting, use the names of the RADIUS AVPs<br>
&gt; #modparam(&quot;acc&quot;, <br>
&gt; &quot;multi_leg_info&quot;,&quot;RAD_LEG_SRC=$avp(src);RAD_LEG_SRC=$avp(dst)&quot;)<br>
&gt;<br>
&gt; #modparam(&quot;acc&quot;, &quot;multi_leg_info&quot;,&quot;leg_src=$avp(src);leg_dst=$avp(dst)&quot;)<br>
&gt; #modparam(&quot;avpops&quot;, &quot;avp_aliases&quot;, &quot;uuid=I:50&quot;)<br>
&gt; modparam(&quot;acc&quot;, &quot;radius_config&quot;, <br>
&gt; &quot;/usr/local/etc/radiusclient-ng/radiusclient.conf&quot;)<br>
&gt; #modparam(&quot;acc&quot;, &quot;radius_config&quot;, &quot;/etc/openser/radius/client.conf&quot;)<br>
&gt; #modparam(&quot;acc&quot;, &quot;radius_flag&quot;, 2)<br>
&gt; #modparam(&quot;acc&quot;, &quot;diameter_missed_flag&quot;, 3)<br>
&gt;<br>
&gt; #modparam(&quot;acc&quot;, &quot;radius_extra&quot;, &nbsp; &nbsp;
&nbsp; &quot;Sip-RPid=$avp(s:rpid) <br>
&gt; Source-IP=$si; Source-Port=$sp&quot;<br>
&gt; # &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Canonical-URI=$avp($can_uri);
\<br>
&gt; # &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <br>
&gt; Billing-Party=$avp($billing_party); \<br>
&gt; # &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <br>
&gt; Divert-Reason=$avp(s:divert_reason); \<br>
&gt; # &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <br>
&gt; X-RTP-Stat=$avp(s:rtp_statistics); \<br>
&gt; # &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; From-Header=$hdr(from);
\<br>
&gt; # &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; User-Agent=$hdr(user-agent);
\<br>
&gt; # &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Contact=$hdr(contact);
\<br>
&gt; # &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Event=$hdr(event)&quot;)<br>
&gt;<br>
&gt; ## - - - - - - JABBER SERVER CONFIGURATION - - - - - - - - -<br>
&gt; modparam(&quot;jabber&quot;, &quot;jdomain&quot;, &quot;jabber.sipserver.com=*&quot;)<br>
&gt; modparam(&quot;jabber&quot;, &quot;db_url&quot;, <br>
&gt; &quot;mysql://openser:openserrw@localhost/openser&quot;)<br>
&gt;<br>
&gt; modparam(&quot;jabber&quot;, &quot;jdomain&quot;, &quot;sipx.vshodc.lntinfotech.com&quot;)<br>
&gt;<br>
&gt;<br>
&gt; ## - - - - - - - - - - - SIPTRACE MODULES PARAMETERS - - - - - - -
- -<br>
&gt; modparam(&quot;siptrace&quot;, &quot;trace_flag&quot;, 0)<br>
&gt; modparam(&quot;siptrace&quot;, &quot;db_url&quot;, <br>
&gt; &quot;mysql://openser:openserrw@localhost/openser&quot;)<br>
&gt; modparam(&quot;siptrace&quot;, &quot;trace_on&quot;, 1)<br>
&gt; modparam(&quot;siptrace&quot;, &quot;table&quot;, &quot;sip_trace&quot;)<br>
&gt; modparam(&quot;siptrace&quot;, &quot;duplicate_uri&quot;, &quot;sip:172.17.85.51:5888&quot;)<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt; # ------------------------- &nbsp;request routing logic -------------------<br>
&gt;<br>
&gt; # main routing logic<br>
&gt;<br>
&gt; route{<br>
&gt;<br>
&gt; ## ADDED BY MADHUSUDAN<br>
&gt; # &nbsp; &nbsp;avp_write(&quot;caller_id&quot;, $avp(name); #&quot;$uuid&quot;);<br>
&gt; # &nbsp; &nbsp;avp_printf(&quot;i:20&quot;, &quot;$avp($uuid): $fu&quot;);<br>
&gt; # &nbsp; &nbsp;xdbg(&quot;$Cbgi:20$Cxx [$avp(i:20)] $Cbrcseq$Cxx=[$hdr(cseq)]\n&quot;);<br>
&gt; # setflag(1); /* set for accounting (the same value as in log_flag!)*/<br>
&gt; # t_relay(); &nbsp; &nbsp; &nbsp;/* enter stateful mode now */<br>
&gt;<br>
&gt; ##<br>
&gt;<br>
&gt;<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; sip_trace();<br>
&gt; # &nbsp; &nbsp; &nbsp; xlog(&quot;L_ERR&quot;, &quot;time [$Tf] method
&lt;$rm&gt; r-uri &lt;$ru&gt; 2nd via <br>
&gt; &lt;$hdr(via[1])&gt;\n&quot;);<br>
&gt; # &nbsp; &nbsp; &nbsp; setflag(1); /* set for accounting (the same
value as in <br>
&gt; log_flag!)*/<br>
&gt; # &nbsp; &nbsp; &nbsp; t_relay(); &nbsp; &nbsp; &nbsp;/* enter stateful
mode now */<br>
&gt;<br>
&gt; # &nbsp; &nbsp; &nbsp; if (t_newtran()) {<br>
&gt; # &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; log(&quot;UAS logic&quot;);<br>
&gt; # &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; t_reply(&quot;999&quot;,&quot;hello&quot;);<br>
&gt; # &nbsp; &nbsp; &nbsp; } else sl_reply_error();<br>
&gt;<br>
&gt; ################<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; if (t_local_replied(&quot;all&quot;))
{<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; log (&quot;no
reply received\n&quot;);<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; }<br>
&gt;<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; # initial sanity checks -- messages with<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; # max_forwards==0, or excessively long
requests<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; if (!mf_process_maxfwd_header(&quot;10&quot;))
{<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; sl_send_reply(&quot;483&quot;,&quot;Too
Many Hops&quot;);<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; exit;<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; };<br>
&gt;<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; if (msg:len &gt;= &nbsp;2048 ) {<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; sl_send_reply(&quot;513&quot;,
&quot;Message too big&quot;);<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; exit;<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; };<br>
&gt;<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; # we record-route all messages -- to make
sure that<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; # subsequent messages will go through
our proxy; that's<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; # particularly good if upstream and downstream
entities<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; # use different transport protocol<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; if (!method==&quot;REGISTER&quot;)<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; record_route();<br>
&gt;<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; # subsequent messages withing a dialog
should take the<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; # path determined by record-routing<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; if (loose_route()) {<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; # mark routing
logic in request<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; append_hf(&quot;P-hint:
rr-enforced\r\n&quot;);<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; route(1);<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; };<br>
&gt;<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; if (!uri==myself) {<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; # mark routing
logic in request<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; append_hf(&quot;P-hint:
outbound\r\n&quot;);<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; # if you have
some interdomain connections via TLS<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; #if(uri=~&quot;@tls_domain1.net&quot;)
{<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; # &nbsp; &nbsp;
&nbsp; t_relay(&quot;tls:domain1.net&quot;);<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; # &nbsp; &nbsp;
&nbsp; exit;<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; #} else if(uri=~&quot;@tls_domain2.net&quot;)
{<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; # &nbsp; &nbsp;
&nbsp; t_relay(&quot;tls:domain2.net&quot;);<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; # &nbsp; &nbsp;
&nbsp; exit;<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; #}<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; route(1);<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; };<br>
&gt;<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; # if the request is for other domain use
UsrLoc<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; # (in case, it does not work, use the
following command<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; # with proper names and addresses in it)<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; if (uri==myself) {<br>
&gt;<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; if (method==&quot;REGISTER&quot;)
{<br>
&gt;<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; # Uncomment this if you want to use digest <br>
&gt; authentication<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; #if (!www_authorize(&quot;openser.org&quot;, <br>
&gt; &quot;subscriber&quot;)) {<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; # &nbsp; &nbsp; &nbsp; www_challenge(&quot;openser.org&quot;,
&quot;0&quot;);<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; # &nbsp; &nbsp; &nbsp; exit;<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; #};<br>
&gt;<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; save(&quot;location&quot;);<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; exit;<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; };<br>
&gt;<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; lookup(&quot;aliases&quot;);<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; if (!uri==myself)
{<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; append_hf(&quot;P-hint: outbound alias\r\n&quot;);<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; route(1);<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; };<br>
&gt;<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; # native SIP
destinations are handled using our USRLOC DB<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; if (!lookup(&quot;location&quot;))
{<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; sl_send_reply(&quot;404&quot;, &quot;Not Found&quot;);<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; exit;<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; };<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; append_hf(&quot;P-hint:
usrloc applied\r\n&quot;);<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; };<br>
&gt;<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; route(1);<br>
&gt; }<br>
&gt;<br>
&gt;<br>
&gt; route[1] {<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; # send it out now; use stateful forwarding
as it works reliably<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; # even for UDP2TCP<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; if (!t_relay()) {<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; sl_reply_error();<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; };<br>
&gt;<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; exit;<br>
&gt; }<br>
&gt;<br>
&gt;<br>
&gt; onreply_route[1] {<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; if (t_check_status(&quot;1[0-9][0-9]&quot;))
{<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; setflag(1);<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; log(&quot;provisional
reply received\n&quot;);<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; if (t_check_status(&quot;183&quot;))<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; drop;<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; }<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; if (t_was_cancelled()) {<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; log(&quot;transaction was
cancelled by UAC\n&quot;);<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; }<br>
&gt;<br>
&gt; }<br>
&gt;<br>
&gt; ###################################################################<br>
&gt; My need is to get the CDRs for events and volume &nbsp;like MESSAGES
and <br>
&gt; &nbsp;download/file transfer respectively.<br>
&gt; Please help<br>
&gt; ______________________________________________________________________<br>
&gt;<br>
&gt;------------------------------------------------------------------------<br>
&gt;<br>
&gt;_______________________________________________<br>
&gt;Users mailing list<br>
&gt;Users@openser.org<br>
&gt;http://openser.org/cgi-bin/mailman/listinfo/users<br>
&gt; &nbsp;<br>
&gt;<br>
<br>
<br>
______________________________________________________________________<br>
</tt></font>
<br>

<BR>
______________________________________________________________________<BR>