Built motion from commit (unavailable).|2.5.10
[motion2.git] / server / services / ami / preview / util / util.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 _0xfd17=['pTalking','[decrementTalkink]\x20object\x20talking\x20is\x20negative','[decrementTalkink]\x20is\x20null\x20or\x20undefined','IsNotLoggedIn','buildObj','interface','mandatoryDisposition','queue','agentReadyId','not_inuse','status','reachable','push','createBody','idContact','type','scheduledat','countglobal','callbackuniqueid','callbackat','recallme','sipcallid','xmd-phone','xmd-listid','xmd-dialurl','xmd-dialtimeout','xmd-dialoptions','xmd-dialid','xmd-dialchannel','xmd-contactid','xmd-cdrtype','xmd-callerid','xmd-agiafter','xmd-agi','rtpaudioqos','rtpaudioqosbridged','rtpaudioqosjitter','rtpaudioqosjitterbridged','rtpaudioqosloss','rtpaudioqoslossbridged','rtpaudioqosrtt','rtpaudioqosrttbridged','bridgepeer','bridgepvtcallid','getCallerIdRandom','\x5cw{0,','pow','replace','extractCalleridName','match','extractCalleridNumber','util','lodash','moment','../../../../config/logger','env','XCALLY_IP_AGI','127.0.0.1','milliseconds','diff','seconds','loggerCatch','info','inspect','loggerError','error','message','string','isEmpty','format','\x22%s\x22\x20<%s>','isUndefined','\x22\x22\x20<>','isActive','addVariables','Queue','name','calleridname','calleridnum','ContactId','dialer','VoiceQueueId','\x22rtTxX%s%s\x22','dialQueueProject2','monitor_format','U(xcally-mixmonitor-context)','dialPreviewUrl','dialQueueProject','\x22agi://%s/square,%s\x22','NONE','originatecalleridnum','xcally-motion-preview','_XCALLY_MIXMONITOR_FORMAT','_XCALLY_MIXMONITOR_UNIQUEID','Contact','isNil','createdAt','%s%s','toUpper','toLowerVariables','hasOwnProperty','toLower','originated','[updateOriginated]\x20object\x20originated\x20is\x20negative','[updateOriginated]\x20is\x20null\x20or\x20undefined','logBlacklist','YYYY-MM-DD\x20HH:mm:ss','Blacklist','starttime','responsetime','state','statedesc','ringtime','logLookAgent','membername','UserId','logCustomer','endtime','talktime','answertime','variablesAction','uniqueid','originate','channelAgent','from-sip','timeout','totalGlobal','countbusyretry','countcongestionretry','countnoanswerretry','countagentrejectretry','countnosuchnumberretry','cloneAction','Global','scheduledAt','active','add','minutes','ListId','decrementTalkink'];(function(_0x28527b,_0x1e39e4){var _0x403088=function(_0x792283){while(--_0x792283){_0x28527b['push'](_0x28527b['shift']());}};_0x403088(++_0x1e39e4);}(_0xfd17,0x14b));var _0x7fd1=function(_0x15f236,_0x59a12b){_0x15f236=_0x15f236-0x0;var _0x3645c0=_0xfd17[_0x15f236];return _0x3645c0;};'use strict';var util=require(_0x7fd1('0x0'));var _=require(_0x7fd1('0x1'));var moment=require(_0x7fd1('0x2'));var logger=require(_0x7fd1('0x3'))('preview');var ipAgi=process[_0x7fd1('0x4')][_0x7fd1('0x5')]||_0x7fd1('0x6');function getSeconds(_0x21d22e,_0x41a299){var _0x5e647f=moment(_0x21d22e)[_0x7fd1('0x7')](0x0);var _0x44d01b=moment(_0x41a299)[_0x7fd1('0x7')](0x0);return _0x5e647f[_0x7fd1('0x8')](_0x44d01b,_0x7fd1('0x9'));}exports[_0x7fd1('0xa')]=function(_0x3be51e){return function(_0x18c978){logger['error'](_0x3be51e,util['inspect'](_0x18c978,{'showHidden':![],'depth':null}));};};exports['logger']=function(_0x30ed63,_0x570cb2){logger[_0x7fd1('0xb')](_0x30ed63,util[_0x7fd1('0xc')](_0x570cb2,{'showHidden':![],'depth':null}));};exports[_0x7fd1('0xd')]=function(_0x13da16,_0x177d3f){logger[_0x7fd1('0xe')](_0x13da16,util[_0x7fd1('0xc')](_0x177d3f,{'showHidden':![],'depth':null}));};exports['logger2']=function(_0x471c3a){return function(_0x2ca5f8){logger['info'](_0x471c3a,util[_0x7fd1('0xc')](_0x2ca5f8,{'showHidden':![],'depth':null}));};};exports[_0x7fd1('0xf')]=function(_0x40b12e,_0x40f1d5,_0x3feba1){return{'message':_0x40b12e,'unlock':_0x40f1d5,'active':_0x3feba1};};exports['getCallerId']=function(_0x51e176,_0x45aebe,_0x195459){if(!_['isUndefined'](_0x195459)&&_0x7fd1('0x10')===typeof _0x195459&&!_[_0x7fd1('0x11')](_0x195459)){if(!_['isUndefined'](_0x45aebe)&&_0x7fd1('0x10')===typeof _0x45aebe&&!_['isEmpty'](_0x45aebe)){return util[_0x7fd1('0x12')](_0x7fd1('0x13'),_0x45aebe,_0x195459);}return util['format'](_0x7fd1('0x13'),_0x195459,_0x195459);}if(!_[_0x7fd1('0x14')](_0x51e176)&&'string'===typeof _0x51e176&&!_[_0x7fd1('0x11')](_0x51e176)){return _0x51e176;}return _0x7fd1('0x15');};exports[_0x7fd1('0x16')]=function(_0x43b59e){if(_['isNil'](_0x43b59e)){return![];}return _0x43b59e;};exports[_0x7fd1('0x17')]=function(_0x182215,_0x36af15,_0x16ca2c,_0x3bbc4e,_0xa4b859,_0xd8c7b6){var _0x1c6e00={'XMD-QUEUE':_0x36af15[_0x7fd1('0x18')]?_0x36af15[_0x7fd1('0x18')][_0x7fd1('0x19')]:'','XMD-CALLERID':_0x3bbc4e,'XMD-CALLERID-PREVIEW':_0xd8c7b6?util[_0x7fd1('0x12')](_0x7fd1('0x13'),_0xd8c7b6[_0x7fd1('0x1a')],_0xd8c7b6[_0x7fd1('0x1b')]):_0x3bbc4e,'XMD-DIALID':_0xa4b859,'XMD-CONTACTID':_0x36af15[_0x7fd1('0x1c')],'XMD-CDRTYPE':_0x7fd1('0x1d'),'CALLERID(all)':_0x3bbc4e,'XMD-VOICEQUEUEID':_0x36af15[_0x7fd1('0x1e')],'XMD-DIALCHANNEL':_0x16ca2c,'XMD-DIALTIMEOUT':_0x182215['dialOriginateTimeout']||0x1e,'XMD-DIALOPTIONS':util[_0x7fd1('0x12')](_0x7fd1('0x1f'),_0x182215[_0x7fd1('0x20')]?'g':'',_['isEmpty'](_0x182215[_0x7fd1('0x21')])?'':_0x7fd1('0x22')),'XMD-DIALURL':_0x182215[_0x7fd1('0x23')]||'','XMD-AGI':_0x182215[_0x7fd1('0x24')]?util[_0x7fd1('0x12')](_0x7fd1('0x25'),ipAgi,_0x182215['dialQueueProject']):_0x7fd1('0x26'),'XMD-AGIAFTER':_0x182215[_0x7fd1('0x20')]?util[_0x7fd1('0x12')](_0x7fd1('0x25'),ipAgi,_0x182215['dialQueueProject2']):'NONE','XMD-ORIGINATECALLERIDNUM':_0xd8c7b6?_0xd8c7b6[_0x7fd1('0x27')]:'','XMD-ORIGINATECALLERIDNAME':_0xd8c7b6?_0xd8c7b6['originatecalleridname']:'','XMD-DESTINATION':_0x7fd1('0x28')};if(!_[_0x7fd1('0x11')](_0x182215[_0x7fd1('0x21')])){_0x1c6e00[util['format']('%s',_0x7fd1('0x29'))]=_0x182215[_0x7fd1('0x21')];_0x1c6e00[util['format']('%s',_0x7fd1('0x2a'))]=_0xa4b859;}if(_0x36af15&&_0x36af15['Contact']){for(var _0x42cb24 in _0x36af15['Contact']){if(_0x36af15[_0x7fd1('0x2b')]['hasOwnProperty'](_0x42cb24)){if(!_[_0x7fd1('0x2c')](_0x36af15[_0x7fd1('0x2b')][_0x42cb24])&&_0x42cb24!=='id'&&_0x42cb24!=='tags'&&_0x42cb24!==_0x7fd1('0x2d')&&_0x42cb24!=='updatedAt'){_0x1c6e00[util[_0x7fd1('0x12')](_0x7fd1('0x2e'),'XMD-',_[_0x7fd1('0x2f')](_0x42cb24))]=_0x36af15[_0x7fd1('0x2b')][_0x42cb24];}}}}return _0x1c6e00;};exports[_0x7fd1('0x30')]=function(_0x30ee5f){var _0x44d0eb={};for(var _0x42f882 in _0x30ee5f){if(_0x30ee5f[_0x7fd1('0x31')](_0x42f882)){_0x44d0eb[util[_0x7fd1('0x12')]('%s',_[_0x7fd1('0x32')](_0x42f882))]=_0x30ee5f[_0x42f882];}}return{'variables':_0x44d0eb};};exports['updateOriginated']=function(_0x5bc64c,_0x15d73f){if(!_[_0x7fd1('0x2c')](_0x5bc64c)){if(_0x5bc64c[_0x7fd1('0x31')]('originated')){if(_0x5bc64c['originated']>0x0){_0x5bc64c[_0x7fd1('0x33')]-=0x1;}else{logger['error'](_0x7fd1('0x34'),_0x15d73f);}}}else{logger[_0x7fd1('0xe')](_0x7fd1('0x35'),_0x15d73f);}};exports[_0x7fd1('0x36')]=function(_0x5cab2c){var _0x51b253=moment()['format'](_0x7fd1('0x37'));_0x5cab2c['state']=0xd;_0x5cab2c['statedesc']=_0x7fd1('0x38');_0x5cab2c[_0x7fd1('0x39')]=_0x51b253;_0x5cab2c[_0x7fd1('0x3a')]=_0x51b253;_0x5cab2c['endtime']=_0x51b253;};exports['logAgent']=function(_0x1fefca,_0x2e7094,_0x2321e2){var _0x514922=moment()[_0x7fd1('0x12')](_0x7fd1('0x37'));_0x1fefca[_0x7fd1('0x3b')]=_0x2e7094;_0x1fefca[_0x7fd1('0x3c')]=_0x2321e2;_0x1fefca[_0x7fd1('0x3a')]=_0x514922;_0x1fefca[_0x7fd1('0x3d')]=getSeconds(_0x1fefca['responsetime'],_0x1fefca[_0x7fd1('0x39')]);};exports[_0x7fd1('0x3e')]=function(_0x22db27,_0xb71acc,_0x31984c){_0x22db27[_0x7fd1('0x3f')]=_0xb71acc;_0x22db27[_0x7fd1('0x40')]=_0x31984c;};exports[_0x7fd1('0x41')]=function(_0x182366,_0x5e73c6,_0x570201){var _0x5823e0=moment()[_0x7fd1('0x12')](_0x7fd1('0x37'));_0x182366['state']=_0x5e73c6;_0x182366[_0x7fd1('0x3c')]=_0x570201;_0x182366[_0x7fd1('0x3a')]=_0x182366[_0x7fd1('0x3a')]?_0x182366[_0x7fd1('0x3a')]:_0x5823e0;_0x182366[_0x7fd1('0x42')]=_0x182366['endtime']?_0x182366[_0x7fd1('0x42')]:_0x5823e0;_0x182366[_0x7fd1('0x3d')]=getSeconds(_0x182366[_0x7fd1('0x3a')]||0x0,_0x182366[_0x7fd1('0x39')]||0x0);_0x182366[_0x7fd1('0x43')]=_0x182366['answertime']?getSeconds(_0x182366[_0x7fd1('0x42')],_0x182366[_0x7fd1('0x44')]):0x0;};exports['isFailure']=function(_0x5153c0){return _0x5153c0==='Failure';};exports[_0x7fd1('0x45')]=function(_0x384dec,_0x38b87f,_0x37deb4,_0x8e5cae,_0x40341e){var _0x2c3c83=_0x8e5cae?'RECALL':_0x384dec[_0x7fd1('0x1a')];_0x2c3c83=_0x40341e?'BOOKED':_0x2c3c83;return{'actionid':_0x384dec[_0x7fd1('0x46')],'action':_0x7fd1('0x47'),'channel':_0x384dec[_0x7fd1('0x48')],'callerid':util[_0x7fd1('0x12')](_0x7fd1('0x13'),_0x2c3c83,_0x384dec[_0x7fd1('0x1b')]),'Exten':'xcally-motion-preview','Context':_0x7fd1('0x49'),'Priority':'1','variable':_0x37deb4,'timeout':(_0x38b87f[_0x7fd1('0x4a')]||0x1e)*0x3e8,'async':!![],'channelid':_0x384dec[_0x7fd1('0x46')]};};exports[_0x7fd1('0x4b')]=function(_0x12c511){return _0x12c511[_0x7fd1('0x4c')]+_0x12c511[_0x7fd1('0x4d')]+_0x12c511[_0x7fd1('0x4e')]+_0x12c511[_0x7fd1('0x4f')]+_0x12c511[_0x7fd1('0x50')];};exports[_0x7fd1('0x51')]=function(_0xe87357){var _0x53af97=_['clone'](_0xe87357);_0x53af97[_0x7fd1('0x3b')]=0xf;_0x53af97[_0x7fd1('0x3c')]=_0x7fd1('0x52');return _0x53af97;};exports[_0x7fd1('0x53')]=function(_0x35b0fe,_0x6789ce,_0x1f01b5){var _0x2ffeb3={};_0x2ffeb3[_0x6789ce]=_0x35b0fe[_0x6789ce];_0x2ffeb3[_0x7fd1('0x54')]=![];_0x2ffeb3['scheduledat']=moment()[_0x7fd1('0x55')](_0x1f01b5,_0x7fd1('0x56'))[_0x7fd1('0x12')](_0x7fd1('0x37'));_0x2ffeb3[_0x7fd1('0x1c')]=_0x35b0fe[_0x7fd1('0x1c')];_0x2ffeb3[_0x7fd1('0x57')]=_0x35b0fe[_0x7fd1('0x57')];_0x2ffeb3[_0x7fd1('0x1e')]=_0x35b0fe[_0x7fd1('0x1e')]||undefined;return _0x2ffeb3;};exports[_0x7fd1('0x58')]=function(_0x3e7361,_0x1ddf76){if(!_['isNil'](_0x3e7361)){if(_0x3e7361[_0x7fd1('0x59')]>0x0){_0x3e7361['pTalking']-=0x1;}else{logger[_0x7fd1('0xe')](_0x1ddf76,_0x7fd1('0x5a'));}}else{logger[_0x7fd1('0xe')](_0x1ddf76,_0x7fd1('0x5b'));}};exports[_0x7fd1('0x5c')]=function(_0x88b084){if(_0x88b084<=0x0){return!![];}return![];};exports[_0x7fd1('0x5d')]=function(_0x2536a9,_0x4c053a,_0x913c42){_0x2536a9['lastevent']=_0x4c053a;_0x2536a9[_0x7fd1('0x19')]=_0x2536a9['queue'];_0x2536a9[_0x7fd1('0x5e')]=_0x2536a9['channelAgent'];if(_0x913c42){_0x2536a9[_0x7fd1('0x5f')]=_0x913c42[_0x7fd1('0x5f')];}return _0x2536a9;};exports['buildAcw']=function(_0x389d31){var _0x4c0583={};_0x4c0583[_0x7fd1('0x60')]=_0x389d31[_0x7fd1('0x60')];_0x4c0583['interface']=_0x389d31[_0x7fd1('0x48')];_0x4c0583[_0x7fd1('0x46')]=_0x389d31[_0x7fd1('0x46')];return _0x4c0583;};exports[_0x7fd1('0x61')]=function(_0x119704){var _0x317cc5=[];for(var _0x120e2b in _0x119704){if(_0x119704[_0x7fd1('0x31')](_0x120e2b)){if(!_[_0x7fd1('0x2c')](_0x119704[_0x120e2b])&&_0x119704[_0x120e2b][_0x7fd1('0x3b')]===_0x7fd1('0x62')&&_0x119704[_0x120e2b][_0x7fd1('0x63')]===_0x7fd1('0x64')){_0x317cc5[_0x7fd1('0x65')](_0x119704[_0x120e2b]['id']);}}}return _0x317cc5;};exports['getDiff']=function(_0x4bd309){var _0x4757c0=moment()['milliseconds'](0x0);var _0x288146=moment(_0x4bd309)[_0x7fd1('0x7')](0x0);return _0x4757c0[_0x7fd1('0x8')](_0x288146,_0x7fd1('0x9'));};exports[_0x7fd1('0x66')]=function(_0x1113f2){return{'active':![],'recallme':![],'UserId':null,'ContactId':_0x1113f2[_0x7fd1('0x1c')],'ListId':_0x1113f2[_0x7fd1('0x57')],'VoiceQueueId':_0x1113f2[_0x7fd1('0x1e')]||undefined,'CampaignId':_0x1113f2['CampaignId']||undefined};};exports['filterKey']=function(_0x1d3d80){if(_0x1d3d80===_0x7fd1('0x46')||_0x1d3d80===_0x7fd1('0x67')||_0x1d3d80===_0x7fd1('0x60')||_0x1d3d80===_0x7fd1('0x68')||_0x1d3d80==='campaigntype'||_0x1d3d80==='dialAnswer'||_0x1d3d80===_0x7fd1('0x3f')||_0x1d3d80===_0x7fd1('0x48')||_0x1d3d80===_0x7fd1('0x1a')||_0x1d3d80===_0x7fd1('0x54')||_0x1d3d80==='calleridnum'||_0x1d3d80===_0x7fd1('0x69')||_0x1d3d80==='countbusyretry'||_0x1d3d80===_0x7fd1('0x4d')||_0x1d3d80===_0x7fd1('0x4e')||_0x1d3d80===_0x7fd1('0x6a')||_0x1d3d80==='callback'||_0x1d3d80===_0x7fd1('0x6b')||_0x1d3d80===_0x7fd1('0x6c')||_0x1d3d80===_0x7fd1('0x6d')||_0x1d3d80===_0x7fd1('0x1c')||_0x1d3d80===_0x7fd1('0x57')||_0x1d3d80===_0x7fd1('0x40')||_0x1d3d80===_0x7fd1('0x1e')||_0x1d3d80===_0x7fd1('0x6e')||_0x1d3d80==='xmd-voicequeueid'||_0x1d3d80==='xmd-queue'||_0x1d3d80===_0x7fd1('0x6f')||_0x1d3d80===_0x7fd1('0x70')||_0x1d3d80===_0x7fd1('0x71')||_0x1d3d80===_0x7fd1('0x72')||_0x1d3d80===_0x7fd1('0x73')||_0x1d3d80===_0x7fd1('0x74')||_0x1d3d80===_0x7fd1('0x75')||_0x1d3d80===_0x7fd1('0x76')||_0x1d3d80===_0x7fd1('0x77')||_0x1d3d80===_0x7fd1('0x78')||_0x1d3d80===_0x7fd1('0x79')||_0x1d3d80===_0x7fd1('0x7a')||_0x1d3d80===_0x7fd1('0x7b')||_0x1d3d80===_0x7fd1('0x7c')||_0x1d3d80===_0x7fd1('0x7d')||_0x1d3d80===_0x7fd1('0x7e')||_0x1d3d80===_0x7fd1('0x7f')||_0x1d3d80===_0x7fd1('0x80')||_0x1d3d80===_0x7fd1('0x81')||_0x1d3d80===_0x7fd1('0x82')||_0x1d3d80===_0x7fd1('0x7b')||_0x1d3d80===_0x7fd1('0x7c')||_0x1d3d80===_0x7fd1('0x7d')||_0x1d3d80===_0x7fd1('0x7e')||_0x1d3d80===_0x7fd1('0x7f')||_0x1d3d80===_0x7fd1('0x80')||_0x1d3d80===_0x7fd1('0x81')||_0x1d3d80==='rtpaudioqosrttbridged'||_0x1d3d80===_0x7fd1('0x83')||_0x1d3d80===_0x7fd1('0x84')||_0x1d3d80===_0x7fd1('0x3b')||_0x1d3d80===_0x7fd1('0x3c')){return![];}return!![];};exports[_0x7fd1('0x85')]=function(_0x283142,_0x2bdd71){var _0x1f68f5,_0x474b0a,_0x31c156;if(_0x2bdd71<=0x0){_0x2bdd71=0x1;}_0x1f68f5=new RegExp(_0x7fd1('0x86')+_0x2bdd71+'}$');_0x474b0a=Math['pow'](0xa,_0x2bdd71-0x1);_0x31c156=Math[_0x7fd1('0x87')](0xa,_0x2bdd71)-0x1;return util[_0x7fd1('0x12')]('%s',_[_0x7fd1('0x88')](_0x283142,_0x1f68f5,_['random'](_0x474b0a,_0x31c156)));};exports[_0x7fd1('0x89')]=function(_0x1105cb){var _0x22ddbf=_0x1105cb[_0x7fd1('0x8a')](/"(.*?)"/);return _0x22ddbf?_0x22ddbf[0x1]:_0x1105cb;};exports[_0x7fd1('0x8b')]=function(_0x31f09c){var _0x3731e9=_0x31f09c[_0x7fd1('0x8a')](/<(.*?)>/);return _0x3731e9?_0x3731e9[0x1]:_0x31f09c;};