<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns:p="urn:schemas-microsoft-com:office:powerpoint" xmlns:a="urn:schemas-microsoft-com:office:access" xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" xmlns:s="uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882" xmlns:rs="urn:schemas-microsoft-com:rowset" xmlns:z="#RowsetSchema" xmlns:b="urn:schemas-microsoft-com:office:publisher" xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" xmlns:c="urn:schemas-microsoft-com:office:component:spreadsheet" xmlns:odc="urn:schemas-microsoft-com:office:odc" xmlns:oa="urn:schemas-microsoft-com:office:activation" xmlns:html="http://www.w3.org/TR/REC-html40" xmlns:q="http://schemas.xmlsoap.org/soap/envelope/" xmlns:rtc="http://microsoft.com/officenet/conferencing" xmlns:D="DAV:" xmlns:Repl="http://schemas.microsoft.com/repl/" xmlns:mt="http://schemas.microsoft.com/sharepoint/soap/meetings/" xmlns:x2="http://schemas.microsoft.com/office/excel/2003/xml" xmlns:ppda="http://www.passport.com/NameSpace.xsd" xmlns:ois="http://schemas.microsoft.com/sharepoint/soap/ois/" xmlns:dir="http://schemas.microsoft.com/sharepoint/soap/directory/" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:dsp="http://schemas.microsoft.com/sharepoint/dsp" xmlns:udc="http://schemas.microsoft.com/data/udc" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:sub="http://schemas.microsoft.com/sharepoint/soap/2002/1/alerts/" xmlns:ec="http://www.w3.org/2001/04/xmlenc#" xmlns:sp="http://schemas.microsoft.com/sharepoint/" xmlns:sps="http://schemas.microsoft.com/sharepoint/soap/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:udcs="http://schemas.microsoft.com/data/udc/soap" xmlns:udcxf="http://schemas.microsoft.com/data/udc/xmlfile" xmlns:udcp2p="http://schemas.microsoft.com/data/udc/parttopart" xmlns:wf="http://schemas.microsoft.com/sharepoint/soap/workflow/" xmlns:dsss="http://schemas.microsoft.com/office/2006/digsig-setup" xmlns:dssi="http://schemas.microsoft.com/office/2006/digsig" xmlns:mdssi="http://schemas.openxmlformats.org/package/2006/digital-signature" xmlns:mver="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns:mrels="http://schemas.openxmlformats.org/package/2006/relationships" xmlns:spwp="http://microsoft.com/sharepoint/webpartpages" xmlns:ex12t="http://schemas.microsoft.com/exchange/services/2006/types" xmlns:ex12m="http://schemas.microsoft.com/exchange/services/2006/messages" xmlns:pptsl="http://schemas.microsoft.com/sharepoint/soap/SlideLibrary/" xmlns:spsl="http://microsoft.com/webservices/SharePointPortalServer/PublishedLinksService" xmlns:Z="urn:schemas-microsoft-com:" xmlns:st="" xmlns="http://www.w3.org/TR/REC-html40"><head><meta name=Generator content="Microsoft Word 12 (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;}
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
        {font-family:Consolas;
        panose-1:2 11 6 9 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";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
p.MsoAcetate, li.MsoAcetate, div.MsoAcetate
        {mso-style-priority:99;
        mso-style-link:"Balloon Text Char";
        margin:0cm;
        margin-bottom:.0001pt;
        font-size:8.0pt;
        font-family:"Tahoma","sans-serif";}
span.BalloonTextChar
        {mso-style-name:"Balloon Text Char";
        mso-style-priority:99;
        mso-style-link:"Balloon Text";
        font-family:"Tahoma","sans-serif";}
span.EmailStyle19
        {mso-style-type:personal;
        font-family:"Calibri","sans-serif";
        color:windowtext;}
span.EmailStyle20
        {mso-style-type:personal;
        font-family:"Calibri","sans-serif";
        color:#1F497D;
        font-weight:normal;
        font-style:normal;}
span.EmailStyle21
        {mso-style-type:personal;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
p.Ballongtext, li.Ballongtext, div.Ballongtext
        {mso-style-name:Ballongtext;
        mso-style-link:"Ballongtext Char";
        margin:0cm;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri","sans-serif";}
span.BallongtextChar
        {mso-style-name:"Ballongtext Char";
        mso-style-priority:99;
        mso-style-link:Ballongtext;
        font-family:"Tahoma","sans-serif";}
span.EmailStyle24
        {mso-style-type:personal;
        font-family:"Calibri","sans-serif";
        color:#1F497D;
        font-weight:normal;
        font-style:normal;}
span.EmailStyle25
        {mso-style-type:personal-reply;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:70.85pt 70.85pt 70.85pt 70.85pt;}
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]--></head><body lang=NL link=blue vlink=purple><div class=WordSection1><p class=MsoNormal><span lang=EN-US style='color:#1F497D'>Peter, I know, I am doing this allready, that is how I check the disposition while dialing already, I am using uuid_getvar to reach it.<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US style='color:#1F497D'>The problem is, that when it is not answered, ie Busy or congestion, the session is killed by the core and no longer exists.<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US style='color:#1F497D'>So when it stops, I cannot do a uuid_getvar anymore as the session no longer exists.<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US style='color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal style='text-autospace:none'><span lang=EN-US style='font-size:9.5pt;font-family:Consolas;color:blue'>string</span><span lang=EN-US style='font-size:9.5pt;font-family:Consolas'> cDialString = <span style='color:#A31515'>"{origination_uuid="</span> + thisDial.CallId_LegB // This my generated uuid<o:p></o:p></span></p><p class=MsoNormal style='text-indent:35.4pt;text-autospace:none'><span lang=EN-US style='font-size:9.5pt;font-family:Consolas'>+ <span style='color:#A31515'>",origination_caller_id_number="</span> + thisDial.CLIP<o:p></o:p></span></p><p class=MsoNormal style='text-indent:35.4pt;text-autospace:none'><span lang=EN-US style='font-size:9.5pt;font-family:Consolas'>+ <span style='color:#A31515'>",origination_caller_id_name="</span> + thisDial.CLIP<o:p></o:p></span></p><p class=MsoNormal style='text-indent:35.4pt;text-autospace:none'><span lang=EN-US style='font-size:9.5pt;font-family:Consolas'>+ <span style='color:#A31515'>"}sofia/external/"</span> + thisExtension.Destination+<span style='color:#A31515'>'@'</span>+ thisDial.Gateway<o:p></o:p></span></p><p class=MsoNormal style='text-indent:35.4pt;text-autospace:none'><span lang=EN-US style='font-size:9.5pt;font-family:Consolas'>+ <span style='color:#A31515'>" &park()"</span>;<o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span lang=EN-US style='font-size:9.5pt;font-family:Consolas'><o:p> </o:p></span></p><p class=MsoNormal style='text-autospace:none'><span lang=EN-US style='font-size:9.5pt;font-family:Consolas;color:blue'>var</span><span lang=EN-US style='font-size:9.5pt;font-family:Consolas'> eslEvent = thisFSConnection.Connection.Api(<span style='color:#A31515'>"originate"</span>, cDialString);<o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span lang=EN-US style='font-size:9.5pt;font-family:Consolas'>dispo = thisFSConnection.Connection.Api(<span style='color:#A31515'>"uuid_getvar"</span>, thisDial.CallId_LegB + <span style='color:#A31515'>" endpoint_disposition"</span>).GetBody();<o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span lang=EN-US style='font-size:9.5pt;font-family:Consolas'><o:p> </o:p></span></p><p class=MsoNormal style='text-autospace:none'><span lang=EN-US style='font-size:9.5pt;font-family:Consolas;color:#2B91AF'>Stopwatch</span><span lang=EN-US style='font-size:9.5pt;font-family:Consolas'> dialTimeout = <span style='color:blue'>new</span> <span style='color:#2B91AF'>Stopwatch</span>();<o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span lang=EN-US style='font-size:9.5pt;font-family:Consolas'>dialTimeout.Start();<o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span lang=EN-US style='font-size:9.5pt;font-family:Consolas;color:blue'>while</span><span lang=EN-US style='font-size:9.5pt;font-family:Consolas'> (CallIdExists(thisFSConnection, thisCall.callId) && CallIdExists(thisFSConnection, thisDial.CallId_LegB) && dispo == <span style='color:#A31515'>"EARLY MEDIA"</span> && dialTimeout.ElapsedMilliseconds < thisDial.DialAttemptDuration*1000 )<o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span lang=EN-US style='font-size:9.5pt;font-family:Consolas'>{<o:p></o:p></span></p><p class=MsoNormal style='text-indent:35.4pt;text-autospace:none'><span lang=EN-US style='font-size:9.5pt;font-family:Consolas;color:blue'>if</span><span lang=EN-US style='font-size:9.5pt;font-family:Consolas'> (dispo != dispoLast)<o:p></o:p></span></p><p class=MsoNormal style='text-indent:35.4pt;text-autospace:none'><span lang=EN-US style='font-size:9.5pt;font-family:Consolas'>{<o:p></o:p></span></p><p class=MsoNormal style='margin-left:35.4pt;text-indent:35.4pt;text-autospace:none'><span lang=EN-US style='font-size:9.5pt;font-family:Consolas'>dispoLast = dispo;<o:p></o:p></span></p><p class=MsoNormal style='text-indent:35.4pt;text-autospace:none'><span lang=EN-US style='font-size:9.5pt;font-family:Consolas'>}<o:p></o:p></span></p><p class=MsoNormal style='text-indent:35.4pt;text-autospace:none'><span lang=EN-US style='font-size:9.5pt;font-family:Consolas'>dispo = thisFSConnection.Connection.Api(<span style='color:#A31515'>"uuid_getvar"</span>, thisDial.CallId_LegB + <span style='color:#A31515'>" endpoint_disposition"</span>).GetBody();<o:p></o:p></span></p><p class=MsoNormal style='text-indent:35.4pt;text-autospace:none'><span lang=EN-US style='font-size:9.5pt;font-family:Consolas;color:#2B91AF'>Thread</span><span lang=EN-US style='font-size:9.5pt;font-family:Consolas'>.Sleep(100);<o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span lang=EN-US style='font-size:9.5pt;font-family:Consolas'>}<o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span lang=EN-US style='font-size:9.5pt;font-family:Consolas'>dialTimeout.Stop();<o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span lang=EN-US style='font-size:9.5pt;font-family:Consolas'>dispo = thisFSConnection.Connection.Api(<span style='color:#A31515'>"uuid_getvar"</span>, thisDial.CallId_LegB + <span style='color:#A31515'>" endpoint_disposition"</span>).GetBody();<o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:9.5pt;font-family:Consolas;color:blue'><o:p> </o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:9.5pt;font-family:Consolas;color:blue'>if</span><span style='font-size:9.5pt;font-family:Consolas'> (dispo == <span style='color:#A31515'>"ANSWER"</span>)<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US style='color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-US style='color:#1F497D'>The last dispo is never filled correctly, because the session no longer exist, unless it was answered…<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US style='color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-US style='color:#1F497D'>Thanks,<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US style='color:#1F497D'>Mike.<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US style='color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-US style='color:#1F497D'><o:p> </o:p></span></p><div><div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm'><p class=MsoNormal><b><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span></b><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> freeswitch-users-bounces@lists.freeswitch.org [mailto:freeswitch-users-bounces@lists.freeswitch.org] <b>On Behalf Of </b>Peter Olsson<br><b>Sent:</b> donderdag 12 april 2012 11:34<br><b>To:</b> 'FreeSWITCH Users Help'<br><b>Subject:</b> Re: [Freeswitch-users] ESL originate retreiving dialresult.<o:p></o:p></span></p></div></div><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal><span lang=EN-US style='font-size:10.0pt;color:#1F497D'>If you’re already creating a uuid manually thats just fine (no, you can not use the same uuid for two channels). Now you just need to parse the events for that channel when you start the originate. As soon as the originate does any progress events will report this, using the uuid that you have defined.</span><span lang=SV><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US style='font-size:10.0pt;color:#1F497D'> </span><span lang=SV><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US style='font-size:10.0pt;color:#1F497D'>/Peter</span><span lang=SV><o:p></o:p></span></p><p class=MsoNormal><span lang=SV style='font-size:10.0pt;color:#1F497D'> </span><span lang=SV><o:p></o:p></span></p><div><div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm'><p class=MsoNormal><b><span lang=SV style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>Från:</span></b><span lang=SV style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> freeswitch-users-bounces@lists.freeswitch.org [mailto:freeswitch-users-bounces@lists.freeswitch.org] <b>För </b>Michael Lutz<br><b>Skickat:</b> den 12 april 2012 10:41<br><b>Till:</b> 'FreeSWITCH Users Help'<br><b>Ämne:</b> Re: [Freeswitch-users] ESL originate retreiving dialresult.</span><span lang=SV><o:p></o:p></span></p></div></div><p class=MsoNormal><span lang=SV> <o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US style='color:#1F497D'>I am allready using the origination_uuid and pass it with the originate command. I only create one now by using the create_uuid function.</span><span lang=SV><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US style='color:#1F497D'> </span><span lang=SV><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US style='color:#1F497D'>So you say, don’t create a new one and just use one of a session that already exists and is in progress? (so actually the session that is ‘connected’ to the inbound ESL session? The originate/or system would not have a problem with that? I would be setting up two calls wioth the same UUID … and how would my other uuid functions respond to that? I can assume a uuid kill would suddenly kill two legs?</span><span lang=SV><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US style='color:#1F497D'> </span><span lang=SV><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US style='color:#1F497D'>Thanks,</span><span lang=SV><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US style='color:#1F497D'>Mike.</span><span lang=SV><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US style='color:#1F497D'> </span><span lang=SV><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US style='color:#1F497D'> </span><span lang=SV><o:p></o:p></span></p><div><div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm'><p class=MsoNormal><b><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span></b><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> <a href="mailto:freeswitch-users-bounces@lists.freeswitch.org">freeswitch-users-bounces@lists.freeswitch.org</a> <a href="mailto:[mailto:freeswitch-users-bounces@lists.freeswitch.org]">[mailto:freeswitch-users-bounces@lists.freeswitch.org]</a> <b>On Behalf Of </b>Peter Olsson<br><b>Sent:</b> donderdag 12 april 2012 10:26<br><b>To:</b> 'FreeSWITCH Users Help'<br><b>Subject:</b> Re: [Freeswitch-users] ESL originate retreiving dialresult.</span><span lang=SV><o:p></o:p></span></p></div></div><p class=MsoNormal><span lang=EN-US> </span><span lang=SV><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US style='font-size:10.0pt;color:#1F497D'>Use the variable “origination_uuid”, and set to an uuid that you know. Then it’s possible to detect the events showing up for this channel uuid.</span><span lang=SV><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US style='font-size:10.0pt;color:#1F497D'> </span><span lang=SV><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US style='font-size:10.0pt;color:#1F497D'>/Peter</span><span lang=SV><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US style='font-size:10.0pt;color:#1F497D'> </span><span lang=SV><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US style='font-size:10.0pt;color:#1F497D'> </span><span lang=SV><o:p></o:p></span></p><div><div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm'><p class=MsoNormal><b><span lang=SV style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>Från:</span></b><span lang=SV style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> <a href="mailto:freeswitch-users-bounces@lists.freeswitch.org">freeswitch-users-bounces@lists.freeswitch.org</a> <a href="mailto:[mailto:freeswitch-users-bounces@lists.freeswitch.org]">[mailto:freeswitch-users-bounces@lists.freeswitch.org]</a> <b>För </b>Michael Lutz<br><b>Skickat:</b> den 12 april 2012 10:11<br><b>Till:</b> 'FreeSWITCH Users Help'<br><b>Ämne:</b> [Freeswitch-users] ESL originate retreiving dialresult.</span><span lang=SV><o:p></o:p></span></p></div></div><p class=MsoNormal><span lang=SV> <o:p></o:p></span></p><p class=MsoNormal>Hi Guys,<span lang=SV><o:p></o:p></span></p><p class=MsoNormal> <span lang=SV><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US>I am in an urgent matter an need help with something, I am using an ESL inbound connection to setup a new call.</span><span lang=SV><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US>It works fine on successful answered calls.</span><span lang=SV><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US> </span><span lang=SV><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US>I am using the uuid_getvar api function whilst dialing to get the endpoint_disposition of the dialing uuid to check when a call is answered.</span><span lang=SV><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US>So when it’s answered it will return “ANSWER”.</span><span lang=SV><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US> </span><span lang=SV><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US>The problem with this is that if an attempt fails, the endpoint disposition cannot be read with the uuid_getvar function because the dialing session is already gone.</span><span lang=SV><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US> </span><span lang=SV><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US>What is the best way to get the result in realtime?, I really need to know the reason it failed.</span><span lang=SV><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US> </span><span lang=SV><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US> </span><span lang=SV><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US>Thanks for your help,</span><span lang=SV><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US>Mike.</span><span lang=SV><o:p></o:p></span></p><p class=MsoNormal><span lang=SV> <o:p></o:p></span></p><p class=MsoNormal><span style='font-size:12.0pt;font-family:"Times New Roman","serif"'>!DSPAM:4f8694bf32762366476345! </span><span lang=SV><o:p></o:p></span></p></div></body></html>