Built motion from commit (unavailable).|2.4.12
[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 _0x3098=['../../../../config/logger','env','XCALLY_IP_AGI','127.0.0.1','milliseconds','diff','loggerCatch','error','info','inspect','loggerError','logger2','message','getCallerId','isUndefined','string','isEmpty','format','\x22%s\x22\x20<%s>','\x22\x22\x20<>','isActive','isNil','addVariables','Queue','name','calleridname','calleridnum','dialer','VoiceQueueId','dialOriginateTimeout','\x22rtTxX%s%s\x22','dialQueueProject2','monitor_format','dialPreviewUrl','\x22agi://%s/square,%s\x22','dialQueueProject','NONE','originatecalleridnum','xcally-motion-preview','_XCALLY_MIXMONITOR_FORMAT','_XCALLY_MIXMONITOR_UNIQUEID','Contact','hasOwnProperty','tags','createdAt','updatedAt','%s%s','XMD-','toUpper','toLowerVariables','originated','[updateOriginated]\x20is\x20null\x20or\x20undefined','logBlacklist','state','Blacklist','starttime','responsetime','logAgent','YYYY-MM-DD\x20HH:mm:ss','statedesc','ringtime','logLookAgent','UserId','endtime','talktime','answertime','isFailure','Failure','RECALL','uniqueid','originate','channelAgent','from-sip','timeout','totalGlobal','countcongestionretry','countnoanswerretry','clone','scheduledAt','active','scheduledat','add','minutes','ContactId','ListId','decrementTalkink','pTalking','[decrementTalkink]\x20object\x20talking\x20is\x20negative','[decrementTalkink]\x20is\x20null\x20or\x20undefined','buildObj','lastevent','queue','interface','buildAcw','agentReadyId','status','reachable','push','seconds','createBody','idContact','type','campaigntype','dialAnswer','membername','countglobal','callbackuniqueid','xmd-voicequeueid','xmd-queue','xmd-phone','xmd-listid','xmd-dialurl','xmd-dialtimeout','xmd-dialid','xmd-dialchannel','xmd-contactid','xmd-cdrtype','xmd-callerid','xmd-agiafter','xmd-agi','rtpaudioqosbridged','rtpaudioqosjitter','rtpaudioqosjitterbridged','rtpaudioqosloss','rtpaudioqoslossbridged','rtpaudioqosrtt','rtpaudioqosrttbridged','rtpaudioqos','\x5cw{0,','pow','replace','random','match','extractCalleridNumber','util','lodash','moment'];(function(_0x2c075b,_0x4e2dfb){var _0xb468e5=function(_0x48b832){while(--_0x48b832){_0x2c075b['push'](_0x2c075b['shift']());}};_0xb468e5(++_0x4e2dfb);}(_0x3098,0x86));var _0x8309=function(_0x3054be,_0x1bdc8b){_0x3054be=_0x3054be-0x0;var _0x3df150=_0x3098[_0x3054be];return _0x3df150;};'use strict';var util=require(_0x8309('0x0'));var _=require(_0x8309('0x1'));var moment=require(_0x8309('0x2'));var logger=require(_0x8309('0x3'))('preview');var ipAgi=process[_0x8309('0x4')][_0x8309('0x5')]||_0x8309('0x6');function getSeconds(_0x2e58f5,_0x1e658e){var _0x2149d0=moment(_0x2e58f5)[_0x8309('0x7')](0x0);var _0x2ddf0b=moment(_0x1e658e)[_0x8309('0x7')](0x0);return _0x2149d0[_0x8309('0x8')](_0x2ddf0b,'seconds');}exports[_0x8309('0x9')]=function(_0x5c2cd1){return function(_0x421fa5){logger[_0x8309('0xa')](_0x5c2cd1,util['inspect'](_0x421fa5,{'showHidden':![],'depth':null}));};};exports['logger']=function(_0x13a19f,_0x21b2f1){logger[_0x8309('0xb')](_0x13a19f,util[_0x8309('0xc')](_0x21b2f1,{'showHidden':![],'depth':null}));};exports[_0x8309('0xd')]=function(_0x55c201,_0x451064){logger[_0x8309('0xa')](_0x55c201,util[_0x8309('0xc')](_0x451064,{'showHidden':![],'depth':null}));};exports[_0x8309('0xe')]=function(_0x462327){return function(_0x53ebac){logger[_0x8309('0xb')](_0x462327,util['inspect'](_0x53ebac,{'showHidden':![],'depth':null}));};};exports[_0x8309('0xf')]=function(_0x57b2d3,_0x3c746d,_0x38bbc0){return{'message':_0x57b2d3,'unlock':_0x3c746d,'active':_0x38bbc0};};exports[_0x8309('0x10')]=function(_0x264867,_0x209529,_0x6b3353){if(!_[_0x8309('0x11')](_0x6b3353)&&'string'===typeof _0x6b3353&&!_['isEmpty'](_0x6b3353)){if(!_[_0x8309('0x11')](_0x209529)&&_0x8309('0x12')===typeof _0x209529&&!_[_0x8309('0x13')](_0x209529)){return util[_0x8309('0x14')](_0x8309('0x15'),_0x209529,_0x6b3353);}return util[_0x8309('0x14')](_0x8309('0x15'),_0x6b3353,_0x6b3353);}if(!_[_0x8309('0x11')](_0x264867)&&'string'===typeof _0x264867&&!_[_0x8309('0x13')](_0x264867)){return _0x264867;}return _0x8309('0x16');};exports[_0x8309('0x17')]=function(_0x3d0c28){if(_[_0x8309('0x18')](_0x3d0c28)){return![];}return _0x3d0c28;};exports[_0x8309('0x19')]=function(_0x1d4ece,_0x158aec,_0x181ed6,_0x415490,_0x3dc639,_0x171f30){var _0x5b252b={'XMD-QUEUE':_0x158aec['Queue']?_0x158aec[_0x8309('0x1a')][_0x8309('0x1b')]:'','XMD-CALLERID':_0x415490,'XMD-CALLERID-PREVIEW':_0x171f30?util[_0x8309('0x14')](_0x8309('0x15'),_0x171f30[_0x8309('0x1c')],_0x171f30[_0x8309('0x1d')]):_0x415490,'XMD-DIALID':_0x3dc639,'XMD-CONTACTID':_0x158aec['ContactId'],'XMD-CDRTYPE':_0x8309('0x1e'),'CALLERID(all)':_0x415490,'XMD-VOICEQUEUEID':_0x158aec[_0x8309('0x1f')],'XMD-DIALCHANNEL':_0x181ed6,'XMD-DIALTIMEOUT':_0x1d4ece[_0x8309('0x20')]||0x1e,'XMD-DIALOPTIONS':util['format'](_0x8309('0x21'),_0x1d4ece[_0x8309('0x22')]?'g':'',_['isEmpty'](_0x1d4ece[_0x8309('0x23')])?'':'U(xcally-mixmonitor-context)'),'XMD-DIALURL':_0x1d4ece[_0x8309('0x24')]||'','XMD-AGI':_0x1d4ece['dialQueueProject']?util[_0x8309('0x14')](_0x8309('0x25'),ipAgi,_0x1d4ece[_0x8309('0x26')]):_0x8309('0x27'),'XMD-AGIAFTER':_0x1d4ece['dialQueueProject2']?util[_0x8309('0x14')](_0x8309('0x25'),ipAgi,_0x1d4ece[_0x8309('0x22')]):'NONE','XMD-ORIGINATECALLERIDNUM':_0x171f30?_0x171f30[_0x8309('0x28')]:'','XMD-ORIGINATECALLERIDNAME':_0x171f30?_0x171f30['originatecalleridname']:'','XMD-DESTINATION':_0x8309('0x29')};if(!_[_0x8309('0x13')](_0x1d4ece[_0x8309('0x23')])){_0x5b252b[util[_0x8309('0x14')]('%s',_0x8309('0x2a'))]=_0x1d4ece[_0x8309('0x23')];_0x5b252b[util[_0x8309('0x14')]('%s',_0x8309('0x2b'))]=_0x3dc639;}if(_0x158aec&&_0x158aec[_0x8309('0x2c')]){for(var _0x52628d in _0x158aec['Contact']){if(_0x158aec[_0x8309('0x2c')][_0x8309('0x2d')](_0x52628d)){if(!_[_0x8309('0x18')](_0x158aec[_0x8309('0x2c')][_0x52628d])&&_0x52628d!=='id'&&_0x52628d!==_0x8309('0x2e')&&_0x52628d!==_0x8309('0x2f')&&_0x52628d!==_0x8309('0x30')){_0x5b252b[util['format'](_0x8309('0x31'),_0x8309('0x32'),_[_0x8309('0x33')](_0x52628d))]=_0x158aec[_0x8309('0x2c')][_0x52628d];}}}}return _0x5b252b;};exports[_0x8309('0x34')]=function(_0xda53a5){var _0x18be73={};for(var _0x48a5a3 in _0xda53a5){if(_0xda53a5['hasOwnProperty'](_0x48a5a3)){_0x18be73[util['format']('%s',_['toLower'](_0x48a5a3))]=_0xda53a5[_0x48a5a3];}}return{'variables':_0x18be73};};exports['updateOriginated']=function(_0x315066,_0x7de85a){if(!_[_0x8309('0x18')](_0x315066)){if(_0x315066[_0x8309('0x2d')](_0x8309('0x35'))){if(_0x315066['originated']>0x0){_0x315066[_0x8309('0x35')]-=0x1;}else{logger[_0x8309('0xa')]('[updateOriginated]\x20object\x20originated\x20is\x20negative',_0x7de85a);}}}else{logger[_0x8309('0xa')](_0x8309('0x36'),_0x7de85a);}};exports[_0x8309('0x37')]=function(_0x76bc51){var _0x13c80a=moment()['format']('YYYY-MM-DD\x20HH:mm:ss');_0x76bc51[_0x8309('0x38')]=0xd;_0x76bc51['statedesc']=_0x8309('0x39');_0x76bc51[_0x8309('0x3a')]=_0x13c80a;_0x76bc51[_0x8309('0x3b')]=_0x13c80a;_0x76bc51['endtime']=_0x13c80a;};exports[_0x8309('0x3c')]=function(_0x4a4275,_0x137ec0,_0x2dc79f){var _0x1bfba1=moment()[_0x8309('0x14')](_0x8309('0x3d'));_0x4a4275[_0x8309('0x38')]=_0x137ec0;_0x4a4275[_0x8309('0x3e')]=_0x2dc79f;_0x4a4275[_0x8309('0x3b')]=_0x1bfba1;_0x4a4275[_0x8309('0x3f')]=getSeconds(_0x4a4275[_0x8309('0x3b')],_0x4a4275['starttime']);};exports[_0x8309('0x40')]=function(_0x452fee,_0x26d605,_0x2b5d52){_0x452fee['membername']=_0x26d605;_0x452fee[_0x8309('0x41')]=_0x2b5d52;};exports['logCustomer']=function(_0x3c8f61,_0xae7efa,_0x5bdc9d){var _0xd00993=moment()[_0x8309('0x14')](_0x8309('0x3d'));_0x3c8f61[_0x8309('0x38')]=_0xae7efa;_0x3c8f61[_0x8309('0x3e')]=_0x5bdc9d;_0x3c8f61[_0x8309('0x3b')]=_0x3c8f61[_0x8309('0x3b')]?_0x3c8f61[_0x8309('0x3b')]:_0xd00993;_0x3c8f61[_0x8309('0x42')]=_0x3c8f61[_0x8309('0x42')]?_0x3c8f61[_0x8309('0x42')]:_0xd00993;_0x3c8f61['ringtime']=getSeconds(_0x3c8f61[_0x8309('0x3b')]||0x0,_0x3c8f61[_0x8309('0x3a')]||0x0);_0x3c8f61[_0x8309('0x43')]=_0x3c8f61[_0x8309('0x44')]?getSeconds(_0x3c8f61['endtime'],_0x3c8f61[_0x8309('0x44')]):0x0;};exports[_0x8309('0x45')]=function(_0x3a4342){return _0x3a4342===_0x8309('0x46');};exports['variablesAction']=function(_0x427014,_0x2b8040,_0x4d7b86,_0x49be84,_0x5c8b0a){var _0x362717=_0x49be84?_0x8309('0x47'):_0x427014['calleridname'];_0x362717=_0x5c8b0a?'BOOKED':_0x362717;return{'actionid':_0x427014[_0x8309('0x48')],'action':_0x8309('0x49'),'channel':_0x427014[_0x8309('0x4a')],'callerid':util[_0x8309('0x14')](_0x8309('0x15'),_0x362717,_0x427014[_0x8309('0x1d')]),'Exten':_0x8309('0x29'),'Context':_0x8309('0x4b'),'Priority':'1','variable':_0x4d7b86,'timeout':(_0x2b8040[_0x8309('0x4c')]||0x1e)*0x3e8,'async':!![],'channelid':_0x427014[_0x8309('0x48')]};};exports[_0x8309('0x4d')]=function(_0x8c5cfe){return _0x8c5cfe['countbusyretry']+_0x8c5cfe[_0x8309('0x4e')]+_0x8c5cfe[_0x8309('0x4f')];};exports['cloneAction']=function(_0x5993a9){var _0x199ec0=_[_0x8309('0x50')](_0x5993a9);_0x199ec0[_0x8309('0x38')]=0xf;_0x199ec0['statedesc']='Global';return _0x199ec0;};exports[_0x8309('0x51')]=function(_0x5798c,_0x1a5661,_0x421ff5){var _0xa88f42={};_0xa88f42[_0x1a5661]=_0x5798c[_0x1a5661];_0xa88f42[_0x8309('0x52')]=![];_0xa88f42[_0x8309('0x53')]=moment()[_0x8309('0x54')](_0x421ff5,_0x8309('0x55'))['format'](_0x8309('0x3d'));_0xa88f42[_0x8309('0x56')]=_0x5798c[_0x8309('0x56')];_0xa88f42['ListId']=_0x5798c[_0x8309('0x57')];_0xa88f42[_0x8309('0x1f')]=_0x5798c['VoiceQueueId']||undefined;return _0xa88f42;};exports[_0x8309('0x58')]=function(_0x30b810,_0x17e311){if(!_[_0x8309('0x18')](_0x30b810)){if(_0x30b810[_0x8309('0x59')]>0x0){_0x30b810[_0x8309('0x59')]-=0x1;}else{logger[_0x8309('0xa')](_0x17e311,_0x8309('0x5a'));}}else{logger[_0x8309('0xa')](_0x17e311,_0x8309('0x5b'));}};exports['IsNotLoggedIn']=function(_0x88c1f0){if(_0x88c1f0<=0x0){return!![];}return![];};exports[_0x8309('0x5c')]=function(_0x3977ad,_0x4b1f71){_0x3977ad[_0x8309('0x5d')]=_0x4b1f71;_0x3977ad[_0x8309('0x1b')]=_0x3977ad[_0x8309('0x5e')];_0x3977ad[_0x8309('0x5f')]=_0x3977ad[_0x8309('0x4a')];return _0x3977ad;};exports[_0x8309('0x60')]=function(_0x4c25cf){var _0x45f095={};_0x45f095['queue']=_0x4c25cf['queue'];_0x45f095[_0x8309('0x5f')]=_0x4c25cf[_0x8309('0x4a')];_0x45f095['uniqueid']=_0x4c25cf[_0x8309('0x48')];return _0x45f095;};exports[_0x8309('0x61')]=function(_0x9900cf){var _0x2eec11=[];for(var _0xbb9065 in _0x9900cf){if(_0x9900cf[_0x8309('0x2d')](_0xbb9065)){if(!_[_0x8309('0x18')](_0x9900cf[_0xbb9065])&&_0x9900cf[_0xbb9065][_0x8309('0x38')]==='not_inuse'&&_0x9900cf[_0xbb9065][_0x8309('0x62')]===_0x8309('0x63')){_0x2eec11[_0x8309('0x64')](_0x9900cf[_0xbb9065]['id']);}}}return _0x2eec11;};exports['getDiff']=function(_0x428ee9){var _0x6ab41b=moment()[_0x8309('0x7')](0x0);var _0x4e5409=moment(_0x428ee9)[_0x8309('0x7')](0x0);return _0x6ab41b['diff'](_0x4e5409,_0x8309('0x65'));};exports[_0x8309('0x66')]=function(_0x3ca42c){return{'active':![],'recallme':![],'UserId':null,'ContactId':_0x3ca42c['ContactId'],'ListId':_0x3ca42c['ListId'],'VoiceQueueId':_0x3ca42c[_0x8309('0x1f')]||undefined,'CampaignId':_0x3ca42c['CampaignId']||undefined};};exports['filterKey']=function(_0x34a8bd){if(_0x34a8bd==='uniqueid'||_0x34a8bd===_0x8309('0x67')||_0x34a8bd===_0x8309('0x5e')||_0x34a8bd===_0x8309('0x68')||_0x34a8bd===_0x8309('0x69')||_0x34a8bd===_0x8309('0x6a')||_0x34a8bd===_0x8309('0x6b')||_0x34a8bd===_0x8309('0x4a')||_0x34a8bd===_0x8309('0x1c')||_0x34a8bd==='active'||_0x34a8bd===_0x8309('0x1d')||_0x34a8bd===_0x8309('0x53')||_0x34a8bd==='countbusyretry'||_0x34a8bd===_0x8309('0x4e')||_0x34a8bd==='countnoanswerretry'||_0x34a8bd===_0x8309('0x6c')||_0x34a8bd==='callback'||_0x34a8bd===_0x8309('0x6d')||_0x34a8bd==='callbackat'||_0x34a8bd==='recallme'||_0x34a8bd==='ContactId'||_0x34a8bd==='ListId'||_0x34a8bd===_0x8309('0x41')||_0x34a8bd===_0x8309('0x1f')||_0x34a8bd==='sipcallid'||_0x34a8bd===_0x8309('0x6e')||_0x34a8bd===_0x8309('0x6f')||_0x34a8bd===_0x8309('0x70')||_0x34a8bd===_0x8309('0x71')||_0x34a8bd===_0x8309('0x72')||_0x34a8bd===_0x8309('0x73')||_0x34a8bd==='xmd-dialoptions'||_0x34a8bd===_0x8309('0x74')||_0x34a8bd===_0x8309('0x75')||_0x34a8bd===_0x8309('0x76')||_0x34a8bd===_0x8309('0x77')||_0x34a8bd===_0x8309('0x78')||_0x34a8bd===_0x8309('0x79')||_0x34a8bd===_0x8309('0x7a')||_0x34a8bd==='rtpaudioqos'||_0x34a8bd===_0x8309('0x7b')||_0x34a8bd===_0x8309('0x7c')||_0x34a8bd===_0x8309('0x7d')||_0x34a8bd===_0x8309('0x7e')||_0x34a8bd===_0x8309('0x7f')||_0x34a8bd===_0x8309('0x80')||_0x34a8bd===_0x8309('0x81')||_0x34a8bd===_0x8309('0x82')||_0x34a8bd===_0x8309('0x7b')||_0x34a8bd==='rtpaudioqosjitter'||_0x34a8bd==='rtpaudioqosjitterbridged'||_0x34a8bd===_0x8309('0x7e')||_0x34a8bd==='rtpaudioqoslossbridged'||_0x34a8bd==='rtpaudioqosrtt'||_0x34a8bd===_0x8309('0x81')||_0x34a8bd==='bridgepeer'||_0x34a8bd==='bridgepvtcallid'||_0x34a8bd==='state'||_0x34a8bd==='statedesc'){return![];}return!![];};exports['getCallerIdRandom']=function(_0x1234bb,_0x15a30f){var _0x369f84,_0x15dbca,_0x3427ca;if(_0x15a30f<=0x0){_0x15a30f=0x1;}_0x369f84=new RegExp(_0x8309('0x83')+_0x15a30f+'}$');_0x15dbca=Math[_0x8309('0x84')](0xa,_0x15a30f-0x1);_0x3427ca=Math[_0x8309('0x84')](0xa,_0x15a30f)-0x1;return util[_0x8309('0x14')]('%s',_[_0x8309('0x85')](_0x1234bb,_0x369f84,_[_0x8309('0x86')](_0x15dbca,_0x3427ca)));};exports['extractCalleridName']=function(_0x2da238){var _0x31d998=_0x2da238[_0x8309('0x87')](/"(.*?)"/);return _0x31d998?_0x31d998[0x1]:_0x2da238;};exports[_0x8309('0x88')]=function(_0x28952d){var _0x18e73e=_0x28952d[_0x8309('0x87')](/<(.*?)>/);return _0x18e73e?_0x18e73e[0x1]:_0x28952d;};