<html><head><meta http-equiv="Content-Type" content="text/html charset=us-ascii"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class=""><a href="https://freeswitch.org/jira/browse/FS-7258" class="">https://freeswitch.org/jira/browse/FS-7258</a><br class=""><div class=""><br class=""><div><blockquote type="cite" class=""><div class="">On Mar 11, 2015, at 4:53 AM, Assaf Dahary &lt;<a href="mailto:adahary@gmail.com" class="">adahary@gmail.com</a>&gt; wrote:</div><br class="Apple-interchange-newline"><div class="">Hi,<br class=""><br class="">I have installed a fresh FS on a DigitalOcean VPS (CentOS 6.5 64bit).<br class="">FreeSWITCH Version 1.5.15b+git~20150303T230402Z~86c68d906a~64bit (git<br class="">86c68d9 2015-03-03 23:04:02Z 64bit)<br class=""><br class="">I'm using mod_cml_cdr to process call logs into DB using a PHP script ($xml<br class="">= simplexml_load_string($xml_string);) <br class=""><br class="">The problem is that the xml parsing is failing because the generated POST<br class="">XML CDR string received on my web is NOT url-encoded as should be.<br class="">I verified that encoding is enabled: &lt;param name="encode" value="true"/&gt;<br class="">(see full conf file below).<br class=""><br class="">This un-encoded line from the posted xml CDR is one example for what is<br class="">causing the xml parsing error:<br class="">&lt;sip_full_from&gt;"99252627"<br class="">&lt;<a href="sip:1234@11.11.11.11" class="">sip:1234@11.11.11.11</a>&gt;;tag=y3Xr3g6HZZtBQ&lt;/sip_full_from&gt;.<br class=""><br class="">On other FS I get it encoded with no xml errors:<br class="">&lt;sip_full_from&gt;%3Csip%3A1234%<a href="http://40abc.com" class="">40abc.com</a>%3E%3Btag%3DnQGk6NEXS0yYrSeyIYCbrXmge7<br class="">80R7J4&lt;/sip_full_from&gt;<br class=""><br class="">I've reinstalled all PHP/XML/CURL related modules with no help.<br class="">I also tried to post to my other FS web server thinking that the local FS<br class="">web is decoding and then passing to the php xml script - still with no help.<br class=""><br class="">Any tip/help/advise will be appreciated.<br class=""><br class="">Regards<br class=""><br class="">Assaf <br class=""><br class=""><br class="">This is my xml_cdr.conf.xml file:<br class=""><br class="">&lt;configuration name="xml_cdr.conf" description="XML CDR CURL logger"&gt;<br class=""> &nbsp;&lt;settings&gt;<br class=""> &nbsp;&nbsp;&nbsp;&lt;!-- the url to post to if blank web posting is disabled &nbsp;--&gt;<br class=""> &nbsp;&nbsp;&nbsp;&lt;!-- &lt;param name="url" value="<a href="http://localhost/cdr_curl/post.php" class="">http://localhost/cdr_curl/post.php</a>"/&gt; --&gt;<br class=""><br class=""> &nbsp;&nbsp;&nbsp;&lt;!-- optional: credentials to send to web server --&gt;<br class=""> &nbsp;&nbsp;&nbsp;&lt;!-- &nbsp;&nbsp;&nbsp;&lt;param name="cred" value="user:pass"/&gt; --&gt;<br class=""><br class=""> &nbsp;&nbsp;&nbsp;&lt;!-- the total number of retries (not counting the first 'try') to post<br class="">to webserver incase of failure --&gt;<br class=""> &nbsp;&nbsp;&nbsp;&lt;!-- &lt;param name="retries" value="2"/&gt; --&gt;<br class=""><br class=""> &nbsp;&nbsp;&nbsp;&lt;!-- delay between retries in seconds, default is 5 seconds --&gt;<br class=""> &nbsp;&nbsp;&nbsp;&lt;!-- &lt;param name="delay" value="1"/&gt; --&gt;<br class=""><br class=""> &nbsp;&nbsp;&nbsp;&lt;!-- optional: if not present we do not log every record to disk --&gt;<br class=""> &nbsp;&nbsp;&nbsp;&lt;!-- either an absolute path, a relative path assuming ${prefix}/logs or<br class="">a blank value will default to ${prefix}/logs/xml_cdr --&gt;<br class=""> &nbsp;&nbsp;&nbsp;&lt;param name="log-dir" value=""/&gt;<br class=""><br class=""> &nbsp;&nbsp;&nbsp;&lt;!-- optional: if not present we do log the b leg --&gt;<br class=""> &nbsp;&nbsp;&nbsp;&lt;!-- true or false if we should create a cdr for the b leg of a call--&gt;<br class=""> &nbsp;&nbsp;&nbsp;&lt;param name="log-b-leg" value="false"/&gt;<br class=""><br class=""> &nbsp;&nbsp;&nbsp;&lt;!-- optional: if not present, all filenames are the uuid of the call<br class="">--&gt;<br class=""> &nbsp;&nbsp;&nbsp;&lt;!-- true or false if a leg files are prefixed "a_" --&gt;<br class=""> &nbsp;&nbsp;&nbsp;&lt;param name="prefix-a-leg" value="true"/&gt;<br class=""><br class=""> &nbsp;&nbsp;&nbsp;&lt;!-- encode the post data may be 'true' for url encoding, 'false' for no<br class="">encoding or 'base64' for base64 encoding --&gt;<br class=""> &nbsp;&nbsp;&nbsp;&lt;param name="encode" value="true"/&gt;<br class=""><br class=""> &nbsp;&nbsp;&nbsp;&lt;!-- optional: set to true to disable Expect: 100-continue lighttpd<br class="">requires this setting --&gt; <br class=""> &nbsp;&nbsp;&nbsp;&lt;!--&lt;param name="disable-100-continue" value="true"/&gt;--&gt; <br class=""><br class=""> &nbsp;&nbsp;&nbsp;&lt;!-- optional: full path to the error log dir for failed web posts if<br class="">not specified its the same as log-dir --&gt;<br class=""> &nbsp;&nbsp;&nbsp;&lt;!-- either an absolute path, a relative path assuming ${prefix}/logs or<br class="">a blank or omitted value will default to ${prefix}/logs/xml_cdr --&gt;<br class=""> &nbsp;&nbsp;&nbsp;&lt;!-- &lt;param name="err-log-dir" value="/tmp"/&gt; --&gt;<br class=""><br class=""> &nbsp;&nbsp;&nbsp;&lt;!-- optional: if enabled this will disable CA root certificate checks<br class="">by libcurl --&gt;<br class=""> &nbsp;&nbsp;&nbsp;&lt;!-- note: default value is disabled. only enable if you want this! --&gt;<br class=""> &nbsp;&nbsp;&nbsp;&lt;!-- &lt;param name="ignore-cacert-check" value="true" /&gt; --&gt;<br class=""><br class=""> &nbsp;&lt;/settings&gt;<br class="">&lt;/configuration&gt; <br class=""><br class=""></div></blockquote></div><br class=""></div></body></html>