Built motion from commit 538092ac.|2.6.10
[motion2.git] / server / services / ami / trigger / integration / zoho.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 _0x149c=['recordingURL','serverUrl','/api/voice/recordings/','uniqueid','/downloads?type=uniqueid&token=','host','zoho.eu','The\x20User\x20ID\x20is:','calleridname','calleridnum','The\x20Call\x20ID\x20is:','none','com','destcalleridname','destcalleridnum','Outbound','[OUTBOUND]','Displaying\x20call\x20to\x20agent\x20in\x20a\x20new\x20tab...','trigger:browser:url','https://crm.','/crm/EntityInfo.do?module=Calls&id=','toUpperCase','Recording\x20is\x20enabled!','lodash','md5','util','./util','ioredis','bluebird','../../../../config/environment','../../../../config/logger','zoho','redis','defaults','socket.io-emitter','emit','debug','[HTTP]','stringify','length','forEach','includes','string','type','idField','toString','variableName','Variable','name','toLowerCase','indexOf','isNil','access_token','isBefore','expires_in','zone','https://accounts.zoho.eu','https://accounts.zoho.com.cn','POST','/oauth/v2/token','refreshToken','clientId','clientSecret','refresh_token','add','seconds','catch','error','Failing\x20creating\x20the\x20access_token','stack','info','GET','https://www.zohoapis.%s/crm/v2/users','ActiveUsers','Zoho-oauthtoken\x20','then','users','isArrayLikeObject','findIndex','email','Agent\x20found!','Using\x20the\x20admin\x20account!','profile','Administrator','user','The\x20failing\x20result\x20is','Unable\x20to\x20retrieve\x20zoho\x20account\x20users:\x20','enduserType','https://www.zohoapis.','startCase','moduleCreate','role','first_name','last_name','data','SUCCESS','details','Error:\x20','log','contact_lead','uri','/crm/v2/Contacts/search?criteria=((Phone:equals:','Contacts','/crm/v2/Leads/search?criteria=((Phone:equals:','Leads','nothing','contact','lead','Creating\x20new\x20call...','administrator','Subject','getString','Subjects','Descriptions','Who_Id','Full_Name','First_Name','Last_Name','What_Id','$se_module','talktime','Call_Duration','utc','format','mm:ss','answertime','endtime','YYYY-MM-DDTHH:mm:ss','starttime','lastevent','Call_Result','Called','connect','rejected','Rejected','Abandoned','timeout','Call_Start_Time','outbound','agentcalledAt','Call_Type','Inbound','merge','Fields','/crm/v2/Calls','Call\x20created!','err','stripTrailingSlash','monitor_format','[QUEUE]'];(function(_0x1f239e,_0x367b43){var _0x826971=function(_0x2c5777){while(--_0x2c5777){_0x1f239e['push'](_0x1f239e['shift']());}};_0x826971(++_0x367b43);}(_0x149c,0x143));var _0xc149=function(_0xa72212,_0x445431){_0xa72212=_0xa72212-0x0;var _0x1a53bb=_0x149c[_0xa72212];return _0x1a53bb;};'use strict';var _=require(_0xc149('0x0'));var rp=require('request-promise');var md5=require(_0xc149('0x1'));var util=require(_0xc149('0x2'));var intUtil=require(_0xc149('0x3'));var moment=require('moment');var Redis=require(_0xc149('0x4'));var BPromise=require(_0xc149('0x5'));var config=require(_0xc149('0x6'));var logger=require(_0xc149('0x7'))(_0xc149('0x8'));config[_0xc149('0x9')]=_[_0xc149('0xa')](config['redis'],{'host':'localhost','port':0x18eb});var io=require(_0xc149('0xb'))(new Redis(config[_0xc149('0x9')]));function emit(_0x3a1739,_0x1d9eca,_0x26ae44){io['to'](_0x3a1739)[_0xc149('0xc')](_0x1d9eca,_0x26ae44);}function request(_0x25fb58){logger[_0xc149('0xd')](_0xc149('0xe'),JSON[_0xc149('0xf')](_0x25fb58));return rp(_0x25fb58);}function getCustomFields(_0x123352,_0x3fc283){var _0x2bc423={};if(_0x123352[_0xc149('0x10')]>0x0){_[_0xc149('0x11')](_0x123352,function(_0x3a18ca){if(_[_0xc149('0x12')]([_0xc149('0x13'),'picklist'],_0x3a18ca[_0xc149('0x14')])&&_0x3a18ca['idField']){_0x2bc423[_0x3a18ca[_0xc149('0x15')]]=_0x3a18ca['content'][_0xc149('0x16')]();}else if(_0x3a18ca[_0xc149('0x14')]==='variable'&&_0x3a18ca['variableName']&&_0x3a18ca[_0xc149('0x15')]&&_0x3fc283[_0x3a18ca[_0xc149('0x17')]]){_0x2bc423[_0x3a18ca[_0xc149('0x15')]]=_0x3fc283[_0x3a18ca[_0xc149('0x17')]][_0xc149('0x16')]();}else if(_0x3a18ca[_0xc149('0x14')]==='customVariable'&&_0x3a18ca[_0xc149('0x18')]&&_0x3a18ca[_0xc149('0x18')][_0xc149('0x19')]&&_0x3a18ca[_0xc149('0x15')]&&_0x3fc283[_0x3a18ca[_0xc149('0x18')]['name'][_0xc149('0x1a')]()]){_0x2bc423[_0x3a18ca[_0xc149('0x15')]]=_0x3fc283[_0x3a18ca[_0xc149('0x18')][_0xc149('0x19')][_0xc149('0x1a')]()][_0xc149('0x16')]();}});}return _0x2bc423;}function getName(_0x550b86){if(_0x550b86[_0xc149('0x1b')]('\x20')>0x0){var _0x393d4f=_0x550b86['split'](/ (.+)/);if(_0x393d4f[0x1]){return _0x393d4f;}}return[_0x550b86,_0x550b86];}var accountsTokens={};function getAccessToken(_0x586ea8){return new Promise(function(_0x1800cb,_0x3de104){if(!_[_0xc149('0x1c')](accountsTokens[_0x586ea8['id']])&&!_[_0xc149('0x1c')](accountsTokens[_0x586ea8['id']][_0xc149('0x1d')])){if(moment()[_0xc149('0x1e')](accountsTokens[_0x586ea8['id']][_0xc149('0x1f')])){_0x1800cb(accountsTokens[_0x586ea8['id']]['access_token']);}}var _0x50ed2e;switch(_0x586ea8[_0xc149('0x20')]){case'US':_0x50ed2e='https://accounts.zoho.com';break;case'AU':_0x50ed2e='https://accounts.zoho.com.au';break;case'EU':_0x50ed2e=_0xc149('0x21');break;case'IN':_0x50ed2e='https://accounts.zoho.in';break;case'CN':_0x50ed2e=_0xc149('0x22');break;default:_0x50ed2e='https://accounts.zoho.eu';break;}var _0x15777f={'method':_0xc149('0x23'),'uri':_0x50ed2e+_0xc149('0x24'),'qs':{'refresh_token':_0x586ea8[_0xc149('0x25')],'client_id':_0x586ea8[_0xc149('0x26')],'client_secret':_0x586ea8[_0xc149('0x27')],'grant_type':_0xc149('0x28')},'json':!![]};return rp(_0x15777f)['then'](function(_0x2d2700){accountsTokens[_0x586ea8['id']]={'access_token':_0x2d2700['access_token'],'expires_in':moment()[_0xc149('0x29')](_0x2d2700[_0xc149('0x1f')],_0xc149('0x2a'))};_0x1800cb(_0x2d2700[_0xc149('0x1d')]);})[_0xc149('0x2b')](function(_0x2f02be){logger[_0xc149('0x2c')](_0xc149('0x2d'),_0x2f02be[_0xc149('0x2e')]);_0x3de104(_0x2f02be);});});}function getUser(_0x34ffd9,_0x2ef998,_0x524b1e,_0x7b9227){logger[_0xc149('0x2f')]('Search\x20user');return request({'method':_0xc149('0x30'),'uri':util['format'](_0xc149('0x31'),_0x2ef998),'qs':{'type':_0xc149('0x32')},'headers':{'Authorization':_0xc149('0x33')+_0x34ffd9},'json':!![]})[_0xc149('0x34')](function(_0x217e18){if(_0x217e18[_0xc149('0x35')]){var _0x46027c=-0x1;if(_[_0xc149('0x36')](_0x217e18[_0xc149('0x35')])){if(!_['isNil'](_0x7b9227)){_0x46027c=_[_0xc149('0x37')](_0x217e18[_0xc149('0x35')],function(_0x479c36){return _0x479c36[_0xc149('0x38')]===_0x7b9227;});}if(_0x46027c>=0x0){logger[_0xc149('0x2f')](_0xc149('0x39'));}else{logger['info'](_0xc149('0x3a'));_0x46027c=_[_0xc149('0x37')](_0x217e18[_0xc149('0x35')],function(_0x137646){return _0x137646[_0xc149('0x3b')]['name']==='Administrator';});}return _0x217e18[_0xc149('0x35')][_0x46027c];}else{if(_0x217e18['user'][_0xc149('0x3b')][_0xc149('0x19')]===_0xc149('0x3c')){logger[_0xc149('0x2f')](_0xc149('0x3a'));user=_0x217e18[_0xc149('0x3d')];return user;}else{logger[_0xc149('0x2c')](_0xc149('0x3e'),JSON[_0xc149('0xf')](_0x217e18));throw new Error(_0xc149('0x3f')+JSON['stringify'](_0x217e18));}}}else{logger[_0xc149('0x2c')](_0xc149('0x3e'),JSON[_0xc149('0xf')](_0x217e18));throw new Error(_0xc149('0x3f')+JSON[_0xc149('0xf')](_0x217e18));}})[_0xc149('0x2b')](function(_0x18a204){console[_0xc149('0x2c')](_0x18a204);});}function getZohoUser(_0x2e15e0,_0x420645){return new BPromise(function(_0x4e34e4,_0x2d524e){request(_0x2e15e0)['then'](function(_0x4934e1){var _0x51fd06=null;if(_0x4934e1){_0x51fd06=_0x4934e1['data'][0x0];_0x51fd06[_0xc149('0x40')]=_0x420645;}_0x4e34e4(_0x51fd06);})[_0xc149('0x2b')](function(_0x1f57b4){_0x2d524e(_0x1f57b4);});});}function createEndUser(_0xb9561f,_0x3d4e67,_0x1b4de8,_0x234ae3,_0xa6d75d,_0x525fc6){var _0x1b4de8=getName(_0x1b4de8);return request({'method':_0xc149('0x23'),'uri':_0xc149('0x41')+_0x3d4e67+'/crm/v2/'+_[_0xc149('0x42')](_0x525fc6[_0xc149('0x43')])+'s','body':{'data':[{'Last_Name':_0x1b4de8[0x1],'First_Name':_0x1b4de8[0x0],'Phone':_0x234ae3,'Owner':{'name':!_[_0xc149('0x1c')](_0xa6d75d[_0xc149('0x44')]['name'])?_0xa6d75d[_0xc149('0x44')][_0xc149('0x19')]:!_[_0xc149('0x1c')](_0xa6d75d[_0xc149('0x45')])?_0xa6d75d[_0xc149('0x45')]+'\x20'+_0xa6d75d['last_name']:_0xa6d75d[_0xc149('0x46')],'id':_0xa6d75d['id']}}]},'headers':{'Authorization':_0xc149('0x33')+_0xb9561f},'json':!![]})[_0xc149('0x34')](function(_0x162f3a){if(_0x162f3a&&_0x162f3a[_0xc149('0x47')][0x0]['code']===_0xc149('0x48')){var _0x13efd7=_0x162f3a[_0xc149('0x47')][0x0][_0xc149('0x49')];_0x13efd7[_0xc149('0x40')]=_[_0xc149('0x42')](_0x525fc6[_0xc149('0x43')])+'s';return _0x13efd7;}logger[_0xc149('0x2c')]('The\x20failing\x20result\x20is',JSON[_0xc149('0xf')](data));throw new Error(_0xc149('0x4a')+JSON['stringify'](data));})['catch'](function(_0x43a41b){console[_0xc149('0x4b')]('CREATE\x20ERROR',_0x43a41b);});}function getEndUser(_0x1638e2,_0x3d8fec,_0x294638,_0x2ecb3c,_0x5a0126,_0x2e8ed0,_0x40f5f6){var _0x885361={'method':_0xc149('0x30'),'uri':'','headers':{'Authorization':_0xc149('0x33')+_0x1638e2},'json':!![]};switch(_0x40f5f6['moduleSearch']){case _0xc149('0x4c'):_0x885361[_0xc149('0x4d')]=_0xc149('0x41')+_0x3d8fec+_0xc149('0x4e')+_0x5a0126+'))';return getZohoUser(_0x885361,_0xc149('0x4f'))[_0xc149('0x34')](function(_0x4673eb){if(_0x4673eb)return _0x4673eb;_0x885361['uri']=_0xc149('0x41')+_0x3d8fec+_0xc149('0x50')+_0x5a0126+'))';return getZohoUser(_0x885361,_0xc149('0x51'))[_0xc149('0x34')](function(_0x429b11){if(_0x429b11)return _0x429b11;if(_0x40f5f6['moduleCreate']!=_0xc149('0x52')){return createEndUser(_0x1638e2,_0x3d8fec,_0x2ecb3c,_0x5a0126,_0x2e8ed0,_0x40f5f6);}else{return{};}});});break;case _0xc149('0x53'):_0x885361['uri']=_0xc149('0x41')+_0x3d8fec+_0xc149('0x4e')+_0x5a0126+'))';return getZohoUser(_0x885361,_0xc149('0x4f'))[_0xc149('0x34')](function(_0x1fb432){if(_0x1fb432)return _0x1fb432;if(_0x40f5f6[_0xc149('0x43')]!=_0xc149('0x52')){return createEndUser(_0x1638e2,_0x3d8fec,_0x2ecb3c,_0x5a0126,_0x2e8ed0,_0x40f5f6);}else{return{};}});break;case _0xc149('0x54'):_0x885361[_0xc149('0x4d')]=_0xc149('0x41')+_0x3d8fec+_0xc149('0x50')+_0x5a0126+'))';return getZohoUser(_0x885361,_0xc149('0x51'))[_0xc149('0x34')](function(_0xaa8c97){if(_0xaa8c97)return _0xaa8c97;if(_0x40f5f6[_0xc149('0x43')]!='nothing'){return createEndUser(_0x1638e2,_0x3d8fec,_0x2ecb3c,_0x5a0126,_0x2e8ed0,_0x40f5f6);}else{return{};}});break;}}function getCall(_0x579db6,_0x5e8a4f,_0x471b10,_0x43557e,_0x8969af,_0x516354,_0x1444f5,_0x1ac0c0){logger[_0xc149('0x2f')](_0xc149('0x55'));var _0x412b6d={};_0x412b6d['Owner']={'name':!_[_0xc149('0x1c')](_0x43557e['role']['name'])&&!_[_0xc149('0x1c')](_0x43557e[_0xc149('0x3b')][_0xc149('0x19')])&&_0x43557e[_0xc149('0x3b')][_0xc149('0x19')]===_0xc149('0x56')?_0x43557e['role'][_0xc149('0x19')]:!_[_0xc149('0x1c')](_0x43557e[_0xc149('0x45')])?_0x43557e['first_name']+'\x20'+_0x43557e[_0xc149('0x46')]:_0x43557e[_0xc149('0x46')],'id':_0x43557e['id']};_0x412b6d[_0xc149('0x57')]=intUtil[_0xc149('0x58')](_0x516354[_0xc149('0x59')],_0x1444f5,'\x20');_0x412b6d['Description']=intUtil[_0xc149('0x58')](_0x516354[_0xc149('0x5a')],_0x1444f5,'\x0a');if(_0x8969af[_0xc149('0x40')]==='Contacts'){_0x412b6d[_0xc149('0x5b')]={'name':!_[_0xc149('0x1c')](_0x8969af[_0xc149('0x5c')])?_0x8969af[_0xc149('0x5c')]:!_[_0xc149('0x1c')](_0x8969af['First_Name'])?_0x8969af[_0xc149('0x5d')]+'\x20'+_0x8969af[_0xc149('0x5e')]:_0x8969af[_0xc149('0x5e')],'id':_0x8969af['id']};}if(_0x8969af[_0xc149('0x40')]===_0xc149('0x51')){_0x412b6d[_0xc149('0x5f')]={'name':!_[_0xc149('0x1c')](_0x8969af[_0xc149('0x5c')])?_0x8969af['Full_Name']:!_[_0xc149('0x1c')](_0x8969af['First_Name'])?_0x8969af['First_Name']+'\x20'+_0x8969af[_0xc149('0x5e')]:_0x8969af[_0xc149('0x5e')],'id':_0x8969af['id']};_0x412b6d[_0xc149('0x60')]=_[_0xc149('0x42')](_0x8969af['enduserType']);}if(_0x1444f5[_0xc149('0x61')]){_0x412b6d[_0xc149('0x62')]=moment[_0xc149('0x63')](parseInt(_0x1444f5[_0xc149('0x61')])*0x3e8)[_0xc149('0x64')](_0xc149('0x65'));}else if(_0x1444f5[_0xc149('0x66')]&&_0x1444f5[_0xc149('0x67')]){_0x412b6d['Call_Duration']=moment[_0xc149('0x63')](moment(_0x1444f5[_0xc149('0x67')],_0xc149('0x68'))['diff'](moment(_0x1444f5[_0xc149('0x69')],'YYYY-MM-DDTHH:mm:ss')))[_0xc149('0x64')](_0xc149('0x65'));}switch(_0x1444f5[_0xc149('0x6a')]){case'called':_0x412b6d[_0xc149('0x6b')]=_0xc149('0x6c');break;case'complete':case _0xc149('0x6d'):_0x412b6d['Call_Result']='Answered';break;case _0xc149('0x6e'):_0x412b6d[_0xc149('0x6b')]=_0xc149('0x6f');break;case'abandoned':_0x412b6d[_0xc149('0x6b')]=_0xc149('0x70');break;case _0xc149('0x71'):_0x412b6d['Call_Result']='Timeout';default:}_0x412b6d[_0xc149('0x72')]=(_0x1ac0c0===_0xc149('0x73')?moment(_0x1444f5['starttime'])[_0xc149('0x64')](_0xc149('0x68')):moment(_0x1444f5[_0xc149('0x74')])[_0xc149('0x64')]('YYYY-MM-DDTHH:mm:ss'))||moment()[_0xc149('0x64')](_0xc149('0x68'));_0x412b6d[_0xc149('0x75')]=_0x1ac0c0||_0xc149('0x76');_0x412b6d=_[_0xc149('0x77')](_0x412b6d,getCustomFields(_0x516354[_0xc149('0x78')],_0x1444f5));return request({'method':_0xc149('0x23'),'uri':_0xc149('0x41')+_0x5e8a4f+_0xc149('0x79'),'headers':{'Authorization':_0xc149('0x33')+_0x579db6},'body':{'data':[_0x412b6d]},'json':!![]})[_0xc149('0x34')](function(_0x518a12){if(_0x518a12&&_0x518a12['data'][0x0]['code']===_0xc149('0x48')){logger['info'](_0xc149('0x7a'));return{'id':_0x518a12[_0xc149('0x47')][0x0][_0xc149('0x49')]['id']};}})[_0xc149('0x2b')](function(_0x2b6f85){logger[_0xc149('0x2f')](_0xc149('0x7b'),_0x2b6f85[_0xc149('0x2e')]);console[_0xc149('0x4b')]('err',_0x2b6f85);});}exports['queue']=function(_0x5eef74,_0x296494,_0x3c54b5,_0x842463,_0xaed35a,_0x439d5d){var _0xef5740,_0x4208b2,_0x1d3d76;_0x439d5d['host']=intUtil[_0xc149('0x7c')](_0x439d5d['host']);_0x439d5d['serverUrl']=intUtil[_0xc149('0x7c')](_0x439d5d['serverUrl']);if(_0xaed35a&&_0xaed35a[_0xc149('0x7d')]){logger[_0xc149('0x2f')](_0xc149('0x7e'),'Recording\x20is\x20enabled!');_0x296494[_0xc149('0x7f')]=_0x439d5d[_0xc149('0x80')]+_0xc149('0x81')+_0x296494[_0xc149('0x82')]+_0xc149('0x83')+md5(_0x296494['uniqueid']);}else{_0x296494[_0xc149('0x7f')]='';}var _0x227d00=_0x439d5d[_0xc149('0x84')]===_0xc149('0x85')?'eu':'com';return getAccessToken(_0x439d5d)[_0xc149('0x34')](function(_0x3e9fa5){_0x1d3d76=_0x3e9fa5;return getUser(_0x1d3d76,_0x227d00,_0x439d5d,_0x842463[_0xc149('0x38')]);})[_0xc149('0x34')](function(_0x11a935){_0xef5740=_0x11a935;logger[_0xc149('0x2f')](_0xc149('0x86'),_0xef5740['id']);return getEndUser(_0x1d3d76,_0x227d00,_0x439d5d,_0x296494[_0xc149('0x87')],_0x296494[_0xc149('0x88')],_0xef5740,_0x3c54b5);})['then'](function(_0x5c2560){_0x4208b2=_0x5c2560;return getCall(_0x1d3d76,_0x227d00,_0x439d5d,_0xef5740,_0x4208b2,_0x3c54b5,_0x296494,_0xc149('0x76'));})['then'](function(_0x3da8da){if(_0x3da8da){logger[_0xc149('0x2f')](_0xc149('0x89'),_0x3da8da['id']);logger[_0xc149('0x2f')](_0xc149('0x7e'),'Displaying\x20call\x20to\x20agent\x20in\x20a\x20new\x20tab...');emit(util[_0xc149('0x64')]('user:%s',_0x842463[_0xc149('0x19')]),'trigger:browser:url',{'uri':'https://crm.'+_0x439d5d['host']+'/crm/EntityInfo.do?module=Calls&id='+_0x3da8da['id']});}})[_0xc149('0x2b')](function(_0xafef11){logger[_0xc149('0x2c')]('[QUEUE]',JSON['stringify'](_0xafef11));});};exports['outbound']=function(_0x22f095,_0x2a99ba,_0x20308f,_0x8901ed,_0x37bc40,_0x4b64a3,_0x2763dc){var _0x3cd33a,_0x467678,_0x8b9f48;_0x4b64a3[_0xc149('0x84')]=intUtil['stripTrailingSlash'](_0x4b64a3[_0xc149('0x84')]);_0x4b64a3[_0xc149('0x80')]=intUtil[_0xc149('0x7c')](_0x4b64a3[_0xc149('0x80')]);if(_0x2763dc&&_0x2763dc['recordingFormat']&&_0x2763dc['recordingFormat']!==_0xc149('0x8a')){logger[_0xc149('0x2f')]('[OUTBOUND]','Recording\x20is\x20enabled!');_0x2a99ba['recordingURL']=_0x4b64a3[_0xc149('0x80')]+_0xc149('0x81')+_0x2a99ba[_0xc149('0x82')]+'/downloads?type=uniqueid&token='+md5(_0x2a99ba['uniqueid']);}var _0x1dadb4=_0x4b64a3['host']===_0xc149('0x85')?'eu':_0xc149('0x8b');return getAccessToken(_0x4b64a3)[_0xc149('0x34')](function(_0x49f209){_0x8b9f48=_0x49f209;return getUser(_0x8b9f48,_0x1dadb4,_0x4b64a3,_0x8901ed[_0xc149('0x38')]);})[_0xc149('0x34')](function(_0x2a6cb1){_0x3cd33a=_0x2a6cb1;logger[_0xc149('0x2f')](_0xc149('0x86'),_0x3cd33a['id']);return getEndUser(_0x8b9f48,_0x1dadb4,_0x4b64a3,_0x2a99ba[_0xc149('0x8c')],_0x2a99ba[_0xc149('0x8d')],_0x3cd33a,_0x20308f);})[_0xc149('0x34')](function(_0x17965c){_0x467678=_0x17965c;return getCall(_0x8b9f48,_0x1dadb4,_0x4b64a3,_0x3cd33a,_0x467678,_0x20308f,_0x2a99ba,_0xc149('0x8e'));})['then'](function(_0xb632c4){if(_0xb632c4){logger[_0xc149('0x2f')](_0xc149('0x89'),_0xb632c4['id']);logger[_0xc149('0x2f')](_0xc149('0x8f'),_0xc149('0x90'));emit(util[_0xc149('0x64')]('user:%s',_0x8901ed[_0xc149('0x19')]),_0xc149('0x91'),{'uri':_0xc149('0x92')+_0x4b64a3[_0xc149('0x84')]+_0xc149('0x93')+_0xb632c4['id']});}})[_0xc149('0x2b')](function(_0x1c27a3){logger[_0xc149('0x2c')](_0xc149('0x8f'),JSON[_0xc149('0xf')](_0x1c27a3));});};exports['unmanaged']=function(_0x22d350,_0x3e8c8f,_0x25d4b7,_0x45f98d,_0x5bb31a,_0x51a2d6){var _0x2d0a11,_0x50939e,_0x237e57;_0x51a2d6[_0xc149('0x84')]=intUtil[_0xc149('0x7c')](_0x51a2d6[_0xc149('0x84')]);_0x51a2d6['serverUrl']=intUtil[_0xc149('0x7c')](_0x51a2d6[_0xc149('0x80')]);if(_0x5bb31a&&_0x5bb31a[_0xc149('0x7d')]){logger[_0xc149('0x2f')]('['+_0x3e8c8f[_0xc149('0x6a')][_0xc149('0x94')]()+']',_0xc149('0x95'));_0x3e8c8f[_0xc149('0x7f')]=_0x51a2d6[_0xc149('0x80')]+'/api/voice/recordings/'+_0x3e8c8f[_0xc149('0x82')]+_0xc149('0x83')+md5(_0x3e8c8f[_0xc149('0x82')]);}else{_0x3e8c8f[_0xc149('0x7f')]='';}var _0x45d60b=_0x51a2d6['host']===_0xc149('0x85')?'eu':_0xc149('0x8b');return getAccessToken(_0x51a2d6)[_0xc149('0x34')](function(_0x35dd4d){_0x237e57=_0x35dd4d;return getUser(_0x237e57,_0x45d60b,_0x51a2d6);})[_0xc149('0x34')](function(_0xd6c142){_0x2d0a11=_0xd6c142;logger[_0xc149('0x2f')](_0xc149('0x86'),_0x2d0a11['id']);return getEndUser(_0x237e57,_0x45d60b,_0x51a2d6,_0x3e8c8f[_0xc149('0x87')],_0x3e8c8f[_0xc149('0x88')],_0x2d0a11,_0x25d4b7);})[_0xc149('0x34')](function(_0x464440){_0x50939e=_0x464440;return getCall(_0x237e57,_0x45d60b,_0x51a2d6,_0x2d0a11,_0x50939e,_0x25d4b7,_0x3e8c8f,_0xc149('0x76'));})[_0xc149('0x34')](function(_0x328f11){if(_0x328f11){logger[_0xc149('0x2f')](_0xc149('0x89'),_0x328f11['id']);}})[_0xc149('0x2b')](function(_0xb28e9c){logger['error']('['+_0x3e8c8f[_0xc149('0x6a')][_0xc149('0x94')]()+']',JSON[_0xc149('0xf')](_0xb28e9c));});};