Built motion from commit 5b761a7b.|2.5.36
[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 _0x7c81=['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','format','Caller\x20-\x20%s','No\x20Company','<unknown>','upperFirst','create','forEach','picklist','idField','toString','variable','variableName','Variable','name','password','securityToken','Connection','remoteUri','https://login.salesforce.com','login','username','Connection\x20established.','queue','serverUrl','monitor_format','[QUEUE]','Recording\x20is\x20enabled!','recordingURL','%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s','uniqueid','email','calleridname','calleridnum','Fields','[QUEUE]\x20Displaying\x20ticket\x20%s\x20to\x20agent\x20%s.\x20Integration\x20account\x20type\x20%s.','integrationTab','user:%s','trigger:salesforce:display','newTab','trigger:browser:url','error','[QUEUE]\x20Salesforce\x20account\x20type\x20not\x20recognized.','catch','outbound','stripTrailingSlash','recordingFormat','destcalleridname','destcalleridnum','[OUTBOUND]\x20Ticket\x20%s\x20created.','[OUTBOUND]\x20Displaying\x20ticket\x20%s\x20to\x20agent\x20%s.\x20Integration\x20account\x20type\x20%s.','%s/%s/e','instanceUrl','[OUTBOUND]','Salesforce\x20account\x20type\x20not\x20recognized','unmanaged','lastevent','isNil','toUpperCase',']\x20Ticket\x20%s\x20created.',']\x20Integration\x20account\x20type\x20%s.','lodash','request-promise','bluebird','md5','jsforce','ioredis','./util','../../../../config/environment','../../../../config/logger','defaults','redis','socket.io-emitter','emit','getString','Subjects','Descriptions','ticketType','ActivityDate','IsReminderSet','IsRecurrence','endUserType','contact','lead','WhoId','account','WhatId','Case','ContactId','leadId','info','Association\x20between\x20Case\x20and\x20Lead\x20skipped','sobject','validateEmail','User','find','execute','then','length','Email','Agent\x20%s\x20found.','resolve','Name','identity','user_id','display_name','Agent\x20%s\x20not\x20found.\x20Switch\x20to\x20the\x20admin\x20account.','Searching\x20enduser\x20with\x20phone\x20%s.\x20Serching\x20method\x20used\x20%s.','additionalSearchContact','merge','$or','Contact','cloneDeep','additionalSearchLead','Lead','account_contact_lead','additionalSearchAccount','Account','attributes','type'];(function(_0x56eafe,_0x517064){var _0x464c94=function(_0x3530a5){while(--_0x3530a5){_0x56eafe['push'](_0x56eafe['shift']());}};_0x464c94(++_0x517064);}(_0x7c81,0x13c));var _0x17c8=function(_0x5951e8,_0x42b9a7){_0x5951e8=_0x5951e8-0x0;var _0x20a1f5=_0x7c81[_0x5951e8];return _0x20a1f5;};'use strict';var _=require(_0x17c8('0x0'));var rp=require(_0x17c8('0x1'));var moment=require('moment');var BPromise=require(_0x17c8('0x2'));var md5=require(_0x17c8('0x3'));var jsforce=require(_0x17c8('0x4'));var util=require('util');var Redis=require(_0x17c8('0x5'));var intUtil=require(_0x17c8('0x6'));var config=require(_0x17c8('0x7'));var logger=require(_0x17c8('0x8'))('salesforce');config['redis']=_[_0x17c8('0x9')](config[_0x17c8('0xa')],{'host':'localhost','port':0x18eb});var io=require(_0x17c8('0xb'))(new Redis(config[_0x17c8('0xa')]));function emit(_0x36be54,_0x4ae048,_0x2589b6){io['to'](_0x36be54)[_0x17c8('0xc')](_0x4ae048,_0x2589b6);}function getTicket(_0x4284e3,_0x25e686,_0x598132,_0x9098de,_0x25307d,_0x209f4a,_0x9bb10a,_0x2bafe7){var _0x109855=Object['assign']({},{'OwnerId':_0x25e686['id'],'Subject':intUtil[_0x17c8('0xd')](_0x9098de[_0x17c8('0xe')],_0x25307d,'\x20'),'Description':intUtil['getString'](_0x9098de[_0x17c8('0xf')],_0x25307d,'\x0a')},getCustomFields(_0x209f4a,_0x25307d));if(_0x598132){if(_0x9098de[_0x17c8('0x10')]==='Task'){_0x109855[_0x17c8('0x11')]=moment['utc']();_0x109855[_0x17c8('0x12')]=![];_0x109855[_0x17c8('0x13')]=![];if(_0x598132[_0x17c8('0x14')]===_0x17c8('0x15')||_0x598132[_0x17c8('0x14')]===_0x17c8('0x16')){_0x109855[_0x17c8('0x17')]=_0x598132['id'];}else if(_0x598132['endUserType']===_0x17c8('0x18')){_0x109855[_0x17c8('0x19')]=_0x598132['id'];}}else if(_0x9098de['ticketType']===_0x17c8('0x1a')){if(_0x598132[_0x17c8('0x14')]===_0x17c8('0x15')){_0x109855[_0x17c8('0x1b')]=_0x598132['id'];}else if(_0x598132[_0x17c8('0x14')]==='account'){_0x109855['AccountId']=_0x598132['id'];}else if(_0x598132[_0x17c8('0x14')]===_0x17c8('0x16')&&_0x9098de[_0x17c8('0x1c')]){_0x109855[_0x9098de['leadId']]=_0x598132['id'];}else{logger[_0x17c8('0x1d')](_0x17c8('0x1e'));}}}return _0x9bb10a[_0x17c8('0x1f')](_0x9098de['ticketType'])['create'](_0x109855);}function getUser(_0x4555d1,_0x33eec4,_0x3bf833){if(!_['isNil'](_0x33eec4)&&intUtil[_0x17c8('0x20')](_0x33eec4)){var _0x552702={'Email':_0x33eec4};var _0x28d9d0={'Id':!![],'Username':!![],'Name':!![],'Email':!![]};return _0x3bf833[_0x17c8('0x1f')](_0x17c8('0x21'))[_0x17c8('0x22')](_0x552702,_0x28d9d0)[_0x17c8('0x23')]()[_0x17c8('0x24')](function(_0x5c5b5a){if(_0x5c5b5a[_0x17c8('0x25')]){var _0x857f79=_[_0x17c8('0x22')](_0x5c5b5a,function(_0x314adc){return _0x314adc[_0x17c8('0x26')]===_0x33eec4;});if(_0x857f79){logger[_0x17c8('0x1d')](_0x17c8('0x27'),_0x33eec4);return BPromise[_0x17c8('0x28')]({'id':_0x857f79['Id'],'name':_0x857f79[_0x17c8('0x29')]});}}else{logger['info']('Agent\x20%s\x20not\x20found.\x20Switch\x20to\x20the\x20admin\x20account.',_0x33eec4);return _0x3bf833[_0x17c8('0x2a')]()[_0x17c8('0x24')](function(_0x128718){return BPromise[_0x17c8('0x28')]({'id':_0x128718[_0x17c8('0x2b')],'name':_0x128718[_0x17c8('0x2c')]});});}});}else{logger['info'](_0x17c8('0x2d'),_0x33eec4);return _0x3bf833[_0x17c8('0x2a')]()['then'](function(_0x216a52){return BPromise['resolve']({'id':_0x216a52[_0x17c8('0x2b')],'name':_0x216a52[_0x17c8('0x2c')]});});}}function getEndUser(_0x16cbe7,_0x49361e,_0x119f09,_0xde158c,_0x4bb2e4){var _0x1434fd={'$or':{'Phone':_0xde158c}};var _0x373d27={'Id':!![],'Name':!![],'Phone':!![]};return BPromise[_0x17c8('0x28')]()['then'](function(){logger[_0x17c8('0x1d')](_0x17c8('0x2e'),_0xde158c,_0x49361e['moduleSearch']);switch(_0x49361e['moduleSearch']){case'contact_lead':var _0x57bc36=_['cloneDeep'](_0x1434fd);if(_0x49361e['additionalSearchContact']){var _0x1c5361={};_0x1c5361[_0x49361e[_0x17c8('0x2f')]]=_0xde158c;_[_0x17c8('0x30')](_0x57bc36[_0x17c8('0x31')],_0x1c5361);}return _0x4bb2e4[_0x17c8('0x1f')](_0x17c8('0x32'))[_0x17c8('0x22')](_0x57bc36,_0x373d27)[_0x17c8('0x23')]()['then'](function(_0x514977){if(_0x514977&&_0x514977[_0x17c8('0x25')]){return _0x514977;}else{var _0x2a9b89=_[_0x17c8('0x33')](_0x1434fd);if(_0x49361e[_0x17c8('0x34')]){var _0x1c2f05={};_0x1c2f05[_0x49361e['additionalSearchLead']]=_0xde158c;_[_0x17c8('0x30')](_0x2a9b89[_0x17c8('0x31')],_0x1c2f05);}return _0x4bb2e4[_0x17c8('0x1f')](_0x17c8('0x35'))[_0x17c8('0x22')](_0x2a9b89,_0x373d27);}});case _0x17c8('0x36'):var _0x164544=_[_0x17c8('0x33')](_0x1434fd);if(_0x49361e[_0x17c8('0x37')]){var _0x1c5361={};_0x1c5361[_0x49361e[_0x17c8('0x37')]]=_0xde158c;_[_0x17c8('0x30')](_0x164544[_0x17c8('0x31')],_0x1c5361);}return _0x4bb2e4[_0x17c8('0x1f')](_0x17c8('0x38'))[_0x17c8('0x22')](_0x164544,_0x373d27)[_0x17c8('0x23')]()[_0x17c8('0x24')](function(_0x748526){if(_0x748526&&_0x748526['length']){return _0x748526;}else{var _0x3aa87b=_[_0x17c8('0x33')](_0x1434fd);if(_0x49361e[_0x17c8('0x2f')]){var _0x3e0e25={};_0x3e0e25[_0x49361e['additionalSearchContact']]=_0xde158c;_[_0x17c8('0x30')](_0x3aa87b['$or'],_0x3e0e25);}return _0x4bb2e4[_0x17c8('0x1f')](_0x17c8('0x32'))[_0x17c8('0x22')](_0x3aa87b,_0x373d27)[_0x17c8('0x24')](function(_0x4a3483){if(_0x4a3483&&_0x4a3483['length']){return _0x4a3483;}else{var _0x217d81=_[_0x17c8('0x33')](_0x1434fd);if(_0x49361e[_0x17c8('0x34')]){var _0x3f9f88={};_0x3f9f88[_0x49361e[_0x17c8('0x34')]]=_0xde158c;_[_0x17c8('0x30')](_0x217d81[_0x17c8('0x31')],_0x3f9f88);}return _0x4bb2e4[_0x17c8('0x1f')](_0x17c8('0x35'))[_0x17c8('0x22')](_0x217d81,_0x373d27);}});}});case _0x17c8('0x15'):var _0x57bc36=_[_0x17c8('0x33')](_0x1434fd);if(_0x49361e['additionalSearchContact']){var _0x1c5361={};_0x1c5361[_0x49361e[_0x17c8('0x2f')]]=_0xde158c;_['merge'](_0x57bc36[_0x17c8('0x31')],_0x1c5361);}return _0x4bb2e4['sobject'](_0x17c8('0x32'))['find'](_0x57bc36,_0x373d27)[_0x17c8('0x23')]();case'lead':var _0x4e72f0=_[_0x17c8('0x33')](_0x1434fd);if(_0x49361e[_0x17c8('0x34')]){var _0x1c5361={};_0x1c5361[_0x49361e[_0x17c8('0x34')]]=_0xde158c;_['merge'](_0x4e72f0[_0x17c8('0x31')],_0x1c5361);}return _0x4bb2e4['sobject']('Lead')[_0x17c8('0x22')](_0x4e72f0,_0x373d27);case _0x17c8('0x18'):var _0x164544=_[_0x17c8('0x33')](_0x1434fd);if(_0x49361e['additionalSearchAccount']){var _0x1c5361={};_0x1c5361[_0x49361e['additionalSearchAccount']]=_0xde158c;_[_0x17c8('0x30')](_0x164544[_0x17c8('0x31')],_0x1c5361);}return _0x4bb2e4[_0x17c8('0x1f')](_0x17c8('0x38'))[_0x17c8('0x22')](_0x164544,_0x373d27);default:return null;}})[_0x17c8('0x24')](function(_0x14a1c9){if(_0x14a1c9&&_0x14a1c9[_0x17c8('0x25')]){var _0x48fd50=_['first'](_0x14a1c9);if(_0x48fd50){return BPromise[_0x17c8('0x28')]({'id':_0x48fd50['Id'],'name':_0x48fd50[_0x17c8('0x29')],'phone':_0x48fd50['Phone'],'endUserType':_0x48fd50[_0x17c8('0x39')][_0x17c8('0x3a')][_0x17c8('0x3b')]()});}}})[_0x17c8('0x24')](function(_0x45e3f4){if(_0x45e3f4){logger[_0x17c8('0x1d')](_0x17c8('0x3c'),_0x45e3f4['endUserType'],_0xde158c);return BPromise[_0x17c8('0x28')](_0x45e3f4);}else{logger[_0x17c8('0x1d')](_0x17c8('0x3d'),_0xde158c);var _0x518830={'Phone':_0xde158c};if(_0x49361e[_0x17c8('0x3e')]){if(_0x49361e[_0x17c8('0x3e')]===_0x17c8('0x15')){logger[_0x17c8('0x1d')](_0x17c8('0x3f'),_0xde158c,_0x49361e['moduleCreate']);_0x518830[_0x17c8('0x40')]=_0x119f09!=='<unknown>'?_0x119f09:util[_0x17c8('0x41')](_0x17c8('0x42'),_0xde158c);}else if(_0x49361e[_0x17c8('0x3e')]==='lead'){logger['info'](_0x17c8('0x3f'),_0xde158c,_0x49361e[_0x17c8('0x3e')]);_0x518830[_0x17c8('0x40')]=_0x119f09!=='<unknown>'?_0x119f09:util[_0x17c8('0x41')](_0x17c8('0x42'),_0xde158c);_0x518830['Company']=_0x17c8('0x43');}else if(_0x49361e[_0x17c8('0x3e')]===_0x17c8('0x18')){logger[_0x17c8('0x1d')](_0x17c8('0x3f'),_0xde158c,_0x49361e[_0x17c8('0x3e')]);_0x518830['Name']=_0x119f09!==_0x17c8('0x44')?_0x119f09:util['format']('Caller\x20-\x20%s',_0xde158c);}else{return null;}}return _0x4bb2e4['sobject'](_[_0x17c8('0x45')](_0x49361e['moduleCreate']))[_0x17c8('0x46')](_0x518830)[_0x17c8('0x24')](function(_0x5ee36b){return BPromise[_0x17c8('0x28')]({'id':_0x5ee36b['id'],'endUserType':_0x49361e[_0x17c8('0x3e')]});});}});}function getCustomFields(_0x4ade59,_0x4a914b){var _0x4c8ed3={};if(_0x4ade59[_0x17c8('0x25')]>0x0){_[_0x17c8('0x47')](_0x4ade59,function(_0x55d129){if(_['includes'](['string',_0x17c8('0x48')],_0x55d129[_0x17c8('0x3a')])&&_0x55d129[_0x17c8('0x49')]){_0x4c8ed3[_0x55d129[_0x17c8('0x49')]]=_0x55d129['content'][_0x17c8('0x4a')]();}else if(_0x55d129[_0x17c8('0x3a')]===_0x17c8('0x4b')&&_0x55d129[_0x17c8('0x4c')]&&_0x55d129[_0x17c8('0x49')]){_0x4a914b[_0x55d129[_0x17c8('0x4c')]]&&(_0x4c8ed3[_0x55d129['idField']]=_0x4a914b[_0x55d129[_0x17c8('0x4c')]]['toString']());}else if(_0x55d129['type']==='customVariable'&&_0x55d129[_0x17c8('0x4d')]&&_0x55d129[_0x17c8('0x4d')][_0x17c8('0x4e')]&&_0x55d129[_0x17c8('0x49')]){_0x4a914b[_0x55d129['Variable'][_0x17c8('0x4e')]['toLowerCase']()]&&(_0x4c8ed3[_0x55d129[_0x17c8('0x49')]]=_0x4a914b[_0x55d129[_0x17c8('0x4d')][_0x17c8('0x4e')][_0x17c8('0x3b')]()][_0x17c8('0x4a')]());}});}return _0x4c8ed3;}function getConnection(_0x2ba5e2){var _0x3093e3=_0x2ba5e2[_0x17c8('0x4f')]['concat'](_0x2ba5e2[_0x17c8('0x50')]);var _0x165cd1=new jsforce[(_0x17c8('0x51'))]({'oauth2':{'loginUrl':_0x2ba5e2[_0x17c8('0x52')]||_0x17c8('0x53'),'clientId':_0x2ba5e2['clientId'],'clientSecret':_0x2ba5e2['clientSecret']}});return _0x165cd1[_0x17c8('0x54')](_0x2ba5e2[_0x17c8('0x55')],_0x3093e3)['then'](function(){logger[_0x17c8('0x1d')](_0x17c8('0x56'));return _0x165cd1;});}exports[_0x17c8('0x57')]=function(_0xc82a3,_0x3443f0,_0x3f0a95,_0x1ac7ac,_0x25dc6c,_0x18883a){var _0x10e89f,_0x261c5f,_0x33e751,_0xbf2f1d;_0x18883a[_0x17c8('0x58')]=intUtil['stripTrailingSlash'](_0x18883a[_0x17c8('0x58')]);_0x18883a[_0x17c8('0x52')]=intUtil['stripTrailingSlash'](_0x18883a[_0x17c8('0x52')]);if(_0x25dc6c&&_0x25dc6c[_0x17c8('0x59')]){logger['info'](_0x17c8('0x5a'),_0x17c8('0x5b'));_0x3443f0[_0x17c8('0x5c')]=util[_0x17c8('0x41')](_0x17c8('0x5d'),_0x18883a[_0x17c8('0x58')],_0x3443f0['uniqueid'],md5(_0x3443f0[_0x17c8('0x5e')]));}else{_0x3443f0[_0x17c8('0x5c')]='';}return getConnection(_0x18883a)[_0x17c8('0x24')](function(_0x388705){_0xbf2f1d=_0x388705;return getUser(_0x18883a,_0x1ac7ac[_0x17c8('0x5f')],_0xbf2f1d);})[_0x17c8('0x24')](function(_0x3b674b){_0x10e89f=_0x3b674b;return getEndUser(_0x18883a,_0x3f0a95,_0x3443f0[_0x17c8('0x60')],_0x3443f0[_0x17c8('0x61')],_0xbf2f1d);})[_0x17c8('0x24')](function(_0x4634be){_0x261c5f=_0x4634be;return getTicket(_0x18883a,_0x10e89f,_0x261c5f,_0x3f0a95,_0x3443f0,_0x3f0a95[_0x17c8('0x62')],_0xbf2f1d,_0x17c8('0x57'));})[_0x17c8('0x24')](function(_0x5cbdbd){_0x33e751=_0x5cbdbd;logger[_0x17c8('0x1d')]('[QUEUE]\x20Ticket\x20%s\x20created',_0x33e751['id']);logger[_0x17c8('0x1d')](_0x17c8('0x63'),_0x33e751['id'],_0x1ac7ac[_0x17c8('0x4e')],_0x18883a[_0x17c8('0x3a')]);switch(_0x18883a[_0x17c8('0x3a')]){case _0x17c8('0x64'):emit(util[_0x17c8('0x41')](_0x17c8('0x65'),_0x1ac7ac[_0x17c8('0x4e')]),_0x17c8('0x66'),{'recordId':_0x33e751['id']});break;case _0x17c8('0x67'):emit(util[_0x17c8('0x41')](_0x17c8('0x65'),_0x1ac7ac['name']),_0x17c8('0x68'),{'uri':util[_0x17c8('0x41')]('%s/%s/e',_0xbf2f1d['instanceUrl'],_0x33e751['id'])});break;default:logger[_0x17c8('0x69')](_0x17c8('0x6a'));}})[_0x17c8('0x6b')](function(_0x579418){logger[_0x17c8('0x69')](_0x17c8('0x5a'),_0x579418);});};exports[_0x17c8('0x6c')]=function(_0x32a501,_0x9d8f9a,_0x502ef5,_0x2f73d8,_0x3a6138,_0x2e11ac,_0x19fa4d){var _0x495a72,_0x563ef3,_0x2be33c,_0x20e8a5;_0x2e11ac[_0x17c8('0x58')]=intUtil[_0x17c8('0x6d')](_0x2e11ac[_0x17c8('0x58')]);_0x2e11ac['remoteUri']=intUtil['stripTrailingSlash'](_0x2e11ac[_0x17c8('0x52')]);if(_0x19fa4d&&_0x19fa4d[_0x17c8('0x6e')]&&_0x19fa4d['recordingFormat']!=='none'){logger['info']('[OUTBOUND]','Recording\x20is\x20enabled!');_0x9d8f9a['recordingURL']=util[_0x17c8('0x41')](_0x17c8('0x5d'),_0x2e11ac[_0x17c8('0x58')],_0x9d8f9a[_0x17c8('0x5e')],md5(_0x9d8f9a[_0x17c8('0x5e')]));}return getConnection(_0x2e11ac)[_0x17c8('0x24')](function(_0x5e523c){_0x20e8a5=_0x5e523c;return getUser(_0x2e11ac,_0x2f73d8[_0x17c8('0x5f')],_0x20e8a5);})['then'](function(_0x5bf2e5){_0x495a72=_0x5bf2e5;return getEndUser(_0x2e11ac,_0x502ef5,_0x9d8f9a[_0x17c8('0x6f')],_0x9d8f9a[_0x17c8('0x70')],_0x20e8a5);})[_0x17c8('0x24')](function(_0x68bd35){_0x563ef3=_0x68bd35;return getTicket(_0x2e11ac,_0x495a72,_0x563ef3,_0x502ef5,_0x9d8f9a,_0x502ef5[_0x17c8('0x62')],_0x20e8a5,'outbound');})[_0x17c8('0x24')](function(_0x3d87b5){_0x2be33c=_0x3d87b5;logger[_0x17c8('0x1d')](_0x17c8('0x71'),_0x2be33c['id']);logger[_0x17c8('0x1d')](_0x17c8('0x72'),_0x2be33c['id'],_0x2f73d8['name'],_0x2e11ac[_0x17c8('0x3a')]);switch(_0x2e11ac[_0x17c8('0x3a')]){case _0x17c8('0x64'):emit(util[_0x17c8('0x41')](_0x17c8('0x65'),_0x2f73d8['name']),_0x17c8('0x66'),{'recordId':_0x2be33c['id']});break;case _0x17c8('0x67'):emit(util[_0x17c8('0x41')](_0x17c8('0x65'),_0x2f73d8[_0x17c8('0x4e')]),'trigger:browser:url',{'uri':util[_0x17c8('0x41')](_0x17c8('0x73'),_0x20e8a5[_0x17c8('0x74')],_0x2be33c['id'])});break;default:logger[_0x17c8('0x69')](_0x17c8('0x75'),_0x17c8('0x76'));}})['catch'](function(_0x2d7dc6){logger['error'](_0x17c8('0x75'),_0x2d7dc6);});};exports[_0x17c8('0x77')]=function(_0x50bd33,_0x53eb64,_0x4575b9,_0x46de08,_0x2d4ce1,_0x40c61d){var _0x1a5844,_0x1fc7d6,_0x3228aa,_0x5a5025;_0x40c61d['serverUrl']=intUtil['stripTrailingSlash'](_0x40c61d['serverUrl']);_0x40c61d[_0x17c8('0x52')]=intUtil[_0x17c8('0x6d')](_0x40c61d[_0x17c8('0x52')]);if(_0x2d4ce1&&_0x2d4ce1[_0x17c8('0x59')]){logger['info']('['+_0x53eb64[_0x17c8('0x78')]['toUpperCase']()+']',_0x17c8('0x5b'));_0x53eb64[_0x17c8('0x5c')]=util[_0x17c8('0x41')]('%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s',_0x40c61d[_0x17c8('0x58')],_0x53eb64['uniqueid'],md5(_0x53eb64[_0x17c8('0x5e')]));}else{_0x53eb64['recordingURL']='';}return getConnection(_0x40c61d)[_0x17c8('0x24')](function(_0x147450){_0x5a5025=_0x147450;if(!_[_0x17c8('0x79')](_0x46de08)){return getUser(_0x40c61d,_0x46de08[_0x17c8('0x4e')],_0x5a5025);}else{return getUser(_0x40c61d,null,_0x5a5025);}})[_0x17c8('0x24')](function(_0x538acd){_0x1a5844=_0x538acd;return getEndUser(_0x40c61d,_0x4575b9,_0x53eb64[_0x17c8('0x60')],_0x53eb64['calleridnum'],_0x5a5025);})[_0x17c8('0x24')](function(_0x4598d7){_0x1fc7d6=_0x4598d7;return getTicket(_0x40c61d,_0x1a5844,_0x1fc7d6,_0x4575b9,_0x53eb64,_0x4575b9[_0x17c8('0x62')],_0x5a5025);})[_0x17c8('0x24')](function(_0x4c114f){_0x3228aa=_0x4c114f;logger['info']('['+_0x53eb64[_0x17c8('0x78')][_0x17c8('0x7a')]()+_0x17c8('0x7b'),_0x3228aa['id']);logger['info']('['+_0x53eb64[_0x17c8('0x78')][_0x17c8('0x7a')]()+_0x17c8('0x7c'),_0x40c61d['type']);})[_0x17c8('0x6b')](function(_0x1f221d){logger['error']('['+_0x53eb64[_0x17c8('0x78')][_0x17c8('0x7a')]()+']',_0x1f221d);});};