Built motion from commit (unavailable).|2.5.10
[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 _0x3ef3=['moment','../../../../config/logger','env','XCALLY_IP_AGI','127.0.0.1','milliseconds','diff','seconds','loggerCatch','error','inspect','info','loggerError','message','getCallerId','string','isEmpty','isUndefined','\x22%s\x22\x20<%s>','format','\x22\x22\x20<>','isActive','isNil','addVariables','Queue','name','calleridname','calleridnum','dialer','dialOriginateTimeout','\x22rtTxX%s%s\x22','dialQueueProject2','monitor_format','U(xcally-mixmonitor-context)','dialPreviewUrl','\x22agi://%s/square,%s\x22','dialQueueProject','NONE','originatecalleridnum','originatecalleridname','xcally-motion-preview','_XCALLY_MIXMONITOR_FORMAT','_XCALLY_MIXMONITOR_UNIQUEID','Contact','hasOwnProperty','tags','updatedAt','XMD-','toUpper','toLowerVariables','updateOriginated','originated','[updateOriginated]\x20object\x20originated\x20is\x20negative','[updateOriginated]\x20is\x20null\x20or\x20undefined','logBlacklist','YYYY-MM-DD\x20HH:mm:ss','Blacklist','starttime','responsetime','logAgent','state','statedesc','UserId','endtime','ringtime','talktime','answertime','Failure','variablesAction','RECALL','BOOKED','uniqueid','originate','from-sip','totalGlobal','countbusyretry','countcongestionretry','countagentrejectretry','countnosuchnumberretry','cloneAction','clone','Global','scheduledAt','active','minutes','ContactId','ListId','pTalking','[decrementTalkink]\x20is\x20null\x20or\x20undefined','buildObj','queue','interface','channelAgent','buildAcw','agentReadyId','not_inuse','reachable','getDiff','createBody','CampaignId','filterKey','idContact','campaigntype','dialAnswer','scheduledat','countnoanswerretry','countglobal','callback','recallme','VoiceQueueId','sipcallid','xmd-voicequeueid','xmd-phone','xmd-listid','xmd-dialurl','xmd-dialtimeout','xmd-dialoptions','xmd-dialid','xmd-dialchannel','xmd-contactid','xmd-cdrtype','xmd-callerid','xmd-agiafter','xmd-agi','rtpaudioqos','rtpaudioqosbridged','rtpaudioqosjitter','rtpaudioqosloss','rtpaudioqoslossbridged','rtpaudioqosrtt','rtpaudioqosrttbridged','rtpaudioqosjitterbridged','bridgepeer','bridgepvtcallid','\x5cw{0,','pow','replace','random','match','extractCalleridNumber','util','lodash'];(function(_0x5eaa0b,_0x433b2f){var _0x28b295=function(_0x5e4f6d){while(--_0x5e4f6d){_0x5eaa0b['push'](_0x5eaa0b['shift']());}};_0x28b295(++_0x433b2f);}(_0x3ef3,0x1a8));var _0x33ef=function(_0xfcb984,_0x4165bd){_0xfcb984=_0xfcb984-0x0;var _0x32e3de=_0x3ef3[_0xfcb984];return _0x32e3de;};'use strict';var util=require(_0x33ef('0x0'));var _=require(_0x33ef('0x1'));var moment=require(_0x33ef('0x2'));var logger=require(_0x33ef('0x3'))('preview');var ipAgi=process[_0x33ef('0x4')][_0x33ef('0x5')]||_0x33ef('0x6');function getSeconds(_0x1c503c,_0x403b1f){var _0x820616=moment(_0x1c503c)[_0x33ef('0x7')](0x0);var _0xe27582=moment(_0x403b1f)[_0x33ef('0x7')](0x0);return _0x820616[_0x33ef('0x8')](_0xe27582,_0x33ef('0x9'));}exports[_0x33ef('0xa')]=function(_0x2cd255){return function(_0x44ea17){logger[_0x33ef('0xb')](_0x2cd255,util[_0x33ef('0xc')](_0x44ea17,{'showHidden':![],'depth':null}));};};exports['logger']=function(_0x126588,_0x29909b){logger[_0x33ef('0xd')](_0x126588,util[_0x33ef('0xc')](_0x29909b,{'showHidden':![],'depth':null}));};exports[_0x33ef('0xe')]=function(_0xe3c8bd,_0x187f5e){logger[_0x33ef('0xb')](_0xe3c8bd,util[_0x33ef('0xc')](_0x187f5e,{'showHidden':![],'depth':null}));};exports['logger2']=function(_0x1607ed){return function(_0x1ee9e2){logger[_0x33ef('0xd')](_0x1607ed,util[_0x33ef('0xc')](_0x1ee9e2,{'showHidden':![],'depth':null}));};};exports[_0x33ef('0xf')]=function(_0x1529be,_0x471b7d,_0x283d6e){return{'message':_0x1529be,'unlock':_0x471b7d,'active':_0x283d6e};};exports[_0x33ef('0x10')]=function(_0x2b8790,_0x33d01f,_0x4a787f){if(!_['isUndefined'](_0x4a787f)&&_0x33ef('0x11')===typeof _0x4a787f&&!_[_0x33ef('0x12')](_0x4a787f)){if(!_[_0x33ef('0x13')](_0x33d01f)&&'string'===typeof _0x33d01f&&!_[_0x33ef('0x12')](_0x33d01f)){return util['format'](_0x33ef('0x14'),_0x33d01f,_0x4a787f);}return util[_0x33ef('0x15')](_0x33ef('0x14'),_0x4a787f,_0x4a787f);}if(!_['isUndefined'](_0x2b8790)&&_0x33ef('0x11')===typeof _0x2b8790&&!_[_0x33ef('0x12')](_0x2b8790)){return _0x2b8790;}return _0x33ef('0x16');};exports[_0x33ef('0x17')]=function(_0x4fb586){if(_[_0x33ef('0x18')](_0x4fb586)){return![];}return _0x4fb586;};exports[_0x33ef('0x19')]=function(_0x4b44ee,_0x49f717,_0xc42cd7,_0x3310f3,_0x4b892d,_0x3e1bf2){var _0x54dee4={'XMD-QUEUE':_0x49f717[_0x33ef('0x1a')]?_0x49f717['Queue'][_0x33ef('0x1b')]:'','XMD-CALLERID':_0x3310f3,'XMD-CALLERID-PREVIEW':_0x3e1bf2?util[_0x33ef('0x15')](_0x33ef('0x14'),_0x3e1bf2[_0x33ef('0x1c')],_0x3e1bf2[_0x33ef('0x1d')]):_0x3310f3,'XMD-DIALID':_0x4b892d,'XMD-CONTACTID':_0x49f717['ContactId'],'XMD-CDRTYPE':_0x33ef('0x1e'),'CALLERID(all)':_0x3310f3,'XMD-VOICEQUEUEID':_0x49f717['VoiceQueueId'],'XMD-DIALCHANNEL':_0xc42cd7,'XMD-DIALTIMEOUT':_0x4b44ee[_0x33ef('0x1f')]||0x1e,'XMD-DIALOPTIONS':util[_0x33ef('0x15')](_0x33ef('0x20'),_0x4b44ee[_0x33ef('0x21')]?'g':'',_[_0x33ef('0x12')](_0x4b44ee[_0x33ef('0x22')])?'':_0x33ef('0x23')),'XMD-DIALURL':_0x4b44ee[_0x33ef('0x24')]||'','XMD-AGI':_0x4b44ee['dialQueueProject']?util[_0x33ef('0x15')](_0x33ef('0x25'),ipAgi,_0x4b44ee[_0x33ef('0x26')]):_0x33ef('0x27'),'XMD-AGIAFTER':_0x4b44ee[_0x33ef('0x21')]?util[_0x33ef('0x15')]('\x22agi://%s/square,%s\x22',ipAgi,_0x4b44ee[_0x33ef('0x21')]):_0x33ef('0x27'),'XMD-ORIGINATECALLERIDNUM':_0x3e1bf2?_0x3e1bf2[_0x33ef('0x28')]:'','XMD-ORIGINATECALLERIDNAME':_0x3e1bf2?_0x3e1bf2[_0x33ef('0x29')]:'','XMD-DESTINATION':_0x33ef('0x2a')};if(!_[_0x33ef('0x12')](_0x4b44ee[_0x33ef('0x22')])){_0x54dee4[util[_0x33ef('0x15')]('%s',_0x33ef('0x2b'))]=_0x4b44ee[_0x33ef('0x22')];_0x54dee4[util['format']('%s',_0x33ef('0x2c'))]=_0x4b892d;}if(_0x49f717&&_0x49f717[_0x33ef('0x2d')]){for(var _0x57a9ff in _0x49f717[_0x33ef('0x2d')]){if(_0x49f717[_0x33ef('0x2d')][_0x33ef('0x2e')](_0x57a9ff)){if(!_[_0x33ef('0x18')](_0x49f717[_0x33ef('0x2d')][_0x57a9ff])&&_0x57a9ff!=='id'&&_0x57a9ff!==_0x33ef('0x2f')&&_0x57a9ff!=='createdAt'&&_0x57a9ff!==_0x33ef('0x30')){_0x54dee4[util[_0x33ef('0x15')]('%s%s',_0x33ef('0x31'),_[_0x33ef('0x32')](_0x57a9ff))]=_0x49f717[_0x33ef('0x2d')][_0x57a9ff];}}}}return _0x54dee4;};exports[_0x33ef('0x33')]=function(_0x18e101){var _0x5e157b={};for(var _0x3fa6c1 in _0x18e101){if(_0x18e101[_0x33ef('0x2e')](_0x3fa6c1)){_0x5e157b[util['format']('%s',_['toLower'](_0x3fa6c1))]=_0x18e101[_0x3fa6c1];}}return{'variables':_0x5e157b};};exports[_0x33ef('0x34')]=function(_0x1e1d9d,_0x99c7b2){if(!_['isNil'](_0x1e1d9d)){if(_0x1e1d9d['hasOwnProperty'](_0x33ef('0x35'))){if(_0x1e1d9d[_0x33ef('0x35')]>0x0){_0x1e1d9d[_0x33ef('0x35')]-=0x1;}else{logger['error'](_0x33ef('0x36'),_0x99c7b2);}}}else{logger[_0x33ef('0xb')](_0x33ef('0x37'),_0x99c7b2);}};exports[_0x33ef('0x38')]=function(_0x1282e2){var _0x3cfc4c=moment()[_0x33ef('0x15')](_0x33ef('0x39'));_0x1282e2['state']=0xd;_0x1282e2['statedesc']=_0x33ef('0x3a');_0x1282e2[_0x33ef('0x3b')]=_0x3cfc4c;_0x1282e2[_0x33ef('0x3c')]=_0x3cfc4c;_0x1282e2['endtime']=_0x3cfc4c;};exports[_0x33ef('0x3d')]=function(_0x13e968,_0x58f738,_0x848d57){var _0x1fc0b7=moment()['format']('YYYY-MM-DD\x20HH:mm:ss');_0x13e968[_0x33ef('0x3e')]=_0x58f738;_0x13e968[_0x33ef('0x3f')]=_0x848d57;_0x13e968[_0x33ef('0x3c')]=_0x1fc0b7;_0x13e968['ringtime']=getSeconds(_0x13e968[_0x33ef('0x3c')],_0x13e968[_0x33ef('0x3b')]);};exports['logLookAgent']=function(_0x1cc34c,_0x1e8b75,_0x2b81ae){_0x1cc34c['membername']=_0x1e8b75;_0x1cc34c[_0x33ef('0x40')]=_0x2b81ae;};exports['logCustomer']=function(_0x20f751,_0x38e661,_0x5c357b){var _0x35bebb=moment()['format'](_0x33ef('0x39'));_0x20f751[_0x33ef('0x3e')]=_0x38e661;_0x20f751[_0x33ef('0x3f')]=_0x5c357b;_0x20f751['responsetime']=_0x20f751[_0x33ef('0x3c')]?_0x20f751[_0x33ef('0x3c')]:_0x35bebb;_0x20f751['endtime']=_0x20f751['endtime']?_0x20f751[_0x33ef('0x41')]:_0x35bebb;_0x20f751[_0x33ef('0x42')]=getSeconds(_0x20f751['responsetime']||0x0,_0x20f751[_0x33ef('0x3b')]||0x0);_0x20f751[_0x33ef('0x43')]=_0x20f751[_0x33ef('0x44')]?getSeconds(_0x20f751[_0x33ef('0x41')],_0x20f751['answertime']):0x0;};exports['isFailure']=function(_0x286a07){return _0x286a07===_0x33ef('0x45');};exports[_0x33ef('0x46')]=function(_0x289ccf,_0x45664c,_0x4ac899,_0x19adb4,_0x525094){var _0xde2f56=_0x19adb4?_0x33ef('0x47'):_0x289ccf[_0x33ef('0x1c')];_0xde2f56=_0x525094?_0x33ef('0x48'):_0xde2f56;return{'actionid':_0x289ccf[_0x33ef('0x49')],'action':_0x33ef('0x4a'),'channel':_0x289ccf['channelAgent'],'callerid':util[_0x33ef('0x15')]('\x22%s\x22\x20<%s>',_0xde2f56,_0x289ccf[_0x33ef('0x1d')]),'Exten':_0x33ef('0x2a'),'Context':_0x33ef('0x4b'),'Priority':'1','variable':_0x4ac899,'timeout':(_0x45664c['timeout']||0x1e)*0x3e8,'async':!![],'channelid':_0x289ccf[_0x33ef('0x49')]};};exports[_0x33ef('0x4c')]=function(_0x34de5c){return _0x34de5c[_0x33ef('0x4d')]+_0x34de5c[_0x33ef('0x4e')]+_0x34de5c['countnoanswerretry']+_0x34de5c[_0x33ef('0x4f')]+_0x34de5c[_0x33ef('0x50')];};exports[_0x33ef('0x51')]=function(_0x1cf274){var _0x395358=_[_0x33ef('0x52')](_0x1cf274);_0x395358[_0x33ef('0x3e')]=0xf;_0x395358[_0x33ef('0x3f')]=_0x33ef('0x53');return _0x395358;};exports[_0x33ef('0x54')]=function(_0x3173b9,_0x5af37a,_0x3040fe){var _0x56949c={};_0x56949c[_0x5af37a]=_0x3173b9[_0x5af37a];_0x56949c[_0x33ef('0x55')]=![];_0x56949c['scheduledat']=moment()['add'](_0x3040fe,_0x33ef('0x56'))[_0x33ef('0x15')]('YYYY-MM-DD\x20HH:mm:ss');_0x56949c[_0x33ef('0x57')]=_0x3173b9[_0x33ef('0x57')];_0x56949c[_0x33ef('0x58')]=_0x3173b9[_0x33ef('0x58')];_0x56949c['VoiceQueueId']=_0x3173b9['VoiceQueueId']||undefined;return _0x56949c;};exports['decrementTalkink']=function(_0x29f6e0,_0x459e75){if(!_['isNil'](_0x29f6e0)){if(_0x29f6e0[_0x33ef('0x59')]>0x0){_0x29f6e0[_0x33ef('0x59')]-=0x1;}else{logger[_0x33ef('0xb')](_0x459e75,'[decrementTalkink]\x20object\x20talking\x20is\x20negative');}}else{logger[_0x33ef('0xb')](_0x459e75,_0x33ef('0x5a'));}};exports['IsNotLoggedIn']=function(_0x1531eb){if(_0x1531eb<=0x0){return!![];}return![];};exports[_0x33ef('0x5b')]=function(_0x59da60,_0xfa1104,_0x528f0b){_0x59da60['lastevent']=_0xfa1104;_0x59da60[_0x33ef('0x1b')]=_0x59da60[_0x33ef('0x5c')];_0x59da60[_0x33ef('0x5d')]=_0x59da60[_0x33ef('0x5e')];if(_0x528f0b){_0x59da60['mandatoryDisposition']=_0x528f0b['mandatoryDisposition'];}return _0x59da60;};exports[_0x33ef('0x5f')]=function(_0x29e5c1){var _0x483718={};_0x483718[_0x33ef('0x5c')]=_0x29e5c1[_0x33ef('0x5c')];_0x483718['interface']=_0x29e5c1[_0x33ef('0x5e')];_0x483718[_0x33ef('0x49')]=_0x29e5c1[_0x33ef('0x49')];return _0x483718;};exports[_0x33ef('0x60')]=function(_0x1b483c){var _0x46da17=[];for(var _0x5c57c2 in _0x1b483c){if(_0x1b483c[_0x33ef('0x2e')](_0x5c57c2)){if(!_[_0x33ef('0x18')](_0x1b483c[_0x5c57c2])&&_0x1b483c[_0x5c57c2][_0x33ef('0x3e')]===_0x33ef('0x61')&&_0x1b483c[_0x5c57c2]['status']===_0x33ef('0x62')){_0x46da17['push'](_0x1b483c[_0x5c57c2]['id']);}}}return _0x46da17;};exports[_0x33ef('0x63')]=function(_0x450114){var _0x155d63=moment()[_0x33ef('0x7')](0x0);var _0x158ddb=moment(_0x450114)[_0x33ef('0x7')](0x0);return _0x155d63['diff'](_0x158ddb,_0x33ef('0x9'));};exports[_0x33ef('0x64')]=function(_0x3a0a21){return{'active':![],'recallme':![],'UserId':null,'ContactId':_0x3a0a21[_0x33ef('0x57')],'ListId':_0x3a0a21[_0x33ef('0x58')],'VoiceQueueId':_0x3a0a21['VoiceQueueId']||undefined,'CampaignId':_0x3a0a21[_0x33ef('0x65')]||undefined};};exports[_0x33ef('0x66')]=function(_0x144161){if(_0x144161===_0x33ef('0x49')||_0x144161===_0x33ef('0x67')||_0x144161===_0x33ef('0x5c')||_0x144161==='type'||_0x144161===_0x33ef('0x68')||_0x144161===_0x33ef('0x69')||_0x144161==='membername'||_0x144161==='channelAgent'||_0x144161===_0x33ef('0x1c')||_0x144161===_0x33ef('0x55')||_0x144161==='calleridnum'||_0x144161===_0x33ef('0x6a')||_0x144161===_0x33ef('0x4d')||_0x144161===_0x33ef('0x4e')||_0x144161===_0x33ef('0x6b')||_0x144161===_0x33ef('0x6c')||_0x144161===_0x33ef('0x6d')||_0x144161==='callbackuniqueid'||_0x144161==='callbackat'||_0x144161===_0x33ef('0x6e')||_0x144161===_0x33ef('0x57')||_0x144161==='ListId'||_0x144161==='UserId'||_0x144161===_0x33ef('0x6f')||_0x144161===_0x33ef('0x70')||_0x144161===_0x33ef('0x71')||_0x144161==='xmd-queue'||_0x144161===_0x33ef('0x72')||_0x144161===_0x33ef('0x73')||_0x144161===_0x33ef('0x74')||_0x144161===_0x33ef('0x75')||_0x144161===_0x33ef('0x76')||_0x144161===_0x33ef('0x77')||_0x144161===_0x33ef('0x78')||_0x144161===_0x33ef('0x79')||_0x144161===_0x33ef('0x7a')||_0x144161===_0x33ef('0x7b')||_0x144161===_0x33ef('0x7c')||_0x144161===_0x33ef('0x7d')||_0x144161===_0x33ef('0x7e')||_0x144161===_0x33ef('0x7f')||_0x144161===_0x33ef('0x80')||_0x144161==='rtpaudioqosjitterbridged'||_0x144161===_0x33ef('0x81')||_0x144161===_0x33ef('0x82')||_0x144161===_0x33ef('0x83')||_0x144161===_0x33ef('0x84')||_0x144161===_0x33ef('0x7e')||_0x144161===_0x33ef('0x7f')||_0x144161===_0x33ef('0x80')||_0x144161===_0x33ef('0x85')||_0x144161===_0x33ef('0x81')||_0x144161===_0x33ef('0x82')||_0x144161==='rtpaudioqosrtt'||_0x144161===_0x33ef('0x84')||_0x144161===_0x33ef('0x86')||_0x144161===_0x33ef('0x87')||_0x144161===_0x33ef('0x3e')||_0x144161==='statedesc'){return![];}return!![];};exports['getCallerIdRandom']=function(_0x271013,_0x57085f){var _0x5aca6e,_0x233b43,_0x235a71;if(_0x57085f<=0x0){_0x57085f=0x1;}_0x5aca6e=new RegExp(_0x33ef('0x88')+_0x57085f+'}$');_0x233b43=Math[_0x33ef('0x89')](0xa,_0x57085f-0x1);_0x235a71=Math[_0x33ef('0x89')](0xa,_0x57085f)-0x1;return util['format']('%s',_[_0x33ef('0x8a')](_0x271013,_0x5aca6e,_[_0x33ef('0x8b')](_0x233b43,_0x235a71)));};exports['extractCalleridName']=function(_0x43dbe7){var _0x5bf79a=_0x43dbe7[_0x33ef('0x8c')](/"(.*?)"/);return _0x5bf79a?_0x5bf79a[0x1]:_0x43dbe7;};exports[_0x33ef('0x8d')]=function(_0x18b455){var _0x3e72c6=_0x18b455[_0x33ef('0x8c')](/<(.*?)>/);return _0x3e72c6?_0x3e72c6[0x1]:_0x18b455;};