<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"></head><body dir="auto"><div>Potential bugs like this should be reported to the jira bug tracker @ <a href="https://freeswitch.org/jira">https://freeswitch.org/jira</a><br><br>Sent from my iPhone</div><div><br>On May 19, 2016, at 8:25 PM, Andrew Keil &lt;<a href="mailto:andrew.keil@visytel.com">andrew.keil@visytel.com</a>&gt; wrote:<br><br></div><blockquote type="cite"><div>

<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;
        mso-fareast-language:EN-US;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:#0563C1;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:#954F72;
        text-decoration:underline;}
span.EmailStyle17
        {mso-style-type:personal-compose;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri",sans-serif;
        mso-fareast-language:EN-US;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->


<div class="WordSection1">
<p class="MsoNormal">To FreeSWITCH Users,<o:p></o:p></p>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<p class="MsoNormal">I thought I would pass this on since I spent all day yesterday trying to track this issue down.<o:p></o:p></p>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<p class="MsoNormal">See below for my setup of FreeSWITCH version 1.6.8 (this problem also happens on 1.6.5 since that is why I upgraded to see if the problem was fixed or not).<o:p></o:p></p>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<p class="MsoNormal">I can reproduce this issue on FreeSWITCH 1.6.5 and 1.6.8 100% of the time.<o:p></o:p></p>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<p class="MsoNormal">Basically if <b>mod_verto</b> is not commented out inside the modules.conf.xml file then the “originate” does not function as it is supposed to.<o:p></o:p></p>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<p class="MsoNormal">See at the bottom of this message my test Lua script (<b>visytel-test-out.lua</b>).<o:p></o:p></p>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<p class="MsoNormal">I setup a simple SIP phone (Bria) to register with FreeSWITCH under user 1000 (<b>sofia status profile internal reg</b> checked out OK) then called the originate command:<o:p></o:p></p>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<p class="MsoNormal"><b>originate {ignore_early_media=true,call_timeout=15,return_ring_ready=true}user/1000 00000000</b><o:p></o:p></p>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<p class="MsoNormal">When mod_verto is commented out and FreeSWITCH is started everything works OK (except session:hangupCause() always returns NONE – but I can work around this)<o:p></o:p></p>
<p class="MsoNormal">When mod_verto is <b>not</b> commented out and FreeSWITCH is started originate gets stuck and never starts the Lua script (unless answered) despite return_ring_ready=true.<o:p></o:p></p>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<p class="MsoNormal">Luckily I currently do not need video on my FreeSWITCH installations so I can happily comment out mod_verto, however this may not be the case in the future.<o:p></o:p></p>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<p class="MsoNormal"><span style="mso-fareast-language:EN-AU">Kind Regards,<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-fareast-language:EN-AU"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="mso-fareast-language:EN-AU">Andrew Keil<o:p></o:p></span></p>
<p class="MsoNormal"><b><span style="mso-fareast-language:EN-AU">Visytel Pty Ltd<o:p></o:p></span></b></p>
<p class="MsoNormal"><span style="mso-fareast-language:EN-AU"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><u>New setup of FreeSWITCH 1.6.8 on up-to-date CentOS 6.7<o:p></o:p></u></p>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<p class="MsoNormal">yum -y install epel-release<o:p></o:p></p>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<p class="MsoNormal">yum -y install git gcc-c++ autoconf automake libtool wget python ncurses-devel zlib-devel libjpeg-devel openssl-devel sqlite-devel libcurl-devel libxml2-devel libidn-devel readline-devel<o:p></o:p></p>
<p class="MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; These should be already installed and up-to-date<o:p></o:p></p>
<p class="MsoNormal">yum -y install e2fsprogs-devel pcre-devel speex-devel ldns-devel libedit-devel libyuv-devel opus-devel libvpx-devel unbound-devel libuuid-devel libsndfile-devel sox<o:p></o:p></p>
<p class="MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; These should install<o:p></o:p></p>
<p class="MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Note: No packages for: libvpx2*, libdb4* (so mod_vpx &amp; mod_fsv will not be supported)<o:p></o:p></p>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<p class="MsoNormal">cd /usr/local/src<o:p></o:p></p>
<p class="MsoNormal"><b>git clone -b v1.6 <a href="https://freeswitch.org/stash/scm/fs/freeswitch.git">https://freeswitch.org/stash/scm/fs/freeswitch.git</a>&nbsp;
<o:p></o:p></b></p>
<p class="MsoNormal">cd /usr/local/src/freeswitch<o:p></o:p></p>
<p class="MsoNormal"><b>./bootstrap.sh<o:p></o:p></b></p>
<p class="MsoNormal">vi modules.conf<o:p></o:p></p>
<p class="MsoNormal">&nbsp;&nbsp;&nbsp; Comment out (ie. place '#' infront):<o:p></o:p></p>
<p class="MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mod_fsv<o:p></o:p></p>
<p class="MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mod_h26x<o:p></o:p></p>
<p class="MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Save and close (&lt;Esc&gt; :wq!)<o:p></o:p></p>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<p class="MsoNormal"><b>./configure --disable-libvpx --disable-libyuv<o:p></o:p></b></p>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<p class="MsoNormal">yum install yasm-devel&nbsp; {This is extra from the original yum install pre-requisites}<o:p></o:p></p>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<p class="MsoNormal"><b>make<o:p></o:p></b></p>
<p class="MsoNormal"><b>make install<o:p></o:p></b></p>
<p class="MsoNormal"><b>make cd-sounds-install<o:p></o:p></b></p>
<p class="MsoNormal"><b>make cd-moh-install<o:p></o:p></b></p>
<p class="MsoNormal">cd /usr/local/freeswitch/conf<o:p></o:p></p>
<p class="MsoNormal">vi vars.xml<o:p></o:p></p>
<p class="MsoNormal">&nbsp;&nbsp;&nbsp; Change:&nbsp; &lt;X-PRE-PROCESS cmd="set" data="default_password=1234"/&gt; {!!set it to something different!!}<o:p></o:p></p>
<p class="MsoNormal">&nbsp;&nbsp;&nbsp; Save and close (&lt;Esc&gt; :wq!)<o:p></o:p></p>
<p class="MsoNormal">cd /usr/local/freeswitch/conf/autoload_configs<o:p></o:p></p>
<p class="MsoNormal">vi modules.conf.xml<o:p></o:p></p>
<p class="MsoNormal">&nbsp;&nbsp;&nbsp; comment out (ie. place '&lt;!--' infront and '--&gt;' at the end):<o:p></o:p></p>
<p class="MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mod_fsv<o:p></o:p></p>
<p class="MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Save and close (&lt;Esc&gt; :wq!)<o:p></o:p></p>
<p class="MsoNormal">cd /usr/local/freeswitch/bin<o:p></o:p></p>
<p class="MsoNormal">./freeswitch -nonat -nonatmap<o:p></o:p></p>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<p class="MsoNormal">version<o:p></o:p></p>
<p class="MsoNormal"><b>FreeSWITCH Version 1.6.8+git~20160505T153832Z~99de0ad502~64bit (git 99de0ad 2016-05-05 15:38:32Z 64bit)<o:p></o:p></b></p>
<p class="MsoNormal">... to exit from FreeSWITCH console<o:p></o:p></p>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<p class="MsoNormal"><u>Here is my test Lua script which was placed inside <b>scripts/visytel-test-out.lua</b>:<o:p></o:p></u></p>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<p class="MsoNormal">local trace_string <o:p></o:p></p>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<p class="MsoNormal">-- Script tested by using originate: <b>originate {ignore_early_media=true,call_timeout=15,return_ring_ready=true}user/1000 00000000</b><o:p></o:p></p>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<p class="MsoNormal">--[[<o:p></o:p></p>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<p class="MsoNormal">Dialplan inside <b>conf/dialplan/default/00_visytel_out.xml</b>:<o:p></o:p></p>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<p class="MsoNormal">&lt;include&gt;&nbsp; <o:p></o:p></p>
<p class="MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;extension name="visytel_out"&gt;&nbsp;&nbsp; <o:p></o:p></p>
<p class="MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;condition field="destination_number" expression="00000000"&gt;&nbsp;&nbsp;&nbsp;
<o:p></o:p></p>
<p class="MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;action application="lua" data="visytel-test-out.lua"/&gt;&nbsp;&nbsp;&nbsp;
<o:p></o:p></p>
<p class="MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/condition&gt;&nbsp; <o:p></o:p></p>
<p class="MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/extension&gt; <o:p></o:p></p>
<p class="MsoNormal">&lt;/include&gt;<o:p></o:p></p>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<p class="MsoNormal">]]--&nbsp; <o:p></o:p></p>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<p class="MsoNormal">-- Trace some channel variables here<o:p></o:p></p>
<p class="MsoNormal">trace_string = session:getVariable("uuid")<o:p></o:p></p>
<p class="MsoNormal">freeswitch.consoleLog("INFO", trace_string)<o:p></o:p></p>
<p class="MsoNormal">trace_string = session:getVariable("destination_number")<o:p></o:p></p>
<p class="MsoNormal">freeswitch.consoleLog("INFO", trace_string)<o:p></o:p></p>
<p class="MsoNormal">trace_string = session:getVariable("ani")<o:p></o:p></p>
<p class="MsoNormal">freeswitch.consoleLog("INFO", trace_string)<o:p></o:p></p>
<p class="MsoNormal">trace_string = session:getVariable("direction")<o:p></o:p></p>
<p class="MsoNormal">freeswitch.consoleLog("INFO", trace_string)<o:p></o:p></p>
<p class="MsoNormal">trace_string = session:getVariable("channel_name")<o:p></o:p></p>
<p class="MsoNormal">freeswitch.consoleLog("INFO", trace_string)<o:p></o:p></p>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<p class="MsoNormal">-- waitForAnswer here<o:p></o:p></p>
<p class="MsoNormal">freeswitch.consoleLog("INFO", "Prior to session.waitForAnswer()")<o:p></o:p></p>
<p class="MsoNormal">session:waitForAnswer(session)<o:p></o:p></p>
<p class="MsoNormal">freeswitch.consoleLog("INFO", "After session.waitForAnswer()")<o:p></o:p></p>
<p class="MsoNormal">-- Get Hangup Cause {this does not seem to work}<o:p></o:p></p>
<p class="MsoNormal">freeswitch.consoleLog("INFO", session:hangupCause())&nbsp; -- This seems to be always a value of NONE so not much use<o:p></o:p></p>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<p class="MsoNormal">-- Handle whether outbound call was ANSWERED or not here<o:p></o:p></p>
<p class="MsoNormal">if (session:getState() ~= "CS_HANGUP") then<o:p></o:p></p>
<p class="MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; freeswitch.consoleLog("INFO", "OUTBOUND ANSWERED")<o:p></o:p></p>
<p class="MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; session:sleep(2000)<o:p></o:p></p>
<p class="MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; session:hangup() -- Just HANGUP for now<o:p></o:p></p>
<p class="MsoNormal">else<o:p></o:p></p>
<p class="MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; freeswitch.consoleLog("INFO", "OUTBOUND FAILED")&nbsp;&nbsp;&nbsp;&nbsp;
<o:p></o:p></p>
<p class="MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; session:hangup()&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <o:p></o:p></p>
<p class="MsoNormal">end<o:p></o:p></p>
</div>


</div></blockquote><blockquote type="cite"><div><span>_________________________________________________________________________</span><br><span>Professional FreeSWITCH Consulting Services: </span><br><span><a href="mailto:consulting@freeswitch.org">consulting@freeswitch.org</a></span><br><span><a href="http://www.freeswitchsolutions.com">http://www.freeswitchsolutions.com</a></span><br><span></span><br><span>Official FreeSWITCH Sites</span><br><span><a href="http://www.freeswitch.org">http://www.freeswitch.org</a></span><br><span><a href="http://confluence.freeswitch.org">http://confluence.freeswitch.org</a></span><br><span><a href="http://www.cluecon.com">http://www.cluecon.com</a></span><br><span></span><br><span>FreeSWITCH-users mailing list</span><br><span><a href="mailto:FreeSWITCH-users@lists.freeswitch.org">FreeSWITCH-users@lists.freeswitch.org</a></span><br><span><a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a></span><br><span>UNSUBSCRIBE:http://<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users">lists.freeswitch.org/mailman/options/freeswitch-users</a></span><br><span><a href="http://www.freeswitch.org">http://www.freeswitch.org</a></span></div></blockquote></body></html>