Built motion from commit 85328c08.|2.5.50
[motion2.git] / server / services / ami / trigger / integration / sugarcrm.js
index 1ce869c..a5f7ed4 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x173d=['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','catch','outbound','recordingFormat','none','[OUTBOUND]','destcalleridname','Outbound','users','trigger:browser:url','error','lastevent','toUpperCase','calleridnum','Inbound','request-promise','util','./util','../../../../config/environment','../../../../config/logger','sugarcrm','redis','localhost','socket.io-emitter','POST','info','Creating\x20new\x20ticket...','name','getString','Subjects','assigned_user_id','created_by','description','Descriptions','toISOString','slice','duration_hours','duration_minutes','parent_id','parent_type','direction','length','variableName','push','idField','JSON','stringify','Calls','Basic\x20%s','apiKey','base64','isNil','Getting\x20agent\x20with\x20name','get_entry_list','format','INSTR\x20(\x20users.user_name,\x20\x22%s\x22)\x20>\x200','user_name','then','entry_list','value','Agent\x20found!','resolve','name_value_list','user_id','Agent\x20not\x20available,\x20using\x20the\x20admin\x20account!','Searching\x20enduser\x20with\x20phone','Contacts','phone_home','find','Enduser\x20found!','Enduser\x20not\x20found,\x20creating\x20a\x20new\x20enduser!','set_entry','first_name','Enduser\x20created.','debug','[HTTP]','map','forEach','type','nameField','customField','toLowerCase','content','toString','string','variable','custom_fields','customVariable','Variable','login','username','password','PLAIN','xCALLY\x20Motion\x20integration','sessionID','Account\x20%d\x20is\x20not\x20valid','set_relationship','queue','remoteUri','stripTrailingSlash','serverUrl','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','The\x20Enduser\x20ID\x20is:','Fields','Ticket\x20created!','The\x20Ticket\x20ID\x20is:'];(function(_0x96f5c0,_0x18261f){var _0x38152f=function(_0xb3ae44){while(--_0xb3ae44){_0x96f5c0['push'](_0x96f5c0['shift']());}};_0x38152f(++_0x18261f);}(_0x173d,0x108));var _0xd173=function(_0xadbed8,_0xe4dea5){_0xadbed8=_0xadbed8-0x0;var _0x515b88=_0x173d[_0xadbed8];return _0x515b88;};'use strict';var _=require('lodash');var rp=require(_0xd173('0x0'));var BPromise=require('bluebird');var md5=require('md5');var util=require(_0xd173('0x1'));var Redis=require('ioredis');var intUtil=require(_0xd173('0x2'));var config=require(_0xd173('0x3'));var logger=require(_0xd173('0x4'))(_0xd173('0x5'));config[_0xd173('0x6')]=_['defaults'](config[_0xd173('0x6')],{'host':_0xd173('0x7'),'port':0x18eb});var io=require(_0xd173('0x8'))(new Redis(config['redis']));var def={'method':_0xd173('0x9'),'json':!![]};function emit(_0x5229ad,_0x3a1529,_0x519963){io['to'](_0x5229ad)['emit'](_0x3a1529,_0x519963);}function getTicket(_0x2e5ecc,_0x40aece,_0x4f37ea,_0x2ac519,_0x1e1bd5,_0x4b0ac9,_0x3405f3,_0xfea5c){logger[_0xd173('0xa')](_0xd173('0xb'));var _0x1d1782=new Date();var _0x2f0e8a=[{'name':_0xd173('0xc'),'value':intUtil[_0xd173('0xd')](_0x2ac519[_0xd173('0xe')],_0x1e1bd5,'\x20')},{'name':_0xd173('0xf'),'value':_0x40aece['id']},{'name':_0xd173('0x10'),'value':_0x40aece['id']},{'name':_0xd173('0x11'),'value':intUtil['getString'](_0x2ac519[_0xd173('0x12')],_0x1e1bd5,'\x0a')},{'name':'date_start','value':_0x1d1782[_0xd173('0x13')]()[_0xd173('0x14')](0x0,0x13)['replace']('T','\x20')},{'name':_0xd173('0x15'),'value':'0'},{'name':_0xd173('0x16'),'value':'15'},{'name':_0xd173('0x17'),'value':_0x4f37ea['id']},{'name':_0xd173('0x18'),'value':'Contacts'},{'name':'parent_name','value':_0x4f37ea[_0xd173('0xc')]},{'name':_0xd173('0x19'),'value':_0xfea5c}];if(_0x4b0ac9[_0xd173('0x1a')]){_['forEach'](_0x4b0ac9,function(_0x3d76b6){if(_0x1e1bd5[_0x3d76b6[_0xd173('0x1b')]]){_0x2f0e8a[_0xd173('0x1c')]({'name':_0x3d76b6[_0xd173('0x1d')],'value':_0x1e1bd5[_0x3d76b6['variableName']]});}});}return request({'form':{'method':'set_entry','input_type':_0xd173('0x1e'),'response_type':_0xd173('0x1e'),'rest_data':JSON[_0xd173('0x1f')]({'session':_0x3405f3['id'],'module_name':_0xd173('0x20'),'name_value_list':_0x2f0e8a})}});}function getAuth(_0x58e9ff){return util['format'](_0xd173('0x21'),new Buffer(_0x58e9ff[_0xd173('0x22')]+':X')['toString'](_0xd173('0x23')));}function getServerInfo(_0x3b30f7){return request({'form':{'method':'get_server_info','input_type':_0xd173('0x1e'),'response_type':_0xd173('0x1e'),'rest_data':JSON['stringify']({'session':_0x3b30f7['id']})}});}function getUser(_0xc23357,_0x115975,_0x564127){if(!_[_0xd173('0x24')](_0x115975)){logger[_0xd173('0xa')](_0xd173('0x25'),_0x115975);return request({'form':{'method':_0xd173('0x26'),'input_type':_0xd173('0x1e'),'response_type':_0xd173('0x1e'),'rest_data':JSON['stringify']({'session':_0x564127['id'],'module_name':'Employees','query':util[_0xd173('0x27')](_0xd173('0x28'),_0x115975),'order_by':'','offset':'0','select_fields':['id',_0xd173('0xc'),_0xd173('0x29')],'link_name_to_fields_array':[],'max_results':-0x1,'deleted':'0'})}})[_0xd173('0x2a')](function(_0x378a07){if(_0x378a07[_0xd173('0x2b')][_0xd173('0x1a')]){var _0x4fa088=_['find'](_0x378a07[_0xd173('0x2b')],function(_0x15035c){return _0x15035c['name_value_list']['user_name'][_0xd173('0x2c')]===_0x115975;});if(_0x4fa088){logger[_0xd173('0xa')](_0xd173('0x2d'));return BPromise[_0xd173('0x2e')]({'id':_0x4fa088[_0xd173('0x2f')]['id'][_0xd173('0x2c')],'name':_0x4fa088['name_value_list']['name'][_0xd173('0x2c')]});}}logger[_0xd173('0xa')]('Agent\x20not\x20found,\x20using\x20the\x20admin\x20account!');return BPromise[_0xd173('0x2e')]({'id':_0x564127[_0xd173('0x2f')][_0xd173('0x30')][_0xd173('0x2c')],'name':_0x564127[_0xd173('0x2f')]['user_name'][_0xd173('0x2c')]});});}else{logger['info'](_0xd173('0x31'));return BPromise[_0xd173('0x2e')]({'id':_0x564127['name_value_list'][_0xd173('0x30')][_0xd173('0x2c')],'name':_0x564127[_0xd173('0x2f')][_0xd173('0x29')][_0xd173('0x2c')]});}}function getEndUser(_0x5677f0,_0x6d2eb7,_0x1bdadd,_0x130937){logger[_0xd173('0xa')](_0xd173('0x32'),_0x1bdadd);return request({'form':{'method':_0xd173('0x26'),'input_type':'JSON','response_type':_0xd173('0x1e'),'rest_data':JSON[_0xd173('0x1f')]({'session':_0x130937['id'],'module_name':_0xd173('0x33'),'query':util['format']('contacts.phone_home\x20=\x20\x22%s\x22',_0x1bdadd),'order_by':'','offset':'0','select_fields':['id',_0xd173('0xc'),_0xd173('0x34')],'link_name_to_fields_array':[],'max_results':-0x1,'deleted':'0'})}})[_0xd173('0x2a')](function(_0x58beab){if(_0x58beab[_0xd173('0x2b')][_0xd173('0x1a')]){var _0x880b9f=_[_0xd173('0x35')](_0x58beab[_0xd173('0x2b')],function(_0x4fbd5c){return _0x4fbd5c[_0xd173('0x2f')]['phone_home'][_0xd173('0x2c')]===_0x1bdadd;});if(_0x880b9f){logger[_0xd173('0xa')](_0xd173('0x36'));return BPromise['resolve']({'id':_0x880b9f['name_value_list']['id'][_0xd173('0x2c')],'name':_0x880b9f['name_value_list'][_0xd173('0xc')][_0xd173('0x2c')],'phone':_0x880b9f['name_value_list']['phone_home'][_0xd173('0x2c')]});}}else{logger[_0xd173('0xa')](_0xd173('0x37'));return request({'form':{'method':_0xd173('0x38'),'input_type':_0xd173('0x1e'),'response_type':_0xd173('0x1e'),'rest_data':JSON[_0xd173('0x1f')]({'session':_0x130937['id'],'module_name':_0xd173('0x33'),'name_value_list':[{'name':_0xd173('0x39'),'value':_0x6d2eb7!=='<unknown>'?_0x6d2eb7:util[_0xd173('0x27')]('Caller\x20-\x20%s',_0x1bdadd)},{'name':_0xd173('0x34'),'value':_0x1bdadd}]})}})[_0xd173('0x2a')](function(_0x3bb090){logger[_0xd173('0xa')](_0xd173('0x3a'));return BPromise['resolve']({'id':_0x3bb090['id'],'name':_0x3bb090['entry_list']['first_name'][_0xd173('0x2c')],'phone':_0x3bb090[_0xd173('0x2b')][_0xd173('0x34')][_0xd173('0x2c')]});});}});}function request(_0x38907d){logger[_0xd173('0x3b')](_0xd173('0x3c'),JSON[_0xd173('0x1f')](_0x38907d));return rp(_['merge'](def,_0x38907d));}function getTags(_0x47fe20,_0x2716cb){var _0x240c47=[];if(_0x47fe20&&_0x47fe20[_0xd173('0x1a')]>0x0){_0x240c47=_[_0xd173('0x3d')](_0x47fe20,_0x2716cb);}return _0x240c47;}function getCustomFields(_0x359219,_0x45675d){var _0x2de61d=[];var _0x140093={'custom_fields':[]};if(_0x359219['length']>0x0){_[_0xd173('0x3e')](_0x359219,function(_0x58163a){if(_0x58163a[_0xd173('0x3f')]==='string'&&_0x58163a[_0xd173('0x40')]&&!_0x58163a[_0xd173('0x41')]){_0x140093[_0x58163a['nameField'][_0xd173('0x42')]()]=_0x58163a[_0xd173('0x43')][_0xd173('0x44')]();}else if(_0x58163a[_0xd173('0x3f')]===_0xd173('0x45')&&_0x58163a[_0xd173('0x1d')]&&_0x58163a[_0xd173('0x41')]){_0x140093['custom_fields']['push']({'id':_0x58163a[_0xd173('0x1d')],'value':_0x58163a[_0xd173('0x43')]['toString']()});}else if(_0x58163a[_0xd173('0x3f')]===_0xd173('0x46')&&_0x58163a[_0xd173('0x1b')]&&_0x58163a[_0xd173('0x1d')]&&_0x58163a[_0xd173('0x41')]){_0x45675d[_0x58163a['variableName']]&&_0x140093[_0xd173('0x47')][_0xd173('0x1c')]({'id':_0x58163a[_0xd173('0x1d')],'value':_0x45675d[_0x58163a[_0xd173('0x1b')]][_0xd173('0x44')]()});}else if(_0x58163a['type']===_0xd173('0x48')&&_0x58163a[_0xd173('0x49')]&&_0x58163a['Variable'][_0xd173('0xc')]&&_0x58163a[_0xd173('0x1d')]&&_0x58163a['customField']){_0x45675d[_0x58163a[_0xd173('0x49')][_0xd173('0xc')][_0xd173('0x42')]()]&&_0x140093['custom_fields'][_0xd173('0x1c')]({'id':_0x58163a[_0xd173('0x1d')],'value':_0x45675d[_0x58163a['Variable'][_0xd173('0xc')]['toLowerCase']()][_0xd173('0x44')]()});}});}return _0x140093;}function getConnection(_0x34151e){return request({'method':_0xd173('0x9'),'form':{'method':_0xd173('0x4a'),'input_type':_0xd173('0x1e'),'response_type':_0xd173('0x1e'),'rest_data':JSON[_0xd173('0x1f')]({'user_auth':{'user_name':_0x34151e[_0xd173('0x4b')],'password':_0x34151e[_0xd173('0x4c')],'encryption':_0xd173('0x4d')},'application':_0xd173('0x4e')})}})[_0xd173('0x2a')](function(_0x3ea4e4){var _0x421e84=_0x3ea4e4;if(_0x421e84['id']){def[_0xd173('0x4f')]=_0x421e84['id'];return BPromise[_0xd173('0x2e')](_0x421e84);}else{throw new Error(util[_0xd173('0x27')](_0xd173('0x50'),_0x34151e['id']));}});}function setRelationship(_0x1c5be7,_0x3861a4,_0x401ac5,_0x9a2ebb){return request({'form':{'method':_0xd173('0x51'),'input_type':'JSON','response_type':_0xd173('0x1e'),'rest_data':JSON[_0xd173('0x1f')]({'session':_0x1c5be7['id'],'module_name':'Calls','module_id':_0x401ac5['id'],'link_field_name':_0x9a2ebb,'related_ids':[_0x3861a4['id']],'name_value_list':[],'delete':0x0})}});}exports[_0xd173('0x52')]=function(_0x516fb3,_0x372c75,_0x26558c,_0x180406,_0x35d890,_0x46b1b0){var _0x55d803,_0x1dd16f,_0x58f98c,_0x565b9d;_0x46b1b0[_0xd173('0x53')]=intUtil[_0xd173('0x54')](_0x46b1b0[_0xd173('0x53')]);_0x46b1b0['serverUrl']=intUtil[_0xd173('0x54')](_0x46b1b0[_0xd173('0x55')]);def[_0xd173('0x56')]=util[_0xd173('0x27')](_0xd173('0x57'),_0x46b1b0[_0xd173('0x53')]);if(_0x35d890&&_0x35d890[_0xd173('0x58')]){logger[_0xd173('0xa')]('[QUEUE]',_0xd173('0x59'));_0x372c75[_0xd173('0x5a')]=util[_0xd173('0x27')](_0xd173('0x5b'),_0x46b1b0[_0xd173('0x55')],_0x372c75[_0xd173('0x5c')],md5(_0x372c75[_0xd173('0x5c')]));}else{_0x372c75['recordingURL']='';}return getConnection(_0x46b1b0)[_0xd173('0x2a')](function(_0x382699){_0x565b9d=_0x382699;return getUser(_0x46b1b0,_0x180406[_0xd173('0xc')],_0x565b9d);})[_0xd173('0x2a')](function(_0xc3369f){_0x55d803=_0xc3369f;logger[_0xd173('0xa')](_0xd173('0x5d'),_0x55d803['id']);return getEndUser(_0x46b1b0,_0x372c75[_0xd173('0x5e')],_0x372c75['calleridnum'],_0x565b9d);})[_0xd173('0x2a')](function(_0x49040e){_0x1dd16f=_0x49040e;logger[_0xd173('0xa')](_0xd173('0x5f'),_0x1dd16f['id']);return getTicket(_0x46b1b0,_0x55d803,_0x1dd16f,_0x26558c,_0x372c75,_0x26558c[_0xd173('0x60')],_0x565b9d,'Inbound');})[_0xd173('0x2a')](function(_0x12a244){_0x58f98c=_0x12a244;logger[_0xd173('0xa')](_0xd173('0x61'));logger[_0xd173('0xa')](_0xd173('0x62'),_0x58f98c['id']);return setRelationship(_0x565b9d,_0x55d803,_0x58f98c,'users');})[_0xd173('0x2a')](function(){return setRelationship(_0x565b9d,_0x1dd16f,_0x58f98c,_0xd173('0x63'));})[_0xd173('0x2a')](function(){return getServerInfo(_0x565b9d);})[_0xd173('0x2a')](function(_0x4ad4fe){var _0x2f2a07=parseInt(_0x4ad4fe[_0xd173('0x64')][_0xd173('0x65')](0x0));var _0x41bf3b=util[_0xd173('0x27')](_0xd173('0x66'),_0x46b1b0[_0xd173('0x53')],_0x58f98c['id']);if(_0x2f2a07>0x6){_0x41bf3b=util['format'](_0xd173('0x67'),_0x46b1b0[_0xd173('0x53')],_0x58f98c['id']);}logger[_0xd173('0xa')](_0xd173('0x68'),_0xd173('0x69'));emit(util[_0xd173('0x27')](_0xd173('0x6a'),_0x180406[_0xd173('0xc')]),'trigger:browser:url',{'uri':_0x41bf3b});})[_0xd173('0x6b')](function(_0x5ae3b5){logger['error']('[QUEUE]',JSON[_0xd173('0x1f')](_0x5ae3b5));});};exports[_0xd173('0x6c')]=function(_0x3a37b8,_0x271f6d,_0x5a326e,_0x515012,_0x3b12ae,_0x507b58,_0x3d6111){var _0x393cb8,_0x502d0b,_0x21902b,_0xf70f06;_0x507b58[_0xd173('0x53')]=intUtil[_0xd173('0x54')](_0x507b58[_0xd173('0x53')]);_0x507b58[_0xd173('0x55')]=intUtil[_0xd173('0x54')](_0x507b58[_0xd173('0x55')]);def[_0xd173('0x56')]=util[_0xd173('0x27')](_0xd173('0x57'),_0x507b58[_0xd173('0x53')]);if(_0x3d6111&&_0x3d6111[_0xd173('0x6d')]&&_0x3d6111[_0xd173('0x6d')]!==_0xd173('0x6e')){logger[_0xd173('0xa')](_0xd173('0x6f'),_0xd173('0x59'));_0x271f6d[_0xd173('0x5a')]=util[_0xd173('0x27')](_0xd173('0x5b'),_0x507b58[_0xd173('0x55')],_0x271f6d[_0xd173('0x5c')],md5(_0x271f6d['uniqueid']));}return getConnection(_0x507b58)[_0xd173('0x2a')](function(_0x2e80e9){_0xf70f06=_0x2e80e9;return getUser(_0x507b58,_0x515012[_0xd173('0xc')],_0xf70f06);})[_0xd173('0x2a')](function(_0x544206){_0x393cb8=_0x544206;logger[_0xd173('0xa')](_0xd173('0x5d'),_0x393cb8['id']);return getEndUser(_0x507b58,_0x271f6d[_0xd173('0x70')],_0x271f6d['destcalleridnum'],_0xf70f06);})['then'](function(_0x5e7e74){_0x502d0b=_0x5e7e74;logger[_0xd173('0xa')](_0xd173('0x5f'),_0x502d0b['id']);return getTicket(_0x507b58,_0x393cb8,_0x502d0b,_0x5a326e,_0x271f6d,_0x5a326e[_0xd173('0x60')],_0xf70f06,_0xd173('0x71'));})[_0xd173('0x2a')](function(_0x5c3760){_0x21902b=_0x5c3760;logger[_0xd173('0xa')](_0xd173('0x61'));logger[_0xd173('0xa')](_0xd173('0x62'),_0x21902b['id']);return setRelationship(_0xf70f06,_0x393cb8,_0x21902b,_0xd173('0x72'));})[_0xd173('0x2a')](function(){return setRelationship(_0xf70f06,_0x502d0b,_0x21902b,_0xd173('0x63'));})[_0xd173('0x2a')](function(){return getServerInfo(_0xf70f06);})[_0xd173('0x2a')](function(_0x4129bc){var _0x24eca8=parseInt(_0x4129bc[_0xd173('0x64')]['charAt'](0x0));var _0x9d8f65=util[_0xd173('0x27')](_0xd173('0x66'),_0x507b58[_0xd173('0x53')],_0x21902b['id']);if(_0x24eca8>0x6){_0x9d8f65=util['format'](_0xd173('0x67'),_0x507b58[_0xd173('0x53')],_0x21902b['id']);}logger[_0xd173('0xa')](_0xd173('0x6f'),_0xd173('0x69'));emit(util['format'](_0xd173('0x6a'),_0x515012[_0xd173('0xc')]),_0xd173('0x73'),{'uri':_0x9d8f65});})['catch'](function(_0x486647){logger[_0xd173('0x74')](_0xd173('0x6f'),JSON[_0xd173('0x1f')](_0x486647));});};exports['unmanaged']=function(_0x366ca9,_0x4196d2,_0x1544d2,_0x912e46,_0x33d9c6,_0x4eeb08){var _0x2fa7a6,_0x3b3f89,_0x31de21,_0xa4e543;_0x4eeb08[_0xd173('0x53')]=intUtil[_0xd173('0x54')](_0x4eeb08['remoteUri']);_0x4eeb08[_0xd173('0x55')]=intUtil[_0xd173('0x54')](_0x4eeb08[_0xd173('0x55')]);def[_0xd173('0x56')]=util[_0xd173('0x27')](_0xd173('0x57'),_0x4eeb08['remoteUri']);if(_0x33d9c6&&_0x33d9c6[_0xd173('0x58')]){logger['info']('['+_0x4196d2[_0xd173('0x75')][_0xd173('0x76')]()+']',_0xd173('0x59'));_0x4196d2['recordingURL']=util['format'](_0xd173('0x5b'),_0x4eeb08['serverUrl'],_0x4196d2['uniqueid'],md5(_0x4196d2['uniqueid']));}else{_0x4196d2[_0xd173('0x5a')]='';}return getConnection(_0x4eeb08)[_0xd173('0x2a')](function(_0x3239b3){_0xa4e543=_0x3239b3;if(!_[_0xd173('0x24')](_0x912e46)){return getUser(_0x4eeb08,_0x912e46[_0xd173('0xc')],_0xa4e543);}else{return getUser(_0x4eeb08,null,_0xa4e543);}})['then'](function(_0x368272){_0x2fa7a6=_0x368272;logger['info'](_0xd173('0x5d'),_0x2fa7a6['id']);return getEndUser(_0x4eeb08,_0x4196d2[_0xd173('0x5e')],_0x4196d2[_0xd173('0x77')],_0xa4e543);})[_0xd173('0x2a')](function(_0x403359){_0x3b3f89=_0x403359;logger[_0xd173('0xa')](_0xd173('0x5f'),_0x3b3f89['id']);return getTicket(_0x4eeb08,_0x2fa7a6,_0x3b3f89,_0x1544d2,_0x4196d2,_0x1544d2['Fields'],_0xa4e543,_0xd173('0x78'));})[_0xd173('0x2a')](function(_0x3db73e){_0x31de21=_0x3db73e;logger[_0xd173('0xa')]('Ticket\x20created!');logger['info'](_0xd173('0x62'),_0x31de21['id']);return setRelationship(_0xa4e543,_0x2fa7a6,_0x31de21,_0xd173('0x72'));})['then'](function(){return setRelationship(_0xa4e543,_0x3b3f89,_0x31de21,_0xd173('0x63'));})[_0xd173('0x2a')](function(){return getServerInfo(_0xa4e543);})[_0xd173('0x6b')](function(_0x55587a){logger['error']('['+_0x4196d2[_0xd173('0x75')][_0xd173('0x76')]()+']',JSON[_0xd173('0x1f')](_0x55587a));});};
\ No newline at end of file
+var _0x0b65=['get_server_info','Employees','user_name','then','entry_list','length','name_value_list','value','Agent\x20found!','resolve','user_id','Searching\x20enduser\x20with\x20phone','get_entry_list','Contacts','phone_home','Enduser\x20not\x20found,\x20creating\x20a\x20new\x20enduser!','first_name','<unknown>','Caller\x20-\x20%s','Enduser\x20created.','debug','merge','map','type','string','nameField','customField','toLowerCase','custom_fields','content','toString','variable','push','Variable','login','username','password','xCALLY\x20Motion\x20integration','sessionID','Account\x20%d\x20is\x20not\x20valid','Calls','queue','remoteUri','serverUrl','uri','%s/service/v4_1/rest.php','monitor_format','[QUEUE]','Recording\x20is\x20enabled!','recordingURL','%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s','uniqueid','The\x20User\x20ID\x20is:','calleridname','calleridnum','The\x20Enduser\x20ID\x20is:','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','user:%s','catch','error','outbound','recordingFormat','none','[OUTBOUND]','destcalleridname','destcalleridnum','Fields','Ticket\x20created!','contacts','version','Displaying\x20ticket\x20to\x20agent\x20in\x20a\x20new\x20tab...','unmanaged','stripTrailingSlash','toUpperCase','isNil','lastevent','lodash','request-promise','bluebird','md5','../../../../config/logger','sugarcrm','redis','defaults','socket.io-emitter','POST','emit','info','Creating\x20new\x20ticket...','name','getString','Subjects','created_by','Descriptions','date_start','toISOString','slice','replace','duration_hours','duration_minutes','parent_id','parent_type','parent_name','direction','forEach','variableName','idField','set_entry','JSON','stringify','format','Basic\x20%s','apiKey','base64'];(function(_0x1fe22d,_0x135642){var _0x2dcd3e=function(_0x3786da){while(--_0x3786da){_0x1fe22d['push'](_0x1fe22d['shift']());}};_0x2dcd3e(++_0x135642);}(_0x0b65,0x1b6));var _0x50b6=function(_0x44cf59,_0x33e739){_0x44cf59=_0x44cf59-0x0;var _0xae0bda=_0x0b65[_0x44cf59];return _0xae0bda;};'use strict';var _=require(_0x50b6('0x0'));var rp=require(_0x50b6('0x1'));var BPromise=require(_0x50b6('0x2'));var md5=require(_0x50b6('0x3'));var util=require('util');var Redis=require('ioredis');var intUtil=require('./util');var config=require('../../../../config/environment');var logger=require(_0x50b6('0x4'))(_0x50b6('0x5'));config[_0x50b6('0x6')]=_[_0x50b6('0x7')](config[_0x50b6('0x6')],{'host':'localhost','port':0x18eb});var io=require(_0x50b6('0x8'))(new Redis(config[_0x50b6('0x6')]));var def={'method':_0x50b6('0x9'),'json':!![]};function emit(_0x1d2573,_0x5400b7,_0x554885){io['to'](_0x1d2573)[_0x50b6('0xa')](_0x5400b7,_0x554885);}function getTicket(_0x44e011,_0x33da75,_0x2c1ff3,_0x45fa4d,_0x118a46,_0x32a644,_0x14d47f,_0x49e228){logger[_0x50b6('0xb')](_0x50b6('0xc'));var _0x850ba7=new Date();var _0x378d16=[{'name':_0x50b6('0xd'),'value':intUtil[_0x50b6('0xe')](_0x45fa4d[_0x50b6('0xf')],_0x118a46,'\x20')},{'name':'assigned_user_id','value':_0x33da75['id']},{'name':_0x50b6('0x10'),'value':_0x33da75['id']},{'name':'description','value':intUtil[_0x50b6('0xe')](_0x45fa4d[_0x50b6('0x11')],_0x118a46,'\x0a')},{'name':_0x50b6('0x12'),'value':_0x850ba7[_0x50b6('0x13')]()[_0x50b6('0x14')](0x0,0x13)[_0x50b6('0x15')]('T','\x20')},{'name':_0x50b6('0x16'),'value':'0'},{'name':_0x50b6('0x17'),'value':'15'},{'name':_0x50b6('0x18'),'value':_0x2c1ff3['id']},{'name':_0x50b6('0x19'),'value':'Contacts'},{'name':_0x50b6('0x1a'),'value':_0x2c1ff3['name']},{'name':_0x50b6('0x1b'),'value':_0x49e228}];if(_0x32a644['length']){_[_0x50b6('0x1c')](_0x32a644,function(_0x483177){if(_0x118a46[_0x483177[_0x50b6('0x1d')]]){_0x378d16['push']({'name':_0x483177[_0x50b6('0x1e')],'value':_0x118a46[_0x483177[_0x50b6('0x1d')]]});}});}return request({'form':{'method':_0x50b6('0x1f'),'input_type':_0x50b6('0x20'),'response_type':_0x50b6('0x20'),'rest_data':JSON[_0x50b6('0x21')]({'session':_0x14d47f['id'],'module_name':'Calls','name_value_list':_0x378d16})}});}function getAuth(_0x16312a){return util[_0x50b6('0x22')](_0x50b6('0x23'),new Buffer(_0x16312a[_0x50b6('0x24')]+':X')['toString'](_0x50b6('0x25')));}function getServerInfo(_0x5f28dc){return request({'form':{'method':_0x50b6('0x26'),'input_type':_0x50b6('0x20'),'response_type':_0x50b6('0x20'),'rest_data':JSON[_0x50b6('0x21')]({'session':_0x5f28dc['id']})}});}function getUser(_0x17a3a4,_0xac8a19,_0x1e8381){if(!_['isNil'](_0xac8a19)){logger[_0x50b6('0xb')]('Getting\x20agent\x20with\x20name',_0xac8a19);return request({'form':{'method':'get_entry_list','input_type':_0x50b6('0x20'),'response_type':_0x50b6('0x20'),'rest_data':JSON[_0x50b6('0x21')]({'session':_0x1e8381['id'],'module_name':_0x50b6('0x27'),'query':util['format']('INSTR\x20(\x20users.user_name,\x20\x22%s\x22)\x20>\x200',_0xac8a19),'order_by':'','offset':'0','select_fields':['id',_0x50b6('0xd'),_0x50b6('0x28')],'link_name_to_fields_array':[],'max_results':-0x1,'deleted':'0'})}})[_0x50b6('0x29')](function(_0x58b348){if(_0x58b348[_0x50b6('0x2a')][_0x50b6('0x2b')]){var _0x200668=_['find'](_0x58b348[_0x50b6('0x2a')],function(_0x58febb){return _0x58febb[_0x50b6('0x2c')][_0x50b6('0x28')][_0x50b6('0x2d')]===_0xac8a19;});if(_0x200668){logger[_0x50b6('0xb')](_0x50b6('0x2e'));return BPromise[_0x50b6('0x2f')]({'id':_0x200668[_0x50b6('0x2c')]['id'][_0x50b6('0x2d')],'name':_0x200668['name_value_list']['name']['value']});}}logger['info']('Agent\x20not\x20found,\x20using\x20the\x20admin\x20account!');return BPromise[_0x50b6('0x2f')]({'id':_0x1e8381[_0x50b6('0x2c')][_0x50b6('0x30')]['value'],'name':_0x1e8381[_0x50b6('0x2c')][_0x50b6('0x28')][_0x50b6('0x2d')]});});}else{logger[_0x50b6('0xb')]('Agent\x20not\x20available,\x20using\x20the\x20admin\x20account!');return BPromise[_0x50b6('0x2f')]({'id':_0x1e8381['name_value_list'][_0x50b6('0x30')][_0x50b6('0x2d')],'name':_0x1e8381[_0x50b6('0x2c')][_0x50b6('0x28')]['value']});}}function getEndUser(_0x4e6460,_0x1accb4,_0x5d5aee,_0x71e7d2){logger[_0x50b6('0xb')](_0x50b6('0x31'),_0x5d5aee);return request({'form':{'method':_0x50b6('0x32'),'input_type':_0x50b6('0x20'),'response_type':'JSON','rest_data':JSON[_0x50b6('0x21')]({'session':_0x71e7d2['id'],'module_name':_0x50b6('0x33'),'query':util['format']('contacts.phone_home\x20=\x20\x22%s\x22',_0x5d5aee),'order_by':'','offset':'0','select_fields':['id','name',_0x50b6('0x34')],'link_name_to_fields_array':[],'max_results':-0x1,'deleted':'0'})}})[_0x50b6('0x29')](function(_0xea9848){if(_0xea9848['entry_list'][_0x50b6('0x2b')]){var _0x3711cf=_['find'](_0xea9848[_0x50b6('0x2a')],function(_0x4bc5f4){return _0x4bc5f4[_0x50b6('0x2c')][_0x50b6('0x34')]['value']===_0x5d5aee;});if(_0x3711cf){logger['info']('Enduser\x20found!');return BPromise[_0x50b6('0x2f')]({'id':_0x3711cf[_0x50b6('0x2c')]['id'][_0x50b6('0x2d')],'name':_0x3711cf['name_value_list'][_0x50b6('0xd')]['value'],'phone':_0x3711cf[_0x50b6('0x2c')][_0x50b6('0x34')]['value']});}}else{logger['info'](_0x50b6('0x35'));return request({'form':{'method':_0x50b6('0x1f'),'input_type':'JSON','response_type':_0x50b6('0x20'),'rest_data':JSON['stringify']({'session':_0x71e7d2['id'],'module_name':_0x50b6('0x33'),'name_value_list':[{'name':_0x50b6('0x36'),'value':_0x1accb4!==_0x50b6('0x37')?_0x1accb4:util[_0x50b6('0x22')](_0x50b6('0x38'),_0x5d5aee)},{'name':_0x50b6('0x34'),'value':_0x5d5aee}]})}})[_0x50b6('0x29')](function(_0x1b4aae){logger[_0x50b6('0xb')](_0x50b6('0x39'));return BPromise[_0x50b6('0x2f')]({'id':_0x1b4aae['id'],'name':_0x1b4aae['entry_list'][_0x50b6('0x36')][_0x50b6('0x2d')],'phone':_0x1b4aae[_0x50b6('0x2a')][_0x50b6('0x34')][_0x50b6('0x2d')]});});}});}function request(_0x3db720){logger[_0x50b6('0x3a')]('[HTTP]',JSON['stringify'](_0x3db720));return rp(_[_0x50b6('0x3b')](def,_0x3db720));}function getTags(_0x535f59,_0x2001db){var _0x3f946e=[];if(_0x535f59&&_0x535f59[_0x50b6('0x2b')]>0x0){_0x3f946e=_[_0x50b6('0x3c')](_0x535f59,_0x2001db);}return _0x3f946e;}function getCustomFields(_0x21d3e8,_0x10186a){var _0x1c31b1=[];var _0x4f1d48={'custom_fields':[]};if(_0x21d3e8[_0x50b6('0x2b')]>0x0){_[_0x50b6('0x1c')](_0x21d3e8,function(_0xc502ff){if(_0xc502ff[_0x50b6('0x3d')]===_0x50b6('0x3e')&&_0xc502ff[_0x50b6('0x3f')]&&!_0xc502ff[_0x50b6('0x40')]){_0x4f1d48[_0xc502ff[_0x50b6('0x3f')][_0x50b6('0x41')]()]=_0xc502ff['content']['toString']();}else if(_0xc502ff['type']==='string'&&_0xc502ff[_0x50b6('0x1e')]&&_0xc502ff[_0x50b6('0x40')]){_0x4f1d48[_0x50b6('0x42')]['push']({'id':_0xc502ff[_0x50b6('0x1e')],'value':_0xc502ff[_0x50b6('0x43')][_0x50b6('0x44')]()});}else if(_0xc502ff[_0x50b6('0x3d')]===_0x50b6('0x45')&&_0xc502ff[_0x50b6('0x1d')]&&_0xc502ff['idField']&&_0xc502ff[_0x50b6('0x40')]){_0x10186a[_0xc502ff[_0x50b6('0x1d')]]&&_0x4f1d48[_0x50b6('0x42')][_0x50b6('0x46')]({'id':_0xc502ff[_0x50b6('0x1e')],'value':_0x10186a[_0xc502ff[_0x50b6('0x1d')]][_0x50b6('0x44')]()});}else if(_0xc502ff['type']==='customVariable'&&_0xc502ff[_0x50b6('0x47')]&&_0xc502ff[_0x50b6('0x47')]['name']&&_0xc502ff[_0x50b6('0x1e')]&&_0xc502ff[_0x50b6('0x40')]){_0x10186a[_0xc502ff[_0x50b6('0x47')][_0x50b6('0xd')]['toLowerCase']()]&&_0x4f1d48[_0x50b6('0x42')][_0x50b6('0x46')]({'id':_0xc502ff['idField'],'value':_0x10186a[_0xc502ff[_0x50b6('0x47')][_0x50b6('0xd')][_0x50b6('0x41')]()][_0x50b6('0x44')]()});}});}return _0x4f1d48;}function getConnection(_0x590ceb){return request({'method':_0x50b6('0x9'),'form':{'method':_0x50b6('0x48'),'input_type':_0x50b6('0x20'),'response_type':_0x50b6('0x20'),'rest_data':JSON[_0x50b6('0x21')]({'user_auth':{'user_name':_0x590ceb[_0x50b6('0x49')],'password':_0x590ceb[_0x50b6('0x4a')],'encryption':'PLAIN'},'application':_0x50b6('0x4b')})}})[_0x50b6('0x29')](function(_0x1c3dae){var _0x4d51d2=_0x1c3dae;if(_0x4d51d2['id']){def[_0x50b6('0x4c')]=_0x4d51d2['id'];return BPromise[_0x50b6('0x2f')](_0x4d51d2);}else{throw new Error(util[_0x50b6('0x22')](_0x50b6('0x4d'),_0x590ceb['id']));}});}function setRelationship(_0x3ef7e6,_0x3931fc,_0x59cc75,_0x36a184){return request({'form':{'method':'set_relationship','input_type':'JSON','response_type':'JSON','rest_data':JSON[_0x50b6('0x21')]({'session':_0x3ef7e6['id'],'module_name':_0x50b6('0x4e'),'module_id':_0x59cc75['id'],'link_field_name':_0x36a184,'related_ids':[_0x3931fc['id']],'name_value_list':[],'delete':0x0})}});}exports[_0x50b6('0x4f')]=function(_0x25f884,_0x5415ee,_0x32ed74,_0x7483f8,_0x356dce,_0x4fe3b6){var _0x3cfa5e,_0x5c6792,_0x449fac,_0x5bcf28;_0x4fe3b6[_0x50b6('0x50')]=intUtil['stripTrailingSlash'](_0x4fe3b6[_0x50b6('0x50')]);_0x4fe3b6['serverUrl']=intUtil['stripTrailingSlash'](_0x4fe3b6[_0x50b6('0x51')]);def[_0x50b6('0x52')]=util[_0x50b6('0x22')](_0x50b6('0x53'),_0x4fe3b6[_0x50b6('0x50')]);if(_0x356dce&&_0x356dce[_0x50b6('0x54')]){logger[_0x50b6('0xb')](_0x50b6('0x55'),_0x50b6('0x56'));_0x5415ee[_0x50b6('0x57')]=util[_0x50b6('0x22')](_0x50b6('0x58'),_0x4fe3b6[_0x50b6('0x51')],_0x5415ee[_0x50b6('0x59')],md5(_0x5415ee[_0x50b6('0x59')]));}else{_0x5415ee[_0x50b6('0x57')]='';}return getConnection(_0x4fe3b6)[_0x50b6('0x29')](function(_0x27d0f6){_0x5bcf28=_0x27d0f6;return getUser(_0x4fe3b6,_0x7483f8[_0x50b6('0xd')],_0x5bcf28);})[_0x50b6('0x29')](function(_0x2f7995){_0x3cfa5e=_0x2f7995;logger['info'](_0x50b6('0x5a'),_0x3cfa5e['id']);return getEndUser(_0x4fe3b6,_0x5415ee[_0x50b6('0x5b')],_0x5415ee[_0x50b6('0x5c')],_0x5bcf28);})[_0x50b6('0x29')](function(_0x2438bf){_0x5c6792=_0x2438bf;logger['info'](_0x50b6('0x5d'),_0x5c6792['id']);return getTicket(_0x4fe3b6,_0x3cfa5e,_0x5c6792,_0x32ed74,_0x5415ee,_0x32ed74['Fields'],_0x5bcf28,_0x50b6('0x5e'));})[_0x50b6('0x29')](function(_0x295397){_0x449fac=_0x295397;logger[_0x50b6('0xb')]('Ticket\x20created!');logger[_0x50b6('0xb')](_0x50b6('0x5f'),_0x449fac['id']);return setRelationship(_0x5bcf28,_0x3cfa5e,_0x449fac,_0x50b6('0x60'));})[_0x50b6('0x29')](function(){return setRelationship(_0x5bcf28,_0x5c6792,_0x449fac,'contacts');})['then'](function(){return getServerInfo(_0x5bcf28);})[_0x50b6('0x29')](function(_0x2b6b73){var _0x22b980=parseInt(_0x2b6b73['version'][_0x50b6('0x61')](0x0));var _0x2c46c9=util[_0x50b6('0x22')](_0x50b6('0x62'),_0x4fe3b6[_0x50b6('0x50')],_0x449fac['id']);if(_0x22b980>0x6){_0x2c46c9=util[_0x50b6('0x22')](_0x50b6('0x63'),_0x4fe3b6[_0x50b6('0x50')],_0x449fac['id']);}logger[_0x50b6('0xb')](_0x50b6('0x55'),'Displaying\x20ticket\x20to\x20agent\x20in\x20a\x20new\x20tab...');emit(util[_0x50b6('0x22')](_0x50b6('0x64'),_0x7483f8['name']),'trigger:browser:url',{'uri':_0x2c46c9});})[_0x50b6('0x65')](function(_0x1d8b6b){logger[_0x50b6('0x66')](_0x50b6('0x55'),JSON[_0x50b6('0x21')](_0x1d8b6b));});};exports[_0x50b6('0x67')]=function(_0x340cc1,_0x161291,_0x4385cd,_0x276958,_0x494404,_0x221981,_0x5557ed){var _0x26b99e,_0x1a74ef,_0x12ca91,_0x43737c;_0x221981[_0x50b6('0x50')]=intUtil['stripTrailingSlash'](_0x221981[_0x50b6('0x50')]);_0x221981[_0x50b6('0x51')]=intUtil['stripTrailingSlash'](_0x221981[_0x50b6('0x51')]);def[_0x50b6('0x52')]=util['format'](_0x50b6('0x53'),_0x221981[_0x50b6('0x50')]);if(_0x5557ed&&_0x5557ed['recordingFormat']&&_0x5557ed[_0x50b6('0x68')]!==_0x50b6('0x69')){logger[_0x50b6('0xb')](_0x50b6('0x6a'),_0x50b6('0x56'));_0x161291[_0x50b6('0x57')]=util[_0x50b6('0x22')]('%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s',_0x221981['serverUrl'],_0x161291[_0x50b6('0x59')],md5(_0x161291[_0x50b6('0x59')]));}return getConnection(_0x221981)[_0x50b6('0x29')](function(_0x327e06){_0x43737c=_0x327e06;return getUser(_0x221981,_0x276958['name'],_0x43737c);})[_0x50b6('0x29')](function(_0x19b18d){_0x26b99e=_0x19b18d;logger[_0x50b6('0xb')]('The\x20User\x20ID\x20is:',_0x26b99e['id']);return getEndUser(_0x221981,_0x161291[_0x50b6('0x6b')],_0x161291[_0x50b6('0x6c')],_0x43737c);})[_0x50b6('0x29')](function(_0x25c572){_0x1a74ef=_0x25c572;logger[_0x50b6('0xb')](_0x50b6('0x5d'),_0x1a74ef['id']);return getTicket(_0x221981,_0x26b99e,_0x1a74ef,_0x4385cd,_0x161291,_0x4385cd[_0x50b6('0x6d')],_0x43737c,'Outbound');})[_0x50b6('0x29')](function(_0x4260da){_0x12ca91=_0x4260da;logger[_0x50b6('0xb')](_0x50b6('0x6e'));logger[_0x50b6('0xb')](_0x50b6('0x5f'),_0x12ca91['id']);return setRelationship(_0x43737c,_0x26b99e,_0x12ca91,'users');})['then'](function(){return setRelationship(_0x43737c,_0x1a74ef,_0x12ca91,_0x50b6('0x6f'));})['then'](function(){return getServerInfo(_0x43737c);})[_0x50b6('0x29')](function(_0x1fe92c){var _0x38790c=parseInt(_0x1fe92c[_0x50b6('0x70')][_0x50b6('0x61')](0x0));var _0x56266b=util['format']('%s/index.php?action=ajaxui#ajaxUILoc=index.php%3Fmodule%3DCalls%26action%3DEditView%26record%3D%s',_0x221981[_0x50b6('0x50')],_0x12ca91['id']);if(_0x38790c>0x6){_0x56266b=util[_0x50b6('0x22')]('%s/#bwc/index.php?module=Calls&action=EditView&record=%s',_0x221981[_0x50b6('0x50')],_0x12ca91['id']);}logger[_0x50b6('0xb')](_0x50b6('0x6a'),_0x50b6('0x71'));emit(util[_0x50b6('0x22')](_0x50b6('0x64'),_0x276958['name']),'trigger:browser:url',{'uri':_0x56266b});})[_0x50b6('0x65')](function(_0x4656c6){logger[_0x50b6('0x66')](_0x50b6('0x6a'),JSON[_0x50b6('0x21')](_0x4656c6));});};exports[_0x50b6('0x72')]=function(_0x1d3ba8,_0x3a99f8,_0x479028,_0x3028bc,_0x390d86,_0x13b69b){var _0x543260,_0x188647,_0x3dceef,_0x54bc36;_0x13b69b[_0x50b6('0x50')]=intUtil['stripTrailingSlash'](_0x13b69b[_0x50b6('0x50')]);_0x13b69b[_0x50b6('0x51')]=intUtil[_0x50b6('0x73')](_0x13b69b[_0x50b6('0x51')]);def[_0x50b6('0x52')]=util[_0x50b6('0x22')](_0x50b6('0x53'),_0x13b69b[_0x50b6('0x50')]);if(_0x390d86&&_0x390d86[_0x50b6('0x54')]){logger[_0x50b6('0xb')]('['+_0x3a99f8['lastevent'][_0x50b6('0x74')]()+']',_0x50b6('0x56'));_0x3a99f8[_0x50b6('0x57')]=util[_0x50b6('0x22')](_0x50b6('0x58'),_0x13b69b[_0x50b6('0x51')],_0x3a99f8[_0x50b6('0x59')],md5(_0x3a99f8['uniqueid']));}else{_0x3a99f8[_0x50b6('0x57')]='';}return getConnection(_0x13b69b)[_0x50b6('0x29')](function(_0x37c623){_0x54bc36=_0x37c623;if(!_[_0x50b6('0x75')](_0x3028bc)){return getUser(_0x13b69b,_0x3028bc[_0x50b6('0xd')],_0x54bc36);}else{return getUser(_0x13b69b,null,_0x54bc36);}})[_0x50b6('0x29')](function(_0x19b399){_0x543260=_0x19b399;logger[_0x50b6('0xb')](_0x50b6('0x5a'),_0x543260['id']);return getEndUser(_0x13b69b,_0x3a99f8['calleridname'],_0x3a99f8[_0x50b6('0x5c')],_0x54bc36);})['then'](function(_0x2938a4){_0x188647=_0x2938a4;logger[_0x50b6('0xb')]('The\x20Enduser\x20ID\x20is:',_0x188647['id']);return getTicket(_0x13b69b,_0x543260,_0x188647,_0x479028,_0x3a99f8,_0x479028['Fields'],_0x54bc36,_0x50b6('0x5e'));})[_0x50b6('0x29')](function(_0x161ecb){_0x3dceef=_0x161ecb;logger[_0x50b6('0xb')](_0x50b6('0x6e'));logger[_0x50b6('0xb')](_0x50b6('0x5f'),_0x3dceef['id']);return setRelationship(_0x54bc36,_0x543260,_0x3dceef,_0x50b6('0x60'));})[_0x50b6('0x29')](function(){return setRelationship(_0x54bc36,_0x188647,_0x3dceef,_0x50b6('0x6f'));})[_0x50b6('0x29')](function(){return getServerInfo(_0x54bc36);})[_0x50b6('0x65')](function(_0x5a1e7a){logger[_0x50b6('0x66')]('['+_0x3a99f8[_0x50b6('0x76')]['toUpperCase']()+']',JSON[_0x50b6('0x21')](_0x5a1e7a));});};
\ No newline at end of file