Built motion from commit (unavailable).|2.5.4
[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 _0x5b47=['xmd-dialchannel','xmd-contactid','xmd-cdrtype','xmd-callerid','xmd-agi','rtpaudioqos','rtpaudioqosjitter','rtpaudioqosjitterbridged','rtpaudioqosloss','rtpaudioqoslossbridged','rtpaudioqosrtt','rtpaudioqosrttbridged','bridgepvtcallid','getCallerIdRandom','\x5cw{0,','pow','replace','extractCalleridName','extractCalleridNumber','match','util','lodash','127.0.0.1','milliseconds','seconds','error','inspect','logger','info','logger2','message','getCallerId','isUndefined','string','isEmpty','format','\x22%s\x22\x20<%s>','\x22\x22\x20<>','isActive','isNil','addVariables','Queue','name','calleridname','calleridnum','dialer','dialOriginateTimeout','\x22rtTxX%s%s\x22','dialQueueProject2','U(xcally-mixmonitor-context)','dialPreviewUrl','\x22agi://%s/square,%s\x22','NONE','originatecalleridnum','originatecalleridname','xcally-motion-preview','_XCALLY_MIXMONITOR_FORMAT','monitor_format','_XCALLY_MIXMONITOR_UNIQUEID','Contact','hasOwnProperty','tags','createdAt','XMD-','toUpper','toLowerVariables','originated','[updateOriginated]\x20is\x20null\x20or\x20undefined','logBlacklist','YYYY-MM-DD\x20HH:mm:ss','state','statedesc','Blacklist','starttime','responsetime','endtime','logAgent','ringtime','UserId','answertime','isFailure','Failure','variablesAction','RECALL','BOOKED','uniqueid','originate','channelAgent','from-sip','timeout','countcongestionretry','countagentrejectretry','countnosuchnumberretry','scheduledAt','scheduledat','minutes','ContactId','ListId','VoiceQueueId','pTalking','[decrementTalkink]\x20object\x20talking\x20is\x20negative','IsNotLoggedIn','buildObj','lastevent','queue','interface','buildAcw','agentReadyId','status','reachable','push','getDiff','diff','createBody','CampaignId','filterKey','idContact','type','campaigntype','dialAnswer','membername','active','countbusyretry','countnoanswerretry','countglobal','callbackuniqueid','callbackat','sipcallid','xmd-voicequeueid','xmd-phone','xmd-listid','xmd-dialurl','xmd-dialoptions','xmd-dialid'];(function(_0x200271,_0xc66c2a){var _0x2addbb=function(_0x3880c0){while(--_0x3880c0){_0x200271['push'](_0x200271['shift']());}};_0x2addbb(++_0xc66c2a);}(_0x5b47,0x120));var _0x75b4=function(_0xd644b8,_0x37e63){_0xd644b8=_0xd644b8-0x0;var _0x32434f=_0x5b47[_0xd644b8];return _0x32434f;};'use strict';var util=require(_0x75b4('0x0'));var _=require(_0x75b4('0x1'));var moment=require('moment');var logger=require('../../../../config/logger')('preview');var ipAgi=process['env']['XCALLY_IP_AGI']||_0x75b4('0x2');function getSeconds(_0x42359f,_0x37497c){var _0x1fa445=moment(_0x42359f)[_0x75b4('0x3')](0x0);var _0x5f544a=moment(_0x37497c)['milliseconds'](0x0);return _0x1fa445['diff'](_0x5f544a,_0x75b4('0x4'));}exports['loggerCatch']=function(_0x16138d){return function(_0x39ff0b){logger[_0x75b4('0x5')](_0x16138d,util[_0x75b4('0x6')](_0x39ff0b,{'showHidden':![],'depth':null}));};};exports[_0x75b4('0x7')]=function(_0x4b2a75,_0x2cd75b){logger[_0x75b4('0x8')](_0x4b2a75,util[_0x75b4('0x6')](_0x2cd75b,{'showHidden':![],'depth':null}));};exports['loggerError']=function(_0x3d9f18,_0x528874){logger[_0x75b4('0x5')](_0x3d9f18,util[_0x75b4('0x6')](_0x528874,{'showHidden':![],'depth':null}));};exports[_0x75b4('0x9')]=function(_0x458fdd){return function(_0x3fddd8){logger[_0x75b4('0x8')](_0x458fdd,util[_0x75b4('0x6')](_0x3fddd8,{'showHidden':![],'depth':null}));};};exports[_0x75b4('0xa')]=function(_0x531e12,_0x57353e,_0x50f3be){return{'message':_0x531e12,'unlock':_0x57353e,'active':_0x50f3be};};exports[_0x75b4('0xb')]=function(_0x2bc1a7,_0x4e0545,_0x2782ea){if(!_[_0x75b4('0xc')](_0x2782ea)&&_0x75b4('0xd')===typeof _0x2782ea&&!_['isEmpty'](_0x2782ea)){if(!_[_0x75b4('0xc')](_0x4e0545)&&_0x75b4('0xd')===typeof _0x4e0545&&!_[_0x75b4('0xe')](_0x4e0545)){return util[_0x75b4('0xf')]('\x22%s\x22\x20<%s>',_0x4e0545,_0x2782ea);}return util[_0x75b4('0xf')](_0x75b4('0x10'),_0x2782ea,_0x2782ea);}if(!_[_0x75b4('0xc')](_0x2bc1a7)&&_0x75b4('0xd')===typeof _0x2bc1a7&&!_[_0x75b4('0xe')](_0x2bc1a7)){return _0x2bc1a7;}return _0x75b4('0x11');};exports[_0x75b4('0x12')]=function(_0x3dde90){if(_[_0x75b4('0x13')](_0x3dde90)){return![];}return _0x3dde90;};exports[_0x75b4('0x14')]=function(_0x61d267,_0x39af43,_0x34ecfe,_0x40afc5,_0x3b226e,_0x98b98){var _0x432a51={'XMD-QUEUE':_0x39af43[_0x75b4('0x15')]?_0x39af43[_0x75b4('0x15')][_0x75b4('0x16')]:'','XMD-CALLERID':_0x40afc5,'XMD-CALLERID-PREVIEW':_0x98b98?util[_0x75b4('0xf')](_0x75b4('0x10'),_0x98b98[_0x75b4('0x17')],_0x98b98[_0x75b4('0x18')]):_0x40afc5,'XMD-DIALID':_0x3b226e,'XMD-CONTACTID':_0x39af43['ContactId'],'XMD-CDRTYPE':_0x75b4('0x19'),'CALLERID(all)':_0x40afc5,'XMD-VOICEQUEUEID':_0x39af43['VoiceQueueId'],'XMD-DIALCHANNEL':_0x34ecfe,'XMD-DIALTIMEOUT':_0x61d267[_0x75b4('0x1a')]||0x1e,'XMD-DIALOPTIONS':util[_0x75b4('0xf')](_0x75b4('0x1b'),_0x61d267[_0x75b4('0x1c')]?'g':'',_['isEmpty'](_0x61d267['monitor_format'])?'':_0x75b4('0x1d')),'XMD-DIALURL':_0x61d267[_0x75b4('0x1e')]||'','XMD-AGI':_0x61d267['dialQueueProject']?util[_0x75b4('0xf')](_0x75b4('0x1f'),ipAgi,_0x61d267['dialQueueProject']):'NONE','XMD-AGIAFTER':_0x61d267[_0x75b4('0x1c')]?util[_0x75b4('0xf')]('\x22agi://%s/square,%s\x22',ipAgi,_0x61d267[_0x75b4('0x1c')]):_0x75b4('0x20'),'XMD-ORIGINATECALLERIDNUM':_0x98b98?_0x98b98[_0x75b4('0x21')]:'','XMD-ORIGINATECALLERIDNAME':_0x98b98?_0x98b98[_0x75b4('0x22')]:'','XMD-DESTINATION':_0x75b4('0x23')};if(!_[_0x75b4('0xe')](_0x61d267['monitor_format'])){_0x432a51[util['format']('%s',_0x75b4('0x24'))]=_0x61d267[_0x75b4('0x25')];_0x432a51[util[_0x75b4('0xf')]('%s',_0x75b4('0x26'))]=_0x3b226e;}if(_0x39af43&&_0x39af43[_0x75b4('0x27')]){for(var _0x228d17 in _0x39af43[_0x75b4('0x27')]){if(_0x39af43['Contact'][_0x75b4('0x28')](_0x228d17)){if(!_[_0x75b4('0x13')](_0x39af43[_0x75b4('0x27')][_0x228d17])&&_0x228d17!=='id'&&_0x228d17!==_0x75b4('0x29')&&_0x228d17!==_0x75b4('0x2a')&&_0x228d17!=='updatedAt'){_0x432a51[util[_0x75b4('0xf')]('%s%s',_0x75b4('0x2b'),_[_0x75b4('0x2c')](_0x228d17))]=_0x39af43[_0x75b4('0x27')][_0x228d17];}}}}return _0x432a51;};exports[_0x75b4('0x2d')]=function(_0x435323){var _0x2db05e={};for(var _0x5e3d95 in _0x435323){if(_0x435323[_0x75b4('0x28')](_0x5e3d95)){_0x2db05e[util['format']('%s',_['toLower'](_0x5e3d95))]=_0x435323[_0x5e3d95];}}return{'variables':_0x2db05e};};exports['updateOriginated']=function(_0xbb0264,_0x331bd7){if(!_['isNil'](_0xbb0264)){if(_0xbb0264['hasOwnProperty']('originated')){if(_0xbb0264['originated']>0x0){_0xbb0264[_0x75b4('0x2e')]-=0x1;}else{logger[_0x75b4('0x5')]('[updateOriginated]\x20object\x20originated\x20is\x20negative',_0x331bd7);}}}else{logger[_0x75b4('0x5')](_0x75b4('0x2f'),_0x331bd7);}};exports[_0x75b4('0x30')]=function(_0x36b586){var _0x42571d=moment()['format'](_0x75b4('0x31'));_0x36b586[_0x75b4('0x32')]=0xd;_0x36b586[_0x75b4('0x33')]=_0x75b4('0x34');_0x36b586[_0x75b4('0x35')]=_0x42571d;_0x36b586[_0x75b4('0x36')]=_0x42571d;_0x36b586[_0x75b4('0x37')]=_0x42571d;};exports[_0x75b4('0x38')]=function(_0x2735dc,_0x5b4f23,_0x108d82){var _0x329715=moment()[_0x75b4('0xf')](_0x75b4('0x31'));_0x2735dc[_0x75b4('0x32')]=_0x5b4f23;_0x2735dc['statedesc']=_0x108d82;_0x2735dc[_0x75b4('0x36')]=_0x329715;_0x2735dc[_0x75b4('0x39')]=getSeconds(_0x2735dc['responsetime'],_0x2735dc[_0x75b4('0x35')]);};exports['logLookAgent']=function(_0x1434c8,_0x211c65,_0x2049f0){_0x1434c8['membername']=_0x211c65;_0x1434c8[_0x75b4('0x3a')]=_0x2049f0;};exports['logCustomer']=function(_0xb813b1,_0x2f7004,_0x1420f9){var _0x2e73a2=moment()[_0x75b4('0xf')](_0x75b4('0x31'));_0xb813b1[_0x75b4('0x32')]=_0x2f7004;_0xb813b1[_0x75b4('0x33')]=_0x1420f9;_0xb813b1['responsetime']=_0xb813b1['responsetime']?_0xb813b1['responsetime']:_0x2e73a2;_0xb813b1[_0x75b4('0x37')]=_0xb813b1[_0x75b4('0x37')]?_0xb813b1[_0x75b4('0x37')]:_0x2e73a2;_0xb813b1[_0x75b4('0x39')]=getSeconds(_0xb813b1[_0x75b4('0x36')]||0x0,_0xb813b1[_0x75b4('0x35')]||0x0);_0xb813b1['talktime']=_0xb813b1[_0x75b4('0x3b')]?getSeconds(_0xb813b1['endtime'],_0xb813b1['answertime']):0x0;};exports[_0x75b4('0x3c')]=function(_0x2b0edd){return _0x2b0edd===_0x75b4('0x3d');};exports[_0x75b4('0x3e')]=function(_0x3b4728,_0x6626d3,_0x53c7a2,_0x31ba93,_0x2ef62c){var _0x534ec6=_0x31ba93?_0x75b4('0x3f'):_0x3b4728[_0x75b4('0x17')];_0x534ec6=_0x2ef62c?_0x75b4('0x40'):_0x534ec6;return{'actionid':_0x3b4728[_0x75b4('0x41')],'action':_0x75b4('0x42'),'channel':_0x3b4728[_0x75b4('0x43')],'callerid':util[_0x75b4('0xf')](_0x75b4('0x10'),_0x534ec6,_0x3b4728['calleridnum']),'Exten':_0x75b4('0x23'),'Context':_0x75b4('0x44'),'Priority':'1','variable':_0x53c7a2,'timeout':(_0x6626d3[_0x75b4('0x45')]||0x1e)*0x3e8,'async':!![],'channelid':_0x3b4728['uniqueid']};};exports['totalGlobal']=function(_0x58a5e9){return _0x58a5e9['countbusyretry']+_0x58a5e9[_0x75b4('0x46')]+_0x58a5e9['countnoanswerretry']+_0x58a5e9[_0x75b4('0x47')]+_0x58a5e9[_0x75b4('0x48')];};exports['cloneAction']=function(_0x233ed9){var _0x46f481=_['clone'](_0x233ed9);_0x46f481['state']=0xf;_0x46f481['statedesc']='Global';return _0x46f481;};exports[_0x75b4('0x49')]=function(_0xe8b3d4,_0x267824,_0x4e3ad0){var _0x14c520={};_0x14c520[_0x267824]=_0xe8b3d4[_0x267824];_0x14c520['active']=![];_0x14c520[_0x75b4('0x4a')]=moment()['add'](_0x4e3ad0,_0x75b4('0x4b'))[_0x75b4('0xf')](_0x75b4('0x31'));_0x14c520['ContactId']=_0xe8b3d4[_0x75b4('0x4c')];_0x14c520[_0x75b4('0x4d')]=_0xe8b3d4[_0x75b4('0x4d')];_0x14c520[_0x75b4('0x4e')]=_0xe8b3d4[_0x75b4('0x4e')]||undefined;return _0x14c520;};exports['decrementTalkink']=function(_0xcdae69,_0x4b27c2){if(!_[_0x75b4('0x13')](_0xcdae69)){if(_0xcdae69['pTalking']>0x0){_0xcdae69[_0x75b4('0x4f')]-=0x1;}else{logger[_0x75b4('0x5')](_0x4b27c2,_0x75b4('0x50'));}}else{logger[_0x75b4('0x5')](_0x4b27c2,'[decrementTalkink]\x20is\x20null\x20or\x20undefined');}};exports[_0x75b4('0x51')]=function(_0x411a34){if(_0x411a34<=0x0){return!![];}return![];};exports[_0x75b4('0x52')]=function(_0x1a1f59,_0x427a7d){_0x1a1f59[_0x75b4('0x53')]=_0x427a7d;_0x1a1f59[_0x75b4('0x16')]=_0x1a1f59[_0x75b4('0x54')];_0x1a1f59[_0x75b4('0x55')]=_0x1a1f59[_0x75b4('0x43')];return _0x1a1f59;};exports[_0x75b4('0x56')]=function(_0x3901bd){var _0x5604b8={};_0x5604b8[_0x75b4('0x54')]=_0x3901bd['queue'];_0x5604b8[_0x75b4('0x55')]=_0x3901bd[_0x75b4('0x43')];_0x5604b8['uniqueid']=_0x3901bd[_0x75b4('0x41')];return _0x5604b8;};exports[_0x75b4('0x57')]=function(_0x1a13bd){var _0x1c4e6a=[];for(var _0x179164 in _0x1a13bd){if(_0x1a13bd[_0x75b4('0x28')](_0x179164)){if(!_['isNil'](_0x1a13bd[_0x179164])&&_0x1a13bd[_0x179164][_0x75b4('0x32')]==='not_inuse'&&_0x1a13bd[_0x179164][_0x75b4('0x58')]===_0x75b4('0x59')){_0x1c4e6a[_0x75b4('0x5a')](_0x1a13bd[_0x179164]['id']);}}}return _0x1c4e6a;};exports[_0x75b4('0x5b')]=function(_0x390ec1){var _0x3b1086=moment()[_0x75b4('0x3')](0x0);var _0x5f319f=moment(_0x390ec1)[_0x75b4('0x3')](0x0);return _0x3b1086[_0x75b4('0x5c')](_0x5f319f,_0x75b4('0x4'));};exports[_0x75b4('0x5d')]=function(_0x5e2949){return{'active':![],'recallme':![],'UserId':null,'ContactId':_0x5e2949[_0x75b4('0x4c')],'ListId':_0x5e2949[_0x75b4('0x4d')],'VoiceQueueId':_0x5e2949[_0x75b4('0x4e')]||undefined,'CampaignId':_0x5e2949[_0x75b4('0x5e')]||undefined};};exports[_0x75b4('0x5f')]=function(_0x1d3957){if(_0x1d3957==='uniqueid'||_0x1d3957===_0x75b4('0x60')||_0x1d3957===_0x75b4('0x54')||_0x1d3957===_0x75b4('0x61')||_0x1d3957===_0x75b4('0x62')||_0x1d3957===_0x75b4('0x63')||_0x1d3957===_0x75b4('0x64')||_0x1d3957==='channelAgent'||_0x1d3957===_0x75b4('0x17')||_0x1d3957===_0x75b4('0x65')||_0x1d3957==='calleridnum'||_0x1d3957===_0x75b4('0x4a')||_0x1d3957===_0x75b4('0x66')||_0x1d3957==='countcongestionretry'||_0x1d3957===_0x75b4('0x67')||_0x1d3957===_0x75b4('0x68')||_0x1d3957==='callback'||_0x1d3957===_0x75b4('0x69')||_0x1d3957===_0x75b4('0x6a')||_0x1d3957==='recallme'||_0x1d3957===_0x75b4('0x4c')||_0x1d3957===_0x75b4('0x4d')||_0x1d3957===_0x75b4('0x3a')||_0x1d3957==='VoiceQueueId'||_0x1d3957===_0x75b4('0x6b')||_0x1d3957===_0x75b4('0x6c')||_0x1d3957==='xmd-queue'||_0x1d3957===_0x75b4('0x6d')||_0x1d3957===_0x75b4('0x6e')||_0x1d3957===_0x75b4('0x6f')||_0x1d3957==='xmd-dialtimeout'||_0x1d3957===_0x75b4('0x70')||_0x1d3957===_0x75b4('0x71')||_0x1d3957===_0x75b4('0x72')||_0x1d3957===_0x75b4('0x73')||_0x1d3957===_0x75b4('0x74')||_0x1d3957===_0x75b4('0x75')||_0x1d3957==='xmd-agiafter'||_0x1d3957===_0x75b4('0x76')||_0x1d3957===_0x75b4('0x77')||_0x1d3957==='rtpaudioqosbridged'||_0x1d3957===_0x75b4('0x78')||_0x1d3957===_0x75b4('0x79')||_0x1d3957===_0x75b4('0x7a')||_0x1d3957===_0x75b4('0x7b')||_0x1d3957===_0x75b4('0x7c')||_0x1d3957===_0x75b4('0x7d')||_0x1d3957===_0x75b4('0x77')||_0x1d3957==='rtpaudioqosbridged'||_0x1d3957===_0x75b4('0x78')||_0x1d3957==='rtpaudioqosjitterbridged'||_0x1d3957===_0x75b4('0x7a')||_0x1d3957==='rtpaudioqoslossbridged'||_0x1d3957===_0x75b4('0x7c')||_0x1d3957===_0x75b4('0x7d')||_0x1d3957==='bridgepeer'||_0x1d3957===_0x75b4('0x7e')||_0x1d3957===_0x75b4('0x32')||_0x1d3957===_0x75b4('0x33')){return![];}return!![];};exports[_0x75b4('0x7f')]=function(_0x164caf,_0x5edeb1){var _0x41289c,_0xbb2b96,_0x5ac50f;if(_0x5edeb1<=0x0){_0x5edeb1=0x1;}_0x41289c=new RegExp(_0x75b4('0x80')+_0x5edeb1+'}$');_0xbb2b96=Math[_0x75b4('0x81')](0xa,_0x5edeb1-0x1);_0x5ac50f=Math[_0x75b4('0x81')](0xa,_0x5edeb1)-0x1;return util['format']('%s',_[_0x75b4('0x82')](_0x164caf,_0x41289c,_['random'](_0xbb2b96,_0x5ac50f)));};exports[_0x75b4('0x83')]=function(_0x5dca42){var _0x1d16aa=_0x5dca42['match'](/"(.*?)"/);return _0x1d16aa?_0x1d16aa[0x1]:_0x5dca42;};exports[_0x75b4('0x84')]=function(_0x25c06a){var _0x7f34db=_0x25c06a[_0x75b4('0x85')](/<(.*?)>/);return _0x7f34db?_0x7f34db[0x1]:_0x25c06a;};