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.so...@timenet.it skype: alex.sosic cell: +385 91 2505 146 On Mon, Oct 30, 2017 at 5:57 PM, Daniel-Constantin Mierla <mico...@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 > _______________________________________________ Kamailio (SER) - Users Mailing List sr-users@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users