Built motion from commit (unavailable).|2.4.4
[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 _0xb202=['assign','starttime','now','lastevent','called','ANSWER','answertime','hangup','complete','duration','diffTime','endtime','holdtime','billableseconds','lodash','./utils','info','format','DIAL|%s|%s|%s|%s|%s|%s','uniqueid','channel','dialstring','calleridnum','connectedlinenum','dialstatus','request','CreateVoiceDialReport','application','toLowerCase','startsWith','appdata','cdr(routeid)','split','error','stack','varset','isNil','outboundrouteid','value','dialbegin'];(function(_0xa3f836,_0x2b2bd4){var _0xeef8e2=function(_0x53481c){while(--_0x53481c){_0xa3f836['push'](_0xa3f836['shift']());}};_0xeef8e2(++_0x2b2bd4);}(_0xb202,0x1c6));var _0x2b20=function(_0x5d4607,_0x6b5e7b){_0x5d4607=_0x5d4607-0x0;var _0x5e4a86=_0xb202[_0x5d4607];return _0x5e4a86;};'use strict';var _=require(_0x2b20('0x0'));var util=require('util');var utils=require(_0x2b20('0x1'));var dials={};function writeDB(_0x50507f){utils[_0x2b20('0x2')](util[_0x2b20('0x3')](_0x2b20('0x4'),_0x50507f[_0x2b20('0x5')],_0x50507f[_0x2b20('0x6')],_0x50507f[_0x2b20('0x7')],_0x50507f[_0x2b20('0x8')],_0x50507f[_0x2b20('0x9')],_0x50507f[_0x2b20('0xa')]));utils[_0x2b20('0xb')](_0x2b20('0xc'),_0x50507f);delete dials[_0x50507f['uniqueid']];}exports['newexten']=function(_0x1d280a){try{if(_0x1d280a[_0x2b20('0xd')][_0x2b20('0xe')]()=='set'&&_[_0x2b20('0xf')](_0x1d280a[_0x2b20('0x10')][_0x2b20('0xe')](),_0x2b20('0x11'))){var _0x58f0f1=_0x1d280a[_0x2b20('0x10')][_0x2b20('0x12')]('=');dials[_0x1d280a[_0x2b20('0x5')]]={'routeId':_0x58f0f1[0x1]};}}catch(_0x234b07){utils[_0x2b20('0x13')](_0x234b07[_0x2b20('0x14')]);}};exports[_0x2b20('0x15')]=function(_0x4aba17){try{if(!_[_0x2b20('0x16')](_0x4aba17['variable'][_0x2b20('0x17')])){dials[_0x4aba17[_0x2b20('0x5')]]={'routeId':_0x4aba17[_0x2b20('0x18')]};}}catch(_0x22a2ab){utils['error'](_0x22a2ab[_0x2b20('0x14')]);}};exports[_0x2b20('0x19')]=function(_0x307a01){try{if(!_[_0x2b20('0x16')](dials[_0x307a01[_0x2b20('0x5')]])){dials[_0x307a01['uniqueid']]=_[_0x2b20('0x1a')](dials[_0x307a01[_0x2b20('0x5')]],_0x307a01);dials[_0x307a01[_0x2b20('0x5')]][_0x2b20('0x1b')]=utils[_0x2b20('0x1c')]();dials[_0x307a01[_0x2b20('0x5')]][_0x2b20('0x1d')]=_0x2b20('0x1e');}}catch(_0x1d0a91){utils['error'](_0x1d0a91['stack']);}};exports['dialend']=function(_0xad1ab7){try{if(!_['isNil'](dials[_0xad1ab7['uniqueid']])){dials[_0xad1ab7['uniqueid']][_0x2b20('0xa')]=_0xad1ab7['dialstatus'];if(_0xad1ab7[_0x2b20('0xa')]==_0x2b20('0x1f')){dials[_0xad1ab7[_0x2b20('0x5')]]=_[_0x2b20('0x1a')](dials[_0xad1ab7[_0x2b20('0x5')]],_0xad1ab7);dials[_0xad1ab7[_0x2b20('0x5')]][_0x2b20('0x20')]=utils[_0x2b20('0x1c')]();dials[_0xad1ab7[_0x2b20('0x5')]][_0x2b20('0x1d')]='connect';}}}catch(_0x4a7350){utils[_0x2b20('0x13')](_0x4a7350[_0x2b20('0x14')]);}};exports[_0x2b20('0x21')]=function(_0x235e66){try{if(!_['isNil'](dials[_0x235e66[_0x2b20('0x5')]])){dials[_0x235e66[_0x2b20('0x5')]]=_['assign'](dials[_0x235e66[_0x2b20('0x5')]],{'endtime':utils[_0x2b20('0x1c')](),'lastevent':_0x2b20('0x22')});dials[_0x235e66[_0x2b20('0x5')]][_0x2b20('0x23')]=utils[_0x2b20('0x24')](dials[_0x235e66[_0x2b20('0x5')]][_0x2b20('0x25')],dials[_0x235e66[_0x2b20('0x5')]][_0x2b20('0x1b')]);dials[_0x235e66[_0x2b20('0x5')]][_0x2b20('0x26')]=utils[_0x2b20('0x24')](dials[_0x235e66[_0x2b20('0x5')]][_0x2b20('0x20')]||dials[_0x235e66[_0x2b20('0x5')]]['endtime'],dials[_0x235e66[_0x2b20('0x5')]][_0x2b20('0x1b')]);dials[_0x235e66[_0x2b20('0x5')]][_0x2b20('0x27')]=dials[_0x235e66[_0x2b20('0x5')]][_0x2b20('0x20')]?utils[_0x2b20('0x24')](dials[_0x235e66[_0x2b20('0x5')]][_0x2b20('0x25')],dials[_0x235e66['uniqueid']][_0x2b20('0x20')]):0x0;writeDB(dials[_0x235e66[_0x2b20('0x5')]]);}}catch(_0x3655cb){utils[_0x2b20('0x13')](_0x3655cb[_0x2b20('0x14')]);}};