Built motion from commit 44b1f254.|2.6.26
[motion2.git] / server / services / ami / trigger / integration / sugarcrm.js
index 2d5fc75..b5a4c13 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x1366=['uri','%s/service/v4_1/rest.php','monitor_format','Recording\x20is\x20enabled!','recordingURL','%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s','uniqueid','The\x20User\x20ID\x20is:','calleridname','calleridnum','Fields','Inbound','The\x20Ticket\x20ID\x20is:','users','charAt','%s/index.php?action=ajaxui#ajaxUILoc=index.php%3Fmodule%3DCalls%26action%3DEditView%26record%3D%s','%s/#bwc/index.php?module=Calls&action=EditView&record=%s','[QUEUE]','Displaying\x20ticket\x20to\x20agent\x20in\x20a\x20new\x20tab...','trigger:browser:url','catch','error','outbound','recordingFormat','none','destcalleridnum','The\x20Enduser\x20ID\x20is:','Outbound','contacts','version','user:%s','lastevent','toUpperCase','isNil','Ticket\x20created!','bluebird','md5','ioredis','../../../../config/environment','sugarcrm','defaults','localhost','redis','emit','info','Creating\x20new\x20ticket...','name','Subjects','description','Descriptions','date_start','toISOString','slice','duration_hours','duration_minutes','parent_id','parent_type','Contacts','parent_name','direction','forEach','push','variableName','set_entry','JSON','stringify','Calls','format','Basic\x20%s','Getting\x20agent\x20with\x20name','get_entry_list','INSTR\x20(\x20users.user_name,\x20\x22%s\x22)\x20>\x200','user_name','then','entry_list','length','name_value_list','value','Agent\x20found!','resolve','Agent\x20not\x20found,\x20using\x20the\x20admin\x20account!','user_id','Agent\x20not\x20available,\x20using\x20the\x20admin\x20account!','Searching\x20enduser\x20with\x20phone','contacts.phone_home\x20=\x20\x22%s\x22','phone_home','find','Enduser\x20found!','Enduser\x20not\x20found,\x20creating\x20a\x20new\x20enduser!','debug','[HTTP]','merge','map','string','nameField','toLowerCase','content','toString','type','idField','customField','variable','custom_fields','customVariable','Variable','login','username','password','xCALLY\x20Motion\x20integration','sessionID','Account\x20%d\x20is\x20not\x20valid','set_relationship','queue','remoteUri','stripTrailingSlash','serverUrl'];(function(_0x4575ce,_0x465644){var _0x27bbf9=function(_0x475448){while(--_0x475448){_0x4575ce['push'](_0x4575ce['shift']());}};_0x27bbf9(++_0x465644);}(_0x1366,0x1f3));var _0x6136=function(_0x59ee6f,_0x450239){_0x59ee6f=_0x59ee6f-0x0;var _0x4c0979=_0x1366[_0x59ee6f];return _0x4c0979;};'use strict';var _=require('lodash');var rp=require('request-promise');var BPromise=require(_0x6136('0x0'));var md5=require(_0x6136('0x1'));var util=require('util');var Redis=require(_0x6136('0x2'));var intUtil=require('./util');var config=require(_0x6136('0x3'));var logger=require('../../../../config/logger')(_0x6136('0x4'));config['redis']=_[_0x6136('0x5')](config['redis'],{'host':_0x6136('0x6'),'port':0x18eb});var io=require('socket.io-emitter')(new Redis(config[_0x6136('0x7')]));var def={'method':'POST','json':!![]};function emit(_0x58b932,_0x46e0e7,_0x39e062){io['to'](_0x58b932)[_0x6136('0x8')](_0x46e0e7,_0x39e062);}function getTicket(_0x472573,_0x9f6adf,_0xb5997c,_0x3ed925,_0x176d5b,_0x1216a9,_0x19adf1,_0x155533){logger[_0x6136('0x9')](_0x6136('0xa'));var _0x3164c0=new Date();var _0x53134b=[{'name':_0x6136('0xb'),'value':intUtil['getString'](_0x3ed925[_0x6136('0xc')],_0x176d5b,'\x20')},{'name':'assigned_user_id','value':_0x9f6adf['id']},{'name':'created_by','value':_0x9f6adf['id']},{'name':_0x6136('0xd'),'value':intUtil['getString'](_0x3ed925[_0x6136('0xe')],_0x176d5b,'\x0a')},{'name':_0x6136('0xf'),'value':_0x3164c0[_0x6136('0x10')]()[_0x6136('0x11')](0x0,0x13)['replace']('T','\x20')},{'name':_0x6136('0x12'),'value':'0'},{'name':_0x6136('0x13'),'value':'15'},{'name':_0x6136('0x14'),'value':_0xb5997c['id']},{'name':_0x6136('0x15'),'value':_0x6136('0x16')},{'name':_0x6136('0x17'),'value':_0xb5997c['name']},{'name':_0x6136('0x18'),'value':_0x155533}];if(_0x1216a9['length']){_[_0x6136('0x19')](_0x1216a9,function(_0x3e0e4e){if(_0x176d5b[_0x3e0e4e['variableName']]){_0x53134b[_0x6136('0x1a')]({'name':_0x3e0e4e['idField'],'value':_0x176d5b[_0x3e0e4e[_0x6136('0x1b')]]});}});}return request({'form':{'method':_0x6136('0x1c'),'input_type':_0x6136('0x1d'),'response_type':_0x6136('0x1d'),'rest_data':JSON[_0x6136('0x1e')]({'session':_0x19adf1['id'],'module_name':_0x6136('0x1f'),'name_value_list':_0x53134b})}});}function getAuth(_0x119583){return util[_0x6136('0x20')](_0x6136('0x21'),new Buffer(_0x119583['apiKey']+':X')['toString']('base64'));}function getServerInfo(_0x1c687c){return request({'form':{'method':'get_server_info','input_type':_0x6136('0x1d'),'response_type':_0x6136('0x1d'),'rest_data':JSON[_0x6136('0x1e')]({'session':_0x1c687c['id']})}});}function getUser(_0x202e9e,_0x29cc1d,_0x302b71){if(!_['isNil'](_0x29cc1d)){logger['info'](_0x6136('0x22'),_0x29cc1d);return request({'form':{'method':_0x6136('0x23'),'input_type':_0x6136('0x1d'),'response_type':'JSON','rest_data':JSON[_0x6136('0x1e')]({'session':_0x302b71['id'],'module_name':'Employees','query':util[_0x6136('0x20')](_0x6136('0x24'),_0x29cc1d),'order_by':'','offset':'0','select_fields':['id',_0x6136('0xb'),_0x6136('0x25')],'link_name_to_fields_array':[],'max_results':-0x1,'deleted':'0'})}})[_0x6136('0x26')](function(_0x448792){if(_0x448792[_0x6136('0x27')][_0x6136('0x28')]){var _0x2297e3=_['find'](_0x448792[_0x6136('0x27')],function(_0x3c2339){return _0x3c2339[_0x6136('0x29')][_0x6136('0x25')][_0x6136('0x2a')]===_0x29cc1d;});if(_0x2297e3){logger[_0x6136('0x9')](_0x6136('0x2b'));return BPromise[_0x6136('0x2c')]({'id':_0x2297e3[_0x6136('0x29')]['id'][_0x6136('0x2a')],'name':_0x2297e3[_0x6136('0x29')][_0x6136('0xb')]['value']});}}logger[_0x6136('0x9')](_0x6136('0x2d'));return BPromise[_0x6136('0x2c')]({'id':_0x302b71[_0x6136('0x29')][_0x6136('0x2e')][_0x6136('0x2a')],'name':_0x302b71['name_value_list']['user_name'][_0x6136('0x2a')]});});}else{logger[_0x6136('0x9')](_0x6136('0x2f'));return BPromise[_0x6136('0x2c')]({'id':_0x302b71[_0x6136('0x29')][_0x6136('0x2e')][_0x6136('0x2a')],'name':_0x302b71['name_value_list'][_0x6136('0x25')][_0x6136('0x2a')]});}}function getEndUser(_0x4cd8ab,_0x404c6f,_0x3518a4,_0x997925){logger[_0x6136('0x9')](_0x6136('0x30'),_0x3518a4);return request({'form':{'method':'get_entry_list','input_type':_0x6136('0x1d'),'response_type':_0x6136('0x1d'),'rest_data':JSON[_0x6136('0x1e')]({'session':_0x997925['id'],'module_name':'Contacts','query':util[_0x6136('0x20')](_0x6136('0x31'),_0x3518a4),'order_by':'','offset':'0','select_fields':['id',_0x6136('0xb'),_0x6136('0x32')],'link_name_to_fields_array':[],'max_results':-0x1,'deleted':'0'})}})['then'](function(_0x288ce7){if(_0x288ce7[_0x6136('0x27')]['length']){var _0x49c027=_[_0x6136('0x33')](_0x288ce7[_0x6136('0x27')],function(_0x10b7bd){return _0x10b7bd[_0x6136('0x29')][_0x6136('0x32')][_0x6136('0x2a')]===_0x3518a4;});if(_0x49c027){logger['info'](_0x6136('0x34'));return BPromise['resolve']({'id':_0x49c027['name_value_list']['id'][_0x6136('0x2a')],'name':_0x49c027[_0x6136('0x29')][_0x6136('0xb')]['value'],'phone':_0x49c027[_0x6136('0x29')][_0x6136('0x32')]['value']});}}else{logger['info'](_0x6136('0x35'));return request({'form':{'method':_0x6136('0x1c'),'input_type':_0x6136('0x1d'),'response_type':_0x6136('0x1d'),'rest_data':JSON[_0x6136('0x1e')]({'session':_0x997925['id'],'module_name':_0x6136('0x16'),'name_value_list':[{'name':'first_name','value':_0x404c6f!=='<unknown>'?_0x404c6f:util['format']('Caller\x20-\x20%s',_0x3518a4)},{'name':'phone_home','value':_0x3518a4}]})}})[_0x6136('0x26')](function(_0x66b67f){logger['info']('Enduser\x20created.');return BPromise[_0x6136('0x2c')]({'id':_0x66b67f['id'],'name':_0x66b67f[_0x6136('0x27')]['first_name']['value'],'phone':_0x66b67f[_0x6136('0x27')]['phone_home'][_0x6136('0x2a')]});});}});}function request(_0x402a98){logger[_0x6136('0x36')](_0x6136('0x37'),JSON['stringify'](_0x402a98));return rp(_[_0x6136('0x38')](def,_0x402a98));}function getTags(_0x2b0c38,_0x2d5050){var _0x410bf2=[];if(_0x2b0c38&&_0x2b0c38[_0x6136('0x28')]>0x0){_0x410bf2=_[_0x6136('0x39')](_0x2b0c38,_0x2d5050);}return _0x410bf2;}function getCustomFields(_0x505e3a,_0x5b5e38){var _0x28fcd4=[];var _0x4cb55a={'custom_fields':[]};if(_0x505e3a['length']>0x0){_[_0x6136('0x19')](_0x505e3a,function(_0x1b4fc9){if(_0x1b4fc9['type']===_0x6136('0x3a')&&_0x1b4fc9[_0x6136('0x3b')]&&!_0x1b4fc9['customField']){_0x4cb55a[_0x1b4fc9[_0x6136('0x3b')][_0x6136('0x3c')]()]=_0x1b4fc9[_0x6136('0x3d')][_0x6136('0x3e')]();}else if(_0x1b4fc9[_0x6136('0x3f')]==='string'&&_0x1b4fc9[_0x6136('0x40')]&&_0x1b4fc9[_0x6136('0x41')]){_0x4cb55a['custom_fields'][_0x6136('0x1a')]({'id':_0x1b4fc9[_0x6136('0x40')],'value':_0x1b4fc9[_0x6136('0x3d')][_0x6136('0x3e')]()});}else if(_0x1b4fc9[_0x6136('0x3f')]===_0x6136('0x42')&&_0x1b4fc9['variableName']&&_0x1b4fc9[_0x6136('0x40')]&&_0x1b4fc9[_0x6136('0x41')]){_0x5b5e38[_0x1b4fc9['variableName']]&&_0x4cb55a[_0x6136('0x43')][_0x6136('0x1a')]({'id':_0x1b4fc9['idField'],'value':_0x5b5e38[_0x1b4fc9[_0x6136('0x1b')]][_0x6136('0x3e')]()});}else if(_0x1b4fc9[_0x6136('0x3f')]===_0x6136('0x44')&&_0x1b4fc9['Variable']&&_0x1b4fc9['Variable'][_0x6136('0xb')]&&_0x1b4fc9['idField']&&_0x1b4fc9[_0x6136('0x41')]){_0x5b5e38[_0x1b4fc9[_0x6136('0x45')][_0x6136('0xb')]['toLowerCase']()]&&_0x4cb55a[_0x6136('0x43')][_0x6136('0x1a')]({'id':_0x1b4fc9[_0x6136('0x40')],'value':_0x5b5e38[_0x1b4fc9['Variable'][_0x6136('0xb')][_0x6136('0x3c')]()][_0x6136('0x3e')]()});}});}return _0x4cb55a;}function getConnection(_0x51ee12){return request({'method':'POST','form':{'method':_0x6136('0x46'),'input_type':_0x6136('0x1d'),'response_type':_0x6136('0x1d'),'rest_data':JSON['stringify']({'user_auth':{'user_name':_0x51ee12[_0x6136('0x47')],'password':_0x51ee12[_0x6136('0x48')],'encryption':'PLAIN'},'application':_0x6136('0x49')})}})[_0x6136('0x26')](function(_0x1a1585){var _0x1566ff=_0x1a1585;if(_0x1566ff['id']){def[_0x6136('0x4a')]=_0x1566ff['id'];return BPromise['resolve'](_0x1566ff);}else{throw new Error(util['format'](_0x6136('0x4b'),_0x51ee12['id']));}});}function setRelationship(_0x223632,_0x30deee,_0x157045,_0x9207c0){return request({'form':{'method':_0x6136('0x4c'),'input_type':_0x6136('0x1d'),'response_type':_0x6136('0x1d'),'rest_data':JSON[_0x6136('0x1e')]({'session':_0x223632['id'],'module_name':_0x6136('0x1f'),'module_id':_0x157045['id'],'link_field_name':_0x9207c0,'related_ids':[_0x30deee['id']],'name_value_list':[],'delete':0x0})}});}exports[_0x6136('0x4d')]=function(_0x13ca43,_0x3962f8,_0x3f8218,_0x48bb67,_0x63d0ec,_0x28b4f7){var _0x5ebd41,_0x1ae448,_0x582de3,_0x33e872;_0x28b4f7[_0x6136('0x4e')]=intUtil[_0x6136('0x4f')](_0x28b4f7[_0x6136('0x4e')]);_0x28b4f7[_0x6136('0x50')]=intUtil[_0x6136('0x4f')](_0x28b4f7[_0x6136('0x50')]);def[_0x6136('0x51')]=util[_0x6136('0x20')](_0x6136('0x52'),_0x28b4f7[_0x6136('0x4e')]);if(_0x63d0ec&&_0x63d0ec[_0x6136('0x53')]){logger[_0x6136('0x9')]('[QUEUE]',_0x6136('0x54'));_0x3962f8[_0x6136('0x55')]=util[_0x6136('0x20')](_0x6136('0x56'),_0x28b4f7[_0x6136('0x50')],_0x3962f8[_0x6136('0x57')],md5(_0x3962f8[_0x6136('0x57')]));}else{_0x3962f8[_0x6136('0x55')]='';}return getConnection(_0x28b4f7)[_0x6136('0x26')](function(_0x30b646){_0x33e872=_0x30b646;return getUser(_0x28b4f7,_0x48bb67[_0x6136('0xb')],_0x33e872);})['then'](function(_0x486634){_0x5ebd41=_0x486634;logger[_0x6136('0x9')](_0x6136('0x58'),_0x5ebd41['id']);return getEndUser(_0x28b4f7,_0x3962f8[_0x6136('0x59')],_0x3962f8[_0x6136('0x5a')],_0x33e872);})[_0x6136('0x26')](function(_0x50ebbb){_0x1ae448=_0x50ebbb;logger[_0x6136('0x9')]('The\x20Enduser\x20ID\x20is:',_0x1ae448['id']);return getTicket(_0x28b4f7,_0x5ebd41,_0x1ae448,_0x3f8218,_0x3962f8,_0x3f8218[_0x6136('0x5b')],_0x33e872,_0x6136('0x5c'));})['then'](function(_0x1bb1bb){_0x582de3=_0x1bb1bb;logger[_0x6136('0x9')]('Ticket\x20created!');logger['info'](_0x6136('0x5d'),_0x582de3['id']);return setRelationship(_0x33e872,_0x5ebd41,_0x582de3,_0x6136('0x5e'));})[_0x6136('0x26')](function(){return setRelationship(_0x33e872,_0x1ae448,_0x582de3,'contacts');})['then'](function(){return getServerInfo(_0x33e872);})[_0x6136('0x26')](function(_0x55aef1){var _0x271542=parseInt(_0x55aef1['version'][_0x6136('0x5f')](0x0));var _0x8fd7d=util[_0x6136('0x20')](_0x6136('0x60'),_0x28b4f7[_0x6136('0x4e')],_0x582de3['id']);if(_0x271542>0x6){_0x8fd7d=util['format'](_0x6136('0x61'),_0x28b4f7['remoteUri'],_0x582de3['id']);}logger['info'](_0x6136('0x62'),_0x6136('0x63'));emit(util[_0x6136('0x20')]('user:%s',_0x48bb67[_0x6136('0xb')]),_0x6136('0x64'),{'uri':_0x8fd7d});})[_0x6136('0x65')](function(_0x3128f2){logger[_0x6136('0x66')](_0x6136('0x62'),JSON[_0x6136('0x1e')](_0x3128f2));});};exports[_0x6136('0x67')]=function(_0x4612fb,_0x55289c,_0x8e5c47,_0x50e6ee,_0x1b3652,_0x474b92,_0x3300d8){var _0x583986,_0x304f96,_0x2267ec,_0x543507;_0x474b92[_0x6136('0x4e')]=intUtil['stripTrailingSlash'](_0x474b92[_0x6136('0x4e')]);_0x474b92['serverUrl']=intUtil[_0x6136('0x4f')](_0x474b92[_0x6136('0x50')]);def[_0x6136('0x51')]=util[_0x6136('0x20')](_0x6136('0x52'),_0x474b92[_0x6136('0x4e')]);if(_0x3300d8&&_0x3300d8['recordingFormat']&&_0x3300d8[_0x6136('0x68')]!==_0x6136('0x69')){logger['info']('[OUTBOUND]',_0x6136('0x54'));_0x55289c[_0x6136('0x55')]=util['format'](_0x6136('0x56'),_0x474b92[_0x6136('0x50')],_0x55289c[_0x6136('0x57')],md5(_0x55289c['uniqueid']));}return getConnection(_0x474b92)['then'](function(_0x4d007a){_0x543507=_0x4d007a;return getUser(_0x474b92,_0x50e6ee[_0x6136('0xb')],_0x543507);})[_0x6136('0x26')](function(_0x4b5f01){_0x583986=_0x4b5f01;logger[_0x6136('0x9')]('The\x20User\x20ID\x20is:',_0x583986['id']);return getEndUser(_0x474b92,_0x55289c['destcalleridname'],_0x55289c[_0x6136('0x6a')],_0x543507);})[_0x6136('0x26')](function(_0x31a78f){_0x304f96=_0x31a78f;logger[_0x6136('0x9')](_0x6136('0x6b'),_0x304f96['id']);return getTicket(_0x474b92,_0x583986,_0x304f96,_0x8e5c47,_0x55289c,_0x8e5c47['Fields'],_0x543507,_0x6136('0x6c'));})[_0x6136('0x26')](function(_0x25fb2a){_0x2267ec=_0x25fb2a;logger[_0x6136('0x9')]('Ticket\x20created!');logger[_0x6136('0x9')](_0x6136('0x5d'),_0x2267ec['id']);return setRelationship(_0x543507,_0x583986,_0x2267ec,_0x6136('0x5e'));})[_0x6136('0x26')](function(){return setRelationship(_0x543507,_0x304f96,_0x2267ec,_0x6136('0x6d'));})[_0x6136('0x26')](function(){return getServerInfo(_0x543507);})[_0x6136('0x26')](function(_0x4bb8ba){var _0x212868=parseInt(_0x4bb8ba[_0x6136('0x6e')][_0x6136('0x5f')](0x0));var _0x2c7fd9=util[_0x6136('0x20')](_0x6136('0x60'),_0x474b92[_0x6136('0x4e')],_0x2267ec['id']);if(_0x212868>0x6){_0x2c7fd9=util[_0x6136('0x20')](_0x6136('0x61'),_0x474b92[_0x6136('0x4e')],_0x2267ec['id']);}logger[_0x6136('0x9')]('[OUTBOUND]',_0x6136('0x63'));emit(util[_0x6136('0x20')](_0x6136('0x6f'),_0x50e6ee[_0x6136('0xb')]),_0x6136('0x64'),{'uri':_0x2c7fd9});})[_0x6136('0x65')](function(_0x1152d6){logger[_0x6136('0x66')]('[OUTBOUND]',JSON['stringify'](_0x1152d6));});};exports['unmanaged']=function(_0x38c4dc,_0x27d256,_0x4e4dd3,_0xe26183,_0x5dcd8f,_0x47d148){var _0x45ff94,_0x48c7de,_0x4dfa76,_0x58e98f;_0x47d148[_0x6136('0x4e')]=intUtil[_0x6136('0x4f')](_0x47d148[_0x6136('0x4e')]);_0x47d148[_0x6136('0x50')]=intUtil[_0x6136('0x4f')](_0x47d148[_0x6136('0x50')]);def['uri']=util[_0x6136('0x20')](_0x6136('0x52'),_0x47d148[_0x6136('0x4e')]);if(_0x5dcd8f&&_0x5dcd8f[_0x6136('0x53')]){logger['info']('['+_0x27d256[_0x6136('0x70')][_0x6136('0x71')]()+']',_0x6136('0x54'));_0x27d256[_0x6136('0x55')]=util['format'](_0x6136('0x56'),_0x47d148[_0x6136('0x50')],_0x27d256[_0x6136('0x57')],md5(_0x27d256['uniqueid']));}else{_0x27d256[_0x6136('0x55')]='';}return getConnection(_0x47d148)[_0x6136('0x26')](function(_0x45ce76){_0x58e98f=_0x45ce76;if(!_[_0x6136('0x72')](_0xe26183)){return getUser(_0x47d148,_0xe26183['name'],_0x58e98f);}else{return getUser(_0x47d148,null,_0x58e98f);}})[_0x6136('0x26')](function(_0x547c0d){_0x45ff94=_0x547c0d;logger[_0x6136('0x9')](_0x6136('0x58'),_0x45ff94['id']);return getEndUser(_0x47d148,_0x27d256[_0x6136('0x59')],_0x27d256[_0x6136('0x5a')],_0x58e98f);})['then'](function(_0xc3e38e){_0x48c7de=_0xc3e38e;logger['info'](_0x6136('0x6b'),_0x48c7de['id']);return getTicket(_0x47d148,_0x45ff94,_0x48c7de,_0x4e4dd3,_0x27d256,_0x4e4dd3[_0x6136('0x5b')],_0x58e98f,'Inbound');})['then'](function(_0x373b1a){_0x4dfa76=_0x373b1a;logger[_0x6136('0x9')](_0x6136('0x73'));logger['info'](_0x6136('0x5d'),_0x4dfa76['id']);return setRelationship(_0x58e98f,_0x45ff94,_0x4dfa76,_0x6136('0x5e'));})['then'](function(){return setRelationship(_0x58e98f,_0x48c7de,_0x4dfa76,'contacts');})['then'](function(){return getServerInfo(_0x58e98f);})[_0x6136('0x65')](function(_0x30f9bf){logger[_0x6136('0x66')]('['+_0x27d256['lastevent'][_0x6136('0x71')]()+']',JSON[_0x6136('0x1e')](_0x30f9bf));});};
\ No newline at end of file
+var _0x1e6b=['apiKey','base64','get_server_info','info','Getting\x20agent\x20with\x20name','Employees','user_name','entry_list','find','name_value_list','value','Agent\x20found!','resolve','user_id','Searching\x20enduser\x20with\x20phone','get_entry_list','contacts.phone_home\x20=\x20\x22%s\x22','phone_home','then','Enduser\x20found!','<unknown>','Caller\x20-\x20%s','Enduser\x20created.','first_name','debug','[HTTP]','map','customField','nameField','toLowerCase','content','string','custom_fields','toString','type','variable','customVariable','Variable','login','username','password','PLAIN','xCALLY\x20Motion\x20integration','sessionID','Account\x20%d\x20is\x20not\x20valid','set_relationship','remoteUri','stripTrailingSlash','serverUrl','uri','monitor_format','Recording\x20is\x20enabled!','%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s','uniqueid','recordingURL','calleridname','The\x20Enduser\x20ID\x20is:','Ticket\x20created!','The\x20Ticket\x20ID\x20is:','users','contacts','version','charAt','%s/index.php?action=ajaxui#ajaxUILoc=index.php%3Fmodule%3DCalls%26action%3DEditView%26record%3D%s','%s/#bwc/index.php?module=Calls&action=EditView&record=%s','[QUEUE]','Displaying\x20ticket\x20to\x20agent\x20in\x20a\x20new\x20tab...','user:%s','trigger:browser:url','catch','error','outbound','%s/service/v4_1/rest.php','recordingFormat','[OUTBOUND]','The\x20User\x20ID\x20is:','destcalleridname','destcalleridnum','unmanaged','lastevent','isNil','Fields','Inbound','toUpperCase','lodash','request-promise','md5','util','ioredis','./util','../../../../config/logger','sugarcrm','defaults','localhost','socket.io-emitter','redis','POST','emit','Creating\x20new\x20ticket...','name','getString','Subjects','assigned_user_id','created_by','description','date_start','toISOString','slice','replace','duration_hours','duration_minutes','parent_id','Contacts','length','forEach','variableName','push','idField','set_entry','JSON','stringify','Calls','format','Basic\x20%s'];(function(_0x5887d7,_0x424837){var _0x3e2ed2=function(_0x261cac){while(--_0x261cac){_0x5887d7['push'](_0x5887d7['shift']());}};_0x3e2ed2(++_0x424837);}(_0x1e6b,0xd0));var _0xb1e6=function(_0x144595,_0x13a043){_0x144595=_0x144595-0x0;var _0x4c8788=_0x1e6b[_0x144595];return _0x4c8788;};'use strict';var _=require(_0xb1e6('0x0'));var rp=require(_0xb1e6('0x1'));var BPromise=require('bluebird');var md5=require(_0xb1e6('0x2'));var util=require(_0xb1e6('0x3'));var Redis=require(_0xb1e6('0x4'));var intUtil=require(_0xb1e6('0x5'));var config=require('../../../../config/environment');var logger=require(_0xb1e6('0x6'))(_0xb1e6('0x7'));config['redis']=_[_0xb1e6('0x8')](config['redis'],{'host':_0xb1e6('0x9'),'port':0x18eb});var io=require(_0xb1e6('0xa'))(new Redis(config[_0xb1e6('0xb')]));var def={'method':_0xb1e6('0xc'),'json':!![]};function emit(_0x4e142c,_0x30d003,_0x37cc31){io['to'](_0x4e142c)[_0xb1e6('0xd')](_0x30d003,_0x37cc31);}function getTicket(_0x579b96,_0x3af97c,_0x461983,_0x31b6f5,_0x3a4229,_0x78377f,_0x39b9d4,_0x564941){logger['info'](_0xb1e6('0xe'));var _0x15210e=new Date();var _0x55d3c3=[{'name':_0xb1e6('0xf'),'value':intUtil[_0xb1e6('0x10')](_0x31b6f5[_0xb1e6('0x11')],_0x3a4229,'\x20')},{'name':_0xb1e6('0x12'),'value':_0x3af97c['id']},{'name':_0xb1e6('0x13'),'value':_0x3af97c['id']},{'name':_0xb1e6('0x14'),'value':intUtil[_0xb1e6('0x10')](_0x31b6f5['Descriptions'],_0x3a4229,'\x0a')},{'name':_0xb1e6('0x15'),'value':_0x15210e[_0xb1e6('0x16')]()[_0xb1e6('0x17')](0x0,0x13)[_0xb1e6('0x18')]('T','\x20')},{'name':_0xb1e6('0x19'),'value':'0'},{'name':_0xb1e6('0x1a'),'value':'15'},{'name':_0xb1e6('0x1b'),'value':_0x461983['id']},{'name':'parent_type','value':_0xb1e6('0x1c')},{'name':'parent_name','value':_0x461983[_0xb1e6('0xf')]},{'name':'direction','value':_0x564941}];if(_0x78377f[_0xb1e6('0x1d')]){_[_0xb1e6('0x1e')](_0x78377f,function(_0x3c701f){if(_0x3a4229[_0x3c701f[_0xb1e6('0x1f')]]){_0x55d3c3[_0xb1e6('0x20')]({'name':_0x3c701f[_0xb1e6('0x21')],'value':_0x3a4229[_0x3c701f[_0xb1e6('0x1f')]]});}});}return request({'form':{'method':_0xb1e6('0x22'),'input_type':_0xb1e6('0x23'),'response_type':'JSON','rest_data':JSON[_0xb1e6('0x24')]({'session':_0x39b9d4['id'],'module_name':_0xb1e6('0x25'),'name_value_list':_0x55d3c3})}});}function getAuth(_0x4c7115){return util[_0xb1e6('0x26')](_0xb1e6('0x27'),new Buffer(_0x4c7115[_0xb1e6('0x28')]+':X')['toString'](_0xb1e6('0x29')));}function getServerInfo(_0x5727ea){return request({'form':{'method':_0xb1e6('0x2a'),'input_type':_0xb1e6('0x23'),'response_type':_0xb1e6('0x23'),'rest_data':JSON[_0xb1e6('0x24')]({'session':_0x5727ea['id']})}});}function getUser(_0x3cd067,_0x244610,_0x5854f6){if(!_['isNil'](_0x244610)){logger[_0xb1e6('0x2b')](_0xb1e6('0x2c'),_0x244610);return request({'form':{'method':'get_entry_list','input_type':_0xb1e6('0x23'),'response_type':_0xb1e6('0x23'),'rest_data':JSON[_0xb1e6('0x24')]({'session':_0x5854f6['id'],'module_name':_0xb1e6('0x2d'),'query':util['format']('INSTR\x20(\x20users.user_name,\x20\x22%s\x22)\x20>\x200',_0x244610),'order_by':'','offset':'0','select_fields':['id',_0xb1e6('0xf'),_0xb1e6('0x2e')],'link_name_to_fields_array':[],'max_results':-0x1,'deleted':'0'})}})['then'](function(_0x394d80){if(_0x394d80[_0xb1e6('0x2f')][_0xb1e6('0x1d')]){var _0x3f84e5=_[_0xb1e6('0x30')](_0x394d80[_0xb1e6('0x2f')],function(_0x4bdf0b){return _0x4bdf0b[_0xb1e6('0x31')][_0xb1e6('0x2e')][_0xb1e6('0x32')]===_0x244610;});if(_0x3f84e5){logger['info'](_0xb1e6('0x33'));return BPromise[_0xb1e6('0x34')]({'id':_0x3f84e5[_0xb1e6('0x31')]['id'][_0xb1e6('0x32')],'name':_0x3f84e5[_0xb1e6('0x31')][_0xb1e6('0xf')][_0xb1e6('0x32')]});}}logger[_0xb1e6('0x2b')]('Agent\x20not\x20found,\x20using\x20the\x20admin\x20account!');return BPromise['resolve']({'id':_0x5854f6[_0xb1e6('0x31')][_0xb1e6('0x35')][_0xb1e6('0x32')],'name':_0x5854f6[_0xb1e6('0x31')][_0xb1e6('0x2e')][_0xb1e6('0x32')]});});}else{logger[_0xb1e6('0x2b')]('Agent\x20not\x20available,\x20using\x20the\x20admin\x20account!');return BPromise['resolve']({'id':_0x5854f6[_0xb1e6('0x31')]['user_id'][_0xb1e6('0x32')],'name':_0x5854f6['name_value_list']['user_name'][_0xb1e6('0x32')]});}}function getEndUser(_0xbaa75,_0x421255,_0xd3dd4a,_0x5e1ee0){logger[_0xb1e6('0x2b')](_0xb1e6('0x36'),_0xd3dd4a);return request({'form':{'method':_0xb1e6('0x37'),'input_type':_0xb1e6('0x23'),'response_type':_0xb1e6('0x23'),'rest_data':JSON['stringify']({'session':_0x5e1ee0['id'],'module_name':_0xb1e6('0x1c'),'query':util[_0xb1e6('0x26')](_0xb1e6('0x38'),_0xd3dd4a),'order_by':'','offset':'0','select_fields':['id',_0xb1e6('0xf'),_0xb1e6('0x39')],'link_name_to_fields_array':[],'max_results':-0x1,'deleted':'0'})}})[_0xb1e6('0x3a')](function(_0x4e1a44){if(_0x4e1a44[_0xb1e6('0x2f')][_0xb1e6('0x1d')]){var _0x4cd86e=_['find'](_0x4e1a44['entry_list'],function(_0x139a46){return _0x139a46[_0xb1e6('0x31')][_0xb1e6('0x39')]['value']===_0xd3dd4a;});if(_0x4cd86e){logger[_0xb1e6('0x2b')](_0xb1e6('0x3b'));return BPromise[_0xb1e6('0x34')]({'id':_0x4cd86e[_0xb1e6('0x31')]['id'][_0xb1e6('0x32')],'name':_0x4cd86e[_0xb1e6('0x31')]['name'][_0xb1e6('0x32')],'phone':_0x4cd86e[_0xb1e6('0x31')]['phone_home'][_0xb1e6('0x32')]});}}else{logger[_0xb1e6('0x2b')]('Enduser\x20not\x20found,\x20creating\x20a\x20new\x20enduser!');return request({'form':{'method':_0xb1e6('0x22'),'input_type':_0xb1e6('0x23'),'response_type':_0xb1e6('0x23'),'rest_data':JSON['stringify']({'session':_0x5e1ee0['id'],'module_name':_0xb1e6('0x1c'),'name_value_list':[{'name':'first_name','value':_0x421255!==_0xb1e6('0x3c')?_0x421255:util[_0xb1e6('0x26')](_0xb1e6('0x3d'),_0xd3dd4a)},{'name':'phone_home','value':_0xd3dd4a}]})}})[_0xb1e6('0x3a')](function(_0x1b1b96){logger[_0xb1e6('0x2b')](_0xb1e6('0x3e'));return BPromise[_0xb1e6('0x34')]({'id':_0x1b1b96['id'],'name':_0x1b1b96[_0xb1e6('0x2f')][_0xb1e6('0x3f')][_0xb1e6('0x32')],'phone':_0x1b1b96['entry_list'][_0xb1e6('0x39')][_0xb1e6('0x32')]});});}});}function request(_0x573652){logger[_0xb1e6('0x40')](_0xb1e6('0x41'),JSON[_0xb1e6('0x24')](_0x573652));return rp(_['merge'](def,_0x573652));}function getTags(_0x2d02d6,_0x29e247){var _0x40f45a=[];if(_0x2d02d6&&_0x2d02d6[_0xb1e6('0x1d')]>0x0){_0x40f45a=_[_0xb1e6('0x42')](_0x2d02d6,_0x29e247);}return _0x40f45a;}function getCustomFields(_0x11fc4d,_0x1b5c8a){var _0xfe6bf9=[];var _0x5eb0bc={'custom_fields':[]};if(_0x11fc4d['length']>0x0){_['forEach'](_0x11fc4d,function(_0xc3d23){if(_0xc3d23['type']==='string'&&_0xc3d23['nameField']&&!_0xc3d23[_0xb1e6('0x43')]){_0x5eb0bc[_0xc3d23[_0xb1e6('0x44')][_0xb1e6('0x45')]()]=_0xc3d23[_0xb1e6('0x46')]['toString']();}else if(_0xc3d23['type']===_0xb1e6('0x47')&&_0xc3d23[_0xb1e6('0x21')]&&_0xc3d23[_0xb1e6('0x43')]){_0x5eb0bc[_0xb1e6('0x48')][_0xb1e6('0x20')]({'id':_0xc3d23[_0xb1e6('0x21')],'value':_0xc3d23['content'][_0xb1e6('0x49')]()});}else if(_0xc3d23[_0xb1e6('0x4a')]===_0xb1e6('0x4b')&&_0xc3d23[_0xb1e6('0x1f')]&&_0xc3d23[_0xb1e6('0x21')]&&_0xc3d23[_0xb1e6('0x43')]){_0x1b5c8a[_0xc3d23[_0xb1e6('0x1f')]]&&_0x5eb0bc[_0xb1e6('0x48')]['push']({'id':_0xc3d23[_0xb1e6('0x21')],'value':_0x1b5c8a[_0xc3d23[_0xb1e6('0x1f')]][_0xb1e6('0x49')]()});}else if(_0xc3d23['type']===_0xb1e6('0x4c')&&_0xc3d23['Variable']&&_0xc3d23[_0xb1e6('0x4d')][_0xb1e6('0xf')]&&_0xc3d23[_0xb1e6('0x21')]&&_0xc3d23['customField']){_0x1b5c8a[_0xc3d23[_0xb1e6('0x4d')][_0xb1e6('0xf')][_0xb1e6('0x45')]()]&&_0x5eb0bc[_0xb1e6('0x48')][_0xb1e6('0x20')]({'id':_0xc3d23['idField'],'value':_0x1b5c8a[_0xc3d23['Variable'][_0xb1e6('0xf')][_0xb1e6('0x45')]()][_0xb1e6('0x49')]()});}});}return _0x5eb0bc;}function getConnection(_0x3fdb51){return request({'method':_0xb1e6('0xc'),'form':{'method':_0xb1e6('0x4e'),'input_type':_0xb1e6('0x23'),'response_type':'JSON','rest_data':JSON['stringify']({'user_auth':{'user_name':_0x3fdb51[_0xb1e6('0x4f')],'password':_0x3fdb51[_0xb1e6('0x50')],'encryption':_0xb1e6('0x51')},'application':_0xb1e6('0x52')})}})[_0xb1e6('0x3a')](function(_0x14505e){var _0x24bb7f=_0x14505e;if(_0x24bb7f['id']){def[_0xb1e6('0x53')]=_0x24bb7f['id'];return BPromise[_0xb1e6('0x34')](_0x24bb7f);}else{throw new Error(util[_0xb1e6('0x26')](_0xb1e6('0x54'),_0x3fdb51['id']));}});}function setRelationship(_0x383a91,_0x533e5b,_0x56cb54,_0x5a1e69){return request({'form':{'method':_0xb1e6('0x55'),'input_type':'JSON','response_type':'JSON','rest_data':JSON['stringify']({'session':_0x383a91['id'],'module_name':_0xb1e6('0x25'),'module_id':_0x56cb54['id'],'link_field_name':_0x5a1e69,'related_ids':[_0x533e5b['id']],'name_value_list':[],'delete':0x0})}});}exports['queue']=function(_0x549957,_0x554e82,_0x26786b,_0x44e206,_0x1b1323,_0x416ab1){var _0xc9260c,_0x521010,_0x5087b5,_0x348307;_0x416ab1[_0xb1e6('0x56')]=intUtil['stripTrailingSlash'](_0x416ab1[_0xb1e6('0x56')]);_0x416ab1['serverUrl']=intUtil[_0xb1e6('0x57')](_0x416ab1[_0xb1e6('0x58')]);def[_0xb1e6('0x59')]=util[_0xb1e6('0x26')]('%s/service/v4_1/rest.php',_0x416ab1[_0xb1e6('0x56')]);if(_0x1b1323&&_0x1b1323[_0xb1e6('0x5a')]){logger[_0xb1e6('0x2b')]('[QUEUE]',_0xb1e6('0x5b'));_0x554e82['recordingURL']=util[_0xb1e6('0x26')](_0xb1e6('0x5c'),_0x416ab1['serverUrl'],_0x554e82[_0xb1e6('0x5d')],md5(_0x554e82['uniqueid']));}else{_0x554e82[_0xb1e6('0x5e')]='';}return getConnection(_0x416ab1)[_0xb1e6('0x3a')](function(_0x2950df){_0x348307=_0x2950df;return getUser(_0x416ab1,_0x44e206[_0xb1e6('0xf')],_0x348307);})[_0xb1e6('0x3a')](function(_0x205d93){_0xc9260c=_0x205d93;logger['info']('The\x20User\x20ID\x20is:',_0xc9260c['id']);return getEndUser(_0x416ab1,_0x554e82[_0xb1e6('0x5f')],_0x554e82['calleridnum'],_0x348307);})[_0xb1e6('0x3a')](function(_0x5ea8a6){_0x521010=_0x5ea8a6;logger['info'](_0xb1e6('0x60'),_0x521010['id']);return getTicket(_0x416ab1,_0xc9260c,_0x521010,_0x26786b,_0x554e82,_0x26786b['Fields'],_0x348307,'Inbound');})['then'](function(_0x257daa){_0x5087b5=_0x257daa;logger['info'](_0xb1e6('0x61'));logger[_0xb1e6('0x2b')](_0xb1e6('0x62'),_0x5087b5['id']);return setRelationship(_0x348307,_0xc9260c,_0x5087b5,_0xb1e6('0x63'));})[_0xb1e6('0x3a')](function(){return setRelationship(_0x348307,_0x521010,_0x5087b5,_0xb1e6('0x64'));})[_0xb1e6('0x3a')](function(){return getServerInfo(_0x348307);})[_0xb1e6('0x3a')](function(_0x43fa76){var _0x427c56=parseInt(_0x43fa76[_0xb1e6('0x65')][_0xb1e6('0x66')](0x0));var _0x323b55=util[_0xb1e6('0x26')](_0xb1e6('0x67'),_0x416ab1[_0xb1e6('0x56')],_0x5087b5['id']);if(_0x427c56>0x6){_0x323b55=util[_0xb1e6('0x26')](_0xb1e6('0x68'),_0x416ab1[_0xb1e6('0x56')],_0x5087b5['id']);}logger[_0xb1e6('0x2b')](_0xb1e6('0x69'),_0xb1e6('0x6a'));emit(util['format'](_0xb1e6('0x6b'),_0x44e206[_0xb1e6('0xf')]),_0xb1e6('0x6c'),{'uri':_0x323b55});})[_0xb1e6('0x6d')](function(_0x31f16a){logger[_0xb1e6('0x6e')](_0xb1e6('0x69'),JSON['stringify'](_0x31f16a));});};exports[_0xb1e6('0x6f')]=function(_0x505957,_0x17abd4,_0x13246a,_0x1a8376,_0x3c1033,_0x588441,_0x4715c0){var _0x42a71c,_0x3c82ac,_0x418760,_0x4003fa;_0x588441[_0xb1e6('0x56')]=intUtil[_0xb1e6('0x57')](_0x588441['remoteUri']);_0x588441[_0xb1e6('0x58')]=intUtil[_0xb1e6('0x57')](_0x588441[_0xb1e6('0x58')]);def[_0xb1e6('0x59')]=util[_0xb1e6('0x26')](_0xb1e6('0x70'),_0x588441[_0xb1e6('0x56')]);if(_0x4715c0&&_0x4715c0[_0xb1e6('0x71')]&&_0x4715c0[_0xb1e6('0x71')]!=='none'){logger[_0xb1e6('0x2b')](_0xb1e6('0x72'),'Recording\x20is\x20enabled!');_0x17abd4[_0xb1e6('0x5e')]=util['format'](_0xb1e6('0x5c'),_0x588441['serverUrl'],_0x17abd4[_0xb1e6('0x5d')],md5(_0x17abd4[_0xb1e6('0x5d')]));}return getConnection(_0x588441)[_0xb1e6('0x3a')](function(_0x487e51){_0x4003fa=_0x487e51;return getUser(_0x588441,_0x1a8376['name'],_0x4003fa);})['then'](function(_0x3b9861){_0x42a71c=_0x3b9861;logger[_0xb1e6('0x2b')](_0xb1e6('0x73'),_0x42a71c['id']);return getEndUser(_0x588441,_0x17abd4[_0xb1e6('0x74')],_0x17abd4[_0xb1e6('0x75')],_0x4003fa);})[_0xb1e6('0x3a')](function(_0x53eb2a){_0x3c82ac=_0x53eb2a;logger[_0xb1e6('0x2b')](_0xb1e6('0x60'),_0x3c82ac['id']);return getTicket(_0x588441,_0x42a71c,_0x3c82ac,_0x13246a,_0x17abd4,_0x13246a['Fields'],_0x4003fa,'Outbound');})[_0xb1e6('0x3a')](function(_0x4e2545){_0x418760=_0x4e2545;logger[_0xb1e6('0x2b')]('Ticket\x20created!');logger['info'](_0xb1e6('0x62'),_0x418760['id']);return setRelationship(_0x4003fa,_0x42a71c,_0x418760,_0xb1e6('0x63'));})['then'](function(){return setRelationship(_0x4003fa,_0x3c82ac,_0x418760,_0xb1e6('0x64'));})['then'](function(){return getServerInfo(_0x4003fa);})['then'](function(_0x476125){var _0x24b0ac=parseInt(_0x476125[_0xb1e6('0x65')][_0xb1e6('0x66')](0x0));var _0x33f330=util['format'](_0xb1e6('0x67'),_0x588441[_0xb1e6('0x56')],_0x418760['id']);if(_0x24b0ac>0x6){_0x33f330=util['format']('%s/#bwc/index.php?module=Calls&action=EditView&record=%s',_0x588441['remoteUri'],_0x418760['id']);}logger[_0xb1e6('0x2b')](_0xb1e6('0x72'),_0xb1e6('0x6a'));emit(util['format'](_0xb1e6('0x6b'),_0x1a8376[_0xb1e6('0xf')]),_0xb1e6('0x6c'),{'uri':_0x33f330});})[_0xb1e6('0x6d')](function(_0x3a217b){logger['error'](_0xb1e6('0x72'),JSON[_0xb1e6('0x24')](_0x3a217b));});};exports[_0xb1e6('0x76')]=function(_0x4feee2,_0x4e5e16,_0x10ded0,_0x37143c,_0x55480,_0x40a417){var _0x273b73,_0x4454b9,_0x52218b,_0x4a8007;_0x40a417[_0xb1e6('0x56')]=intUtil[_0xb1e6('0x57')](_0x40a417[_0xb1e6('0x56')]);_0x40a417[_0xb1e6('0x58')]=intUtil[_0xb1e6('0x57')](_0x40a417['serverUrl']);def[_0xb1e6('0x59')]=util['format'](_0xb1e6('0x70'),_0x40a417[_0xb1e6('0x56')]);if(_0x55480&&_0x55480['monitor_format']){logger[_0xb1e6('0x2b')]('['+_0x4e5e16[_0xb1e6('0x77')]['toUpperCase']()+']',_0xb1e6('0x5b'));_0x4e5e16[_0xb1e6('0x5e')]=util[_0xb1e6('0x26')](_0xb1e6('0x5c'),_0x40a417['serverUrl'],_0x4e5e16[_0xb1e6('0x5d')],md5(_0x4e5e16[_0xb1e6('0x5d')]));}else{_0x4e5e16['recordingURL']='';}return getConnection(_0x40a417)['then'](function(_0x15c8d5){_0x4a8007=_0x15c8d5;if(!_[_0xb1e6('0x78')](_0x37143c)){return getUser(_0x40a417,_0x37143c[_0xb1e6('0xf')],_0x4a8007);}else{return getUser(_0x40a417,null,_0x4a8007);}})[_0xb1e6('0x3a')](function(_0x1d0d67){_0x273b73=_0x1d0d67;logger[_0xb1e6('0x2b')](_0xb1e6('0x73'),_0x273b73['id']);return getEndUser(_0x40a417,_0x4e5e16[_0xb1e6('0x5f')],_0x4e5e16['calleridnum'],_0x4a8007);})['then'](function(_0x554280){_0x4454b9=_0x554280;logger['info'](_0xb1e6('0x60'),_0x4454b9['id']);return getTicket(_0x40a417,_0x273b73,_0x4454b9,_0x10ded0,_0x4e5e16,_0x10ded0[_0xb1e6('0x79')],_0x4a8007,_0xb1e6('0x7a'));})[_0xb1e6('0x3a')](function(_0x89b337){_0x52218b=_0x89b337;logger['info'](_0xb1e6('0x61'));logger[_0xb1e6('0x2b')]('The\x20Ticket\x20ID\x20is:',_0x52218b['id']);return setRelationship(_0x4a8007,_0x273b73,_0x52218b,_0xb1e6('0x63'));})[_0xb1e6('0x3a')](function(){return setRelationship(_0x4a8007,_0x4454b9,_0x52218b,'contacts');})[_0xb1e6('0x3a')](function(){return getServerInfo(_0x4a8007);})[_0xb1e6('0x6d')](function(_0x28bba5){logger[_0xb1e6('0x6e')]('['+_0x4e5e16[_0xb1e6('0x77')][_0xb1e6('0x7b')]()+']',JSON[_0xb1e6('0x24')](_0x28bba5));});};
\ No newline at end of file