If all works fine, then I will backport to 5.0. I didn't want to break
stable branch 5.0 without any testing, as I don't have a testbed to
replicate your use case.
Cheers,
Daniel
On 06.11.17 11:24, Aleksandar Sosic wrote:
Does the last debian jessie package contains such
patch?
in my /etc/apt/sources.list:
deb
http://deb.kamailio.org/kamailio50 xenial main
deb-src
http://deb.kamailio.org/kamailio50 xenial main
Thanks,
--
Aleksandar Sosic
mail: alex.sosic(a)timenet.it
skype: alex.sosic
cell: +385 91 2505 146
On Fri, Nov 3, 2017 at 9:26 AM, Daniel-Constantin Mierla
<miconda(a)gmail.com> wrote:
> Hello,
>
> can you try with latest master? I just pushed a patch that should handle
> this case. Let me know if works or not.
>
> Cheers,
> Daniel
>
>
> On 01.11.17 11:57, Aleksandar Sosic wrote:
>> Thank you Daniel!
>> --
>> Aleksandar Sosic
>> mail: alex.sosic(a)timenet.it
>> skype: alex.sosic
>> cell: +385 91 2505 146
>>
>>
>> On Wed, Nov 1, 2017 at 10:39 AM, Daniel-Constantin Mierla
>> <miconda(a)gmail.com> wrote:
>>> Hello,
>>>
>>> ok, now the cfg execution flow is easier to understand. The evapi
>>> receiver was not designed to write back directly, I will try to find a
>>> solution for this case.
>>>
>>> Cheers,
>>> Daniel
>>>
>>> On 31.10.17 15:03, Aleksandar Sosic wrote:
>>>> Hi Daniel,
>>>>
>>>> so the kamailio.conf sections that matters are here:
>>>>
https://gist.github.com/alexsosic/5a33d314d2db1832fd04166fe6615227
>>>>
>>>> Thanks for your time!
>>>> --
>>>> Aleksandar Sosic
>>>> mail: alex.sosic(a)timenet.it
>>>> skype: alex.sosic
>>>> cell: +385 91 2505 146
>>>>
>>>>
>>>> On Tue, Oct 31, 2017 at 12:51 PM, Daniel-Constantin Mierla
>>>> <miconda(a)gmail.com> wrote:
>>>>> It is a bit hard to guess the logic you have there, but seems like
>>>>> cgrates sends a disconnect request via event api, which via some
actions
>>>>> triggers a dialog end, which then wants to send back an event to
cgrates
>>>>> that call is ending? Like a loop back communication with evapi
receiver ...
>>>>>
>>>>> Maybe you can share the config file (or the relevant parts).
>>>>>
>>>>> Cheers,
>>>>> Daniel
>>>>>
>>>>> On 31.10.17 12:18, Aleksandar Sosic wrote:
>>>>>> 17(114) NOTICE: evapi [evapi_dispatch.c:339]:
evapi_recv_client(): {0}
>>>>>> [127.0.0.1:41154] - received
>>>>>>
[99:{"Event":"CGR_SESSION_DISCONNECT","HashEntry":"715","HashId":"1885","Reason":"-INSUFFICIENT_FUNDS"},]
>>>>>> (103) (0)
>>>>>>
>>>>>> It seems like an evapi recieved command.
>>>>>> That triggers that route.
>>>>>>
>>>>>> After that I do have this errors in kamailio logs:
>>>>>> 17(114) ERROR: <core> [core/parser/parse_from.c:107]:
>>>>>> parse_from_uri(): failed to parse From uri
>>>>>> 17(114) ERROR: pv [pv_core.c:414]: pv_get_xto_attr(): cannot
parse From URI
>>>>>> 17(114) ERROR: <core> [core/parser/parse_to.c:81]:
parse_to_uri():
>>>>>> failed to parse To uri
>>>>>> 17(114) ERROR: pv [pv_core.c:408]: pv_get_xto_attr(): cannot
parse To URI
>>>>>> --
>>>>>> Aleksandar Sosic
>>>>>> mail: alex.sosic(a)timenet.it
>>>>>> skype: alex.sosic
>>>>>> cell: +385 91 2505 146
>>>>>>
>>>>>>
>>>>>> On Tue, Oct 31, 2017 at 12:04 PM, Daniel-Constantin Mierla
>>>>>> <miconda(a)gmail.com> wrote:
>>>>>>> Hello,
>>>>>>>
>>>>>>> when is the route[CGR_SESSION_DISCONNECT] executed? In other
words,
>>>>>>> where do you have route(CGR_SESSION_DISCONNECT) in your
config or is
>>>>>>> there any modparam with CGR_SESSION_DISCONNECT in it?
>>>>>>>
>>>>>>> Cheers,
>>>>>>> Daniel
>>>>>>>
>>>>>>>
>>>>>>> On 31.10.17 11:45, Aleksandar Sosic wrote:
>>>>>>>> Hi Daniel,
>>>>>>>>
>>>>>>>> It's done by this cgrates route:
>>>>>>>> ```
>>>>>>>> # CGRateS request for session disconnect
>>>>>>>> route[CGR_SESSION_DISCONNECT] {
>>>>>>>> json_get_field("$evapi(msg)",
"HashEntry", "$var(HashEntry)");
>>>>>>>> json_get_field("$evapi(msg)",
"HashId", "$var(HashId)");
>>>>>>>> json_get_field("$evapi(msg)",
"Reason", "$var(Reason)");
>>>>>>>>
jsonrpc_exec('{"jsonrpc":"2.0","id":1,
>>>>>>>>
"method":"dlg.end_dlg","params":[$(var(HashEntry){s.rm,"}),$(var(HashId){s.rm,"})]}');
>>>>>>>> }
>>>>>>>> ```
>>>>>>>>
>>>>>>>> It executes a dlg.end_dlg via jsonrpc.
>>>>>>>> --
>>>>>>>> Aleksandar Sosic
>>>>>>>> mail: alex.sosic(a)timenet.it
>>>>>>>> skype: alex.sosic
>>>>>>>> cell: +385 91 2505 146
>>>>>>>>
>>>>>>>>
>>>>>>>> On Mon, Oct 30, 2017 at 5:57 PM, Daniel-Constantin
Mierla
>>>>>>>> <miconda(a)gmail.com> wrote:
>>>>>>>>> Hello,
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On 30.10.17 17:29, Aleksandar Sosic wrote:
>>>>>>>>>> Hi Everyone,
>>>>>>>>>>
>>>>>>>>>> we're trying to implement cgrates in our
kamailio nodes.
>>>>>>>>>> Everything is working fine except for the fact
that kamailio is not
>>>>>>>>>> signaling the call end to cgrates for prepaid
users... The versions,
>>>>>>>>>> logs and confs are:
>>>>>>>>>>
>>>>>>>>>> ```
>>>>>>>>>> # kamailio -v
>>>>>>>>>> version: kamailio 5.0.3 (x86_64/linux)
>>>>>>>>>> flags: STATS: Off, USE_TCP, USE_TLS, USE_SCTP,
TLS_HOOKS,
>>>>>>>>>> DISABLE_NAGLE, USE_MCAST, DNS_IP_HACK, SHM_MEM,
SHM_MMAP, PKG_MALLOC,
>>>>>>>>>> Q_MALLOC, F_MALLOC, TLSF_MALLOC, DBG_SR_MEMORY,
USE_FUTEX,
>>>>>>>>>> FAST_LOCK-ADAPTIVE_WAIT, USE_DNS_CACHE,
USE_DNS_FAILOVER, USE_NAPTR,
>>>>>>>>>> USE_DST_BLACKLIST, HAVE_RESOLV_RES
>>>>>>>>>> ADAPTIVE_WAIT_LOOPS=1024, MAX_RECV_BUFFER_SIZE
262144, MAX_LISTEN 16,
>>>>>>>>>> MAX_URI_SIZE 1024, BUF_SIZE 65535, DEFAULT
PKG_SIZE 8MB
>>>>>>>>>> poll method support: poll, epoll_lt, epoll_et,
sigio_rt, select.
>>>>>>>>>> id: unknown
>>>>>>>>>> compiled with gcc 5.3.1
>>>>>>>>>> ```
>>>>>>>>>>
>>>>>>>>>> ```
>>>>>>>>>> # cgr-engine --version
>>>>>>>>>> CGRateS 0.9.1~rc8 git+15a0793
(2017-10-23T12:15:40+02:00)
>>>>>>>>>> ```
>>>>>>>>>>
>>>>>>>>>> The kamailio conf regarding our problem is:
>>>>>>>>>> ```
>>>>>>>>>> # Inform CGRateS about CALL_END (stop debit
loops, perform accounting
>>>>>>>>>> if desired in this way)
>>>>>>>>>> route[CGR_CALL_END] {
>>>>>>>>>> if $sht(cgrconn=>cgr) == $null {
>>>>>>>>>> xlog("Charging controller
unreachable");
>>>>>>>>>> exit;
>>>>>>>>>> }
>>>>>>>>>> $var(callDur) = $TS - $dlg(start_ts);
>>>>>>>>>>
evapi_relay("{\"event\":\"CGR_CALL_END\",
>>>>>>>>>>
\"callid\":\"$dlg(callid)\",
>>>>>>>>>>
\"from_tag\":\"$dlg(from_tag)\",
>>>>>>>>>>
\"cgr_reqtype\":\"$dlg_var(cgrReqType)\",
>>>>>>>>>>
\"cgr_tenant\":\"$dlg_var(cgrTenant)\",
>>>>>>>>>>
\"cgr_account\":\"$dlg_var(cgrAccount)\",
>>>>>>>>>>
\"cgr_destination\":\"$dlg_var(cgrDestination)\",
>>>>>>>>>>
\"cgr_answertime\":\"$dlg(start_ts)\",
>>>>>>>>>>
\"cgr_duration\":\"$var(callDur)\",
>>>>>>>>>>
\"cgr_supplier\":\"$dlg_var(cgrSupplier)\",
>>>>>>>>>>
\"cgr_disconnectcause\":\"$T_reply_code\"}");
>>>>>>>>>> }
>>>>>>>>>> ```
>>>>>>>>>>
>>>>>>>>>> The kamailio logs:
>>>>>>>>>>
>>>>>>>>>> ```
>>>>>>>>>> 17(114) ERROR: evapi [evapi_dispatch.c:707]:
_evapi_relay(): failed to
>>>>>>>>>> pass the pointer to evapi dispatcher
>>>>>>>>>> 17(114) ERROR: evapi [evapi_mod.c:261]:
w_evapi_relay(): failed to
>>>>>>>>>> relay event:
{"event":"CGR_CALL_END",
>>>>>>>>>> [...]
>>>>>>>>> does this happen on BYE or on dialog timeout?
>>>>>>>>>
>>>>>>>>> Cheers,
>>>>>>>>> Daniel
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>> Daniel-Constantin Mierla
>>>>>>>>>
www.twitter.com/miconda --
www.linkedin.com/in/miconda
>>>>>>>>> Kamailio Advanced Training, Nov 13-15, 2017, in
Berlin -
www.asipto.com
>>>>>>>>> Kamailio World Conference -
www.kamailioworld.com
>>>>>>>>>
>>>>>>> --
>>>>>>> Daniel-Constantin Mierla
>>>>>>>
www.twitter.com/miconda --
www.linkedin.com/in/miconda
>>>>>>> Kamailio Advanced Training, Nov 13-15, 2017, in Berlin -
www.asipto.com
>>>>>>> Kamailio World Conference -
www.kamailioworld.com
>>>>>>>
>>>>> --
>>>>> Daniel-Constantin Mierla
>>>>>
www.twitter.com/miconda --
www.linkedin.com/in/miconda
>>>>> Kamailio Advanced Training, Nov 13-15, 2017, in Berlin -
www.asipto.com
>>>>> Kamailio World Conference -
www.kamailioworld.com
>>>>>
>>> --
>>> Daniel-Constantin Mierla
>>>
www.twitter.com/miconda --
www.linkedin.com/in/miconda
>>> Kamailio Advanced Training, Nov 13-15, 2017, in Berlin -
www.asipto.com
>>> Kamailio World Conference -
www.kamailioworld.com
>>>
> --
> Daniel-Constantin Mierla
>
www.twitter.com/miconda --
www.linkedin.com/in/miconda
> Kamailio Advanced Training, Nov 13-15, 2017, in Berlin -
www.asipto.com
> Kamailio World Conference -
www.kamailioworld.com
>