Built motion from commit (unavailable).|2.4.21
[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 _0x736a=['bridgepeer','bridgepvtcallid','getCallerIdRandom','\x5cw{0,','pow','replace','random','extractCalleridName','match','extractCalleridNumber','lodash','moment','../../../../config/logger','preview','env','XCALLY_IP_AGI','127.0.0.1','milliseconds','diff','error','inspect','info','loggerError','logger2','message','getCallerId','isUndefined','string','format','\x22%s\x22\x20<%s>','\x22\x22\x20<>','isActive','addVariables','Queue','calleridname','calleridnum','ContactId','dialer','VoiceQueueId','dialOriginateTimeout','\x22rtTxX%s%s\x22','dialQueueProject2','isEmpty','monitor_format','U(xcally-mixmonitor-context)','dialPreviewUrl','dialQueueProject','\x22agi://%s/square,%s\x22','NONE','originatecalleridnum','originatecalleridname','xcally-motion-preview','_XCALLY_MIXMONITOR_FORMAT','_XCALLY_MIXMONITOR_UNIQUEID','Contact','hasOwnProperty','tags','createdAt','%s%s','XMD-','toUpper','toLowerVariables','toLower','isNil','originated','[updateOriginated]\x20is\x20null\x20or\x20undefined','logBlacklist','YYYY-MM-DD\x20HH:mm:ss','statedesc','Blacklist','starttime','state','responsetime','ringtime','membername','logCustomer','endtime','answertime','isFailure','variablesAction','RECALL','BOOKED','uniqueid','originate','channelAgent','from-sip','timeout','totalGlobal','countbusyretry','countcongestionretry','countnoanswerretry','cloneAction','clone','Global','scheduledAt','active','scheduledat','ListId','decrementTalkink','[decrementTalkink]\x20is\x20null\x20or\x20undefined','name','queue','interface','buildAcw','agentReadyId','not_inuse','reachable','push','seconds','createBody','CampaignId','filterKey','idContact','type','campaigntype','dialAnswer','callback','callbackuniqueid','callbackat','recallme','UserId','sipcallid','xmd-voicequeueid','xmd-queue','xmd-phone','xmd-dialtimeout','xmd-dialoptions','xmd-dialid','xmd-contactid','xmd-cdrtype','xmd-agiafter','xmd-agi','rtpaudioqos','rtpaudioqosbridged','rtpaudioqosjitter','rtpaudioqosjitterbridged','rtpaudioqoslossbridged','rtpaudioqosrtt','rtpaudioqosrttbridged','rtpaudioqosloss'];(function(_0x413aea,_0x35ceda){var _0x59a0b5=function(_0x17b345){while(--_0x17b345){_0x413aea['push'](_0x413aea['shift']());}};_0x59a0b5(++_0x35ceda);}(_0x736a,0x96));var _0xa736=function(_0x45bf86,_0x75586e){_0x45bf86=_0x45bf86-0x0;var _0x1f02b7=_0x736a[_0x45bf86];return _0x1f02b7;};'use strict';var util=require('util');var _=require(_0xa736('0x0'));var moment=require(_0xa736('0x1'));var logger=require(_0xa736('0x2'))(_0xa736('0x3'));var ipAgi=process[_0xa736('0x4')][_0xa736('0x5')]||_0xa736('0x6');function getSeconds(_0x192f17,_0x2ccb98){var _0x3bd7dd=moment(_0x192f17)[_0xa736('0x7')](0x0);var _0x2c8c5c=moment(_0x2ccb98)[_0xa736('0x7')](0x0);return _0x3bd7dd[_0xa736('0x8')](_0x2c8c5c,'seconds');}exports['loggerCatch']=function(_0x70a3cf){return function(_0xd9ba88){logger[_0xa736('0x9')](_0x70a3cf,util[_0xa736('0xa')](_0xd9ba88,{'showHidden':![],'depth':null}));};};exports['logger']=function(_0x22463e,_0x360df7){logger[_0xa736('0xb')](_0x22463e,util['inspect'](_0x360df7,{'showHidden':![],'depth':null}));};exports[_0xa736('0xc')]=function(_0x37bd95,_0x5b0bdc){logger[_0xa736('0x9')](_0x37bd95,util[_0xa736('0xa')](_0x5b0bdc,{'showHidden':![],'depth':null}));};exports[_0xa736('0xd')]=function(_0x34a1e5){return function(_0x1010cb){logger[_0xa736('0xb')](_0x34a1e5,util['inspect'](_0x1010cb,{'showHidden':![],'depth':null}));};};exports[_0xa736('0xe')]=function(_0x33eba9,_0x368994,_0x52180e){return{'message':_0x33eba9,'unlock':_0x368994,'active':_0x52180e};};exports[_0xa736('0xf')]=function(_0x42f708,_0x57a2ab,_0x3047fe){if(!_[_0xa736('0x10')](_0x3047fe)&&_0xa736('0x11')===typeof _0x3047fe&&!_['isEmpty'](_0x3047fe)){if(!_[_0xa736('0x10')](_0x57a2ab)&&_0xa736('0x11')===typeof _0x57a2ab&&!_['isEmpty'](_0x57a2ab)){return util[_0xa736('0x12')](_0xa736('0x13'),_0x57a2ab,_0x3047fe);}return util[_0xa736('0x12')]('\x22%s\x22\x20<%s>',_0x3047fe,_0x3047fe);}if(!_[_0xa736('0x10')](_0x42f708)&&_0xa736('0x11')===typeof _0x42f708&&!_['isEmpty'](_0x42f708)){return _0x42f708;}return _0xa736('0x14');};exports[_0xa736('0x15')]=function(_0x15b1d4){if(_['isNil'](_0x15b1d4)){return![];}return _0x15b1d4;};exports[_0xa736('0x16')]=function(_0x3fb37d,_0x517d4e,_0x9f2ed1,_0x2bd226,_0x219003,_0x1c1f67){var _0x1acb93={'XMD-QUEUE':_0x517d4e['Queue']?_0x517d4e[_0xa736('0x17')]['name']:'','XMD-CALLERID':_0x2bd226,'XMD-CALLERID-PREVIEW':_0x1c1f67?util[_0xa736('0x12')](_0xa736('0x13'),_0x1c1f67[_0xa736('0x18')],_0x1c1f67[_0xa736('0x19')]):_0x2bd226,'XMD-DIALID':_0x219003,'XMD-CONTACTID':_0x517d4e[_0xa736('0x1a')],'XMD-CDRTYPE':_0xa736('0x1b'),'CALLERID(all)':_0x2bd226,'XMD-VOICEQUEUEID':_0x517d4e[_0xa736('0x1c')],'XMD-DIALCHANNEL':_0x9f2ed1,'XMD-DIALTIMEOUT':_0x3fb37d[_0xa736('0x1d')]||0x1e,'XMD-DIALOPTIONS':util[_0xa736('0x12')](_0xa736('0x1e'),_0x3fb37d[_0xa736('0x1f')]?'g':'',_[_0xa736('0x20')](_0x3fb37d[_0xa736('0x21')])?'':_0xa736('0x22')),'XMD-DIALURL':_0x3fb37d[_0xa736('0x23')]||'','XMD-AGI':_0x3fb37d[_0xa736('0x24')]?util[_0xa736('0x12')](_0xa736('0x25'),ipAgi,_0x3fb37d[_0xa736('0x24')]):_0xa736('0x26'),'XMD-AGIAFTER':_0x3fb37d[_0xa736('0x1f')]?util[_0xa736('0x12')](_0xa736('0x25'),ipAgi,_0x3fb37d['dialQueueProject2']):'NONE','XMD-ORIGINATECALLERIDNUM':_0x1c1f67?_0x1c1f67[_0xa736('0x27')]:'','XMD-ORIGINATECALLERIDNAME':_0x1c1f67?_0x1c1f67[_0xa736('0x28')]:'','XMD-DESTINATION':_0xa736('0x29')};if(!_['isEmpty'](_0x3fb37d['monitor_format'])){_0x1acb93[util[_0xa736('0x12')]('%s',_0xa736('0x2a'))]=_0x3fb37d[_0xa736('0x21')];_0x1acb93[util[_0xa736('0x12')]('%s',_0xa736('0x2b'))]=_0x219003;}if(_0x517d4e&&_0x517d4e[_0xa736('0x2c')]){for(var _0x172246 in _0x517d4e['Contact']){if(_0x517d4e['Contact'][_0xa736('0x2d')](_0x172246)){if(!_['isNil'](_0x517d4e[_0xa736('0x2c')][_0x172246])&&_0x172246!=='id'&&_0x172246!==_0xa736('0x2e')&&_0x172246!==_0xa736('0x2f')&&_0x172246!=='updatedAt'){_0x1acb93[util[_0xa736('0x12')](_0xa736('0x30'),_0xa736('0x31'),_[_0xa736('0x32')](_0x172246))]=_0x517d4e[_0xa736('0x2c')][_0x172246];}}}}return _0x1acb93;};exports[_0xa736('0x33')]=function(_0x319c60){var _0x33a2e3={};for(var _0xe86c76 in _0x319c60){if(_0x319c60[_0xa736('0x2d')](_0xe86c76)){_0x33a2e3[util[_0xa736('0x12')]('%s',_[_0xa736('0x34')](_0xe86c76))]=_0x319c60[_0xe86c76];}}return{'variables':_0x33a2e3};};exports['updateOriginated']=function(_0x36144c,_0x1abb0c){if(!_[_0xa736('0x35')](_0x36144c)){if(_0x36144c['hasOwnProperty'](_0xa736('0x36'))){if(_0x36144c[_0xa736('0x36')]>0x0){_0x36144c[_0xa736('0x36')]-=0x1;}else{logger[_0xa736('0x9')]('[updateOriginated]\x20object\x20originated\x20is\x20negative',_0x1abb0c);}}}else{logger[_0xa736('0x9')](_0xa736('0x37'),_0x1abb0c);}};exports[_0xa736('0x38')]=function(_0x312130){var _0xe6cf02=moment()[_0xa736('0x12')](_0xa736('0x39'));_0x312130['state']=0xd;_0x312130[_0xa736('0x3a')]=_0xa736('0x3b');_0x312130[_0xa736('0x3c')]=_0xe6cf02;_0x312130['responsetime']=_0xe6cf02;_0x312130['endtime']=_0xe6cf02;};exports['logAgent']=function(_0x444627,_0x1e8fa9,_0x5e18a6){var _0x2742c5=moment()['format'](_0xa736('0x39'));_0x444627[_0xa736('0x3d')]=_0x1e8fa9;_0x444627[_0xa736('0x3a')]=_0x5e18a6;_0x444627[_0xa736('0x3e')]=_0x2742c5;_0x444627[_0xa736('0x3f')]=getSeconds(_0x444627[_0xa736('0x3e')],_0x444627[_0xa736('0x3c')]);};exports['logLookAgent']=function(_0x54dcb8,_0x538175,_0x12ff7b){_0x54dcb8[_0xa736('0x40')]=_0x538175;_0x54dcb8['UserId']=_0x12ff7b;};exports[_0xa736('0x41')]=function(_0x3b44ba,_0x43217b,_0x31fe3c){var _0x1bd6fb=moment()[_0xa736('0x12')](_0xa736('0x39'));_0x3b44ba['state']=_0x43217b;_0x3b44ba[_0xa736('0x3a')]=_0x31fe3c;_0x3b44ba[_0xa736('0x3e')]=_0x3b44ba[_0xa736('0x3e')]?_0x3b44ba[_0xa736('0x3e')]:_0x1bd6fb;_0x3b44ba[_0xa736('0x42')]=_0x3b44ba['endtime']?_0x3b44ba['endtime']:_0x1bd6fb;_0x3b44ba[_0xa736('0x3f')]=getSeconds(_0x3b44ba[_0xa736('0x3e')]||0x0,_0x3b44ba['starttime']||0x0);_0x3b44ba['talktime']=_0x3b44ba[_0xa736('0x43')]?getSeconds(_0x3b44ba[_0xa736('0x42')],_0x3b44ba[_0xa736('0x43')]):0x0;};exports[_0xa736('0x44')]=function(_0xdef759){return _0xdef759==='Failure';};exports[_0xa736('0x45')]=function(_0x4422fa,_0x1573b7,_0x31277,_0xebffcc,_0x420a2c){var _0x14fcb3=_0xebffcc?_0xa736('0x46'):_0x4422fa[_0xa736('0x18')];_0x14fcb3=_0x420a2c?_0xa736('0x47'):_0x14fcb3;return{'actionid':_0x4422fa[_0xa736('0x48')],'action':_0xa736('0x49'),'channel':_0x4422fa[_0xa736('0x4a')],'callerid':util[_0xa736('0x12')](_0xa736('0x13'),_0x14fcb3,_0x4422fa['calleridnum']),'Exten':'xcally-motion-preview','Context':_0xa736('0x4b'),'Priority':'1','variable':_0x31277,'timeout':(_0x1573b7[_0xa736('0x4c')]||0x1e)*0x3e8,'async':!![],'channelid':_0x4422fa[_0xa736('0x48')]};};exports[_0xa736('0x4d')]=function(_0x2434d1){return _0x2434d1[_0xa736('0x4e')]+_0x2434d1[_0xa736('0x4f')]+_0x2434d1[_0xa736('0x50')];};exports[_0xa736('0x51')]=function(_0x295983){var _0x519a14=_[_0xa736('0x52')](_0x295983);_0x519a14[_0xa736('0x3d')]=0xf;_0x519a14['statedesc']=_0xa736('0x53');return _0x519a14;};exports[_0xa736('0x54')]=function(_0x20e801,_0x306fd3,_0x1399af){var _0x355942={};_0x355942[_0x306fd3]=_0x20e801[_0x306fd3];_0x355942[_0xa736('0x55')]=![];_0x355942[_0xa736('0x56')]=moment()['add'](_0x1399af,'minutes')[_0xa736('0x12')]('YYYY-MM-DD\x20HH:mm:ss');_0x355942[_0xa736('0x1a')]=_0x20e801[_0xa736('0x1a')];_0x355942[_0xa736('0x57')]=_0x20e801[_0xa736('0x57')];_0x355942[_0xa736('0x1c')]=_0x20e801['VoiceQueueId']||undefined;return _0x355942;};exports[_0xa736('0x58')]=function(_0x537600,_0xb8ba7a){if(!_[_0xa736('0x35')](_0x537600)){if(_0x537600['pTalking']>0x0){_0x537600['pTalking']-=0x1;}else{logger['error'](_0xb8ba7a,'[decrementTalkink]\x20object\x20talking\x20is\x20negative');}}else{logger[_0xa736('0x9')](_0xb8ba7a,_0xa736('0x59'));}};exports['IsNotLoggedIn']=function(_0x1de560){if(_0x1de560<=0x0){return!![];}return![];};exports['buildObj']=function(_0xea304c,_0x3c64fc){_0xea304c['lastevent']=_0x3c64fc;_0xea304c[_0xa736('0x5a')]=_0xea304c[_0xa736('0x5b')];_0xea304c[_0xa736('0x5c')]=_0xea304c['channelAgent'];return _0xea304c;};exports[_0xa736('0x5d')]=function(_0x28c644){var _0x55d21b={};_0x55d21b[_0xa736('0x5b')]=_0x28c644[_0xa736('0x5b')];_0x55d21b[_0xa736('0x5c')]=_0x28c644['channelAgent'];_0x55d21b[_0xa736('0x48')]=_0x28c644[_0xa736('0x48')];return _0x55d21b;};exports[_0xa736('0x5e')]=function(_0x51f30a){var _0x444e37=[];for(var _0x1e6c50 in _0x51f30a){if(_0x51f30a[_0xa736('0x2d')](_0x1e6c50)){if(!_[_0xa736('0x35')](_0x51f30a[_0x1e6c50])&&_0x51f30a[_0x1e6c50][_0xa736('0x3d')]===_0xa736('0x5f')&&_0x51f30a[_0x1e6c50]['status']===_0xa736('0x60')){_0x444e37[_0xa736('0x61')](_0x51f30a[_0x1e6c50]['id']);}}}return _0x444e37;};exports['getDiff']=function(_0x2f1b1b){var _0x13bb3f=moment()[_0xa736('0x7')](0x0);var _0x24025f=moment(_0x2f1b1b)[_0xa736('0x7')](0x0);return _0x13bb3f['diff'](_0x24025f,_0xa736('0x62'));};exports[_0xa736('0x63')]=function(_0x2b694a){return{'active':![],'recallme':![],'UserId':null,'ContactId':_0x2b694a[_0xa736('0x1a')],'ListId':_0x2b694a[_0xa736('0x57')],'VoiceQueueId':_0x2b694a[_0xa736('0x1c')]||undefined,'CampaignId':_0x2b694a[_0xa736('0x64')]||undefined};};exports[_0xa736('0x65')]=function(_0x21676c){if(_0x21676c===_0xa736('0x48')||_0x21676c===_0xa736('0x66')||_0x21676c===_0xa736('0x5b')||_0x21676c===_0xa736('0x67')||_0x21676c===_0xa736('0x68')||_0x21676c===_0xa736('0x69')||_0x21676c===_0xa736('0x40')||_0x21676c===_0xa736('0x4a')||_0x21676c===_0xa736('0x18')||_0x21676c==='active'||_0x21676c===_0xa736('0x19')||_0x21676c===_0xa736('0x56')||_0x21676c===_0xa736('0x4e')||_0x21676c==='countcongestionretry'||_0x21676c===_0xa736('0x50')||_0x21676c==='countglobal'||_0x21676c===_0xa736('0x6a')||_0x21676c===_0xa736('0x6b')||_0x21676c===_0xa736('0x6c')||_0x21676c===_0xa736('0x6d')||_0x21676c===_0xa736('0x1a')||_0x21676c===_0xa736('0x57')||_0x21676c===_0xa736('0x6e')||_0x21676c==='VoiceQueueId'||_0x21676c===_0xa736('0x6f')||_0x21676c===_0xa736('0x70')||_0x21676c===_0xa736('0x71')||_0x21676c===_0xa736('0x72')||_0x21676c==='xmd-listid'||_0x21676c==='xmd-dialurl'||_0x21676c===_0xa736('0x73')||_0x21676c===_0xa736('0x74')||_0x21676c===_0xa736('0x75')||_0x21676c==='xmd-dialchannel'||_0x21676c===_0xa736('0x76')||_0x21676c===_0xa736('0x77')||_0x21676c==='xmd-callerid'||_0x21676c===_0xa736('0x78')||_0x21676c===_0xa736('0x79')||_0x21676c===_0xa736('0x7a')||_0x21676c===_0xa736('0x7b')||_0x21676c===_0xa736('0x7c')||_0x21676c===_0xa736('0x7d')||_0x21676c==='rtpaudioqosloss'||_0x21676c===_0xa736('0x7e')||_0x21676c===_0xa736('0x7f')||_0x21676c===_0xa736('0x80')||_0x21676c===_0xa736('0x7a')||_0x21676c===_0xa736('0x7b')||_0x21676c===_0xa736('0x7c')||_0x21676c===_0xa736('0x7d')||_0x21676c===_0xa736('0x81')||_0x21676c===_0xa736('0x7e')||_0x21676c===_0xa736('0x7f')||_0x21676c===_0xa736('0x80')||_0x21676c===_0xa736('0x82')||_0x21676c===_0xa736('0x83')||_0x21676c===_0xa736('0x3d')||_0x21676c===_0xa736('0x3a')){return![];}return!![];};exports[_0xa736('0x84')]=function(_0x48c6e2,_0x245bf9){var _0xd0bd32,_0x1c50bf,_0x1482a3;if(_0x245bf9<=0x0){_0x245bf9=0x1;}_0xd0bd32=new RegExp(_0xa736('0x85')+_0x245bf9+'}$');_0x1c50bf=Math[_0xa736('0x86')](0xa,_0x245bf9-0x1);_0x1482a3=Math[_0xa736('0x86')](0xa,_0x245bf9)-0x1;return util[_0xa736('0x12')]('%s',_[_0xa736('0x87')](_0x48c6e2,_0xd0bd32,_[_0xa736('0x88')](_0x1c50bf,_0x1482a3)));};exports[_0xa736('0x89')]=function(_0x17cbef){var _0x986192=_0x17cbef[_0xa736('0x8a')](/"(.*?)"/);return _0x986192?_0x986192[0x1]:_0x17cbef;};exports[_0xa736('0x8b')]=function(_0x30a173){var _0x1b1e5b=_0x30a173[_0xa736('0x8a')](/<(.*?)>/);return _0x1b1e5b?_0x1b1e5b[0x1]:_0x30a173;};