Built motion from commit (unavailable).|2.5.29
[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 _0x33dc=['dialstatus','request','CreateVoiceDialReport','newexten','debug','[%s][dials][newexten]','[%s][dials][newexten]\x20application:%s\x20appdata:%s','application','appdata','toLowerCase','set','cdr(routeid)','split','error','varset','[%s][dials][varset]','isNil','variable','outboundrouteid','value','dialbegin','[%s][dials][dialbegin]','assign','starttime','now','lastevent','called','[%s][dials][hangup]\x20starttime:%s\x20lastevent:called','dialend','[%s][dials][dialend]','ANSWER','answertime','connect','[%s][dials][dialend]\x20dialstatus:%s\x20answertime:%s\x20lastevent:connect','[%s][dials][dialend]\x20dialstatus:%s','hangup','cause-txt','complete','duration','diffTime','endtime','holdtime','[%s][dials][hangup]','lodash','./utils','info','format','[%s][dials][writeDB]\x20channel:%s\x20dialstring:%s\x20calleridnum:%s\x20connectedlinenum:%s\x20dialstatus:%s','uniqueid','calleridnum','connectedlinenum'];(function(_0x16e354,_0xcf6b85){var _0x299971=function(_0x230a07){while(--_0x230a07){_0x16e354['push'](_0x16e354['shift']());}};_0x299971(++_0xcf6b85);}(_0x33dc,0x15d));var _0xc33d=function(_0x5959c9,_0x2ed153){_0x5959c9=_0x5959c9-0x0;var _0x4ffcbc=_0x33dc[_0x5959c9];return _0x4ffcbc;};'use strict';var _=require(_0xc33d('0x0'));var util=require('util');var utils=require(_0xc33d('0x1'));var dials={};function writeDB(_0x14a371){utils[_0xc33d('0x2')](util[_0xc33d('0x3')](_0xc33d('0x4'),_0x14a371[_0xc33d('0x5')],_0x14a371['channel'],_0x14a371['dialstring'],_0x14a371[_0xc33d('0x6')],_0x14a371[_0xc33d('0x7')],_0x14a371[_0xc33d('0x8')]));utils[_0xc33d('0x9')](_0xc33d('0xa'),_0x14a371);delete dials[_0x14a371[_0xc33d('0x5')]];}exports[_0xc33d('0xb')]=function(_0x2df186){try{utils[_0xc33d('0xc')](util[_0xc33d('0x3')](_0xc33d('0xd'),_0x2df186['uniqueid']),_0x2df186);utils[_0xc33d('0x2')](util[_0xc33d('0x3')](_0xc33d('0xe'),_0x2df186[_0xc33d('0x5')],_0x2df186[_0xc33d('0xf')],_0x2df186[_0xc33d('0x10')]));if(_0x2df186[_0xc33d('0xf')][_0xc33d('0x11')]()==_0xc33d('0x12')&&_['startsWith'](_0x2df186['appdata'][_0xc33d('0x11')](),_0xc33d('0x13'))){var _0x12d373=_0x2df186[_0xc33d('0x10')][_0xc33d('0x14')]('=');dials[_0x2df186[_0xc33d('0x5')]]={'routeId':_0x12d373[0x1]};}}catch(_0x35fada){utils[_0xc33d('0x15')](util['format'](_0xc33d('0xd'),_0x2df186[_0xc33d('0x5')]),_0x35fada);}};exports[_0xc33d('0x16')]=function(_0x267132){try{utils['debug'](util[_0xc33d('0x3')](_0xc33d('0x17'),_0x267132[_0xc33d('0x5')]),_0x267132);if(!_[_0xc33d('0x18')](_0x267132[_0xc33d('0x19')][_0xc33d('0x1a')])){utils['info'](util[_0xc33d('0x3')]('[%s][dials][varset]\x20variable:outboundrouteid\x20value:%s',_0x267132['uniqueid'],_0x267132[_0xc33d('0x1b')]));dials[_0x267132['uniqueid']]={'routeId':_0x267132[_0xc33d('0x1b')]};}}catch(_0x1fb544){utils[_0xc33d('0x15')](util['format'](_0xc33d('0x17'),_0x267132[_0xc33d('0x5')]),_0x1fb544);}};exports[_0xc33d('0x1c')]=function(_0x3c39cc){try{if(!_[_0xc33d('0x18')](dials[_0x3c39cc[_0xc33d('0x5')]])){utils['debug'](util[_0xc33d('0x3')](_0xc33d('0x1d'),_0x3c39cc['uniqueid']),_0x3c39cc);dials[_0x3c39cc[_0xc33d('0x5')]]=_[_0xc33d('0x1e')](dials[_0x3c39cc['uniqueid']],_0x3c39cc);dials[_0x3c39cc[_0xc33d('0x5')]][_0xc33d('0x1f')]=utils[_0xc33d('0x20')]();dials[_0x3c39cc[_0xc33d('0x5')]][_0xc33d('0x21')]=_0xc33d('0x22');utils[_0xc33d('0x2')](util[_0xc33d('0x3')](_0xc33d('0x23'),_0x3c39cc['uniqueid'],dials[_0x3c39cc[_0xc33d('0x5')]][_0xc33d('0x1f')]));}}catch(_0xdcdb01){utils[_0xc33d('0x15')](util[_0xc33d('0x3')](_0xc33d('0x1d'),_0x3c39cc['uniqueid']),_0xdcdb01);}};exports[_0xc33d('0x24')]=function(_0x43b103){try{if(!_[_0xc33d('0x18')](dials[_0x43b103[_0xc33d('0x5')]])){utils['debug'](util[_0xc33d('0x3')](_0xc33d('0x25'),_0x43b103[_0xc33d('0x5')]),_0x43b103);dials[_0x43b103[_0xc33d('0x5')]][_0xc33d('0x8')]=_0x43b103[_0xc33d('0x8')];if(_0x43b103[_0xc33d('0x8')]==_0xc33d('0x26')){dials[_0x43b103[_0xc33d('0x5')]]=_[_0xc33d('0x1e')](dials[_0x43b103['uniqueid']],_0x43b103);dials[_0x43b103[_0xc33d('0x5')]][_0xc33d('0x27')]=utils['now']();dials[_0x43b103[_0xc33d('0x5')]][_0xc33d('0x21')]=_0xc33d('0x28');utils[_0xc33d('0x2')](util['format'](_0xc33d('0x29'),_0x43b103[_0xc33d('0x5')],_0x43b103[_0xc33d('0x8')],dials[_0x43b103[_0xc33d('0x5')]][_0xc33d('0x27')]));}else{utils[_0xc33d('0x2')](util[_0xc33d('0x3')](_0xc33d('0x2a'),_0x43b103[_0xc33d('0x5')],_0x43b103[_0xc33d('0x8')]));}}}catch(_0x20d33d){utils[_0xc33d('0x15')](util[_0xc33d('0x3')](_0xc33d('0x25'),_0x43b103['uniqueid']),_0x20d33d);}};exports[_0xc33d('0x2b')]=function(_0x560a95){try{if(!_[_0xc33d('0x18')](dials[_0x560a95[_0xc33d('0x5')]])){utils[_0xc33d('0xc')](util[_0xc33d('0x3')]('[%s][dials][hangup]',_0x560a95[_0xc33d('0x5')]),_0x560a95);utils['info'](util[_0xc33d('0x3')]('[%s][dials][hangup]\x20calleridnum:%s\x20calleridname:%s\x20lastevent:complete\x20reason:%s',_0x560a95[_0xc33d('0x5')],_0x560a95[_0xc33d('0x6')],_0x560a95['calleridname'],_0x560a95[_0xc33d('0x2c')]));dials[_0x560a95[_0xc33d('0x5')]]=_[_0xc33d('0x1e')](dials[_0x560a95[_0xc33d('0x5')]],{'endtime':utils[_0xc33d('0x20')](),'lastevent':_0xc33d('0x2d')});dials[_0x560a95[_0xc33d('0x5')]][_0xc33d('0x2e')]=utils[_0xc33d('0x2f')](dials[_0x560a95[_0xc33d('0x5')]][_0xc33d('0x30')],dials[_0x560a95['uniqueid']][_0xc33d('0x1f')]);dials[_0x560a95[_0xc33d('0x5')]][_0xc33d('0x31')]=utils[_0xc33d('0x2f')](dials[_0x560a95[_0xc33d('0x5')]]['answertime']||dials[_0x560a95[_0xc33d('0x5')]][_0xc33d('0x30')],dials[_0x560a95[_0xc33d('0x5')]][_0xc33d('0x1f')]);dials[_0x560a95[_0xc33d('0x5')]]['billableseconds']=dials[_0x560a95[_0xc33d('0x5')]][_0xc33d('0x27')]?utils[_0xc33d('0x2f')](dials[_0x560a95['uniqueid']][_0xc33d('0x30')],dials[_0x560a95[_0xc33d('0x5')]][_0xc33d('0x27')]):0x0;writeDB(dials[_0x560a95['uniqueid']]);}}catch(_0x43baaa){utils['error'](util[_0xc33d('0x3')](_0xc33d('0x32'),_0x560a95[_0xc33d('0x5')]),_0x43baaa);}};