<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:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Generator" content="Microsoft Word 14 (filtered medium)">
<style><!--
/* Font Definitions */
@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:12.0pt;
        font-family:"Times New Roman","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;}
pre
        {mso-style-priority:99;
        mso-style-link:"Formátovaný v HTML Char";
        margin:0cm;
        margin-bottom:.0001pt;
        font-size:10.0pt;
        font-family:"Courier New";}
p.gmail-m5826192512534778610m8308229744795706288msolistparagraph, li.gmail-m5826192512534778610m8308229744795706288msolistparagraph, div.gmail-m5826192512534778610m8308229744795706288msolistparagraph
        {mso-style-name:gmail-m_5826192512534778610m_8308229744795706288msolistparagraph;
        mso-margin-top-alt:auto;
        margin-right:0cm;
        mso-margin-bottom-alt:auto;
        margin-left:0cm;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";}
span.FormtovanvHTMLChar
        {mso-style-name:"Formátovaný v HTML Char";
        mso-style-priority:99;
        mso-style-link:"Formátovaný v HTML";
        font-family:Consolas;
        mso-fareast-language:CS;}
span.StylE-mailovZprvy20
        {mso-style-type:personal-reply;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri","sans-serif";
        mso-fareast-language:EN-US;}
@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="CS" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">Thanks to all for answers.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">The RINGNOANSWER event is now generated even in case of congestion. So I still think, that RINGNOANSWER should be generated in every case when
 the call was ringing and not answered. There could be another parameter specifying hangup cause (as proposed in issue ASTERISK-15710) and users should determine, if it was agent fault (e.g. congestion is OK, ringtime < 10sec is OK etc.). My patch is going
 to master (not to versions 13 or 14), so I think we could change queue_log a bit.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">On the other hand, this change is breaking compatibility, and it seems that I am alone, who think it is a correct way. So I change it to new event
 RINGCANCELED, which could be good compromise.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">Any other ideas are welcome...<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">Martin Tomec<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">P.S.: ABANDON event can’t be used, at least with ringall strategy – there are many RINGCANCELED per call, but ABANDON should be generated only
 once.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal"><b><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif"">From:</span></b><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif""> asterisk-dev-bounces@lists.digium.com [mailto:asterisk-dev-bounces@lists.digium.com]
<b>On Behalf Of </b>Kevin Harwell<br>
<b>Sent:</b> Thursday, January 19, 2017 8:38 PM<br>
<b>To:</b> Asterisk Developers Mailing List<br>
<b>Subject:</b> Re: [asterisk-dev] app_queue: RINGNOANSWER event<o:p></o:p></span></p>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<p class="MsoNormal">On Thu, Jan 19, 2017 at 12:22 PM, Troy Bowman <<a href="mailto:troy@lump.net" target="_blank">troy@lump.net</a>> wrote:<o:p></o:p></p>
<div>
<p class="MsoNormal">To me, RINGNOANSWER means that the agent either rejected or let it ring to timeout while the caller was waiting.  If the elapsed seconds equals timeout, they let it ring and never answered.  If the elapsed seconds is under the timeout,
 they rejected the call.<o:p></o:p></p>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal"><snip><o:p></o:p></p>
<div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">In my opinion, if the caller abandons while we are ringing the agent's phone, it is not the agent's fault that the agent didn't pick up.  If a RINGNOANSWER would happen in that case, I'd be assigning fault where there is none.  In our call
 center, RINGNOANSWER is a criminal offense.  :)<o:p></o:p></p>
</div>
</div>
</div>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">This would be my interpretation as well. That is that RINGNOANSWER implies that in some way the agent is to blame for the call not connecting.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0cm 0cm 0cm 6.0pt;margin-left:4.8pt;margin-right:0cm">
<div>
<div>
<div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<div>
<p class="MsoNormal">I sincerely hope we don't change this behavior.<o:p></o:p></p>
</div>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">If the impetus for this is to show how long the agent's phone rang, we should put that statistic in data4 of ABANDON or something like that, because we already identify whether an agent's phone was in the process of ringing or being whispered
 to in ABANDON.  Even RINGCANCELED is misleading because the agent did not cancel.  It is still and ABANDON.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</div>
</div>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div>
<div>
<p class="MsoNormal">On Thu, Jan 19, 2017 at 2:59 AM, Tomec Martin <<a href="mailto:tomec@ipex.cz" target="_blank">tomec@ipex.cz</a>> wrote:<o:p></o:p></p>
</div>
</div>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0cm 0cm 0cm 6.0pt;margin-left:4.8pt;margin-right:0cm">
<div>
<div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><snip><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">So there are 2 ways to move forward:<o:p></o:p></p>
<p class="gmail-m5826192512534778610m8308229744795706288msolistparagraph">A)<span style="font-size:7.0pt">    
</span>Create RINGNOANSWER event after every call end without answer. That breaks backward compatibility for thoose who rely on current behavior.<o:p></o:p></p>
<p class="gmail-m5826192512534778610m8308229744795706288msolistparagraph">B)<span style="font-size:7.0pt">     
</span>Create new event RINGCANCELED – which can be misleading, because call was not canceled.<o:p></o:p></p>
</div>
</div>
</div>
</blockquote>
</div>
</div>
</blockquote>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">Between these options I lean toward 'B'. Creating a new event would hopefully have a minimal amount of side effects. *Hopefully* most parsers/filters would just ignore the new event.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">I agree that RINGCANCELED can be misleading as well. Since ABANDON seems to mean the caller hung up then how about calling it RINGABANDON instead?<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">A third option (mentioned on the code review [1] and by Troy) would be to include the agent name/info in the ABANDON event.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">[1] <a href="https://gerrit.asterisk.org/#/c/4649/">https://gerrit.asterisk.org/#/c/4649/</a><o:p></o:p></p>
</div>
</div>
<div>
<div>
<div style="mso-element:para-border-div;border:solid #72634D 1.0pt;padding:2.0pt 2.0pt 2.0pt 2.0pt;background:#EEEEEE">
<pre style="background:#EEEEEE;border:none;padding:0cm;overflow:auto"><span style="color:black">Kevin Harwell<o:p></o:p></span></pre>
<pre style="background:#EEEEEE;border:none;padding:0cm"><span style="color:black">Digium, Inc. | Software Developer<o:p></o:p></span></pre>
<pre style="background:#EEEEEE;border:none;padding:0cm"><span style="color:black">445 Jan Davis Drive NW - Huntsville, AL 35806 - USA<o:p></o:p></span></pre>
<pre style="background:#EEEEEE;border:none;padding:0cm"><span style="color:black">Check us out at: <a href="http://digium.com" target="_blank">http://digium.com</a> & <a href="http://asterisk.org" target="_blank">http://asterisk.org</a><o:p></o:p></span></pre>
</div>
</div>
</div>
</div>
</div>
</div>
</body>
</html>