1f8463801a0a2bc5d6e23923cf6a86d94fbf08ce
[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 _0xae30=['originatecalleridnum','xcally-motion-preview','_XCALLY_MIXMONITOR_FORMAT','_XCALLY_MIXMONITOR_UNIQUEID','Contact','hasOwnProperty','isNil','tags','createdAt','updatedAt','%s%s','XMD-','toUpper','toLowerVariables','updateOriginated','originated','[updateOriginated]\x20object\x20originated\x20is\x20negative','[updateOriginated]\x20is\x20null\x20or\x20undefined','logBlacklist','state','Blacklist','starttime','endtime','logAgent','YYYY-MM-DD\x20HH:mm:ss','responsetime','membername','UserId','logCustomer','statedesc','ringtime','talktime','answertime','isFailure','Failure','variablesAction','RECALL','BOOKED','originate','channelAgent','from-sip','timeout','totalGlobal','countbusyretry','countcongestionretry','countnoanswerretry','countnosuchnumberretry','cloneAction','clone','Global','scheduledAt','active','add','ListId','VoiceQueueId','decrementTalkink','pTalking','[decrementTalkink]\x20object\x20talking\x20is\x20negative','[decrementTalkink]\x20is\x20null\x20or\x20undefined','name','queue','interface','mandatoryDisposition','buildAcw','uniqueid','agentReadyId','not_inuse','status','push','getDiff','CampaignId','filterKey','type','campaigntype','countglobal','callback','callbackuniqueid','recallme','sipcallid','xmd-voicequeueid','xmd-queue','xmd-phone','xmd-listid','xmd-dialurl','xmd-dialtimeout','xmd-dialoptions','xmd-dialid','xmd-dialchannel','xmd-contactid','xmd-callerid','xmd-agiafter','rtpaudioqosbridged','rtpaudioqosjitter','rtpaudioqoslossbridged','rtpaudioqosrtt','rtpaudioqosrttbridged','rtpaudioqos','rtpaudioqosjitterbridged','rtpaudioqosloss','bridgepeer','bridgepvtcallid','getCallerIdRandom','\x5cw{0,','pow','replace','random','match','extractCalleridNumber','util','lodash','moment','../../../../config/logger','preview','env','XCALLY_IP_AGI','127.0.0.1','milliseconds','diff','seconds','loggerCatch','error','inspect','info','loggerError','logger2','getCallerId','string','isEmpty','isUndefined','format','\x22%s\x22\x20<%s>','addVariables','Queue','calleridname','calleridnum','ContactId','dialer','dialOriginateTimeout','\x22rtTxX%s%s\x22','dialQueueProject2','monitor_format','dialPreviewUrl','dialQueueProject','\x22agi://%s/square,%s\x22','NONE'];(function(_0x4cc029,_0xc4d64f){var _0x53995d=function(_0x59b831){while(--_0x59b831){_0x4cc029['push'](_0x4cc029['shift']());}};_0x53995d(++_0xc4d64f);}(_0xae30,0x18e));var _0x0ae3=function(_0x39cbe4,_0x4a7958){_0x39cbe4=_0x39cbe4-0x0;var _0xe76ba7=_0xae30[_0x39cbe4];return _0xe76ba7;};'use strict';var util=require(_0x0ae3('0x0'));var _=require(_0x0ae3('0x1'));var moment=require(_0x0ae3('0x2'));var logger=require(_0x0ae3('0x3'))(_0x0ae3('0x4'));var ipAgi=process[_0x0ae3('0x5')][_0x0ae3('0x6')]||_0x0ae3('0x7');function getSeconds(_0x1c5714,_0x53f516){var _0xaf131=moment(_0x1c5714)[_0x0ae3('0x8')](0x0);var _0xe9cf62=moment(_0x53f516)[_0x0ae3('0x8')](0x0);return _0xaf131[_0x0ae3('0x9')](_0xe9cf62,_0x0ae3('0xa'));}exports[_0x0ae3('0xb')]=function(_0x1ba229){return function(_0x2aa83e){logger[_0x0ae3('0xc')](_0x1ba229,util[_0x0ae3('0xd')](_0x2aa83e,{'showHidden':![],'depth':null}));};};exports['logger']=function(_0x76217d,_0x478310){logger[_0x0ae3('0xe')](_0x76217d,util[_0x0ae3('0xd')](_0x478310,{'showHidden':![],'depth':null}));};exports[_0x0ae3('0xf')]=function(_0x206035,_0x791616){logger[_0x0ae3('0xc')](_0x206035,util[_0x0ae3('0xd')](_0x791616,{'showHidden':![],'depth':null}));};exports[_0x0ae3('0x10')]=function(_0x1bc8e8){return function(_0x1f8659){logger['info'](_0x1bc8e8,util[_0x0ae3('0xd')](_0x1f8659,{'showHidden':![],'depth':null}));};};exports['message']=function(_0x438e2b,_0x46ebb9,_0x547406){return{'message':_0x438e2b,'unlock':_0x46ebb9,'active':_0x547406};};exports[_0x0ae3('0x11')]=function(_0x39850b,_0x508cca,_0x48ce9f){if(!_['isUndefined'](_0x48ce9f)&&_0x0ae3('0x12')===typeof _0x48ce9f&&!_[_0x0ae3('0x13')](_0x48ce9f)){if(!_[_0x0ae3('0x14')](_0x508cca)&&_0x0ae3('0x12')===typeof _0x508cca&&!_[_0x0ae3('0x13')](_0x508cca)){return util['format']('\x22%s\x22\x20<%s>',_0x508cca,_0x48ce9f);}return util[_0x0ae3('0x15')](_0x0ae3('0x16'),_0x48ce9f,_0x48ce9f);}if(!_['isUndefined'](_0x39850b)&&_0x0ae3('0x12')===typeof _0x39850b&&!_['isEmpty'](_0x39850b)){return _0x39850b;}return'\x22\x22\x20<>';};exports['isActive']=function(_0x3bba26){if(_['isNil'](_0x3bba26)){return![];}return _0x3bba26;};exports[_0x0ae3('0x17')]=function(_0x4406a0,_0x24f082,_0x419dd5,_0x4a9ac9,_0x2190cf,_0x5daaa4){var _0x51048c={'XMD-QUEUE':_0x24f082[_0x0ae3('0x18')]?_0x24f082['Queue']['name']:'','XMD-CALLERID':_0x4a9ac9,'XMD-CALLERID-PREVIEW':_0x5daaa4?util[_0x0ae3('0x15')](_0x0ae3('0x16'),_0x5daaa4[_0x0ae3('0x19')],_0x5daaa4[_0x0ae3('0x1a')]):_0x4a9ac9,'XMD-DIALID':_0x2190cf,'XMD-CONTACTID':_0x24f082[_0x0ae3('0x1b')],'XMD-CDRTYPE':_0x0ae3('0x1c'),'CALLERID(all)':_0x4a9ac9,'XMD-VOICEQUEUEID':_0x24f082['VoiceQueueId'],'XMD-DIALCHANNEL':_0x419dd5,'XMD-DIALTIMEOUT':_0x4406a0[_0x0ae3('0x1d')]||0x1e,'XMD-DIALOPTIONS':util[_0x0ae3('0x15')](_0x0ae3('0x1e'),_0x4406a0[_0x0ae3('0x1f')]?'g':'',_[_0x0ae3('0x13')](_0x4406a0[_0x0ae3('0x20')])?'':'U(xcally-mixmonitor-context)'),'XMD-DIALURL':_0x4406a0[_0x0ae3('0x21')]||'','XMD-AGI':_0x4406a0[_0x0ae3('0x22')]?util[_0x0ae3('0x15')](_0x0ae3('0x23'),ipAgi,_0x4406a0[_0x0ae3('0x22')]):_0x0ae3('0x24'),'XMD-AGIAFTER':_0x4406a0[_0x0ae3('0x1f')]?util[_0x0ae3('0x15')](_0x0ae3('0x23'),ipAgi,_0x4406a0[_0x0ae3('0x1f')]):'NONE','XMD-ORIGINATECALLERIDNUM':_0x5daaa4?_0x5daaa4[_0x0ae3('0x25')]:'','XMD-ORIGINATECALLERIDNAME':_0x5daaa4?_0x5daaa4['originatecalleridname']:'','XMD-DESTINATION':_0x0ae3('0x26')};if(!_[_0x0ae3('0x13')](_0x4406a0['monitor_format'])){_0x51048c[util[_0x0ae3('0x15')]('%s',_0x0ae3('0x27'))]=_0x4406a0[_0x0ae3('0x20')];_0x51048c[util['format']('%s',_0x0ae3('0x28'))]=_0x2190cf;}if(_0x24f082&&_0x24f082[_0x0ae3('0x29')]){for(var _0x1b7310 in _0x24f082[_0x0ae3('0x29')]){if(_0x24f082['Contact'][_0x0ae3('0x2a')](_0x1b7310)){if(!_[_0x0ae3('0x2b')](_0x24f082[_0x0ae3('0x29')][_0x1b7310])&&_0x1b7310!=='id'&&_0x1b7310!==_0x0ae3('0x2c')&&_0x1b7310!==_0x0ae3('0x2d')&&_0x1b7310!==_0x0ae3('0x2e')){_0x51048c[util[_0x0ae3('0x15')](_0x0ae3('0x2f'),_0x0ae3('0x30'),_[_0x0ae3('0x31')](_0x1b7310))]=_0x24f082[_0x0ae3('0x29')][_0x1b7310];}}}}return _0x51048c;};exports[_0x0ae3('0x32')]=function(_0x211886){var _0x7af086={};for(var _0x254d8b in _0x211886){if(_0x211886['hasOwnProperty'](_0x254d8b)){_0x7af086[util['format']('%s',_['toLower'](_0x254d8b))]=_0x211886[_0x254d8b];}}return{'variables':_0x7af086};};exports[_0x0ae3('0x33')]=function(_0x2c331f,_0x4b1265){if(!_[_0x0ae3('0x2b')](_0x2c331f)){if(_0x2c331f['hasOwnProperty'](_0x0ae3('0x34'))){if(_0x2c331f['originated']>0x0){_0x2c331f['originated']-=0x1;}else{logger[_0x0ae3('0xc')](_0x0ae3('0x35'),_0x4b1265);}}}else{logger[_0x0ae3('0xc')](_0x0ae3('0x36'),_0x4b1265);}};exports[_0x0ae3('0x37')]=function(_0x49ce98){var _0x10bb5f=moment()[_0x0ae3('0x15')]('YYYY-MM-DD\x20HH:mm:ss');_0x49ce98[_0x0ae3('0x38')]=0xd;_0x49ce98['statedesc']=_0x0ae3('0x39');_0x49ce98[_0x0ae3('0x3a')]=_0x10bb5f;_0x49ce98['responsetime']=_0x10bb5f;_0x49ce98[_0x0ae3('0x3b')]=_0x10bb5f;};exports[_0x0ae3('0x3c')]=function(_0x5b6d41,_0x5db50d,_0x4edb2c){var _0x1f933d=moment()[_0x0ae3('0x15')](_0x0ae3('0x3d'));_0x5b6d41[_0x0ae3('0x38')]=_0x5db50d;_0x5b6d41['statedesc']=_0x4edb2c;_0x5b6d41[_0x0ae3('0x3e')]=_0x1f933d;_0x5b6d41['ringtime']=getSeconds(_0x5b6d41['responsetime'],_0x5b6d41[_0x0ae3('0x3a')]);};exports['logLookAgent']=function(_0xc0e993,_0x50d6fa,_0x268772){_0xc0e993[_0x0ae3('0x3f')]=_0x50d6fa;_0xc0e993[_0x0ae3('0x40')]=_0x268772;};exports[_0x0ae3('0x41')]=function(_0x48c43f,_0x187af4,_0x3de648){var _0x7e8760=moment()[_0x0ae3('0x15')](_0x0ae3('0x3d'));_0x48c43f[_0x0ae3('0x38')]=_0x187af4;_0x48c43f[_0x0ae3('0x42')]=_0x3de648;_0x48c43f['responsetime']=_0x48c43f[_0x0ae3('0x3e')]?_0x48c43f[_0x0ae3('0x3e')]:_0x7e8760;_0x48c43f[_0x0ae3('0x3b')]=_0x48c43f['endtime']?_0x48c43f[_0x0ae3('0x3b')]:_0x7e8760;_0x48c43f[_0x0ae3('0x43')]=getSeconds(_0x48c43f[_0x0ae3('0x3e')]||0x0,_0x48c43f[_0x0ae3('0x3a')]||0x0);_0x48c43f[_0x0ae3('0x44')]=_0x48c43f['answertime']?getSeconds(_0x48c43f[_0x0ae3('0x3b')],_0x48c43f[_0x0ae3('0x45')]):0x0;};exports[_0x0ae3('0x46')]=function(_0x3cd933){return _0x3cd933===_0x0ae3('0x47');};exports[_0x0ae3('0x48')]=function(_0x4f02c0,_0x2aaedf,_0x3df419,_0x24db39,_0x3e57d5){var _0x39132b=_0x24db39?_0x0ae3('0x49'):_0x4f02c0[_0x0ae3('0x19')];_0x39132b=_0x3e57d5?_0x0ae3('0x4a'):_0x39132b;return{'actionid':_0x4f02c0['uniqueid'],'action':_0x0ae3('0x4b'),'channel':_0x4f02c0[_0x0ae3('0x4c')],'callerid':util[_0x0ae3('0x15')](_0x0ae3('0x16'),_0x39132b,_0x4f02c0[_0x0ae3('0x1a')]),'Exten':'xcally-motion-preview','Context':_0x0ae3('0x4d'),'Priority':'1','variable':_0x3df419,'timeout':(_0x2aaedf[_0x0ae3('0x4e')]||0x1e)*0x3e8,'async':!![],'channelid':_0x4f02c0['uniqueid']};};exports[_0x0ae3('0x4f')]=function(_0x2757fb){return _0x2757fb[_0x0ae3('0x50')]+_0x2757fb[_0x0ae3('0x51')]+_0x2757fb[_0x0ae3('0x52')]+_0x2757fb['countagentrejectretry']+_0x2757fb[_0x0ae3('0x53')];};exports[_0x0ae3('0x54')]=function(_0x1717ec){var _0x28fc08=_[_0x0ae3('0x55')](_0x1717ec);_0x28fc08['state']=0xf;_0x28fc08[_0x0ae3('0x42')]=_0x0ae3('0x56');return _0x28fc08;};exports[_0x0ae3('0x57')]=function(_0x27a802,_0xa65b45,_0x4dc056){var _0x133e02={};_0x133e02[_0xa65b45]=_0x27a802[_0xa65b45];_0x133e02[_0x0ae3('0x58')]=![];_0x133e02['scheduledat']=moment()[_0x0ae3('0x59')](_0x4dc056,'minutes')[_0x0ae3('0x15')](_0x0ae3('0x3d'));_0x133e02['ContactId']=_0x27a802[_0x0ae3('0x1b')];_0x133e02[_0x0ae3('0x5a')]=_0x27a802[_0x0ae3('0x5a')];_0x133e02[_0x0ae3('0x5b')]=_0x27a802[_0x0ae3('0x5b')]||undefined;return _0x133e02;};exports[_0x0ae3('0x5c')]=function(_0x2248a0,_0x4549cb){if(!_[_0x0ae3('0x2b')](_0x2248a0)){if(_0x2248a0['pTalking']>0x0){_0x2248a0[_0x0ae3('0x5d')]-=0x1;}else{logger[_0x0ae3('0xc')](_0x4549cb,_0x0ae3('0x5e'));}}else{logger[_0x0ae3('0xc')](_0x4549cb,_0x0ae3('0x5f'));}};exports['IsNotLoggedIn']=function(_0x40b991){if(_0x40b991<=0x0){return!![];}return![];};exports['buildObj']=function(_0x347f35,_0x19277d,_0x34b1ef){_0x347f35['lastevent']=_0x19277d;_0x347f35[_0x0ae3('0x60')]=_0x347f35[_0x0ae3('0x61')];_0x347f35[_0x0ae3('0x62')]=_0x347f35[_0x0ae3('0x4c')];if(_0x34b1ef){_0x347f35[_0x0ae3('0x63')]=_0x34b1ef[_0x0ae3('0x63')];}return _0x347f35;};exports[_0x0ae3('0x64')]=function(_0x22bdb1){var _0x5a07fb={};_0x5a07fb[_0x0ae3('0x61')]=_0x22bdb1[_0x0ae3('0x61')];_0x5a07fb[_0x0ae3('0x62')]=_0x22bdb1[_0x0ae3('0x4c')];_0x5a07fb[_0x0ae3('0x65')]=_0x22bdb1[_0x0ae3('0x65')];return _0x5a07fb;};exports[_0x0ae3('0x66')]=function(_0x4ae091){var _0x101dcd=[];for(var _0x485b11 in _0x4ae091){if(_0x4ae091[_0x0ae3('0x2a')](_0x485b11)){if(!_[_0x0ae3('0x2b')](_0x4ae091[_0x485b11])&&_0x4ae091[_0x485b11]['state']===_0x0ae3('0x67')&&_0x4ae091[_0x485b11][_0x0ae3('0x68')]==='reachable'){_0x101dcd[_0x0ae3('0x69')](_0x4ae091[_0x485b11]['id']);}}}return _0x101dcd;};exports[_0x0ae3('0x6a')]=function(_0x216f62){var _0x34ca45=moment()[_0x0ae3('0x8')](0x0);var _0x3c1380=moment(_0x216f62)[_0x0ae3('0x8')](0x0);return _0x34ca45[_0x0ae3('0x9')](_0x3c1380,_0x0ae3('0xa'));};exports['createBody']=function(_0x27ae9b){return{'active':![],'recallme':![],'UserId':null,'ContactId':_0x27ae9b[_0x0ae3('0x1b')],'ListId':_0x27ae9b[_0x0ae3('0x5a')],'VoiceQueueId':_0x27ae9b['VoiceQueueId']||undefined,'CampaignId':_0x27ae9b[_0x0ae3('0x6b')]||undefined};};exports[_0x0ae3('0x6c')]=function(_0x31ed66){if(_0x31ed66===_0x0ae3('0x65')||_0x31ed66==='idContact'||_0x31ed66===_0x0ae3('0x61')||_0x31ed66===_0x0ae3('0x6d')||_0x31ed66===_0x0ae3('0x6e')||_0x31ed66==='dialAnswer'||_0x31ed66===_0x0ae3('0x3f')||_0x31ed66==='channelAgent'||_0x31ed66===_0x0ae3('0x19')||_0x31ed66===_0x0ae3('0x58')||_0x31ed66===_0x0ae3('0x1a')||_0x31ed66==='scheduledat'||_0x31ed66==='countbusyretry'||_0x31ed66===_0x0ae3('0x51')||_0x31ed66===_0x0ae3('0x52')||_0x31ed66===_0x0ae3('0x6f')||_0x31ed66===_0x0ae3('0x70')||_0x31ed66===_0x0ae3('0x71')||_0x31ed66==='callbackat'||_0x31ed66===_0x0ae3('0x72')||_0x31ed66==='ContactId'||_0x31ed66===_0x0ae3('0x5a')||_0x31ed66===_0x0ae3('0x40')||_0x31ed66===_0x0ae3('0x5b')||_0x31ed66===_0x0ae3('0x73')||_0x31ed66===_0x0ae3('0x74')||_0x31ed66===_0x0ae3('0x75')||_0x31ed66===_0x0ae3('0x76')||_0x31ed66===_0x0ae3('0x77')||_0x31ed66===_0x0ae3('0x78')||_0x31ed66===_0x0ae3('0x79')||_0x31ed66===_0x0ae3('0x7a')||_0x31ed66===_0x0ae3('0x7b')||_0x31ed66===_0x0ae3('0x7c')||_0x31ed66===_0x0ae3('0x7d')||_0x31ed66==='xmd-cdrtype'||_0x31ed66===_0x0ae3('0x7e')||_0x31ed66===_0x0ae3('0x7f')||_0x31ed66==='xmd-agi'||_0x31ed66==='rtpaudioqos'||_0x31ed66===_0x0ae3('0x80')||_0x31ed66===_0x0ae3('0x81')||_0x31ed66==='rtpaudioqosjitterbridged'||_0x31ed66==='rtpaudioqosloss'||_0x31ed66===_0x0ae3('0x82')||_0x31ed66===_0x0ae3('0x83')||_0x31ed66===_0x0ae3('0x84')||_0x31ed66===_0x0ae3('0x85')||_0x31ed66===_0x0ae3('0x80')||_0x31ed66===_0x0ae3('0x81')||_0x31ed66===_0x0ae3('0x86')||_0x31ed66===_0x0ae3('0x87')||_0x31ed66===_0x0ae3('0x82')||_0x31ed66===_0x0ae3('0x83')||_0x31ed66===_0x0ae3('0x84')||_0x31ed66===_0x0ae3('0x88')||_0x31ed66===_0x0ae3('0x89')||_0x31ed66===_0x0ae3('0x38')||_0x31ed66===_0x0ae3('0x42')){return![];}return!![];};exports[_0x0ae3('0x8a')]=function(_0x4b6e71,_0x26f55a){var _0x35ebd1,_0x5232e1,_0x2db436;if(_0x26f55a<=0x0){_0x26f55a=0x1;}_0x35ebd1=new RegExp(_0x0ae3('0x8b')+_0x26f55a+'}$');_0x5232e1=Math[_0x0ae3('0x8c')](0xa,_0x26f55a-0x1);_0x2db436=Math[_0x0ae3('0x8c')](0xa,_0x26f55a)-0x1;return util['format']('%s',_[_0x0ae3('0x8d')](_0x4b6e71,_0x35ebd1,_[_0x0ae3('0x8e')](_0x5232e1,_0x2db436)));};exports['extractCalleridName']=function(_0x1bd1f7){var _0x548025=_0x1bd1f7[_0x0ae3('0x8f')](/"(.*?)"/);return _0x548025?_0x548025[0x1]:_0x1bd1f7;};exports[_0x0ae3('0x90')]=function(_0x807aa9){var _0x38123e=_0x807aa9[_0x0ae3('0x8f')](/<(.*?)>/);return _0x38123e?_0x38123e[0x1]:_0x807aa9;};