<!-- 
RSS generated by JIRA (8.13.3#813003-sha1:22ebedbb75c99b147c66f14e031dd8a2d214753a) at Sat Feb 10 07:14:53 CET 2024

It is possible to restrict the fields that are returned in this document by specifying the 'field' parameter in your request.
For example, to request only the issue key and summary append 'field=key&field=summary' to the URL of your request.
-->
<rss version="0.92" >
<channel>
    <title>Jira</title>
    <link>https://jira.astppbilling.org</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-us</language>    <build-info>
        <version>8.13.3</version>
        <build-number>813003</build-number>
        <build-date>14-01-2021</build-date>
    </build-info>


<item>
            <title>[ASTPPCOM-182] Billing on error disposition</title>
                <link>https://jira.astppbilling.org/browse/ASTPPCOM-182</link>
                <project id="10608" key="ASTPPCOM">ASTPP Community</project>
                    <description>&lt;p&gt;I have seen that if there is an error type disposition that there is no billing to the customer or provider. Some errors should still be billed. The reason I say this is based o the following example:&lt;/p&gt;

&lt;p&gt;NORMAL_CLEARING = billable&lt;br/&gt;
Origination_cancel = non-bill&lt;br/&gt;
User_busy = non-bill&lt;/p&gt;

&lt;p&gt;This is correct I feel but I got the following disposition on some of the calls: RECOVERY_ON_TIMER_EXPIRE and the customer duration was set to 0 and debit / cost 0 but the provider billed me for the call. The duration was 72 seconds. I think what happened was there was a network error and loss of packets. The call dropped but ASTPP did not bill for the duration the call was active for.&lt;/p&gt;

&lt;p&gt;How can I choose what disposition must get billed for when there is a active duration or is this a bug to be fixed in ASTPP?&lt;/p&gt;</description>
                <environment></environment>
        <key id="12002">ASTPPCOM-182</key>
            <summary>Billing on error disposition</summary>
                <type id="10201" iconUrl="https://jira.astppbilling.org/secure/viewavatar?size=xsmall&amp;avatarId=10700&amp;avatarType=issuetype">New Feature</type>
                                                <status id="10001" iconUrl="https://jira.astppbilling.org/images/icons/status_generic.gif" description="">Done</status>
                    <statusCategory id="3" key="done" colorName="green"/>
                                    <resolution id="10000">Done</resolution>
                                        <assignee username="samir.doshi">Samir Doshi</assignee>
                                    <reporter username="fozzygo4">fozzygo4</reporter>
                        <labels>
                    </labels>
                <created>Sat, 4 Feb 2017 20:52:51 +0530</created>
                <updated>Thu, 1 Apr 2021 18:57:08 +0530</updated>
                            <resolved>Thu, 1 Apr 2021 18:57:08 +0530</resolved>
                                                                        <due></due>
                            <votes>0</votes>
                                    <watches>0</watches>
                                                                <comments>
                            <comment id="12820" author="smrdoshi" created="Mon, 6 Feb 2017 15:42:09 +0530"  >&lt;p&gt;That will require code modification as we have condition as below in cdr&lt;br/&gt;
processing file,&lt;/p&gt;

&lt;p&gt;if ( ($dataVariable&lt;span class=&quot;error&quot;&gt;&amp;#91;&amp;#39;hangup_cause&amp;#39;&amp;#93;&lt;/span&gt; != &apos;NORMAL_CLEARING&apos;) &amp;amp;&amp;amp;&lt;br/&gt;
($dataVariable&lt;span class=&quot;error&quot;&gt;&amp;#91;&amp;#39;hangup_cause&amp;#39;&amp;#93;&lt;/span&gt; != &apos;ALLOTTED_TIMEOUT&apos;)) {&lt;br/&gt;
  $dataVariable&lt;span class=&quot;error&quot;&gt;&amp;#91;&amp;#39;billsec&amp;#39;&amp;#93;&lt;/span&gt; = 0;&lt;br/&gt;
}&lt;/p&gt;

&lt;p&gt;Comment that condition and check if that works for you.&lt;/p&gt;


&lt;h2&gt;&lt;a name=&quot;BestRegards&quot;&gt;&lt;/a&gt;Best Regards&lt;/h2&gt;
&lt;p&gt;Samir Doshi&lt;br/&gt;
&lt;em&gt;iNextrix Technologie&lt;/em&gt;&lt;em&gt;s Pvt. Ltd&lt;/em&gt;.&lt;br/&gt;
&lt;a href=&quot;http://www.inextrix.com&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://www.inextrix.com&lt;/a&gt;&lt;/p&gt;



&lt;p&gt;&lt;em&gt;Disclaimer:&lt;/em&gt;&lt;br/&gt;
The information contained in this communication is confidential and may be&lt;br/&gt;
legally privileged. It is intended solely for the use of the individual or&lt;br/&gt;
entity to whom it is addressed and others authorised to receive it. If you&lt;br/&gt;
are not the intended recipient you are hereby notified that any disclosure,&lt;br/&gt;
copying, distribution or taking action in reliance of the contents of this&lt;br/&gt;
information is strictly prohibited and may be unlawful.&lt;/p&gt;

&lt;p&gt;On Sat, Feb 4, 2017 at 8:52 PM, Stephen Forster &amp;lt;notifications@github.com&amp;gt;&lt;br/&gt;
wrote:&lt;/p&gt;

&lt;p&gt;&amp;gt; I have seen that if there is an error type disposition that there is no&lt;br/&gt;
&amp;gt; billing to the customer or provider. Some errors should still be billed.&lt;br/&gt;
&amp;gt; The reason I say this is based o the following example:&lt;br/&gt;
&amp;gt;&lt;br/&gt;
&amp;gt; NORMAL_CLEARING = billable&lt;br/&gt;
&amp;gt; Origination_cancel = non-bill&lt;br/&gt;
&amp;gt; User_busy = non-bill&lt;br/&gt;
&amp;gt;&lt;br/&gt;
&amp;gt; This is correct I feel but I got the following disposition on some of the&lt;br/&gt;
&amp;gt; calls: RECOVERY_ON_TIMER_EXPIRE and the customer duration was set to 0 and&lt;br/&gt;
&amp;gt; debit / cost 0 but the provider billed me for the call. The duration was 72&lt;br/&gt;
&amp;gt; seconds. I think what happened was there was a network error and loss of&lt;br/&gt;
&amp;gt; packets. The call dropped but ASTPP did not bill for the duration the call&lt;br/&gt;
&amp;gt; was active for.&lt;br/&gt;
&amp;gt;&lt;br/&gt;
&amp;gt; How can I choose what disposition must get billed for when there is a&lt;br/&gt;
&amp;gt; active duration or is this a bug to be fixed in ASTPP?&lt;br/&gt;
&amp;gt;&lt;br/&gt;
&amp;gt; &#8212;&lt;br/&gt;
&amp;gt; You are receiving this because you are subscribed to this thread.&lt;br/&gt;
&amp;gt; Reply to this email directly, view it on GitHub&lt;br/&gt;
&amp;gt; &amp;lt;&lt;a href=&quot;https://github.com/iNextrix/ASTPP/issues/182&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/iNextrix/ASTPP/issues/182&lt;/a&gt;&amp;gt;, or mute the thread&lt;br/&gt;
&amp;gt; &amp;lt;&lt;a href=&quot;https://github.com/notifications/unsubscribe-auth/AA6gcVJSCiU7VpPpbHRLjMunC6wuMSpGks5rZJfLgaJpZM4L3LWU&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/notifications/unsubscribe-auth/AA6gcVJSCiU7VpPpbHRLjMunC6wuMSpGks5rZJfLgaJpZM4L3LWU&lt;/a&gt;&amp;gt;&lt;br/&gt;
&amp;gt; .&lt;br/&gt;
&amp;gt;&lt;/p&gt;</comment>
                            <comment id="12821" author="fozzygo4" created="Mon, 6 Feb 2017 16:39:27 +0530"  >&lt;p&gt;Thanks Samir,&lt;/p&gt;

&lt;p&gt;I did find that code in the FS scripts and commented it out. I also had to change the following code from &lt;br/&gt;
&lt;tt&gt;if ($duration &amp;gt; 0 &amp;amp;&amp;amp; ($dataVariable&lt;span class=&quot;error&quot;&gt;&amp;#91;&amp;#39;hangup_cause&amp;#39;&amp;#93;&lt;/span&gt; == &apos;NORMAL_CLEARING&apos; || $dataVariable&lt;span class=&quot;error&quot;&gt;&amp;#91;&amp;#39;hangup_cause&amp;#39;&amp;#93;&lt;/span&gt;  == &apos;ALLOTTED_TIMEOUT&apos;)) {&lt;/tt&gt;&lt;br/&gt;
to&lt;br/&gt;
&lt;tt&gt;if ($duration &amp;gt; 0){&lt;/tt&gt;&lt;/p&gt;

&lt;p&gt;This I feel is correct because if there is actual billable seconds in a call then it should be charged for regardless of the disposition. It is up to us as our customers provider to look into networking issues that we could be at fault for and credit this customer should the fault be ours. The way it currently is will be beneficial to to customer every time but we will still pay for the calls to our providers.&lt;/p&gt;

&lt;p&gt;On a security note on this I feel it could be exploited if someone knows what to do. For example if a customer A calls to a number for 1 hour. He / she knows of this flaw and simple disconnects there internet / network cable from their phone. ASTPP does not receive a BYE signal from the phone so eventually times out. ASTPP will not give a NORMAL_CLEARING disposition so it will change the duration to 0 and the call for customer A is now free. &lt;/p&gt;

&lt;p&gt;I tested this theory with the code in place and its true. If I modify the code then the call still gets charged to the customer.&lt;/p&gt;

&lt;p&gt;Hope this helps.&lt;/p&gt;</comment>
                            <comment id="12822" author="smrdoshi" created="Tue, 7 Feb 2017 15:38:51 +0530"  >&lt;p&gt;Hi Stephen,&lt;/p&gt;

&lt;p&gt;That is right. If that is the case then we can remove that condition and&lt;br/&gt;
only focus on the duration of the calls for billing. No matters what&lt;br/&gt;
disposition we have got from freeswitch.&lt;/p&gt;

&lt;p&gt;We will check it out further.&lt;/p&gt;

&lt;h2&gt;&lt;a name=&quot;BestRegards&quot;&gt;&lt;/a&gt;Best Regards&lt;/h2&gt;
&lt;p&gt;Samir Doshi&lt;br/&gt;
&lt;em&gt;iNextrix Technologie&lt;/em&gt;&lt;em&gt;s Pvt. Ltd&lt;/em&gt;.&lt;br/&gt;
&lt;a href=&quot;http://www.inextrix.com&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://www.inextrix.com&lt;/a&gt;&lt;/p&gt;



&lt;p&gt;&lt;em&gt;Disclaimer:&lt;/em&gt;&lt;br/&gt;
The information contained in this communication is confidential and may be&lt;br/&gt;
legally privileged. It is intended solely for the use of the individual or&lt;br/&gt;
entity to whom it is addressed and others authorised to receive it. If you&lt;br/&gt;
are not the intended recipient you are hereby notified that any disclosure,&lt;br/&gt;
copying, distribution or taking action in reliance of the contents of this&lt;br/&gt;
information is strictly prohibited and may be unlawful.&lt;/p&gt;

&lt;p&gt;On Mon, Feb 6, 2017 at 4:39 PM, Stephen Forster &amp;lt;notifications@github.com&amp;gt;&lt;br/&gt;
wrote:&lt;/p&gt;

&lt;p&gt;&amp;gt; Thanks Samir,&lt;br/&gt;
&amp;gt;&lt;br/&gt;
&amp;gt; I did find that code in the FS scripts and commented it out. I also had to&lt;br/&gt;
&amp;gt; change the following code from&lt;br/&gt;
&amp;gt; if ($duration &amp;gt; 0 &amp;amp;&amp;amp; ($dataVariable&lt;span class=&quot;error&quot;&gt;&amp;#91;&amp;#39;hangup_cause&amp;#39;&amp;#93;&lt;/span&gt; == &apos;NORMAL_CLEARING&apos;&lt;br/&gt;
&amp;gt; || $dataVariable&lt;span class=&quot;error&quot;&gt;&amp;#91;&amp;#39;hangup_cause&amp;#39;&amp;#93;&lt;/span&gt; == &apos;ALLOTTED_TIMEOUT&apos;)) {&lt;br/&gt;
&amp;gt; to&lt;br/&gt;
&amp;gt; if ($duration &amp;gt; 0){&lt;br/&gt;
&amp;gt;&lt;br/&gt;
&amp;gt; This I feel is correct because if there is actual billable seconds in a&lt;br/&gt;
&amp;gt; call then it should be charged for regardless of the disposition. It is up&lt;br/&gt;
&amp;gt; to us as our customers provider to look into networking issues that we&lt;br/&gt;
&amp;gt; could be at fault for and credit this customer should the fault be ours.&lt;br/&gt;
&amp;gt; The way it currently is will be beneficial to to customer every time but we&lt;br/&gt;
&amp;gt; will still pay for the calls to our providers.&lt;br/&gt;
&amp;gt;&lt;br/&gt;
&amp;gt; On a security note on this I feel it could be exploited if someone knows&lt;br/&gt;
&amp;gt; what to do. For example if a customer A calls to a number for 1 hour. He /&lt;br/&gt;
&amp;gt; she knows of this flaw and simple disconnects there internet / network&lt;br/&gt;
&amp;gt; cable from their phone. ASTPP does not receive a BYE signal from the phone&lt;br/&gt;
&amp;gt; so eventually times out. ASTPP will not give a NORMAL_CLEARING disposition&lt;br/&gt;
&amp;gt; so it will change the duration to 0 and the call for customer A is now free.&lt;br/&gt;
&amp;gt;&lt;br/&gt;
&amp;gt; I tested this theory with the code in place and its true. If I modify the&lt;br/&gt;
&amp;gt; code then the call still gets charged to the customer.&lt;br/&gt;
&amp;gt;&lt;br/&gt;
&amp;gt; Hope this helps.&lt;br/&gt;
&amp;gt;&lt;br/&gt;
&amp;gt; &#8212;&lt;br/&gt;
&amp;gt; You are receiving this because you commented.&lt;br/&gt;
&amp;gt; Reply to this email directly, view it on GitHub&lt;br/&gt;
&amp;gt; &amp;lt;&lt;a href=&quot;https://github.com/iNextrix/ASTPP/issues/182#issuecomment-277651759&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/iNextrix/ASTPP/issues/182#issuecomment-277651759&lt;/a&gt;&amp;gt;, or mute&lt;br/&gt;
&amp;gt; the thread&lt;br/&gt;
&amp;gt; &amp;lt;&lt;a href=&quot;https://github.com/notifications/unsubscribe-auth/AA6gcWh4188wmVI50qhX5vEF3-IY09Qsks5rZv9ngaJpZM4L3LWU&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/notifications/unsubscribe-auth/AA6gcWh4188wmVI50qhX5vEF3-IY09Qsks5rZv9ngaJpZM4L3LWU&lt;/a&gt;&amp;gt;&lt;br/&gt;
&amp;gt; .&lt;br/&gt;
&amp;gt;&lt;/p&gt;</comment>
                            <comment id="12823" author="smrdoshi" created="Tue, 28 Feb 2017 19:30:34 +0530"  >&lt;p&gt;@FozzyGo4 , Issue has been resolved. Please confirm. &lt;/p&gt;</comment>
                    </comments>
                    <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                                                                                                                                                                                                                                                                                                                                                                            <customfield id="customfield_10000" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                        <customfield id="customfield_10703" key="com.atlassian.jira.plugin.system.customfieldtypes:textfield">
                        <customfieldname>External issue ID</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>182</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                            <customfield id="customfield_10006" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0|i009rb:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        </customfields>
    </item>
</channel>
</rss>