Built motion from commit 9efc8423.|2.6.31
[motion2.git] / server / services / ami / trigger / integration / salesforce.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 _0xa5ee=['[QUEUE]\x20Ticket\x20%s\x20created','[QUEUE]\x20Displaying\x20ticket\x20%s\x20to\x20agent\x20%s.\x20Integration\x20account\x20type\x20%s.','integrationTab','newTab','%s/%s/e','instanceUrl','[QUEUE]\x20Salesforce\x20account\x20type\x20not\x20recognized.','catch','error','outbound','recordingFormat','none','[OUTBOUND]','Recording\x20is\x20enabled!','destcalleridnum','[OUTBOUND]\x20Ticket\x20%s\x20created.','[OUTBOUND]\x20Displaying\x20ticket\x20%s\x20to\x20agent\x20%s.\x20Integration\x20account\x20type\x20%s.','user:%s','unmanaged','monitor_format','lastevent','toUpperCase',']\x20Ticket\x20%s\x20created.',']\x20Integration\x20account\x20type\x20%s.','lodash','request-promise','moment','bluebird','jsforce','util','ioredis','./util','salesforce','redis','defaults','localhost','emit','Descriptions','ticketType','Task','ActivityDate','utc','IsRecurrence','endUserType','contact','lead','WhoId','account','WhatId','ContactId','leadId','info','sobject','create','isNil','validateEmail','User','execute','find','Agent\x20%s\x20found.','resolve','Name','Agent\x20%s\x20not\x20found.\x20Switch\x20to\x20the\x20admin\x20account.','then','user_id','display_name','identity','Searching\x20enduser\x20with\x20phone\x20%s.\x20Serching\x20method\x20used\x20%s.','moduleSearch','contact_lead','cloneDeep','additionalSearchContact','merge','additionalSearchLead','$or','account_contact_lead','additionalSearchAccount','Account','length','Contact','Lead','first','Phone','attributes','type','toLowerCase','Enduser\x20(%s)\x20with\x20phone\x20%s\x20found','Enduser\x20with\x20phone\x20%s\x20not\x20found','moduleCreate','Enduser\x20with\x20phone\x20%s.\x20Creating\x20method\x20used\x20%s.','LastName','<unknown>','format','Caller\x20-\x20%s','No\x20Company','upperFirst','forEach','includes','string','picklist','idField','content','toString','variableName','Variable','name','concat','Connection','remoteUri','https://login.salesforce.com','clientId','clientSecret','login','username','Connection\x20established.','serverUrl','stripTrailingSlash','[QUEUE]','recordingURL','%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s','uniqueid','calleridname','calleridnum','Fields','queue'];(function(_0xb4740f,_0x11b7b1){var _0x17dec1=function(_0x56c288){while(--_0x56c288){_0xb4740f['push'](_0xb4740f['shift']());}};_0x17dec1(++_0x11b7b1);}(_0xa5ee,0x18f));var _0xea5e=function(_0x323590,_0x3211db){_0x323590=_0x323590-0x0;var _0x246383=_0xa5ee[_0x323590];return _0x246383;};'use strict';var _=require(_0xea5e('0x0'));var rp=require(_0xea5e('0x1'));var moment=require(_0xea5e('0x2'));var BPromise=require(_0xea5e('0x3'));var md5=require('md5');var jsforce=require(_0xea5e('0x4'));var util=require(_0xea5e('0x5'));var Redis=require(_0xea5e('0x6'));var intUtil=require(_0xea5e('0x7'));var config=require('../../../../config/environment');var logger=require('../../../../config/logger')(_0xea5e('0x8'));config[_0xea5e('0x9')]=_[_0xea5e('0xa')](config[_0xea5e('0x9')],{'host':_0xea5e('0xb'),'port':0x18eb});var io=require('socket.io-emitter')(new Redis(config[_0xea5e('0x9')]));function emit(_0x48e835,_0x22a03b,_0x5c3702){io['to'](_0x48e835)[_0xea5e('0xc')](_0x22a03b,_0x5c3702);}function getTicket(_0x5dc10f,_0x4cacc9,_0x2559db,_0x3aec72,_0x37b537,_0x2ef904,_0x36f079,_0x4c610f){var _0x392d85=Object['assign']({},{'OwnerId':_0x4cacc9['id'],'Subject':intUtil['getString'](_0x3aec72['Subjects'],_0x37b537,'\x20'),'Description':intUtil['getString'](_0x3aec72[_0xea5e('0xd')],_0x37b537,'\x0a')},getCustomFields(_0x2ef904,_0x37b537));if(_0x2559db){if(_0x3aec72[_0xea5e('0xe')]===_0xea5e('0xf')){_0x392d85[_0xea5e('0x10')]=moment[_0xea5e('0x11')]();_0x392d85['IsReminderSet']=![];_0x392d85[_0xea5e('0x12')]=![];if(_0x2559db[_0xea5e('0x13')]===_0xea5e('0x14')||_0x2559db[_0xea5e('0x13')]===_0xea5e('0x15')){_0x392d85[_0xea5e('0x16')]=_0x2559db['id'];}else if(_0x2559db['endUserType']===_0xea5e('0x17')){_0x392d85[_0xea5e('0x18')]=_0x2559db['id'];}}else if(_0x3aec72[_0xea5e('0xe')]==='Case'){if(_0x2559db['endUserType']===_0xea5e('0x14')){_0x392d85[_0xea5e('0x19')]=_0x2559db['id'];}else if(_0x2559db[_0xea5e('0x13')]===_0xea5e('0x17')){_0x392d85['AccountId']=_0x2559db['id'];}else if(_0x2559db[_0xea5e('0x13')]===_0xea5e('0x15')&&_0x3aec72[_0xea5e('0x1a')]){_0x392d85[_0x3aec72['leadId']]=_0x2559db['id'];}else{logger[_0xea5e('0x1b')]('Association\x20between\x20Case\x20and\x20Lead\x20skipped');}}}return _0x36f079[_0xea5e('0x1c')](_0x3aec72[_0xea5e('0xe')])[_0xea5e('0x1d')](_0x392d85);}function getUser(_0x3a0bb5,_0x2df936,_0x20b12c){if(!_[_0xea5e('0x1e')](_0x2df936)&&intUtil[_0xea5e('0x1f')](_0x2df936)){var _0x3463c7={'Email':_0x2df936};var _0x54ae40={'Id':!![],'Username':!![],'Name':!![],'Email':!![]};return _0x20b12c[_0xea5e('0x1c')](_0xea5e('0x20'))['find'](_0x3463c7,_0x54ae40)[_0xea5e('0x21')]()['then'](function(_0x4dffbb){if(_0x4dffbb['length']){var _0x3febe1=_[_0xea5e('0x22')](_0x4dffbb,function(_0x134607){return _0x134607['Email']===_0x2df936;});if(_0x3febe1){logger[_0xea5e('0x1b')](_0xea5e('0x23'),_0x2df936);return BPromise[_0xea5e('0x24')]({'id':_0x3febe1['Id'],'name':_0x3febe1[_0xea5e('0x25')]});}}else{logger[_0xea5e('0x1b')](_0xea5e('0x26'),_0x2df936);return _0x20b12c['identity']()[_0xea5e('0x27')](function(_0x1bbbd6){return BPromise['resolve']({'id':_0x1bbbd6[_0xea5e('0x28')],'name':_0x1bbbd6[_0xea5e('0x29')]});});}});}else{logger[_0xea5e('0x1b')](_0xea5e('0x26'),_0x2df936);return _0x20b12c[_0xea5e('0x2a')]()['then'](function(_0x2bb081){return BPromise[_0xea5e('0x24')]({'id':_0x2bb081[_0xea5e('0x28')],'name':_0x2bb081[_0xea5e('0x29')]});});}}function getEndUser(_0x2a959c,_0x2c6462,_0x1b49d7,_0x42689f,_0x4a83c6){var _0x2f8890={'$or':{'Phone':_0x42689f}};var _0x3498ea={'Id':!![],'Name':!![],'Phone':!![]};return BPromise[_0xea5e('0x24')]()['then'](function(){logger['info'](_0xea5e('0x2b'),_0x42689f,_0x2c6462[_0xea5e('0x2c')]);switch(_0x2c6462['moduleSearch']){case _0xea5e('0x2d'):var _0x235e72=_[_0xea5e('0x2e')](_0x2f8890);if(_0x2c6462[_0xea5e('0x2f')]){var _0x34b35a={};_0x34b35a[_0x2c6462['additionalSearchContact']]=_0x42689f;_[_0xea5e('0x30')](_0x235e72['$or'],_0x34b35a);}return _0x4a83c6['sobject']('Contact')[_0xea5e('0x22')](_0x235e72,_0x3498ea)[_0xea5e('0x21')]()['then'](function(_0x502c5b){if(_0x502c5b&&_0x502c5b['length']){return _0x502c5b;}else{var _0x12668f=_['cloneDeep'](_0x2f8890);if(_0x2c6462['additionalSearchLead']){var _0x48eca7={};_0x48eca7[_0x2c6462[_0xea5e('0x31')]]=_0x42689f;_[_0xea5e('0x30')](_0x12668f[_0xea5e('0x32')],_0x48eca7);}return _0x4a83c6['sobject']('Lead')[_0xea5e('0x22')](_0x12668f,_0x3498ea);}});case _0xea5e('0x33'):var _0x1fa7e8=_[_0xea5e('0x2e')](_0x2f8890);if(_0x2c6462['additionalSearchAccount']){var _0x34b35a={};_0x34b35a[_0x2c6462[_0xea5e('0x34')]]=_0x42689f;_[_0xea5e('0x30')](_0x1fa7e8[_0xea5e('0x32')],_0x34b35a);}return _0x4a83c6[_0xea5e('0x1c')](_0xea5e('0x35'))[_0xea5e('0x22')](_0x1fa7e8,_0x3498ea)[_0xea5e('0x21')]()[_0xea5e('0x27')](function(_0x4c0938){if(_0x4c0938&&_0x4c0938[_0xea5e('0x36')]){return _0x4c0938;}else{var _0x3db849=_[_0xea5e('0x2e')](_0x2f8890);if(_0x2c6462[_0xea5e('0x2f')]){var _0x47d3a2={};_0x47d3a2[_0x2c6462[_0xea5e('0x2f')]]=_0x42689f;_[_0xea5e('0x30')](_0x3db849[_0xea5e('0x32')],_0x47d3a2);}return _0x4a83c6[_0xea5e('0x1c')](_0xea5e('0x37'))[_0xea5e('0x22')](_0x3db849,_0x3498ea)[_0xea5e('0x27')](function(_0x3622a6){if(_0x3622a6&&_0x3622a6[_0xea5e('0x36')]){return _0x3622a6;}else{var _0x190bb5=_[_0xea5e('0x2e')](_0x2f8890);if(_0x2c6462[_0xea5e('0x31')]){var _0x46f97b={};_0x46f97b[_0x2c6462[_0xea5e('0x31')]]=_0x42689f;_['merge'](_0x190bb5[_0xea5e('0x32')],_0x46f97b);}return _0x4a83c6['sobject'](_0xea5e('0x38'))['find'](_0x190bb5,_0x3498ea);}});}});case _0xea5e('0x14'):var _0x235e72=_[_0xea5e('0x2e')](_0x2f8890);if(_0x2c6462[_0xea5e('0x2f')]){var _0x34b35a={};_0x34b35a[_0x2c6462[_0xea5e('0x2f')]]=_0x42689f;_[_0xea5e('0x30')](_0x235e72[_0xea5e('0x32')],_0x34b35a);}return _0x4a83c6[_0xea5e('0x1c')](_0xea5e('0x37'))[_0xea5e('0x22')](_0x235e72,_0x3498ea)[_0xea5e('0x21')]();case _0xea5e('0x15'):var _0x9e8f90=_[_0xea5e('0x2e')](_0x2f8890);if(_0x2c6462['additionalSearchLead']){var _0x34b35a={};_0x34b35a[_0x2c6462[_0xea5e('0x31')]]=_0x42689f;_[_0xea5e('0x30')](_0x9e8f90[_0xea5e('0x32')],_0x34b35a);}return _0x4a83c6[_0xea5e('0x1c')](_0xea5e('0x38'))[_0xea5e('0x22')](_0x9e8f90,_0x3498ea);case _0xea5e('0x17'):var _0x1fa7e8=_[_0xea5e('0x2e')](_0x2f8890);if(_0x2c6462[_0xea5e('0x34')]){var _0x34b35a={};_0x34b35a[_0x2c6462['additionalSearchAccount']]=_0x42689f;_[_0xea5e('0x30')](_0x1fa7e8[_0xea5e('0x32')],_0x34b35a);}return _0x4a83c6[_0xea5e('0x1c')]('Account')[_0xea5e('0x22')](_0x1fa7e8,_0x3498ea);default:return null;}})['then'](function(_0xc457ca){if(_0xc457ca&&_0xc457ca[_0xea5e('0x36')]){var _0x20dbeb=_[_0xea5e('0x39')](_0xc457ca);if(_0x20dbeb){return BPromise[_0xea5e('0x24')]({'id':_0x20dbeb['Id'],'name':_0x20dbeb['Name'],'phone':_0x20dbeb[_0xea5e('0x3a')],'endUserType':_0x20dbeb[_0xea5e('0x3b')][_0xea5e('0x3c')][_0xea5e('0x3d')]()});}}})[_0xea5e('0x27')](function(_0x1deccc){if(_0x1deccc){logger[_0xea5e('0x1b')](_0xea5e('0x3e'),_0x1deccc[_0xea5e('0x13')],_0x42689f);return BPromise['resolve'](_0x1deccc);}else{logger[_0xea5e('0x1b')](_0xea5e('0x3f'),_0x42689f);var _0x521640={'Phone':_0x42689f};if(_0x2c6462['moduleCreate']){if(_0x2c6462[_0xea5e('0x40')]==='contact'){logger['info'](_0xea5e('0x41'),_0x42689f,_0x2c6462[_0xea5e('0x40')]);_0x521640[_0xea5e('0x42')]=_0x1b49d7!==_0xea5e('0x43')?_0x1b49d7:util[_0xea5e('0x44')](_0xea5e('0x45'),_0x42689f);}else if(_0x2c6462[_0xea5e('0x40')]===_0xea5e('0x15')){logger[_0xea5e('0x1b')]('Enduser\x20with\x20phone\x20%s.\x20Creating\x20method\x20used\x20%s.',_0x42689f,_0x2c6462[_0xea5e('0x40')]);_0x521640['LastName']=_0x1b49d7!==_0xea5e('0x43')?_0x1b49d7:util[_0xea5e('0x44')](_0xea5e('0x45'),_0x42689f);_0x521640['Company']=_0xea5e('0x46');}else if(_0x2c6462[_0xea5e('0x40')]===_0xea5e('0x17')){logger[_0xea5e('0x1b')](_0xea5e('0x41'),_0x42689f,_0x2c6462[_0xea5e('0x40')]);_0x521640[_0xea5e('0x25')]=_0x1b49d7!==_0xea5e('0x43')?_0x1b49d7:util[_0xea5e('0x44')]('Caller\x20-\x20%s',_0x42689f);}else{return null;}}return _0x4a83c6[_0xea5e('0x1c')](_[_0xea5e('0x47')](_0x2c6462['moduleCreate']))[_0xea5e('0x1d')](_0x521640)[_0xea5e('0x27')](function(_0x53d562){return BPromise[_0xea5e('0x24')]({'id':_0x53d562['id'],'endUserType':_0x2c6462['moduleCreate']});});}});}function getCustomFields(_0x2a53ae,_0x3ab126){var _0x1ced67={};if(_0x2a53ae[_0xea5e('0x36')]>0x0){_[_0xea5e('0x48')](_0x2a53ae,function(_0x55f853){if(_[_0xea5e('0x49')]([_0xea5e('0x4a'),_0xea5e('0x4b')],_0x55f853[_0xea5e('0x3c')])&&_0x55f853[_0xea5e('0x4c')]){_0x1ced67[_0x55f853[_0xea5e('0x4c')]]=_0x55f853[_0xea5e('0x4d')][_0xea5e('0x4e')]();}else if(_0x55f853[_0xea5e('0x3c')]==='variable'&&_0x55f853[_0xea5e('0x4f')]&&_0x55f853[_0xea5e('0x4c')]){_0x3ab126[_0x55f853[_0xea5e('0x4f')]]&&(_0x1ced67[_0x55f853[_0xea5e('0x4c')]]=_0x3ab126[_0x55f853[_0xea5e('0x4f')]][_0xea5e('0x4e')]());}else if(_0x55f853['type']==='customVariable'&&_0x55f853['Variable']&&_0x55f853[_0xea5e('0x50')]['name']&&_0x55f853[_0xea5e('0x4c')]){_0x3ab126[_0x55f853[_0xea5e('0x50')][_0xea5e('0x51')][_0xea5e('0x3d')]()]&&(_0x1ced67[_0x55f853['idField']]=_0x3ab126[_0x55f853[_0xea5e('0x50')]['name'][_0xea5e('0x3d')]()][_0xea5e('0x4e')]());}});}return _0x1ced67;}function getConnection(_0x154a90){var _0x9d808c=_0x154a90['password'][_0xea5e('0x52')](_0x154a90['securityToken']);var _0x4880af=new jsforce[(_0xea5e('0x53'))]({'oauth2':{'loginUrl':_0x154a90[_0xea5e('0x54')]||_0xea5e('0x55'),'clientId':_0x154a90[_0xea5e('0x56')],'clientSecret':_0x154a90[_0xea5e('0x57')]}});return _0x4880af[_0xea5e('0x58')](_0x154a90[_0xea5e('0x59')],_0x9d808c)[_0xea5e('0x27')](function(){logger[_0xea5e('0x1b')](_0xea5e('0x5a'));return _0x4880af;});}exports['queue']=function(_0xc227b6,_0x3e58ba,_0x542256,_0x51447d,_0x397070,_0x4c1e44){var _0x2479f0,_0x4b1222,_0x1c0c24,_0x33b8a7;_0x4c1e44[_0xea5e('0x5b')]=intUtil[_0xea5e('0x5c')](_0x4c1e44[_0xea5e('0x5b')]);_0x4c1e44['remoteUri']=intUtil[_0xea5e('0x5c')](_0x4c1e44[_0xea5e('0x54')]);if(_0x397070&&_0x397070['monitor_format']){logger[_0xea5e('0x1b')](_0xea5e('0x5d'),'Recording\x20is\x20enabled!');_0x3e58ba[_0xea5e('0x5e')]=util[_0xea5e('0x44')](_0xea5e('0x5f'),_0x4c1e44[_0xea5e('0x5b')],_0x3e58ba[_0xea5e('0x60')],md5(_0x3e58ba[_0xea5e('0x60')]));}else{_0x3e58ba[_0xea5e('0x5e')]='';}return getConnection(_0x4c1e44)[_0xea5e('0x27')](function(_0x57feab){_0x33b8a7=_0x57feab;return getUser(_0x4c1e44,_0x51447d['email'],_0x33b8a7);})[_0xea5e('0x27')](function(_0xc55189){_0x2479f0=_0xc55189;return getEndUser(_0x4c1e44,_0x542256,_0x3e58ba[_0xea5e('0x61')],_0x3e58ba[_0xea5e('0x62')],_0x33b8a7);})[_0xea5e('0x27')](function(_0x3052f2){_0x4b1222=_0x3052f2;return getTicket(_0x4c1e44,_0x2479f0,_0x4b1222,_0x542256,_0x3e58ba,_0x542256[_0xea5e('0x63')],_0x33b8a7,_0xea5e('0x64'));})['then'](function(_0x2636c0){_0x1c0c24=_0x2636c0;logger[_0xea5e('0x1b')](_0xea5e('0x65'),_0x1c0c24['id']);logger[_0xea5e('0x1b')](_0xea5e('0x66'),_0x1c0c24['id'],_0x51447d['name'],_0x4c1e44[_0xea5e('0x3c')]);switch(_0x4c1e44[_0xea5e('0x3c')]){case _0xea5e('0x67'):emit(util['format']('user:%s',_0x51447d[_0xea5e('0x51')]),'trigger:salesforce:display',{'recordId':_0x1c0c24['id']});break;case _0xea5e('0x68'):emit(util[_0xea5e('0x44')]('user:%s',_0x51447d[_0xea5e('0x51')]),'trigger:browser:url',{'uri':util[_0xea5e('0x44')](_0xea5e('0x69'),_0x33b8a7[_0xea5e('0x6a')],_0x1c0c24['id'])});break;default:logger['error'](_0xea5e('0x6b'));}})[_0xea5e('0x6c')](function(_0x520263){logger[_0xea5e('0x6d')](_0xea5e('0x5d'),_0x520263);});};exports[_0xea5e('0x6e')]=function(_0x2c129a,_0x3c286d,_0x55da7f,_0x3e1e4f,_0x590d3c,_0x52c336,_0x119df0){var _0x878e78,_0x416503,_0x457b24,_0x2db136;_0x52c336[_0xea5e('0x5b')]=intUtil[_0xea5e('0x5c')](_0x52c336[_0xea5e('0x5b')]);_0x52c336[_0xea5e('0x54')]=intUtil['stripTrailingSlash'](_0x52c336[_0xea5e('0x54')]);if(_0x119df0&&_0x119df0[_0xea5e('0x6f')]&&_0x119df0[_0xea5e('0x6f')]!==_0xea5e('0x70')){logger[_0xea5e('0x1b')](_0xea5e('0x71'),_0xea5e('0x72'));_0x3c286d[_0xea5e('0x5e')]=util[_0xea5e('0x44')](_0xea5e('0x5f'),_0x52c336['serverUrl'],_0x3c286d['uniqueid'],md5(_0x3c286d[_0xea5e('0x60')]));}return getConnection(_0x52c336)[_0xea5e('0x27')](function(_0x15f0e6){_0x2db136=_0x15f0e6;return getUser(_0x52c336,_0x3e1e4f['email'],_0x2db136);})[_0xea5e('0x27')](function(_0xe8c7d4){_0x878e78=_0xe8c7d4;return getEndUser(_0x52c336,_0x55da7f,_0x3c286d['destcalleridname'],_0x3c286d[_0xea5e('0x73')],_0x2db136);})[_0xea5e('0x27')](function(_0x385f01){_0x416503=_0x385f01;return getTicket(_0x52c336,_0x878e78,_0x416503,_0x55da7f,_0x3c286d,_0x55da7f[_0xea5e('0x63')],_0x2db136,'outbound');})['then'](function(_0x5bd61d){_0x457b24=_0x5bd61d;logger[_0xea5e('0x1b')](_0xea5e('0x74'),_0x457b24['id']);logger['info'](_0xea5e('0x75'),_0x457b24['id'],_0x3e1e4f[_0xea5e('0x51')],_0x52c336[_0xea5e('0x3c')]);switch(_0x52c336['type']){case'integrationTab':emit(util[_0xea5e('0x44')](_0xea5e('0x76'),_0x3e1e4f[_0xea5e('0x51')]),'trigger:salesforce:display',{'recordId':_0x457b24['id']});break;case _0xea5e('0x68'):emit(util[_0xea5e('0x44')]('user:%s',_0x3e1e4f[_0xea5e('0x51')]),'trigger:browser:url',{'uri':util['format'](_0xea5e('0x69'),_0x2db136[_0xea5e('0x6a')],_0x457b24['id'])});break;default:logger['error']('[OUTBOUND]','Salesforce\x20account\x20type\x20not\x20recognized');}})[_0xea5e('0x6c')](function(_0x40d44a){logger['error'](_0xea5e('0x71'),_0x40d44a);});};exports[_0xea5e('0x77')]=function(_0x5143e7,_0x3e4539,_0x2a76f0,_0x329983,_0x1b5b92,_0x2c9a96){var _0x2545fd,_0x39c432,_0x107a3a,_0x39df0e;_0x2c9a96[_0xea5e('0x5b')]=intUtil[_0xea5e('0x5c')](_0x2c9a96[_0xea5e('0x5b')]);_0x2c9a96[_0xea5e('0x54')]=intUtil[_0xea5e('0x5c')](_0x2c9a96['remoteUri']);if(_0x1b5b92&&_0x1b5b92[_0xea5e('0x78')]){logger[_0xea5e('0x1b')]('['+_0x3e4539[_0xea5e('0x79')][_0xea5e('0x7a')]()+']',_0xea5e('0x72'));_0x3e4539[_0xea5e('0x5e')]=util['format']('%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s',_0x2c9a96['serverUrl'],_0x3e4539['uniqueid'],md5(_0x3e4539[_0xea5e('0x60')]));}else{_0x3e4539[_0xea5e('0x5e')]='';}return getConnection(_0x2c9a96)['then'](function(_0x47aa13){_0x39df0e=_0x47aa13;if(!_[_0xea5e('0x1e')](_0x329983)){return getUser(_0x2c9a96,_0x329983[_0xea5e('0x51')],_0x39df0e);}else{return getUser(_0x2c9a96,null,_0x39df0e);}})[_0xea5e('0x27')](function(_0xde85d6){_0x2545fd=_0xde85d6;return getEndUser(_0x2c9a96,_0x2a76f0,_0x3e4539[_0xea5e('0x61')],_0x3e4539['calleridnum'],_0x39df0e);})[_0xea5e('0x27')](function(_0x51eaf3){_0x39c432=_0x51eaf3;return getTicket(_0x2c9a96,_0x2545fd,_0x39c432,_0x2a76f0,_0x3e4539,_0x2a76f0['Fields'],_0x39df0e);})[_0xea5e('0x27')](function(_0x38eb07){_0x107a3a=_0x38eb07;logger['info']('['+_0x3e4539[_0xea5e('0x79')][_0xea5e('0x7a')]()+_0xea5e('0x7b'),_0x107a3a['id']);logger['info']('['+_0x3e4539[_0xea5e('0x79')][_0xea5e('0x7a')]()+_0xea5e('0x7c'),_0x2c9a96[_0xea5e('0x3c')]);})['catch'](function(_0x5f59e5){logger['error']('['+_0x3e4539[_0xea5e('0x79')][_0xea5e('0x7a')]()+']',_0x5f59e5);});};