Built motion from commit (unavailable).|2.5.0
[motion2.git] / server / services / xdr / dials.controller.js
1 // *************************************************************************
2 // *                                                                       *
3 // * xCALLY Motion -  The Omnichannel Contact Center                       *
4 // * Copyright (c) Xenialab s.r.l. All Rights Reserved                     *
5 // *                                                                       *
6 // *************************************************************************
7 // *                                                                       *
8 // * Email: info@xcally.com                                                *
9 // * Website: https://www.xcally.com                                       *
10 // *                                                                       *
11 // *************************************************************************
12 // *                                                                       *
13 // * The SOFTWARE PRODUCT is protected by copyright laws and international *
14 // * copyright treaties, as well as other intellectual property laws and   *
15 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                         *
16 // *                                                                       *
17 // *************************************************************************
18 var _0x4410=['DIAL|%s|%s|%s|%s|%s|%s','uniqueid','channel','dialstring','calleridnum','connectedlinenum','dialstatus','request','CreateVoiceDialReport','newexten','application','toLowerCase','set','startsWith','appdata','cdr(routeid)','split','stack','varset','variable','outboundrouteid','value','error','dialbegin','isNil','assign','now','called','dialend','ANSWER','answertime','lastevent','connect','hangup','complete','duration','diffTime','endtime','starttime','billableseconds','lodash','util','./utils','info','format'];(function(_0x618414,_0x1a7a60){var _0x21c19a=function(_0x507b17){while(--_0x507b17){_0x618414['push'](_0x618414['shift']());}};_0x21c19a(++_0x1a7a60);}(_0x4410,0x136));var _0x0441=function(_0x401676,_0x3f1436){_0x401676=_0x401676-0x0;var _0x4f13fe=_0x4410[_0x401676];return _0x4f13fe;};'use strict';var _=require(_0x0441('0x0'));var util=require(_0x0441('0x1'));var utils=require(_0x0441('0x2'));var dials={};function writeDB(_0x1a08df){utils[_0x0441('0x3')](util[_0x0441('0x4')](_0x0441('0x5'),_0x1a08df[_0x0441('0x6')],_0x1a08df[_0x0441('0x7')],_0x1a08df[_0x0441('0x8')],_0x1a08df[_0x0441('0x9')],_0x1a08df[_0x0441('0xa')],_0x1a08df[_0x0441('0xb')]));utils[_0x0441('0xc')](_0x0441('0xd'),_0x1a08df);delete dials[_0x1a08df['uniqueid']];}exports[_0x0441('0xe')]=function(_0x5e1abf){try{if(_0x5e1abf[_0x0441('0xf')][_0x0441('0x10')]()==_0x0441('0x11')&&_[_0x0441('0x12')](_0x5e1abf[_0x0441('0x13')]['toLowerCase'](),_0x0441('0x14'))){var _0x1364bc=_0x5e1abf[_0x0441('0x13')][_0x0441('0x15')]('=');dials[_0x5e1abf['uniqueid']]={'routeId':_0x1364bc[0x1]};}}catch(_0x3cadfd){utils['error'](_0x3cadfd[_0x0441('0x16')]);}};exports[_0x0441('0x17')]=function(_0x3c911c){try{if(!_['isNil'](_0x3c911c[_0x0441('0x18')][_0x0441('0x19')])){dials[_0x3c911c['uniqueid']]={'routeId':_0x3c911c[_0x0441('0x1a')]};}}catch(_0xebdba5){utils[_0x0441('0x1b')](_0xebdba5[_0x0441('0x16')]);}};exports[_0x0441('0x1c')]=function(_0x19b6b7){try{if(!_[_0x0441('0x1d')](dials[_0x19b6b7[_0x0441('0x6')]])){dials[_0x19b6b7[_0x0441('0x6')]]=_[_0x0441('0x1e')](dials[_0x19b6b7['uniqueid']],_0x19b6b7);dials[_0x19b6b7[_0x0441('0x6')]]['starttime']=utils[_0x0441('0x1f')]();dials[_0x19b6b7['uniqueid']]['lastevent']=_0x0441('0x20');}}catch(_0x49e32d){utils['error'](_0x49e32d[_0x0441('0x16')]);}};exports[_0x0441('0x21')]=function(_0x35a0c7){try{if(!_[_0x0441('0x1d')](dials[_0x35a0c7[_0x0441('0x6')]])){dials[_0x35a0c7[_0x0441('0x6')]][_0x0441('0xb')]=_0x35a0c7['dialstatus'];if(_0x35a0c7[_0x0441('0xb')]==_0x0441('0x22')){dials[_0x35a0c7[_0x0441('0x6')]]=_[_0x0441('0x1e')](dials[_0x35a0c7[_0x0441('0x6')]],_0x35a0c7);dials[_0x35a0c7['uniqueid']][_0x0441('0x23')]=utils[_0x0441('0x1f')]();dials[_0x35a0c7[_0x0441('0x6')]][_0x0441('0x24')]=_0x0441('0x25');}}}catch(_0xd945ee){utils[_0x0441('0x1b')](_0xd945ee[_0x0441('0x16')]);}};exports[_0x0441('0x26')]=function(_0x557e7c){try{if(!_['isNil'](dials[_0x557e7c['uniqueid']])){dials[_0x557e7c[_0x0441('0x6')]]=_[_0x0441('0x1e')](dials[_0x557e7c[_0x0441('0x6')]],{'endtime':utils[_0x0441('0x1f')](),'lastevent':_0x0441('0x27')});dials[_0x557e7c['uniqueid']][_0x0441('0x28')]=utils[_0x0441('0x29')](dials[_0x557e7c['uniqueid']][_0x0441('0x2a')],dials[_0x557e7c[_0x0441('0x6')]]['starttime']);dials[_0x557e7c[_0x0441('0x6')]]['holdtime']=utils[_0x0441('0x29')](dials[_0x557e7c[_0x0441('0x6')]][_0x0441('0x23')]||dials[_0x557e7c[_0x0441('0x6')]][_0x0441('0x2a')],dials[_0x557e7c[_0x0441('0x6')]][_0x0441('0x2b')]);dials[_0x557e7c[_0x0441('0x6')]][_0x0441('0x2c')]=dials[_0x557e7c[_0x0441('0x6')]][_0x0441('0x23')]?utils['diffTime'](dials[_0x557e7c[_0x0441('0x6')]][_0x0441('0x2a')],dials[_0x557e7c[_0x0441('0x6')]][_0x0441('0x23')]):0x0;writeDB(dials[_0x557e7c[_0x0441('0x6')]]);}}catch(_0x13cc7f){utils[_0x0441('0x1b')](_0x13cc7f[_0x0441('0x16')]);}};