<div dir="ltr"><div><div style="font-size:12.8000001907349px">1) Most(if not all) of modern equipment have buffers. TDM cards too. Even $0.25 microcontrollers have buffers.</div><div style="font-size:12.8000001907349px">Firing interrupts at each PCM sample not needed.</div><div style="font-size:12.8000001907349px"><br></div></div><div>The problem is whether there is or not the buffer. Is exist in all the equipment.<br></div><div><div>The problem is the amount of buffer, and through any time it overflows. I thing you cannot say buffer size has TDM card and USB modems. :o)</div><div>The above i write results of testing Digium E1 card in virtual environment. Test that is successful on real host, will fail in virtual environment.</div><div>I you see source of timertest utility you will see that Digium test timer for 8000 samples for 1000 ms (1s). (Primary utility author Mark Spencer &lt;<a href="mailto:markster@digium.com">markster@digium.com</a>&gt;)</div><div>It is same value I recommend early.</div><div><br></div><div><div style="font-size:12.8000001907349px">2) If you want massive sync audio processing (w/o buffering) you can use hard realtime OS. PC and Linux (even on bare metal) is not suitable for this, at least without RT patched kernel.</div></div><div> <br></div><div>I am not understanding about you speaking. E1 card can be used on real host without problems.<br></div><div><br></div><div>3) <span style="font-size:12.8000001907349px">AFAIR, 1 thread per call leg, but depends of endpoints. Most of time threads in I/O waiting/sleeping and encoding/decoding state.</span></div><div><br></div><div>One thread per FS call, equal one thread cyclictest. In cyclictest most time threads sleep also. This threads measure time interval and sleep again.</div><div><br></div><div><span style="font-size:12.8000001907349px">4) Dynamic output to screen consumes resources. How much, depends on method.(VGA, Serial console, SSH). In my case difference is significiant. So, fair testing should exclude such things, IMO.</span></div><div><br></div><div>You rightly pointed out it</div><div><br></div><div style="font-size:12.8000001907349px">5) Serious players, as Wind River, use external timer.</div><div style="font-size:12.8000001907349px"><br></div><div>Wind River solutions for highly specialized market. Not for simple user.</div><div><div style="font-size:12.8000001907349px"><span style="font-size:12.8000001907349px"><br></span></div><div style="font-size:12.8000001907349px"><span style="font-size:12.8000001907349px">6) In your case, most capable realtime hypervisor with RT_PREEMPT guest would be one of the best solution.</span><br></div><span class="" style="font-size:12.8000001907349px"><font color="#888888"></font></span><div><br></div><div>May be. According this publication (<a href="http://www.linux-kvm.org/wiki/images/0/03/KVM-Forum-2011-RT-KVM.pdf">http://www.linux-kvm.org/wiki/images/0/03/KVM-Forum-2011-RT-KVM.pdf</a>) guest threads can be interrupted not more 112 uS.</div></div><div><br></div><div>Simple solution - for TDM card enough ordinary processor without virtualization. :o)</div></div><div><br></div><div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Apr 9, 2015 at 8:09 PM, Dmitry Lysenko <span dir="ltr">&lt;<a href="mailto:dvl36.ripe.nick@gmail.com" target="_blank">dvl36.ripe.nick@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote"><span class="">2015-04-08 15:25 GMT+03:00 Sergey Safarov <span dir="ltr">&lt;<a href="mailto:s.safarov@gmail.com" target="_blank">s.safarov@gmail.com</a>&gt;</span>:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div><div style="font-size:12.8000001907349px">1) 125uS is the interval between FrameSync of ONE(!) PCM sample at 8000hz,</div><span><div style="font-size:12.8000001907349px">But here we are talking about packet telephony where commonly used frame length is 20000 uS.</div><div style="font-size:12.8000001907349px">So, intervals for testing should be 5000-10000-20000uS, not 125uS.</div></span></div><div style="font-size:12.8000001907349px"><br></div><div>Not all FS installation has SIP endpoint. Some can have TDM cards, USB dongle and other analog equipment. Can you say what is length of this frame type?</div><div>I am wondering about this question. I know that the frame 125ms is enough.</div></div></blockquote></span><div><div><br></div><div>Most(if not all) of modern equipment have buffers. TDM cards too. Even $0.25 microcontrollers have buffers.</div><div>Firing interrupts at each PCM sample not needed.</div><div>If you want massive sync audio processing (w/o buffering) you can use hard realtime OS. PC and Linux (even on bare metal) is not suitable for this, at least without RT patched kernel.</div></div><span class=""><div> <br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div><div style="font-size:12.8000001907349px">2) Why you decided that all of 42 threads should wake up simultaneously?</div><span><div style="font-size:12.8000001907349px">That totally impossible in real world applications.</div><div style="font-size:12.8000001907349px">Here should be tens of uS. Dependent of network card and, possibly, other I/O hardware.</div><div><br></div></span><div>Can you say how many FS create threads for 40-50 active calls?</div></div></div></blockquote><div><br></div></span><div><div><br></div><div>AFAIR, 1 thread per call leg, but depends of endpoints. Most of time threads in I/O waiting/sleeping and encoding/decoding state.</div></div><span class=""><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div><div></div><div>3) -q switch is missing</div><div>I am thinking it is optional. Result is same</div></div></div></blockquote><div> </div></span><div>Dynamic output to screen consumes resources. How much, depends on method.(VGA, Serial console, SSH). In my case difference is significiant. So, fair testing should exclude such things, IMO.</div><span class=""><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div><div></div><div>4) <span style="font-size:12.8000001907349px">Precise time measurement and realtime processing in VM environment  is a challenge. </span></div><span><div style="font-size:12.8000001907349px">To obtain acceptable results fine tuning of host&#39;s and guest&#39;s  required.</div><div style="font-size:12.8000001907349px">WIthout that this numbers ... does not mean anything.</div><div><br></div></span><div>Can you learn me how to correctly measure timer source quality in VM?</div></div></div></blockquote><div> </div></span><div>Serious players, as Wind River, use external timer.</div><div><br></div><div>In your case, most capable realtime hypervisor with RT_PREEMPT guest would be one of the best solution.<span class="HOEnZb"><font color="#888888"><br></font></span></div><span class="HOEnZb"><font color="#888888"><div><br></div><div>Dmitry.</div></font></span><div><div class="h5"><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div><div><div class="gmail_extra"><div class="gmail_quote">On Wed, Apr 8, 2015 at 2:07 PM, Dmitry Lysenko <span dir="ltr">&lt;<a href="mailto:dvl36.ripe.nick@gmail.com" target="_blank">dvl36.ripe.nick@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">2015-04-07 10:48 GMT+03:00 Sergey Safarov <span dir="ltr">&lt;<a href="mailto:s.safarov@gmail.com" target="_blank">s.safarov@gmail.com</a>&gt;</span>:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><span><div>...</div></span><span><div>2) i 125 - time us between software timer interrupts for first thread. It time is equal time between samples rate in PSTN networks</div><div><span style="color:rgb(0,0,0);font-family:&#39;Times New Roman&#39;;font-size:medium">In order to maintain our sampling rate we have 125 microseconds (uS) between consecutive samples (1/8,000Hz), which is more</span></div></span></div></blockquote><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div><span style="color:rgb(0,0,0);font-family:&#39;Times New Roman&#39;;font-size:medium">...</span></div></div></blockquote><div><br></div><div>125uS is the interval between FrameSync of ONE(!) PCM sample at 8000hz,</div><div>But here we are talking about packet telephony where commonly used frame length is 20000 uS.</div><div>So, intervals for testing should be 5000-10000-20000uS, not 125uS.</div><span><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div>3) d 0 - this switch will make time between software timer interrupts for second and following threads is equal timer value for first thread</div></div></blockquote><div><br></div></span><div>Why you decided that all of 42 threads should wake up simultaneously?</div><div>That totally impossible in real world applications.</div><div>Here should be tens of uS. Dependent of network card and, possibly, other I/O hardware. </div><span><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div></div><div>4) l 240000 - how many timer test must be made. It is adjusted for 30 s overall test</div><div>5) n - use clock_nanosleep. it is allow take more accurate timer test values on my VM<br></div><div>6) p 80 - it is copied from example on Cyclictest page</div></div></blockquote><div><br></div></span><div>-q switch is missing.</div><span><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><span><div>And how in your opinion this numbers are related to Freeswitch in VM environment?<br></div></span><div>Relation between Cyclictest switches and FS described above.</div><div>Relation betwen Cyclictest results and FS simple</div></div></blockquote><div><br></div></span><div>Precise time measurement and realtime processing in VM environment  is a challenge. </div><div>To obtain acceptable results fine tuning of host&#39;s and guest&#39;s  required.</div><div>WIthout that this numbers ... does not mean anything.</div><div><div><div> <br></div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div><div><div class="gmail_extra"><div class="gmail_quote">On Tue, Apr 7, 2015 at 5:38 AM, Dmitry Lysenko <span dir="ltr">&lt;<a href="mailto:dvl36.ripe.nick@gmail.com" target="_blank">dvl36.ripe.nick@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr">Sergey,<div><div>Why you suggest to use exactly this numbers in cyclictest&#39;s switches?</div><div>And how in your opinion this numbers are related to Freeswitch in VM environment?</div><div><br></div><div>P.S. <a href="https://mindlinux.wordpress.com/2013/10/25/using-and-understanding-the-real-time-cyclictest-benchmark-frank-rowand-sony/" target="_blank">https://mindlinux.wordpress.com/2013/10/25/using-and-understanding-the-real-time-cyclictest-benchmark-frank-rowand-sony/</a><br></div></div></div><div><div><div class="gmail_extra"><br><div class="gmail_quote">2015-04-06 15:27 GMT+03:00 Sergey Safarov <span dir="ltr">&lt;<a href="mailto:s.safarov@gmail.com" target="_blank">s.safarov@gmail.com</a>&gt;</span>:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr">Errol can you test VM timer with utility <a href="https://rt.wiki.kernel.org/index.php/Cyclictest" target="_blank">https://rt.wiki.kernel.org/index.php/Cyclictest</a><br><div><br></div><div>My VM currently have folowing results</div><div><pre>[root@fs1 ~]#  date &amp;&amp; /tmp/rt-tests/cyclictest -t42 -p 80 -d 0 -n -i 125 -l 240000 &amp;&amp; date
Sun Apr  5 07:01:31 GMT 2015
# /dev/cpu_dma_latency set to 0us
policy: fifo: loadavg: 2.38 0.93 0.50 1/194 1574           

T: 0 ( 1531) P:80 I:125 C: 240000 Min:      2 Act:   12 Avg:   16 Max:    1302
T: 1 ( 1532) P:80 I:125 C: 240000 Min:      2 Act:   15 Avg:   14 Max:    2895
T: 2 ( 1533) P:80 I:125 C: 240000 Min:      3 Act:   10 Avg:   12 Max:    2888
T: 3 ( 1534) P:80 I:125 C: 240000 Min:      1 Act:   16 Avg:   13 Max:    1333
T: 4 ( 1535) P:80 I:125 C: 240000 Min:      2 Act:   20 Avg:   14 Max:    2962
T: 5 ( 1536) P:80 I:125 C: 240000 Min:      1 Act:   12 Avg:   14 Max:    2946
T: 6 ( 1537) P:80 I:125 C: 240000 Min:      2 Act:   10 Avg:   13 Max:    1363
T: 7 ( 1538) P:80 I:125 C: 240000 Min:      2 Act:   12 Avg:   13 Max:    1344
T: 8 ( 1539) P:80 I:125 C: 240000 Min:      3 Act:   12 Avg:   16 Max:    1408
T: 9 ( 1540) P:80 I:125 C: 240000 Min:      1 Act:    8 Avg:   13 Max:    2882
T:10 ( 1541) P:80 I:125 C: 239974 Min:      2 Act:   12 Avg:   13 Max:    2908</pre></div></div><div><div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Apr 6, 2015 at 11:15 AM, Errol Samuels <span dir="ltr">&lt;<a href="mailto:ewsamuels@gmail.com" target="_blank">ewsamuels@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div><div><div>Good job and Thanks for sharing!<br></div><div><br><blockquote style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex" class="gmail_quote">KVM at <span><a href="http://digitalocean.com" target="_blank">digitalocean.com</a></span>, Debian 7 64bit, FreeSWITCH 1.4.15: <span style="color:rgb(255,0,0)">bad precision</span></blockquote><div> </div></div>As someone who has been using KVM for a few years and has just migrated about 20 VMs across to Digital Ocean about 6 weeks ago I admit I am a little concerned about this finding.<br><br></div>Just out of curiosity can you tell me the specs of the VM that you tested with and which DO Datacenter?  I am using NYC3 so perhaps and I will do some tests as soon as I have some time.<br><br></div>With regards to Xen was this at Linode or inhouse?<br><br><div>Thanks<span><font color="#888888"><br><br></font></span></div><span><font color="#888888"><div>Errol<br><br></div><div><br></div></font></span></div><div><div><div class="gmail_extra"><br><div class="gmail_quote">On Sun, Apr 5, 2015 at 1:37 AM, Stanislav Sinyagin <span dir="ltr">&lt;<a href="mailto:ssinyagin@gmail.com" target="_blank">ssinyagin@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">here we go:<br>
<a href="https://txlab.wordpress.com/2015/04/05/testing-rtp-clock-precision-on-a-virtual-machine/" target="_blank">https://txlab.wordpress.com/2015/04/05/testing-rtp-clock-precision-on-a-virtual-machine/</a><br>
<div><div><br>
<br>
<br>
On Sat, Apr 4, 2015 at 4:26 PM, Stanislav Sinyagin &lt;<a href="mailto:ssinyagin@gmail.com" target="_blank">ssinyagin@gmail.com</a>&gt; wrote:<br>
&gt; On Sat, Apr 4, 2015 at 1:03 PM, Regis M &lt;<a href="mailto:regis.freeswitch.org@tornad.net" target="_blank">regis.freeswitch.org@tornad.net</a>&gt; wrote:<br>
&gt;&gt; How do you check wavs together in audacity ?<br>
&gt;<br>
&gt; you just open two WAV files, align their starting position, and<br>
&gt; visually check the waves. If there&#39;s a problem, you would see that<br>
&gt; after few seconds, the waves are not aligned any more.<br>
&gt;<br>
&gt;&gt; Can you send me 2 samples wav (send... and recorded) so I could see the 20ms<br>
&gt;&gt; diff that you exposed...<br>
&gt;&gt;<br>
&gt;&gt; Is there a way to automate the result checking, so it could help to monitor<br>
&gt;&gt; itsp quality<br>
&gt;<br>
&gt; Here<br>
&gt; <a href="https://github.com/openpreserve/scape-xcorrsound/issues/17" target="_blank">https://github.com/openpreserve/scape-xcorrsound/issues/17</a><br>
&gt; this is a link to a tool which compares two sound files at the wave<br>
&gt; level. You can also see the sound samples in the ticket.<br>
&gt; The problem is, that currently this tool does not detect such slipping frames.<br>
&gt;<br>
&gt; I will also write a detailed article with examples, during the weekend.<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; 2015-04-04 12:53 GMT+02:00 Stanislav Sinyagin &lt;<a href="mailto:ssinyagin@gmail.com" target="_blank">ssinyagin@gmail.com</a>&gt;:<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Important is to send the media through two independent carriers - then you<br>
&gt;&gt;&gt; can be sure that your clock is compared against a high quality one.<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; On Apr 4, 2015 12:46 PM, &quot;Regis M&quot; &lt;<a href="mailto:regis.freeswitch.org@tornad.net" target="_blank">regis.freeswitch.org@tornad.net</a>&gt;<br>
&gt;&gt;&gt; wrote:<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; Hi,<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; It&#39;s a very interresting test and conclusion.<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; I will try to build a similar environnement on my freeswitch to check<br>
&gt;&gt;&gt;&gt; some system :)<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; thanks<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; 2015-04-04 2:16 GMT+02:00 Stanislav Sinyagin &lt;<a href="mailto:ssinyagin@gmail.com" target="_blank">ssinyagin@gmail.com</a>&gt;:<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; hi,<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; Here are some test results which might be interesting:<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; I&#39;ve set up a test FreeSWITCH server at digitalocean (they use KVM),<br>
&gt;&gt;&gt;&gt;&gt; and originated test calls to some ITSP accounts. Each call played a<br>
&gt;&gt;&gt;&gt;&gt; test sound file (voice samples from ITU:<br>
&gt;&gt;&gt;&gt;&gt; <a href="http://www.itu.int/net/itu-t/sigdb/genaudio/AudioForm-g.aspx?val=1000050" target="_blank">http://www.itu.int/net/itu-t/sigdb/genaudio/AudioForm-g.aspx?val=1000050</a><br>
&gt;&gt;&gt;&gt;&gt; ), and on the receiving end another FreeSWITCH server was recording<br>
&gt;&gt;&gt;&gt;&gt; the received session. The receiving server was on a XEN VM. Both<br>
&gt;&gt;&gt;&gt;&gt; servers talked G711 to their corresponding ITSP accounts.<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; Then I compared the source audio and received audio in Audacity editor.<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; The tests showed that the received voice wave shifts 20ms from the<br>
&gt;&gt;&gt;&gt;&gt; original sound every few seconds, randomly back and forward. This<br>
&gt;&gt;&gt;&gt;&gt; skewing was always present, regardless of ITSP and time of day.<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; Then I moved the sending server to a XEN VM, and the waves appeared<br>
&gt;&gt;&gt;&gt;&gt; almost perfectly synchronized (there was a 5ms skew in one test, and I<br>
&gt;&gt;&gt;&gt;&gt; guess it&#39;s related to transcoding buffer, as the sound was obviously<br>
&gt;&gt;&gt;&gt;&gt; transcoded).<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; The effect was always visible with a 30-second sample, and I also made<br>
&gt;&gt;&gt;&gt;&gt; additional tests with 2-minute samples.<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; It would also be interesting to test this from a VmWare VM. If someone<br>
&gt;&gt;&gt;&gt;&gt; wants to run such a test, feel free to contact me directly.<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; cheers,<br>
&gt;&gt;&gt;&gt;&gt; stan<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; _________________________________________________________________________<br>
&gt;&gt;&gt;&gt;&gt; Professional FreeSWITCH Consulting Services:<br>
&gt;&gt;&gt;&gt;&gt; <a href="mailto:consulting@freeswitch.org" target="_blank">consulting@freeswitch.org</a><br>
&gt;&gt;&gt;&gt;&gt; <a href="http://www.freeswitchsolutions.com" target="_blank">http://www.freeswitchsolutions.com</a><br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; Official FreeSWITCH Sites<br>
&gt;&gt;&gt;&gt;&gt; <a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
&gt;&gt;&gt;&gt;&gt; <a href="http://confluence.freeswitch.org" target="_blank">http://confluence.freeswitch.org</a><br>
&gt;&gt;&gt;&gt;&gt; <a href="http://www.cluecon.com" target="_blank">http://www.cluecon.com</a><br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; FreeSWITCH-users mailing list<br>
&gt;&gt;&gt;&gt;&gt; <a href="mailto:FreeSWITCH-users@lists.freeswitch.org" target="_blank">FreeSWITCH-users@lists.freeswitch.org</a><br>
&gt;&gt;&gt;&gt;&gt; <a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
&gt;&gt;&gt;&gt;&gt; UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
&gt;&gt;&gt;&gt;&gt; <a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; _________________________________________________________________________<br>
&gt;&gt;&gt;&gt; Professional FreeSWITCH Consulting Services:<br>
&gt;&gt;&gt;&gt; <a href="mailto:consulting@freeswitch.org" target="_blank">consulting@freeswitch.org</a><br>
&gt;&gt;&gt;&gt; <a href="http://www.freeswitchsolutions.com" target="_blank">http://www.freeswitchsolutions.com</a><br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; Official FreeSWITCH Sites<br>
&gt;&gt;&gt;&gt; <a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
&gt;&gt;&gt;&gt; <a href="http://confluence.freeswitch.org" target="_blank">http://confluence.freeswitch.org</a><br>
&gt;&gt;&gt;&gt; <a href="http://www.cluecon.com" target="_blank">http://www.cluecon.com</a><br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; FreeSWITCH-users mailing list<br>
&gt;&gt;&gt;&gt; <a href="mailto:FreeSWITCH-users@lists.freeswitch.org" target="_blank">FreeSWITCH-users@lists.freeswitch.org</a><br>
&gt;&gt;&gt;&gt; <a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
&gt;&gt;&gt;&gt; UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
&gt;&gt;&gt;&gt; <a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; _________________________________________________________________________<br>
&gt;&gt;&gt; Professional FreeSWITCH Consulting Services:<br>
&gt;&gt;&gt; <a href="mailto:consulting@freeswitch.org" target="_blank">consulting@freeswitch.org</a><br>
&gt;&gt;&gt; <a href="http://www.freeswitchsolutions.com" target="_blank">http://www.freeswitchsolutions.com</a><br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Official FreeSWITCH Sites<br>
&gt;&gt;&gt; <a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
&gt;&gt;&gt; <a href="http://confluence.freeswitch.org" target="_blank">http://confluence.freeswitch.org</a><br>
&gt;&gt;&gt; <a href="http://www.cluecon.com" target="_blank">http://www.cluecon.com</a><br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; FreeSWITCH-users mailing list<br>
&gt;&gt;&gt; <a href="mailto:FreeSWITCH-users@lists.freeswitch.org" target="_blank">FreeSWITCH-users@lists.freeswitch.org</a><br>
&gt;&gt;&gt; <a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
&gt;&gt;&gt; UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
&gt;&gt;&gt; <a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; _________________________________________________________________________<br>
&gt;&gt; Professional FreeSWITCH Consulting Services:<br>
&gt;&gt; <a href="mailto:consulting@freeswitch.org" target="_blank">consulting@freeswitch.org</a><br>
&gt;&gt; <a href="http://www.freeswitchsolutions.com" target="_blank">http://www.freeswitchsolutions.com</a><br>
&gt;&gt;<br>
&gt;&gt; Official FreeSWITCH Sites<br>
&gt;&gt; <a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
&gt;&gt; <a href="http://confluence.freeswitch.org" target="_blank">http://confluence.freeswitch.org</a><br>
&gt;&gt; <a href="http://www.cluecon.com" target="_blank">http://www.cluecon.com</a><br>
&gt;&gt;<br>
&gt;&gt; FreeSWITCH-users mailing list<br>
&gt;&gt; <a href="mailto:FreeSWITCH-users@lists.freeswitch.org" target="_blank">FreeSWITCH-users@lists.freeswitch.org</a><br>
&gt;&gt; <a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
&gt;&gt; UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
&gt;&gt; <a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
<br>
_________________________________________________________________________<br>
Professional FreeSWITCH Consulting Services:<br>
<a href="mailto:consulting@freeswitch.org" target="_blank">consulting@freeswitch.org</a><br>
<a href="http://www.freeswitchsolutions.com" target="_blank">http://www.freeswitchsolutions.com</a><br>
<br>
Official FreeSWITCH Sites<br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
<a href="http://confluence.freeswitch.org" target="_blank">http://confluence.freeswitch.org</a><br>
<a href="http://www.cluecon.com" target="_blank">http://www.cluecon.com</a><br>
<br>
FreeSWITCH-users mailing list<br>
<a href="mailto:FreeSWITCH-users@lists.freeswitch.org" target="_blank">FreeSWITCH-users@lists.freeswitch.org</a><br>
<a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
</div></div></blockquote></div><br></div>
</div></div><br>_________________________________________________________________________<br>
Professional FreeSWITCH Consulting Services:<br>
<a href="mailto:consulting@freeswitch.org" target="_blank">consulting@freeswitch.org</a><br>
<a href="http://www.freeswitchsolutions.com" target="_blank">http://www.freeswitchsolutions.com</a><br>
<br>
Official FreeSWITCH Sites<br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
<a href="http://confluence.freeswitch.org" target="_blank">http://confluence.freeswitch.org</a><br>
<a href="http://www.cluecon.com" target="_blank">http://www.cluecon.com</a><br>
<br>
FreeSWITCH-users mailing list<br>
<a href="mailto:FreeSWITCH-users@lists.freeswitch.org" target="_blank">FreeSWITCH-users@lists.freeswitch.org</a><br>
<a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br></blockquote></div><br></div>
</div></div><br>_________________________________________________________________________<br>
Professional FreeSWITCH Consulting Services:<br>
<a href="mailto:consulting@freeswitch.org" target="_blank">consulting@freeswitch.org</a><br>
<a href="http://www.freeswitchsolutions.com" target="_blank">http://www.freeswitchsolutions.com</a><br>
<br>
Official FreeSWITCH Sites<br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
<a href="http://confluence.freeswitch.org" target="_blank">http://confluence.freeswitch.org</a><br>
<a href="http://www.cluecon.com" target="_blank">http://www.cluecon.com</a><br>
<br>
FreeSWITCH-users mailing list<br>
<a href="mailto:FreeSWITCH-users@lists.freeswitch.org" target="_blank">FreeSWITCH-users@lists.freeswitch.org</a><br>
<a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br></blockquote></div><br></div>
</div></div><br>_________________________________________________________________________<br>
Professional FreeSWITCH Consulting Services:<br>
<a href="mailto:consulting@freeswitch.org" target="_blank">consulting@freeswitch.org</a><br>
<a href="http://www.freeswitchsolutions.com" target="_blank">http://www.freeswitchsolutions.com</a><br>
<br>
Official FreeSWITCH Sites<br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
<a href="http://confluence.freeswitch.org" target="_blank">http://confluence.freeswitch.org</a><br>
<a href="http://www.cluecon.com" target="_blank">http://www.cluecon.com</a><br>
<br>
FreeSWITCH-users mailing list<br>
<a href="mailto:FreeSWITCH-users@lists.freeswitch.org" target="_blank">FreeSWITCH-users@lists.freeswitch.org</a><br>
<a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br></blockquote></div><br></div>
</div></div><br>_________________________________________________________________________<br>
Professional FreeSWITCH Consulting Services:<br>
<a href="mailto:consulting@freeswitch.org" target="_blank">consulting@freeswitch.org</a><br>
<a href="http://www.freeswitchsolutions.com" target="_blank">http://www.freeswitchsolutions.com</a><br>
<br>
Official FreeSWITCH Sites<br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
<a href="http://confluence.freeswitch.org" target="_blank">http://confluence.freeswitch.org</a><br>
<a href="http://www.cluecon.com" target="_blank">http://www.cluecon.com</a><br>
<br>
FreeSWITCH-users mailing list<br>
<a href="mailto:FreeSWITCH-users@lists.freeswitch.org" target="_blank">FreeSWITCH-users@lists.freeswitch.org</a><br>
<a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br></blockquote></div></div></div><br></div></div>
<br>_________________________________________________________________________<br>
Professional FreeSWITCH Consulting Services:<br>
<a href="mailto:consulting@freeswitch.org" target="_blank">consulting@freeswitch.org</a><br>
<a href="http://www.freeswitchsolutions.com" target="_blank">http://www.freeswitchsolutions.com</a><br>
<br>
Official FreeSWITCH Sites<br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
<a href="http://confluence.freeswitch.org" target="_blank">http://confluence.freeswitch.org</a><br>
<a href="http://www.cluecon.com" target="_blank">http://www.cluecon.com</a><br>
<br>
FreeSWITCH-users mailing list<br>
<a href="mailto:FreeSWITCH-users@lists.freeswitch.org" target="_blank">FreeSWITCH-users@lists.freeswitch.org</a><br>
<a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br></blockquote></div><br></div>
</div></div><br>_________________________________________________________________________<br>
Professional FreeSWITCH Consulting Services:<br>
<a href="mailto:consulting@freeswitch.org" target="_blank">consulting@freeswitch.org</a><br>
<a href="http://www.freeswitchsolutions.com" target="_blank">http://www.freeswitchsolutions.com</a><br>
<br>
Official FreeSWITCH Sites<br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
<a href="http://confluence.freeswitch.org" target="_blank">http://confluence.freeswitch.org</a><br>
<a href="http://www.cluecon.com" target="_blank">http://www.cluecon.com</a><br>
<br>
FreeSWITCH-users mailing list<br>
<a href="mailto:FreeSWITCH-users@lists.freeswitch.org" target="_blank">FreeSWITCH-users@lists.freeswitch.org</a><br>
<a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br></blockquote></div></div></div><br></div></div>
<br>_________________________________________________________________________<br>
Professional FreeSWITCH Consulting Services:<br>
<a href="mailto:consulting@freeswitch.org">consulting@freeswitch.org</a><br>
<a href="http://www.freeswitchsolutions.com" target="_blank">http://www.freeswitchsolutions.com</a><br>
<br>
Official FreeSWITCH Sites<br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
<a href="http://confluence.freeswitch.org" target="_blank">http://confluence.freeswitch.org</a><br>
<a href="http://www.cluecon.com" target="_blank">http://www.cluecon.com</a><br>
<br>
FreeSWITCH-users mailing list<br>
<a href="mailto:FreeSWITCH-users@lists.freeswitch.org">FreeSWITCH-users@lists.freeswitch.org</a><br>
<a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br></blockquote></div><br></div>