<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 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;}
@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;
        color:black;}
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:"Préformaté HTML Car";
        margin:0cm;
        margin-bottom:.0001pt;
        font-size:10.0pt;
        font-family:"Courier New";
        color:black;}
p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph
        {mso-style-priority:34;
        margin-top:0cm;
        margin-right:0cm;
        margin-bottom:0cm;
        margin-left:36.0pt;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;
        color:black;}
p.msonormal0, li.msonormal0, div.msonormal0
        {mso-style-name:msonormal;
        mso-margin-top-alt:auto;
        margin-right:0cm;
        mso-margin-bottom-alt:auto;
        margin-left:0cm;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;
        color:black;}
span.PrformatHTMLCar
        {mso-style-name:"Préformaté HTML Car";
        mso-style-priority:99;
        mso-style-link:"Préformaté HTML";
        font-family:Consolas;
        color:black;}
p.inbox-inbox-p1, li.inbox-inbox-p1, div.inbox-inbox-p1
        {mso-style-name:inbox-inbox-p1;
        mso-margin-top-alt:auto;
        margin-right:0cm;
        mso-margin-bottom-alt:auto;
        margin-left:0cm;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;
        color:black;}
span.inbox-inbox-s1
        {mso-style-name:inbox-inbox-s1;}
span.inbox-inbox-apple-converted-space
        {mso-style-name:inbox-inbox-apple-converted-space;}
span.EmailStyle24
        {mso-style-type:personal;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
span.EmailStyle25
        {mso-style-type:personal;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
span.EmailStyle26
        {mso-style-type:personal;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
span.EmailStyle27
        {mso-style-type:personal;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
span.EmailStyle28
        {mso-style-type:personal;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
span.EmailStyle29
        {mso-style-type:personal;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
span.EmailStyle30
        {mso-style-type:personal;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
span.EmailStyle31
        {mso-style-type:personal;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
span.EmailStyle32
        {mso-style-type:personal;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
span.EmailStyle33
        {mso-style-type:personal;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
span.EmailStyle34
        {mso-style-type:personal;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
span.EmailStyle35
        {mso-style-type:personal;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
span.EmailStyle36
        {mso-style-type:personal;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
span.EmailStyle37
        {mso-style-type:personal;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
span.EmailStyle39
        {mso-style-type:personal-reply;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
.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;}
/* List Definitions */
@list l0
        {mso-list-id:244918271;
        mso-list-type:hybrid;
        mso-list-template-ids:1201440206 67895311 67895321 67895323 67895311 67895321 67895323 67895311 67895321 67895323;}
@list l0:level1
        {mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;}
@list l0:level2
        {mso-level-number-format:alpha-lower;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;}
@list l0:level3
        {mso-level-number-format:roman-lower;
        mso-level-tab-stop:none;
        mso-level-number-position:right;
        text-indent:-9.0pt;}
@list l0:level4
        {mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;}
@list l0:level5
        {mso-level-number-format:alpha-lower;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;}
@list l0:level6
        {mso-level-number-format:roman-lower;
        mso-level-tab-stop:none;
        mso-level-number-position:right;
        text-indent:-9.0pt;}
@list l0:level7
        {mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;}
@list l0:level8
        {mso-level-number-format:alpha-lower;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;}
@list l0:level9
        {mso-level-number-format:roman-lower;
        mso-level-tab-stop:none;
        mso-level-number-position:right;
        text-indent:-9.0pt;}
@list l1
        {mso-list-id:1505319215;
        mso-list-template-ids:1531709166;}
ol
        {margin-bottom:0cm;}
ul
        {margin-bottom:0cm;}
--></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 bgcolor=white lang=FR link=blue vlink=purple><div class=WordSection1><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>Ah ok, I didn't know nibble_current_balance.<br>So with something like that should work, but unfortunately not:<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'><action application="set" data="nibble_account=98"/><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'><action application="set" data="nibble_rate=0.0115"/><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'><action application="set" data="nibble_minimum=1"/><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'><action application="set" data="nibble_rounding=2"/><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'><action application="set" data="heartbeat 1"/><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'><action application="set" data="nibble_current_balance" inline="true"/><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'><condition break="on-true" field="${cond(${nibble_current_balance} <= 0 ? YES : NO)}" expression="^YES$"><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>                </span><span style='color:windowtext;mso-fareast-language:EN-US'><action application="hangup" data="hangup_cause"/><o:p></o:p></span></p><p class=MsoNormal><span style='color:windowtext;mso-fareast-language:EN-US'></condition><o:p></o:p></span></p><p class=MsoNormal><span style='color:windowtext;mso-fareast-language:EN-US'><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>The call is processed whereas balance in DB is equal to 0.<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'><o:p> </o:p></span></p><div><div style='border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0cm 0cm 0cm'><p class=MsoNormal><b><span style='color:windowtext'>De :</span></b><span style='color:windowtext'> FreeSWITCH-users [mailto:freeswitch-users-bounces@lists.freeswitch.org] <b>De la part de</b> Madovsky<br><b>Envoyé :</b> lundi 15 janvier 2018 17:59<br><b>À :</b> 'FreeSWITCH Users Help' <freeswitch-users@lists.freeswitch.org><br><b>Objet :</b> Re: [Freeswitch-users] Use Nibblebill with PostgreSQL<o:p></o:p></span></p></div></div><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>> <span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>I don't understand what is supposed to do the SQL request? I think that, indeed, nibble_balance is not set at the moment of the condition.</span><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'><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>when you set the nibble account so nibblebill makes the SQL request you set in its config</span><o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>to populate nibble_current_balance, so if you make a condition with nibble_current_balance just after set nibble_account</span><o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>so you should set it inline to make the condition available</span><o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><div><p class=MsoNormal>On 1/15/2018 5:29 AM, <a href="mailto:igor.potjevlesch@gmail.com">igor.potjevlesch@gmail.com</a> wrote:<o:p></o:p></p></div><blockquote style='margin-top:5.0pt;margin-bottom:5.0pt'><p class=MsoNormal><span style='color:windowtext;mso-fareast-language:EN-US'>Hello,</span><o:p></o:p></p><p class=MsoNormal><span style='color:windowtext;mso-fareast-language:EN-US'> </span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>I'm still stuck with Nibblebill config. Even if the current balance is 0 or negative, the dialplan start the call.</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'> </span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>Someone would have some examples of config where this behaviour is avoided? Thank you!</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'> </span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>Regards,</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'> </span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>Igor.</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'> </span><o:p></o:p></p><div><div style='border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0cm 0cm 0cm'><p class=MsoNormal><b><span style='color:windowtext'>De :</span></b><span style='color:windowtext'> <a href="mailto:igor.potjevlesch@gmail.com">igor.potjevlesch@gmail.com</a> [<a href="mailto:igor.potjevlesch@gmail.com">mailto:igor.potjevlesch@gmail.com</a>] <br><b>Envoyé :</b> mercredi 10 janvier 2018 15:49<br><b>À :</b> 'Madovsky' <a href="mailto:infos@madovsky.org"><infos@madovsky.org></a><br><b>Objet :</b> RE: [Freeswitch-users] Use Nibblebill with PostgreSQL</span><o:p></o:p></p></div></div><p class=MsoNormal> <o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>This is the log: Action log(INFO ${nibble_balance} is equal or lower than 0)</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>With or without "set nibble_balance". So I guess that this variable is undefined.</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'> </span><o:p></o:p></p><div><div style='border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0cm 0cm 0cm'><p class=MsoNormal><b><span lang=EN-GB style='color:windowtext'>De :</span></b><span lang=EN-GB style='color:windowtext'> <a href="mailto:igor.potjevlesch@gmail.com">igor.potjevlesch@gmail.com</a> [<a href="mailto:igor.potjevlesch@gmail.com">mailto:igor.potjevlesch@gmail.com</a>] <br><b>Envoyé :</b> mercredi 10 janvier 2018 15:39<br><b>À :</b> 'Madovsky' <<a href="mailto:infos@madovsky.org">infos@madovsky.org</a>><br><b>Objet :</b> RE: [Freeswitch-users] Use Nibblebill with PostgreSQL</span><o:p></o:p></p></div></div><p class=MsoNormal><span lang=EN-GB> </span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>I don't understand what is supposed to do the SQL request? I think that, indeed, nibble_balance is not set at the moment of the condition.</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'> </span><o:p></o:p></p><div><div style='border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0cm 0cm 0cm'><p class=MsoNormal><b><span style='color:windowtext'>De :</span></b><span style='color:windowtext'> Madovsky [<a href="mailto:infos@madovsky.org">mailto:infos@madovsky.org</a>] <br><b>Envoyé :</b> mardi 9 janvier 2018 21:24<br><b>À :</b> <a href="mailto:igor.potjevlesch@gmail.com">igor.potjevlesch@gmail.com</a><br><b>Objet :</b> Re: [Freeswitch-users] Use Nibblebill with PostgreSQL</span><o:p></o:p></p></div></div><p class=MsoNormal> <o:p></o:p></p><p class=MsoNormal style='margin-bottom:12.0pt'>you should remove<br><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'><br><action application="set" data="nibble_balance" inline="true"/><br><br>since when you populate nibble_account it makes automatically the SQL request<br>and populate nibble_balance.<br>then don't forget to put all nibble variables on the bridge <br>like {nibble_account=${nibble_account},etc.}sofia/xxx</span><o:p></o:p></p><div><p class=MsoNormal>On 1/9/2018 8:14 AM, <a href="mailto:igor.potjevlesch@gmail.com">igor.potjevlesch@gmail.com</a> wrote:<o:p></o:p></p></div><blockquote style='margin-top:5.0pt;margin-bottom:5.0pt'><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>I didn't. What does it mean "inline" in that case?</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'> </span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>I tried like this and add "inline" on all settings. So, now the dialplan looks like this:</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'> </span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>                <action application="set" data="nibble_account=1" inline="true"/></span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>                <action application="set" data="nibble_rate=1" inline="true"/></span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>                <action application="set" data="nibble_minimum=1" inline="true"/></span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>                <action application="set" data="nibble_rounding=2" inline="true"/></span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>                <action application="set" data="nibble_balance" inline="true"/></span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>                <action application="nibblebill" data="heartbeat 1"/></span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>                <condition break="on-true" field="${cond(${nibble_balance} <= 0 ? YES : NO)}" expression="^YES$"></span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>                        <action application="log" data="INFO ${nibble_balance} is equal or lower than 0"/></span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>                </condition></span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'> </span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>                <action application="bridge" data="{nibble_account=1,nibble_rate=1,nibble_minimum=1,nibble_rounding=2,absolute_codec_string=PCMA,101,sip_invite_domain=$${ext-sip-ip}}sofia/gateway/outbound/0$1"/></span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'> </span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>The logs are showing the following outputs and the call start:</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'> </span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>8d308628-f555-11e7-9064-df48dc662f2c |--- Dialplan: <a href="mailto:sofia/client_in/+123456789@A.B.C.D">sofia/client_in/+123456789@A.B.C.D</a> Action set(nibble_account=1) INLINE</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>8d308628-f555-11e7-9064-df48dc662f2c EXECUTE <a href="mailto:sofia/client_in/+123456789@A.B.C.D">sofia/client_in/+123456789@A.B.C.D</a> set(nibble_account=1)</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>8d308628-f555-11e7-9064-df48dc662f2c 2018-01-09 16:55:44.782489 [DEBUG] mod_dptools.c:1548 SET <a href="mailto:sofia/client_in/+123456789@A.B.C.D">sofia/client_in/+123456789@A.B.C.D</a> [nibble_account]=[1]</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>8d308628-f555-11e7-9064-df48dc662f2c |--- Dialplan: <a href="mailto:sofia/client_in/+123456789@A.B.C.D">sofia/client_in/+123456789@A.B.C.D</a> Action set(nibble_rate=1) INLINE</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>8d308628-f555-11e7-9064-df48dc662f2c EXECUTE <a href="mailto:sofia/client_in/+123456789@A.B.C.D">sofia/client_in/+123456789@A.B.C.D</a> set(nibble_rate=1)</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>8d308628-f555-11e7-9064-df48dc662f2c 2018-01-09 16:55:44.782489 [DEBUG] mod_dptools.c:1548 SET <a href="mailto:sofia/client_in/+123456789@A.B.C.D">sofia/client_in/+123456789@A.B.C.D</a> [nibble_rate]=[1]</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>8d308628-f555-11e7-9064-df48dc662f2c |--- Dialplan: <a href="mailto:sofia/client_in/+123456789@A.B.C.D">sofia/client_in/+123456789@A.B.C.D</a> Action set(nibble_minimum=1) INLINE</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>8d308628-f555-11e7-9064-df48dc662f2c EXECUTE <a href="mailto:sofia/client_in/+123456789@A.B.C.D">sofia/client_in/+123456789@A.B.C.D</a> set(nibble_minimum=1)</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>8d308628-f555-11e7-9064-df48dc662f2c 2018-01-09 16:55:44.782489 [DEBUG] mod_dptools.c:1548 SET <a href="mailto:sofia/client_in/+123456789@A.B.C.D">sofia/client_in/+123456789@A.B.C.D</a> [nibble_minimum]=[1]</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>8d308628-f555-11e7-9064-df48dc662f2c |--- Dialplan: <a href="mailto:sofia/client_in/+123456789@A.B.C.D">sofia/client_in/+123456789@A.B.C.D</a> Action set(nibble_rounding=2) INLINE</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>8d308628-f555-11e7-9064-df48dc662f2c EXECUTE <a href="mailto:sofia/client_in/+123456789@A.B.C.D">sofia/client_in/+123456789@A.B.C.D</a> set(nibble_rounding=2)</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>8d308628-f555-11e7-9064-df48dc662f2c 2018-01-09 16:55:44.782489 [DEBUG] mod_dptools.c:1548 SET <a href="mailto:sofia/client_in/+123456789@A.B.C.D">sofia/client_in/+123456789@A.B.C.D</a> [nibble_rounding]=[2]</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>8d308628-f555-11e7-9064-df48dc662f2c |--- Dialplan: <a href="mailto:sofia/client_in/+123456789@A.B.C.D">sofia/client_in/+123456789@A.B.C.D</a> Action set(nibble_balance) INLINE</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>8d308628-f555-11e7-9064-df48dc662f2c EXECUTE <a href="mailto:sofia/client_in/+123456789@A.B.C.D">sofia/client_in/+123456789@A.B.C.D</a> set(nibble_balance)</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>8d308628-f555-11e7-9064-df48dc662f2c 2018-01-09 16:55:44.782489 [DEBUG] mod_dptools.c:1548 SET <a href="mailto:sofia/client_in/+123456789@A.B.C.D">sofia/client_in/+123456789@A.B.C.D</a> [nibble_balance]=[UNDEF]</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>8d308628-f555-11e7-9064-df48dc662f2c |--- Dialplan: <a href="mailto:sofia/client_in/+123456789@A.B.C.D">sofia/client_in/+123456789@A.B.C.D</a> Action nibblebill(heartbeat 1)</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>8d308628-f555-11e7-9064-df48dc662f2c |--- Dialplan: <a href="mailto:sofia/client_in/+123456789@A.B.C.D">sofia/client_in/+123456789@A.B.C.D</a> Action bridge({nibble_account=1,nibble_rate=1,nibble_minimum=1,nibble_rounding=2,absolute_codec_string=PCMA,101,sip_invite_domain=}sofia/gateway/out/0123456789)</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>8d308628-f555-11e7-9064-df48dc662f2c |--- Dialplan: <a href="mailto:sofia/client_in/+123456789@A.B.C.D">sofia/client_in/+123456789@A.B.C.D</a> Action hangup(hangup_cause)</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'> </span><o:p></o:p></p><div><div style='border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0cm 0cm 0cm'><p class=MsoNormal><b><span style='color:windowtext'>De :</span></b><span style='color:windowtext'> Madovsky [<a href="mailto:infos@madovsky.org">mailto:infos@madovsky.org</a>] <br><b>Envoyé :</b> lundi 8 janvier 2018 19:52<br><b>À :</b> <a href="mailto:igor.potjevlesch@gmail.com">igor.potjevlesch@gmail.com</a><br><b>Objet :</b> Re: [Freeswitch-users] Use Nibblebill with PostgreSQL</span><o:p></o:p></p></div></div><p class=MsoNormal> <o:p></o:p></p><p>did you set nibble balance inline="true" before the condition?<o:p></o:p></p><p>also check with log just after you set the var to be sure the SQL return a value<o:p></o:p></p><p class=MsoNormal> <o:p></o:p></p><div><p class=MsoNormal>On 1/8/2018 10:24 AM, <a href="mailto:igor.potjevlesch@gmail.com">igor.potjevlesch@gmail.com</a> wrote:<o:p></o:p></p></div><blockquote style='margin-top:5.0pt;margin-bottom:5.0pt'><p class=MsoNormal><span style='color:windowtext;mso-fareast-language:EN-US'>I basically tried this:</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'><condition break="on-true" field="${cond(${nibble_balance} <= 0 ? YES : NO)}" expression="^YES$"></span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>                        <action application="log" data="INFO ${nibble_balance} is equal or lower than 0"/></span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>                </span><span style='color:windowtext;mso-fareast-language:EN-US'></condition></span><o:p></o:p></p><p class=MsoNormal><span style='color:windowtext;mso-fareast-language:EN-US'> </span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>But I didn't see anything in the logs, the call begin to start.</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'> </span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>Regards,</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'> </span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>Igor</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'> </span><o:p></o:p></p><div><div style='border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0cm 0cm 0cm'><p class=MsoNormal><b><span style='color:windowtext'>De :</span></b><span style='color:windowtext'> Madovsky [<a href="mailto:infos@madovsky.org">mailto:infos@madovsky.org</a>] <br><b>Envoyé :</b> vendredi 5 janvier 2018 14:44<br><b>À :</b> <a href="mailto:igor.potjevlesch@gmail.com">igor.potjevlesch@gmail.com</a><br><b>Objet :</b> Re: [Freeswitch-users] Use Nibblebill with PostgreSQL</span><o:p></o:p></p></div></div><p class=MsoNormal> <o:p></o:p></p><p>Yes in a nested condition for ex.<o:p></o:p></p><p>this method is more robust that trust nibblebill to do all the job<o:p></o:p></p><p class=MsoNormal> <o:p></o:p></p><div><p class=MsoNormal>On 1/5/2018 5:33 AM, <a href="mailto:igor.potjevlesch@gmail.com">igor.potjevlesch@gmail.com</a> wrote:<o:p></o:p></p></div><blockquote style='margin-top:5.0pt;margin-bottom:5.0pt'><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>It means that I can test ${nibble_balance} before right?</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'> </span><o:p></o:p></p><div><div style='border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0cm 0cm 0cm'><p class=MsoNormal><b><span style='color:windowtext'>De :</span></b><span style='color:windowtext'> Madovsky [<a href="mailto:infos@madovsky.org">mailto:infos@madovsky.org</a>] <br><b>Envoyé :</b> jeudi 4 janvier 2018 20:31<br><b>À :</b> <a href="mailto:igor.potjevlesch@gmail.com">igor.potjevlesch@gmail.com</a><br><b>Objet :</b> Re: [Freeswitch-users] Use Nibblebill with PostgreSQL</span><o:p></o:p></p></div></div><p class=MsoNormal> <o:p></o:p></p><p>you should make a nested condition before the bridge<o:p></o:p></p><p>and if the balance not good transfer the call to hangup or something else<o:p></o:p></p><p class=MsoNormal> <o:p></o:p></p><div><p class=MsoNormal>On 1/4/2018 8:03 AM, <a href="mailto:igor.potjevlesch@gmail.com">igor.potjevlesch@gmail.com</a> wrote:<o:p></o:p></p></div><blockquote style='margin-top:5.0pt;margin-bottom:5.0pt'><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>I uncommented this in the config file of nibblebill:</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'> </span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'><param name="custom_sql_lookup" value="SELECT euros AS nibble_balance FROM solde WHERE customer_id='${nibble_account}'"/></span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'> </span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>The request is working fine according to the logs, but the call is still placed with the logs:</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'> </span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>2018-01-04 16:59:07.571051 [DEBUG] mod_nibblebill.c:422 Doing lookup query</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>[SELECT euros AS nibble_balance FROM solde WHERE customer_id='1']</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>2018-01-04 16:59:07.571051 [DEBUG] mod_nibblebill.c:430 Retrieved current balance for account 1 (balance = -0.040000)</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>31fe25c6-f168-11e7-a065-b10720ff818b 2018-01-04 16:59:07.571051 [DEBUG] mod_nibblebill.c:523 Comparing -0.040000 to hangup balance of 1.000000, taking into account minimum charge of 1.000000</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>31fe25c6-f168-11e7-a065-b10720ff818b 2018-01-04 16:59:07.571051 [DEBUG] mod_nibblebill.c:526 Balance of -0.040000 fell below allowed amount of 1.000000! (Account 1)</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'> </span><o:p></o:p></p><div><div style='border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0cm 0cm 0cm'><p class=MsoNormal><b><span style='color:windowtext'>De :</span></b><span style='color:windowtext'> Madovsky [<a href="mailto:infos@madovsky.org">mailto:infos@madovsky.org</a>] <br><b>Envoyé :</b> jeudi 4 janvier 2018 16:37<br><b>À :</b> <a href="mailto:igor.potjevlesch@gmail.com">igor.potjevlesch@gmail.com</a><br><b>Objet :</b> Re: [Freeswitch-users] Use Nibblebill with PostgreSQL</span><o:p></o:p></p></div></div><p class=MsoNormal> <o:p></o:p></p><p>add an sql request into nibblebill and link it to nibble_balance variables inline in diaplan<o:p></o:p></p><p class=MsoNormal> <o:p></o:p></p><div><p class=MsoNormal>On 1/4/2018 7:35 AM, <a href="mailto:igor.potjevlesch@gmail.com">igor.potjevlesch@gmail.com</a> wrote:<o:p></o:p></p></div><blockquote style='margin-top:5.0pt;margin-bottom:5.0pt'><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>Yes, why not, but I don't find how to check the balance before a bridge.</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'> </span><o:p></o:p></p><div><div style='border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0cm 0cm 0cm'><p class=MsoNormal><b><span style='color:windowtext'>De :</span></b><span style='color:windowtext'> Madovsky [<a href="mailto:infos@madovsky.org">mailto:infos@madovsky.org</a>] <br><b>Envoyé :</b> jeudi 4 janvier 2018 16:29<br><b>À :</b> <a href="mailto:igor.potjevlesch@gmail.com">igor.potjevlesch@gmail.com</a><br><b>Objet :</b> Re: [Freeswitch-users] Use Nibblebill with PostgreSQL</span><o:p></o:p></p></div></div><p class=MsoNormal> <o:p></o:p></p><p>it starts because you don't have any user linked to your nibble_account<o:p></o:p></p><p>so the only way to not start the call is to create a condition with the nibble balance before<o:p></o:p></p><p>the bridge<o:p></o:p></p><p class=MsoNormal> <o:p></o:p></p><div><p class=MsoNormal>On 1/4/2018 7:22 AM, <a href="mailto:igor.potjevlesch@gmail.com">igor.potjevlesch@gmail.com</a> wrote:<o:p></o:p></p></div><blockquote style='margin-top:5.0pt;margin-bottom:5.0pt'><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>I did this:</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>dca705f8-f161-11e7-9f81-b10720ff818b |--- Dialplan: <a href="mailto:sofia/trunk1/+4425482090@A.B.C.D">sofia/trunk1/+4425482090@A.B.C.D</a> Action set(nibble_account=1)</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>dca705f8-f161-11e7-9f81-b10720ff818b |--- Dialplan: sofia/trunk1 <a href="mailto:/+4425482090@A.B.C.D">/+4425482090@A.B.C.D</a> Action set(nibble_rate=1)</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>dca705f8-f161-11e7-9f81-b10720ff818b |--- Dialplan: <a href="mailto:sofia/trunk1/+4425482090@A.B.C.D">sofia/trunk1/+4425482090@A.B.C.D</a> Action set(nibble_minimum=1)</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>dca705f8-f161-11e7-9f81-b10720ff818b |--- Dialplan: <a href="mailto:sofia/trunk1/+4425482090@A.B.C.D">sofia/trunk1/+4425482090@A.B.C.D</a> Action set(nibble_rounding=2)</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>dca705f8-f161-11e7-9f81-b10720ff818b |--- Dialplan: <a href="mailto:sofia/trunk1/+4425482090@A.B.C.D">sofia/trunk1/+4425482090@A.B.C.D</a> Action nibblebill(heartbeat 1)</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>dca705f8-f161-11e7-9f81-b10720ff818b |--- Dialplan: <a href="mailto:sofia/trunk1/+4425482090@A.B.C.D">sofia/trunk1/+4425482090@A.B.C.D</a> Action bridge({nibble_account=1,nibble_rate=1,nibble_minimum=1,nibble_rounding=2,absolute_codec_string=PCMA,101,sip_invite_domain=}sofia/gateway/out_1/0123456789)</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>[…]</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>2018-01-04 16:13:47.410971 [DEBUG] mod_nibblebill.c:430 Retrieved current balance for account 1 (balance = 0.000000)</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>dca7b05c-f161-11e7-9f9a-b10720ff818b 2018-01-04 16:13:47.410971 [DEBUG] mod_nibblebill.c:523 Comparing 0.000000 to hangup balance of 1.000000, taking into account minimum charge of 1.000000</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>dca7b05c-f161-11e7-9f9a-b10720ff818b 2018-01-04 16:13:47.410971 [DEBUG] mod_nibblebill.c:526 Balance of 0.000000 fell below allowed amount of 1.000000! (Account 1)</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'> </span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>But the call still starts. </span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'> </span><o:p></o:p></p><div><div style='border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0cm 0cm 0cm'><p class=MsoNormal><b><span style='color:windowtext'>De :</span></b><span style='color:windowtext'> Madovsky [<a href="mailto:infos@madovsky.org">mailto:infos@madovsky.org</a>] <br><b>Envoyé :</b> jeudi 4 janvier 2018 16:09<br><b>À :</b> <a href="mailto:igor.potjevlesch@gmail.com">igor.potjevlesch@gmail.com</a><br><b>Objet :</b> Re: [Freeswitch-users] Use Nibblebill with PostgreSQL</span><o:p></o:p></p></div></div><p class=MsoNormal> <o:p></o:p></p><p>the nibblebill variables must be on the bridge like<o:p></o:p></p><p><span lang=EN-GB style='mso-fareast-language:EN-US'><action application="bridge" data="{nibble_account=1,nibble_rate=1,etc....absolute_codec_string=PCMA,101,sip_invite_domain=$${ext-sip-ip}}sofia/gateway/out_01/0$1"/></span><o:p></o:p></p><p class=MsoNormal style='margin-bottom:12.0pt'>do not use "export" since I noticed some strange behavior with it.<br>I don't know how nibblebill behaves without a nibble_account linked to a user account,<br>so I cannot help for this case<o:p></o:p></p><div><p class=MsoNormal>On 1/4/2018 7:06 AM, <a href="mailto:igor.potjevlesch@gmail.com">igor.potjevlesch@gmail.com</a> wrote:<o:p></o:p></p></div><blockquote style='margin-top:5.0pt;margin-bottom:5.0pt'><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>I don't have a registered user. It's a peer trusted by his IP address.</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>During the call the credit is updated every seconds but even without credit, the call start and stop immediately.</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'> </span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>Yes I know. I will switch to more reasonable value after my tests. </span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'> </span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>What do you mean by "export all nibblebill variables to the bridge"?</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'> </span><o:p></o:p></p><div><div style='border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0cm 0cm 0cm'><p class=MsoNormal><b><span style='color:windowtext'>De :</span></b><span style='color:windowtext'> Madovsky [<a href="mailto:infos@madovsky.org">mailto:infos@madovsky.org</a>] <br><b>Envoyé :</b> jeudi 4 janvier 2018 15:52<br><b>À :</b> <a href="mailto:igor.potjevlesch@gmail.com">igor.potjevlesch@gmail.com</a><br><b>Objet :</b> Re: [Freeswitch-users] Use Nibblebill with PostgreSQL</span><o:p></o:p></p></div></div><p class=MsoNormal> <o:p></o:p></p><p>> <span lang=EN-GB style='mso-fareast-language:EN-US'><action application="set" data="nibble_account=1"/></span><o:p></o:p></p><p><span lang=EN-GB style='mso-fareast-language:EN-US'>is 1 a valid nibble_account of a registered user?</span><o:p></o:p></p><p><span lang=EN-GB style='mso-fareast-language:EN-US'>> <action application="nibblebill" data="check"/></span><o:p></o:p></p><p><span lang=EN-GB style='mso-fareast-language:EN-US'>you dont' need to check, as nibblebill automatically check the balance</span><o:p></o:p></p><p><span lang=EN-GB style='mso-fareast-language:EN-US'>if the nibble_account is linked to a registered user</span><o:p></o:p></p><p><span lang=EN-GB style='mso-fareast-language:EN-US'>> <action application="nibblebill" data="heartbeat 1"/></span><o:p></o:p></p><p><span lang=EN-GB style='mso-fareast-language:EN-US'>be aware that heartbeat to 1 means a request to your DB every second</span><o:p></o:p></p><p><span lang=EN-GB style='mso-fareast-language:EN-US'>about your issue you should export all nibblebill variables to the bridge too</span><o:p></o:p></p><p class=MsoNormal> <o:p></o:p></p><div><p class=MsoNormal>On 1/4/2018 6:46 AM, <a href="mailto:igor.potjevlesch@gmail.com">igor.potjevlesch@gmail.com</a> wrote:<o:p></o:p></p></div><blockquote style='margin-top:5.0pt;margin-bottom:5.0pt'><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>That's the case:</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>            <condition break="on-true" expression="^\+44([1-9][0-9]{8})$" field="destination_number"></span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>                <action application="set" data="nibble_account=1"/></span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>                <action application="nibblebill" data="check"/></span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>                <action application="set" data="nibble_rate=1"/></span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>                <action application="set" data="nibble_minimum=1"/></span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>                <action application="set" data="nibble_rounding=2"/></span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>                <action application="nibblebill" data="heartbeat 1"/></span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>                <action application="bridge" data="{absolute_codec_string=PCMA,101,sip_invite_domain=$${ext-sip-ip}}sofia/gateway/out_01/0$1"/></span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>                <action application="hangup" data="hangup_cause"/></span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>            </condition></span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'> </span><o:p></o:p></p><div><div style='border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0cm 0cm 0cm'><p class=MsoNormal><b><span style='color:windowtext'>De :</span></b><span style='color:windowtext'> Madovsky [<a href="mailto:infos@madovsky.org">mailto:infos@madovsky.org</a>] <br><b>Envoyé :</b> jeudi 4 janvier 2018 12:41<br><b>À :</b> <a href="mailto:igor.potjevlesch@gmail.com">igor.potjevlesch@gmail.com</a><br><b>Objet :</b> Re: [Freeswitch-users] Use Nibblebill with PostgreSQL</span><o:p></o:p></p></div></div><p class=MsoNormal> <o:p></o:p></p><div><p class=MsoNormal>you must check or set nibble_account before the call<br><br>On 1/4/2018 3:35 AM, <a href="mailto:igor.potjevlesch@gmail.com">igor.potjevlesch@gmail.com</a> wrote:<o:p></o:p></p></div><blockquote style='margin-top:5.0pt;margin-bottom:5.0pt'><p class=MsoNormal><span style='color:windowtext;mso-fareast-language:EN-US'>Hello,</span><o:p></o:p></p><p class=MsoNormal><span style='color:windowtext;mso-fareast-language:EN-US'> </span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>Finally the billing works good. Would it be possible to setup the rates in db? I don't find example or documentation related to this.</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'> </span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>Also, I don't understand why the call is allowed for bridging whereas the balance is 0 or negative?</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'> </span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>Regards,</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'> </span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>Igor.</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'> </span><o:p></o:p></p><div><div style='border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0cm 0cm 0cm'><p class=MsoNormal><b><span style='color:windowtext'>De :</span></b><span style='color:windowtext'> <a href="mailto:igor.potjevlesch@gmail.com">igor.potjevlesch@gmail.com</a> [<a href="mailto:igor.potjevlesch@gmail.com">mailto:igor.potjevlesch@gmail.com</a>] <br><b>Envoyé :</b> jeudi 4 janvier 2018 10:19<br><b>À :</b> 'FreeSWITCH Users Help' <a href="mailto:freeswitch-users@lists.freeswitch.org"><freeswitch-users@lists.freeswitch.org></a><br><b>Objet :</b> RE: [Freeswitch-users] Use Nibblebill with PostgreSQL</span><o:p></o:p></p></div></div><p class=MsoNormal> <o:p></o:p></p><p class=MsoNormal><span style='color:windowtext;mso-fareast-language:EN-US'>Hello,</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'><br>Thank you!</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>Both db_dsn and odbc-dsn work. db-dsn fails.</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>I keep the version with odbc-dsn because in that case I don't have the warning about deprecated function for versions earlier than 1.4.2 even if I run 1.6.</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'> </span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>What is the best according to you? db_dsn or odbc-dsn?</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'> </span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>I have additional questions related to nibble:</span><o:p></o:p></p><ol style='margin-top:0cm' start=1 type=1><li class=MsoNormal style='color:windowtext;mso-list:l0 level1 lfo3'><span lang=EN-GB style='mso-fareast-language:EN-US'>After hanging up the call, I see in the logs the good value: "mod_nibblebill.c:590 Billing $0.000234" but some line after there is another update: "mod_nibblebill.c:622 Rounding to precision 1.000000, total 1.000000 (0.999793 excess)". So the call is billed 1 instead of 0.000234. </span><o:p></o:p></li><li class=MsoNormal style='color:windowtext;mso-list:l0 level1 lfo3'><span lang=EN-GB style='mso-fareast-language:EN-US'>Is it possible to setup in the db scheme different prefixes and their rate? Instead of putting them raw in the dialplan or any other config file?</span><o:p></o:p></li></ol><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'> </span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>Thank you in advance for your clarification.<br><br>Regards,</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'> </span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'>Igor.</span><o:p></o:p></p><p class=MsoNormal><span lang=EN-GB style='color:windowtext;mso-fareast-language:EN-US'> </span><o:p></o:p></p><div><div style='border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0cm 0cm 0cm'><p class=MsoNormal><b><span style='color:windowtext'>De :</span></b><span style='color:windowtext'> FreeSWITCH-users [<a href="mailto:freeswitch-users-bounces@lists.freeswitch.org">mailto:freeswitch-users-bounces@lists.freeswitch.org</a>] <b>De la part de</b> Madovsky<br><b>Envoyé :</b> mercredi 3 janvier 2018 22:18<br><b>À :</b> <a href="mailto:freeswitch-users@lists.freeswitch.org">freeswitch-users@lists.freeswitch.org</a><br><b>Objet :</b> Re: [Freeswitch-users] Use Nibblebill with PostgreSQL</span><o:p></o:p></p></div></div><p class=MsoNormal> <o:p></o:p></p><p>If you compiled FS with --enable-core-odbc-support so you can use<o:p></o:p></p><p><param name="odbc-dsn" value="pgsql://hostaddr=xx.xx.xx.xx port=xxxx dbname=xxx user=xxx password='xxxx' options='-c client_min_messages=NOTICE' application_name='freeswitch'" /><o:p></o:p></p><p>you must set odbc.ini<o:p></o:p></p><div><p class=MsoNormal>On 1/3/2018 1:02 PM, Geoff Mina wrote:<o:p></o:p></p></div><blockquote style='margin-top:5.0pt;margin-bottom:5.0pt'><p class=MsoNormal>I think the param is db-dsn. Not the underscore version. <o:p></o:p></p><div><p class=MsoNormal style='margin-bottom:12.0pt'><br>On Jan 3, 2018, at 12:59 PM, Sergey Safarov <<a href="mailto:s.safarov@gmail.com">s.safarov@gmail.com</a>> wrote:<o:p></o:p></p></div><blockquote style='margin-top:5.0pt;margin-bottom:5.0pt'><div><div><p class=MsoNormal>I used connection string<o:p></o:p></p><p class=inbox-inbox-p1><span class=inbox-inbox-apple-converted-space><span style='color:blue'> </span></span><span class=inbox-inbox-s1><span style='color:blue'><param name="db_dsn" value="pgsql://hostaddr=127.0.0.1 dbname=******* user=******* password=*******"/></span></span><o:p></o:p></p><p class=inbox-inbox-p1><span class=inbox-inbox-s1>Sergey</span><o:p></o:p></p></div><p class=MsoNormal> <o:p></o:p></p><div><div><p class=MsoNormal>ср, 3 янв. 2018 г. в 22:06, <<a href="mailto:igor.potjevlesch@gmail.com">igor.potjevlesch@gmail.com</a>>:<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-top:5.0pt;margin-right:0cm;margin-bottom:5.0pt'><div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>Hello !<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'><span lang=EN-GB>I try to connect Nibblebill directly to PostgreSQL but it still fails.</span><o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span lang=EN-GB>I follow the documentation and setup the param like this: <param name="odbc_dsn" value="pgsql://A.B.C.D dbname=prepaid user=prepaid password=<hidden>"/></span><o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span lang=EN-GB> </span><o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span lang=EN-GB>When I hangup a call, the logs report the following: 52c8b77c-f0b8-11e7-8d19-5566a3fb77f6 2018-01-03 20:00:19.037333 [CRIT] mod_nibblebill.c:604 Failed to log to database!</span><o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span lang=EN-GB> </span><o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span lang=EN-GB>Any idea on how to proceed with FS 1.6? Thank you!</span><o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span lang=EN-GB> </span><o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span lang=EN-GB>Regards,</span><o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span lang=EN-GB> </span><o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span lang=EN-GB>Igor.</span><o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span lang=EN-GB> </span><o:p></o:p></p></div></div><p class=MsoNormal>_________________________________________________________________________<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><o:p></o:p></p></blockquote></div></div></blockquote><blockquote style='margin-top:5.0pt;margin-bottom:5.0pt'><div><p class=MsoNormal>_________________________________________________________________________<br>Professional FreeSWITCH Consulting Services:<br><a href="mailto:consulting@freeswitch.org">consulting@freeswitch.org</a><br><a href="http://www.freeswitchsolutions.com">http://www.freeswitchsolutions.com</a><br><br>Official FreeSWITCH Sites<br><a href="http://www.freeswitch.org">http://www.freeswitch.org</a><br><a href="http://confluence.freeswitch.org">http://confluence.freeswitch.org</a><br><a href="http://www.cluecon.com">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">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br><a href="http://www.freeswitch.org">http://www.freeswitch.org</a><o:p></o:p></p></div></blockquote><p class=MsoNormal style='margin-bottom:12.0pt'><br><br><br><br><br><br><br><br><br><br><o:p></o:p></p><pre>_________________________________________________________________________<o:p></o:p></pre><pre>Professional FreeSWITCH Consulting Services:<o:p></o:p></pre><pre><a href="mailto:consulting@freeswitch.org">consulting@freeswitch.org</a><o:p></o:p></pre><pre><a href="http://www.freeswitchsolutions.com">http://www.freeswitchsolutions.com</a><o:p></o:p></pre><pre> <o:p></o:p></pre><pre>Official FreeSWITCH Sites<o:p></o:p></pre><pre><a href="http://www.freeswitch.org">http://www.freeswitch.org</a><o:p></o:p></pre><pre><a href="http://confluence.freeswitch.org">http://confluence.freeswitch.org</a><o:p></o:p></pre><pre><a href="http://www.cluecon.com">http://www.cluecon.com</a><o:p></o:p></pre><pre> <o:p></o:p></pre><pre>FreeSWITCH-users mailing list<o:p></o:p></pre><pre><a href="mailto:FreeSWITCH-users@lists.freeswitch.org">FreeSWITCH-users@lists.freeswitch.org</a><o:p></o:p></pre><pre><a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><o:p></o:p></pre><pre>UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><o:p></o:p></pre><pre><a href="http://www.freeswitch.org">http://www.freeswitch.org</a><o:p></o:p></pre></blockquote><p class=MsoNormal> <o:p></o:p></p><p class=MsoNormal style='margin-bottom:12.0pt'><br><br><br><br><br><br><br><br><br><br><o:p></o:p></p><pre>_________________________________________________________________________<o:p></o:p></pre><pre>Professional FreeSWITCH Consulting Services:<o:p></o:p></pre><pre><a href="mailto:consulting@freeswitch.org">consulting@freeswitch.org</a><o:p></o:p></pre><pre><a href="http://www.freeswitchsolutions.com">http://www.freeswitchsolutions.com</a><o:p></o:p></pre><pre> <o:p></o:p></pre><pre>Official FreeSWITCH Sites<o:p></o:p></pre><pre><a href="http://www.freeswitch.org">http://www.freeswitch.org</a><o:p></o:p></pre><pre><a href="http://confluence.freeswitch.org">http://confluence.freeswitch.org</a><o:p></o:p></pre><pre><a href="http://www.cluecon.com">http://www.cluecon.com</a><o:p></o:p></pre><pre> <o:p></o:p></pre><pre>FreeSWITCH-users mailing list<o:p></o:p></pre><pre><a href="mailto:FreeSWITCH-users@lists.freeswitch.org">FreeSWITCH-users@lists.freeswitch.org</a><o:p></o:p></pre><pre><a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><o:p></o:p></pre><pre>UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><o:p></o:p></pre><pre><a href="http://www.freeswitch.org">http://www.freeswitch.org</a><o:p></o:p></pre></blockquote><p class=MsoNormal> <o:p></o:p></p></blockquote><p class=MsoNormal> <o:p></o:p></p></blockquote><p class=MsoNormal> <o:p></o:p></p></blockquote><p class=MsoNormal> <o:p></o:p></p></blockquote><p class=MsoNormal> <o:p></o:p></p></blockquote><p class=MsoNormal> <o:p></o:p></p></blockquote><p class=MsoNormal> <o:p></o:p></p></blockquote><p class=MsoNormal> <o:p></o:p></p></blockquote><p class=MsoNormal> <o:p></o:p></p></blockquote><p class=MsoNormal><o:p> </o:p></p></div></body></html>