c9240dc24eaa15e51255275d127497dc804844f8
[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 _0x1025=['XMD-','toLowerVariables','toLower','updateOriginated','originated','[updateOriginated]\x20object\x20originated\x20is\x20negative','[updateOriginated]\x20is\x20null\x20or\x20undefined','logBlacklist','YYYY-MM-DD\x20HH:mm:ss','state','statedesc','Blacklist','starttime','responsetime','endtime','ringtime','logLookAgent','UserId','logCustomer','talktime','answertime','isFailure','Failure','variablesAction','uniqueid','originate','channelAgent','from-sip','timeout','totalGlobal','countcongestionretry','countagentrejectretry','countnosuchnumberretry','cloneAction','clone','Global','scheduledAt','active','scheduledat','add','minutes','ListId','VoiceQueueId','pTalking','[decrementTalkink]\x20object\x20talking\x20is\x20negative','[decrementTalkink]\x20is\x20null\x20or\x20undefined','IsNotLoggedIn','buildObj','lastevent','interface','mandatoryDisposition','queue','agentReadyId','not_inuse','reachable','push','createBody','CampaignId','filterKey','idContact','type','campaigntype','membername','countbusyretry','countnoanswerretry','countglobal','callbackuniqueid','callbackat','recallme','sipcallid','xmd-voicequeueid','xmd-queue','xmd-phone','xmd-listid','xmd-dialurl','xmd-dialtimeout','xmd-dialoptions','xmd-dialid','xmd-dialchannel','xmd-contactid','xmd-cdrtype','xmd-callerid','xmd-agiafter','rtpaudioqosjitterbridged','rtpaudioqosloss','rtpaudioqosrtt','rtpaudioqosrttbridged','rtpaudioqos','rtpaudioqosbridged','rtpaudioqosjitter','rtpaudioqoslossbridged','bridgepeer','bridgepvtcallid','getCallerIdRandom','\x5cw{0,','pow','replace','random','match','extractCalleridNumber','lodash','moment','preview','env','XCALLY_IP_AGI','127.0.0.1','milliseconds','diff','seconds','loggerCatch','error','inspect','logger','info','loggerError','logger2','message','getCallerId','isUndefined','string','isEmpty','format','\x22%s\x22\x20<%s>','isActive','isNil','addVariables','Queue','name','calleridname','calleridnum','ContactId','dialer','dialOriginateTimeout','\x22rtTxX%s%s\x22','dialQueueProject2','dialPreviewUrl','dialQueueProject','\x22agi://%s/square,%s\x22','NONE','originatecalleridnum','originatecalleridname','xcally-motion-preview','monitor_format','_XCALLY_MIXMONITOR_FORMAT','_XCALLY_MIXMONITOR_UNIQUEID','Contact','hasOwnProperty','tags','createdAt','updatedAt'];(function(_0x488ca1,_0xf6858e){var _0x4dd0a4=function(_0x40fb65){while(--_0x40fb65){_0x488ca1['push'](_0x488ca1['shift']());}};_0x4dd0a4(++_0xf6858e);}(_0x1025,0x64));var _0x5102=function(_0x4bfaa7,_0x1033b0){_0x4bfaa7=_0x4bfaa7-0x0;var _0x282f8f=_0x1025[_0x4bfaa7];return _0x282f8f;};'use strict';var util=require('util');var _=require(_0x5102('0x0'));var moment=require(_0x5102('0x1'));var logger=require('../../../../config/logger')(_0x5102('0x2'));var ipAgi=process[_0x5102('0x3')][_0x5102('0x4')]||_0x5102('0x5');function getSeconds(_0x10a5de,_0x3465f8){var _0x409891=moment(_0x10a5de)[_0x5102('0x6')](0x0);var _0x50b73b=moment(_0x3465f8)[_0x5102('0x6')](0x0);return _0x409891[_0x5102('0x7')](_0x50b73b,_0x5102('0x8'));}exports[_0x5102('0x9')]=function(_0x14a7f4){return function(_0x4e0a39){logger[_0x5102('0xa')](_0x14a7f4,util[_0x5102('0xb')](_0x4e0a39,{'showHidden':![],'depth':null}));};};exports[_0x5102('0xc')]=function(_0xb62bda,_0x5b939a){logger[_0x5102('0xd')](_0xb62bda,util[_0x5102('0xb')](_0x5b939a,{'showHidden':![],'depth':null}));};exports[_0x5102('0xe')]=function(_0x279f3d,_0x256deb){logger[_0x5102('0xa')](_0x279f3d,util[_0x5102('0xb')](_0x256deb,{'showHidden':![],'depth':null}));};exports[_0x5102('0xf')]=function(_0x11b635){return function(_0x3c358d){logger['info'](_0x11b635,util[_0x5102('0xb')](_0x3c358d,{'showHidden':![],'depth':null}));};};exports[_0x5102('0x10')]=function(_0x251b39,_0x1ed0e7,_0xef74b2){return{'message':_0x251b39,'unlock':_0x1ed0e7,'active':_0xef74b2};};exports[_0x5102('0x11')]=function(_0x233352,_0x2ee24b,_0xd75407){if(!_[_0x5102('0x12')](_0xd75407)&&_0x5102('0x13')===typeof _0xd75407&&!_[_0x5102('0x14')](_0xd75407)){if(!_[_0x5102('0x12')](_0x2ee24b)&&'string'===typeof _0x2ee24b&&!_[_0x5102('0x14')](_0x2ee24b)){return util[_0x5102('0x15')]('\x22%s\x22\x20<%s>',_0x2ee24b,_0xd75407);}return util[_0x5102('0x15')](_0x5102('0x16'),_0xd75407,_0xd75407);}if(!_[_0x5102('0x12')](_0x233352)&&_0x5102('0x13')===typeof _0x233352&&!_[_0x5102('0x14')](_0x233352)){return _0x233352;}return'\x22\x22\x20<>';};exports[_0x5102('0x17')]=function(_0x5aec74){if(_[_0x5102('0x18')](_0x5aec74)){return![];}return _0x5aec74;};exports[_0x5102('0x19')]=function(_0x5d64f1,_0x4f2b9d,_0x42cc58,_0x4e4678,_0x3d719b,_0x316bfe){var _0x4a5a98={'XMD-QUEUE':_0x4f2b9d[_0x5102('0x1a')]?_0x4f2b9d[_0x5102('0x1a')][_0x5102('0x1b')]:'','XMD-CALLERID':_0x4e4678,'XMD-CALLERID-PREVIEW':_0x316bfe?util[_0x5102('0x15')](_0x5102('0x16'),_0x316bfe[_0x5102('0x1c')],_0x316bfe[_0x5102('0x1d')]):_0x4e4678,'XMD-DIALID':_0x3d719b,'XMD-CONTACTID':_0x4f2b9d[_0x5102('0x1e')],'XMD-CDRTYPE':_0x5102('0x1f'),'CALLERID(all)':_0x4e4678,'XMD-VOICEQUEUEID':_0x4f2b9d['VoiceQueueId'],'XMD-DIALCHANNEL':_0x42cc58,'XMD-DIALTIMEOUT':_0x5d64f1[_0x5102('0x20')]||0x1e,'XMD-DIALOPTIONS':util['format'](_0x5102('0x21'),_0x5d64f1[_0x5102('0x22')]?'g':'',_[_0x5102('0x14')](_0x5d64f1['monitor_format'])?'':'U(xcally-mixmonitor-context)'),'XMD-DIALURL':_0x5d64f1[_0x5102('0x23')]||'','XMD-AGI':_0x5d64f1[_0x5102('0x24')]?util[_0x5102('0x15')](_0x5102('0x25'),ipAgi,_0x5d64f1[_0x5102('0x24')]):_0x5102('0x26'),'XMD-AGIAFTER':_0x5d64f1[_0x5102('0x22')]?util['format']('\x22agi://%s/square,%s\x22',ipAgi,_0x5d64f1[_0x5102('0x22')]):_0x5102('0x26'),'XMD-ORIGINATECALLERIDNUM':_0x316bfe?_0x316bfe[_0x5102('0x27')]:'','XMD-ORIGINATECALLERIDNAME':_0x316bfe?_0x316bfe[_0x5102('0x28')]:'','XMD-DESTINATION':_0x5102('0x29')};if(!_[_0x5102('0x14')](_0x5d64f1[_0x5102('0x2a')])){_0x4a5a98[util[_0x5102('0x15')]('%s',_0x5102('0x2b'))]=_0x5d64f1[_0x5102('0x2a')];_0x4a5a98[util[_0x5102('0x15')]('%s',_0x5102('0x2c'))]=_0x3d719b;}if(_0x4f2b9d&&_0x4f2b9d[_0x5102('0x2d')]){for(var _0x5b83c3 in _0x4f2b9d['Contact']){if(_0x4f2b9d[_0x5102('0x2d')][_0x5102('0x2e')](_0x5b83c3)){if(!_['isNil'](_0x4f2b9d[_0x5102('0x2d')][_0x5b83c3])&&_0x5b83c3!=='id'&&_0x5b83c3!==_0x5102('0x2f')&&_0x5b83c3!==_0x5102('0x30')&&_0x5b83c3!==_0x5102('0x31')){_0x4a5a98[util[_0x5102('0x15')]('%s%s',_0x5102('0x32'),_['toUpper'](_0x5b83c3))]=_0x4f2b9d['Contact'][_0x5b83c3];}}}}return _0x4a5a98;};exports[_0x5102('0x33')]=function(_0x51be6e){var _0x352e73={};for(var _0x4e1d94 in _0x51be6e){if(_0x51be6e['hasOwnProperty'](_0x4e1d94)){_0x352e73[util[_0x5102('0x15')]('%s',_[_0x5102('0x34')](_0x4e1d94))]=_0x51be6e[_0x4e1d94];}}return{'variables':_0x352e73};};exports[_0x5102('0x35')]=function(_0x42806a,_0xcb64c9){if(!_['isNil'](_0x42806a)){if(_0x42806a['hasOwnProperty'](_0x5102('0x36'))){if(_0x42806a['originated']>0x0){_0x42806a[_0x5102('0x36')]-=0x1;}else{logger[_0x5102('0xa')](_0x5102('0x37'),_0xcb64c9);}}}else{logger[_0x5102('0xa')](_0x5102('0x38'),_0xcb64c9);}};exports[_0x5102('0x39')]=function(_0xf0db66){var _0x163d3c=moment()['format'](_0x5102('0x3a'));_0xf0db66[_0x5102('0x3b')]=0xd;_0xf0db66[_0x5102('0x3c')]=_0x5102('0x3d');_0xf0db66[_0x5102('0x3e')]=_0x163d3c;_0xf0db66[_0x5102('0x3f')]=_0x163d3c;_0xf0db66[_0x5102('0x40')]=_0x163d3c;};exports['logAgent']=function(_0x8c950c,_0x181745,_0x4e4f7b){var _0x1b8699=moment()[_0x5102('0x15')](_0x5102('0x3a'));_0x8c950c['state']=_0x181745;_0x8c950c[_0x5102('0x3c')]=_0x4e4f7b;_0x8c950c[_0x5102('0x3f')]=_0x1b8699;_0x8c950c[_0x5102('0x41')]=getSeconds(_0x8c950c[_0x5102('0x3f')],_0x8c950c[_0x5102('0x3e')]);};exports[_0x5102('0x42')]=function(_0x1c3038,_0x366dc6,_0x30aa7b){_0x1c3038['membername']=_0x366dc6;_0x1c3038[_0x5102('0x43')]=_0x30aa7b;};exports[_0x5102('0x44')]=function(_0x452751,_0x3524c1,_0x3b8e36){var _0x53d125=moment()['format']('YYYY-MM-DD\x20HH:mm:ss');_0x452751[_0x5102('0x3b')]=_0x3524c1;_0x452751[_0x5102('0x3c')]=_0x3b8e36;_0x452751['responsetime']=_0x452751[_0x5102('0x3f')]?_0x452751[_0x5102('0x3f')]:_0x53d125;_0x452751['endtime']=_0x452751[_0x5102('0x40')]?_0x452751[_0x5102('0x40')]:_0x53d125;_0x452751['ringtime']=getSeconds(_0x452751[_0x5102('0x3f')]||0x0,_0x452751['starttime']||0x0);_0x452751[_0x5102('0x45')]=_0x452751['answertime']?getSeconds(_0x452751[_0x5102('0x40')],_0x452751[_0x5102('0x46')]):0x0;};exports[_0x5102('0x47')]=function(_0x2bc1aa){return _0x2bc1aa===_0x5102('0x48');};exports[_0x5102('0x49')]=function(_0x19ce12,_0x4bcfc4,_0x24dd80,_0x79ec8c,_0x29c01d){var _0x46dc69=_0x79ec8c?'RECALL':_0x19ce12['calleridname'];_0x46dc69=_0x29c01d?'BOOKED':_0x46dc69;return{'actionid':_0x19ce12[_0x5102('0x4a')],'action':_0x5102('0x4b'),'channel':_0x19ce12[_0x5102('0x4c')],'callerid':util[_0x5102('0x15')](_0x5102('0x16'),_0x46dc69,_0x19ce12['calleridnum']),'Exten':_0x5102('0x29'),'Context':_0x5102('0x4d'),'Priority':'1','variable':_0x24dd80,'timeout':(_0x4bcfc4[_0x5102('0x4e')]||0x1e)*0x3e8,'async':!![],'channelid':_0x19ce12['uniqueid']};};exports[_0x5102('0x4f')]=function(_0x41f9ac){return _0x41f9ac['countbusyretry']+_0x41f9ac[_0x5102('0x50')]+_0x41f9ac['countnoanswerretry']+_0x41f9ac[_0x5102('0x51')]+_0x41f9ac[_0x5102('0x52')];};exports[_0x5102('0x53')]=function(_0x26eca5){var _0x3543dc=_[_0x5102('0x54')](_0x26eca5);_0x3543dc[_0x5102('0x3b')]=0xf;_0x3543dc[_0x5102('0x3c')]=_0x5102('0x55');return _0x3543dc;};exports[_0x5102('0x56')]=function(_0x5d7602,_0x743d48,_0x2980c2){var _0x15e72b={};_0x15e72b[_0x743d48]=_0x5d7602[_0x743d48];_0x15e72b[_0x5102('0x57')]=![];_0x15e72b[_0x5102('0x58')]=moment()[_0x5102('0x59')](_0x2980c2,_0x5102('0x5a'))[_0x5102('0x15')](_0x5102('0x3a'));_0x15e72b[_0x5102('0x1e')]=_0x5d7602[_0x5102('0x1e')];_0x15e72b[_0x5102('0x5b')]=_0x5d7602[_0x5102('0x5b')];_0x15e72b['VoiceQueueId']=_0x5d7602[_0x5102('0x5c')]||undefined;return _0x15e72b;};exports['decrementTalkink']=function(_0xedb822,_0x596277){if(!_[_0x5102('0x18')](_0xedb822)){if(_0xedb822['pTalking']>0x0){_0xedb822[_0x5102('0x5d')]-=0x1;}else{logger[_0x5102('0xa')](_0x596277,_0x5102('0x5e'));}}else{logger['error'](_0x596277,_0x5102('0x5f'));}};exports[_0x5102('0x60')]=function(_0x3830f){if(_0x3830f<=0x0){return!![];}return![];};exports[_0x5102('0x61')]=function(_0x14b333,_0x52ef3a,_0x4623ef){_0x14b333[_0x5102('0x62')]=_0x52ef3a;_0x14b333[_0x5102('0x1b')]=_0x14b333['queue'];_0x14b333[_0x5102('0x63')]=_0x14b333[_0x5102('0x4c')];if(_0x4623ef){_0x14b333[_0x5102('0x64')]=_0x4623ef['mandatoryDisposition'];}return _0x14b333;};exports['buildAcw']=function(_0x21456c){var _0x56da07={};_0x56da07[_0x5102('0x65')]=_0x21456c['queue'];_0x56da07[_0x5102('0x63')]=_0x21456c[_0x5102('0x4c')];_0x56da07['uniqueid']=_0x21456c[_0x5102('0x4a')];return _0x56da07;};exports[_0x5102('0x66')]=function(_0x4cae3f){var _0x3c3f93=[];for(var _0x470060 in _0x4cae3f){if(_0x4cae3f[_0x5102('0x2e')](_0x470060)){if(!_['isNil'](_0x4cae3f[_0x470060])&&_0x4cae3f[_0x470060]['state']===_0x5102('0x67')&&_0x4cae3f[_0x470060]['status']===_0x5102('0x68')){_0x3c3f93[_0x5102('0x69')](_0x4cae3f[_0x470060]['id']);}}}return _0x3c3f93;};exports['getDiff']=function(_0x146793){var _0xeb61e0=moment()[_0x5102('0x6')](0x0);var _0x58c8c9=moment(_0x146793)['milliseconds'](0x0);return _0xeb61e0['diff'](_0x58c8c9,_0x5102('0x8'));};exports[_0x5102('0x6a')]=function(_0x309204){return{'active':![],'recallme':![],'UserId':null,'ContactId':_0x309204[_0x5102('0x1e')],'ListId':_0x309204[_0x5102('0x5b')],'VoiceQueueId':_0x309204['VoiceQueueId']||undefined,'CampaignId':_0x309204[_0x5102('0x6b')]||undefined};};exports[_0x5102('0x6c')]=function(_0x4f136f){if(_0x4f136f===_0x5102('0x4a')||_0x4f136f===_0x5102('0x6d')||_0x4f136f===_0x5102('0x65')||_0x4f136f===_0x5102('0x6e')||_0x4f136f===_0x5102('0x6f')||_0x4f136f==='dialAnswer'||_0x4f136f===_0x5102('0x70')||_0x4f136f==='channelAgent'||_0x4f136f===_0x5102('0x1c')||_0x4f136f===_0x5102('0x57')||_0x4f136f==='calleridnum'||_0x4f136f===_0x5102('0x58')||_0x4f136f===_0x5102('0x71')||_0x4f136f===_0x5102('0x50')||_0x4f136f===_0x5102('0x72')||_0x4f136f===_0x5102('0x73')||_0x4f136f==='callback'||_0x4f136f===_0x5102('0x74')||_0x4f136f===_0x5102('0x75')||_0x4f136f===_0x5102('0x76')||_0x4f136f==='ContactId'||_0x4f136f===_0x5102('0x5b')||_0x4f136f===_0x5102('0x43')||_0x4f136f===_0x5102('0x5c')||_0x4f136f===_0x5102('0x77')||_0x4f136f===_0x5102('0x78')||_0x4f136f===_0x5102('0x79')||_0x4f136f===_0x5102('0x7a')||_0x4f136f===_0x5102('0x7b')||_0x4f136f===_0x5102('0x7c')||_0x4f136f===_0x5102('0x7d')||_0x4f136f===_0x5102('0x7e')||_0x4f136f===_0x5102('0x7f')||_0x4f136f===_0x5102('0x80')||_0x4f136f===_0x5102('0x81')||_0x4f136f===_0x5102('0x82')||_0x4f136f===_0x5102('0x83')||_0x4f136f===_0x5102('0x84')||_0x4f136f==='xmd-agi'||_0x4f136f==='rtpaudioqos'||_0x4f136f==='rtpaudioqosbridged'||_0x4f136f==='rtpaudioqosjitter'||_0x4f136f===_0x5102('0x85')||_0x4f136f===_0x5102('0x86')||_0x4f136f==='rtpaudioqoslossbridged'||_0x4f136f===_0x5102('0x87')||_0x4f136f===_0x5102('0x88')||_0x4f136f===_0x5102('0x89')||_0x4f136f===_0x5102('0x8a')||_0x4f136f===_0x5102('0x8b')||_0x4f136f==='rtpaudioqosjitterbridged'||_0x4f136f===_0x5102('0x86')||_0x4f136f===_0x5102('0x8c')||_0x4f136f===_0x5102('0x87')||_0x4f136f===_0x5102('0x88')||_0x4f136f===_0x5102('0x8d')||_0x4f136f===_0x5102('0x8e')||_0x4f136f==='state'||_0x4f136f===_0x5102('0x3c')){return![];}return!![];};exports[_0x5102('0x8f')]=function(_0x3151a5,_0x42166a){var _0x17f1a0,_0x2d0343,_0x4b1997;if(_0x42166a<=0x0){_0x42166a=0x1;}_0x17f1a0=new RegExp(_0x5102('0x90')+_0x42166a+'}$');_0x2d0343=Math[_0x5102('0x91')](0xa,_0x42166a-0x1);_0x4b1997=Math['pow'](0xa,_0x42166a)-0x1;return util[_0x5102('0x15')]('%s',_[_0x5102('0x92')](_0x3151a5,_0x17f1a0,_[_0x5102('0x93')](_0x2d0343,_0x4b1997)));};exports['extractCalleridName']=function(_0xa7d6b7){var _0x5840d0=_0xa7d6b7[_0x5102('0x94')](/"(.*?)"/);return _0x5840d0?_0x5840d0[0x1]:_0xa7d6b7;};exports[_0x5102('0x95')]=function(_0x53ade8){var _0x1addb7=_0x53ade8['match'](/<(.*?)>/);return _0x1addb7?_0x1addb7[0x1]:_0x53ade8;};