Built motion from commit (unavailable).|2.5.7
[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 _0xa100=['variable','value','assign','starttime','now','lastevent','ANSWER','answertime','connect','hangup','complete','duration','endtime','diffTime','billableseconds','lodash','util','./utils','info','format','DIAL|%s|%s|%s|%s|%s|%s','uniqueid','channel','dialstring','dialstatus','request','CreateVoiceDialReport','newexten','application','toLowerCase','set','startsWith','appdata','cdr(routeid)','split','error','stack','isNil'];(function(_0x8a30cf,_0x40f19b){var _0x20f439=function(_0x157a5d){while(--_0x157a5d){_0x8a30cf['push'](_0x8a30cf['shift']());}};_0x20f439(++_0x40f19b);}(_0xa100,0x1b1));var _0x0a10=function(_0x1c6f10,_0x5eed05){_0x1c6f10=_0x1c6f10-0x0;var _0x5a9683=_0xa100[_0x1c6f10];return _0x5a9683;};'use strict';var _=require(_0x0a10('0x0'));var util=require(_0x0a10('0x1'));var utils=require(_0x0a10('0x2'));var dials={};function writeDB(_0x366a73){utils[_0x0a10('0x3')](util[_0x0a10('0x4')](_0x0a10('0x5'),_0x366a73[_0x0a10('0x6')],_0x366a73[_0x0a10('0x7')],_0x366a73[_0x0a10('0x8')],_0x366a73['calleridnum'],_0x366a73['connectedlinenum'],_0x366a73[_0x0a10('0x9')]));utils[_0x0a10('0xa')](_0x0a10('0xb'),_0x366a73);delete dials[_0x366a73[_0x0a10('0x6')]];}exports[_0x0a10('0xc')]=function(_0x4b5db3){try{if(_0x4b5db3[_0x0a10('0xd')][_0x0a10('0xe')]()==_0x0a10('0xf')&&_[_0x0a10('0x10')](_0x4b5db3[_0x0a10('0x11')][_0x0a10('0xe')](),_0x0a10('0x12'))){var _0x4554af=_0x4b5db3[_0x0a10('0x11')][_0x0a10('0x13')]('=');dials[_0x4b5db3['uniqueid']]={'routeId':_0x4554af[0x1]};}}catch(_0x532e8b){utils[_0x0a10('0x14')](_0x532e8b[_0x0a10('0x15')]);}};exports['varset']=function(_0x57c37d){try{if(!_[_0x0a10('0x16')](_0x57c37d[_0x0a10('0x17')]['outboundrouteid'])){dials[_0x57c37d[_0x0a10('0x6')]]={'routeId':_0x57c37d[_0x0a10('0x18')]};}}catch(_0x4c869e){utils['error'](_0x4c869e[_0x0a10('0x15')]);}};exports['dialbegin']=function(_0x7fccae){try{if(!_['isNil'](dials[_0x7fccae[_0x0a10('0x6')]])){dials[_0x7fccae[_0x0a10('0x6')]]=_[_0x0a10('0x19')](dials[_0x7fccae[_0x0a10('0x6')]],_0x7fccae);dials[_0x7fccae[_0x0a10('0x6')]][_0x0a10('0x1a')]=utils[_0x0a10('0x1b')]();dials[_0x7fccae[_0x0a10('0x6')]][_0x0a10('0x1c')]='called';}}catch(_0x55d1c8){utils[_0x0a10('0x14')](_0x55d1c8[_0x0a10('0x15')]);}};exports['dialend']=function(_0x1e4f21){try{if(!_['isNil'](dials[_0x1e4f21[_0x0a10('0x6')]])){dials[_0x1e4f21['uniqueid']][_0x0a10('0x9')]=_0x1e4f21['dialstatus'];if(_0x1e4f21['dialstatus']==_0x0a10('0x1d')){dials[_0x1e4f21[_0x0a10('0x6')]]=_['assign'](dials[_0x1e4f21['uniqueid']],_0x1e4f21);dials[_0x1e4f21[_0x0a10('0x6')]][_0x0a10('0x1e')]=utils['now']();dials[_0x1e4f21[_0x0a10('0x6')]][_0x0a10('0x1c')]=_0x0a10('0x1f');}}}catch(_0x355c98){utils[_0x0a10('0x14')](_0x355c98['stack']);}};exports[_0x0a10('0x20')]=function(_0x42b63c){try{if(!_[_0x0a10('0x16')](dials[_0x42b63c[_0x0a10('0x6')]])){dials[_0x42b63c[_0x0a10('0x6')]]=_[_0x0a10('0x19')](dials[_0x42b63c[_0x0a10('0x6')]],{'endtime':utils[_0x0a10('0x1b')](),'lastevent':_0x0a10('0x21')});dials[_0x42b63c[_0x0a10('0x6')]][_0x0a10('0x22')]=utils['diffTime'](dials[_0x42b63c[_0x0a10('0x6')]][_0x0a10('0x23')],dials[_0x42b63c[_0x0a10('0x6')]][_0x0a10('0x1a')]);dials[_0x42b63c[_0x0a10('0x6')]]['holdtime']=utils[_0x0a10('0x24')](dials[_0x42b63c[_0x0a10('0x6')]][_0x0a10('0x1e')]||dials[_0x42b63c[_0x0a10('0x6')]][_0x0a10('0x23')],dials[_0x42b63c[_0x0a10('0x6')]][_0x0a10('0x1a')]);dials[_0x42b63c['uniqueid']][_0x0a10('0x25')]=dials[_0x42b63c[_0x0a10('0x6')]]['answertime']?utils[_0x0a10('0x24')](dials[_0x42b63c[_0x0a10('0x6')]]['endtime'],dials[_0x42b63c[_0x0a10('0x6')]][_0x0a10('0x1e')]):0x0;writeDB(dials[_0x42b63c[_0x0a10('0x6')]]);}}catch(_0xf2ce82){utils[_0x0a10('0x14')](_0xf2ce82['stack']);}};