Built motion from commit (unavailable).|2.3.6
[motion2.git] / server / services / ami / trigger / integration / zoho.js
index 116c588..7729586 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x5178=['redis','localhost','socket.io-emitter','application/json','info','Creating\x20new\x20call...','inbound','outbound','starttime','agentcalledAt','format','getString','Subjects','Descriptions','Fields','lastevent','called','Call\x20Result','Called','complete','connect','rejected','Rejected','abandoned','Abandoned','talktime','utc','mm:ss','answertime','endtime','Call\x20Duration','YYYY-MM-DD\x20HH:mm:ss','CONTACTID','LEADID','SEMODULE','SEID','<FL\x20val=\x22%s\x22>%s</FL>','encodeXML','</row></Calls>','POST','https://crm.%s/crm/private/xml/Calls/insertRecords','authToken','crmapi','then','parse','toJson','response','result','recorddetail','Call\x20created!','Error\x20on\x20call\x20creation:\x20','GET','AllUsers','users','user','find','Agent\x20found!','Administrator','stringify','Unable\x20to\x20retrieve\x20zoho\x20account\x20users:\x20','Searching\x20enduser\x20with\x20phone','https://crm.%s/crm/private/json/Contacts/searchRecords','((Phone:%s))','Enduser\x20found\x20in\x20Contacts!','Contacts','row','length','content','https://crm.%s/crm/private/json/Leads/searchRecords','host','Enduser\x20found\x20in\x20Leads!','Leads','val','<Leads><row\x20no=\x221\x22><FL\x20val=\x22First\x20Name\x22>%s</FL><FL\x20val=\x22Last\x20Name\x22>%s</FL><FL\x20val=\x22Phone\x22>%s</FL></row></Leads>','Enduser\x20created.','Error\x20on\x20Lead\x20creation:\x20','Error\x20on\x20Lead\x20retrieve:\x20','forEach','type','string','idField','toString','variable','variableName','customVariable','Variable','name','toLowerCase','indexOf','queue','serverUrl','monitor_format','[QUEUE]','Recording\x20is\x20enabled!','recordingURL','%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s','uniqueid','email','The\x20User\x20ID\x20is:','calleridname','calleridnum','The\x20Enduser\x20ID\x20is:','Inbound','The\x20Call\x20ID\x20is:','Displaying\x20call\x20to\x20agent\x20in\x20a\x20new\x20tab...','user:%s','trigger:browser:url','https://crm.%s/crm/EntityInfo.do?module=Calls&id=%s','catch','error','stripTrailingSlash','recordingFormat','none','[OUTBOUND]','destcalleridname','Outbound','[ABANDONED]','request-promise','md5','util','./util','xml2json','ioredis','../../../../config/environment','zoho','defaults'];(function(_0x516b4d,_0x39fe59){var _0x5271a4=function(_0x22999e){while(--_0x22999e){_0x516b4d['push'](_0x516b4d['shift']());}};_0x5271a4(++_0x39fe59);}(_0x5178,0x171));var _0x8517=function(_0x501510,_0x61caa9){_0x501510=_0x501510-0x0;var _0x1e6ee5=_0x5178[_0x501510];return _0x1e6ee5;};'use strict';var _=require('lodash');var rp=require(_0x8517('0x0'));var md5=require(_0x8517('0x1'));var util=require(_0x8517('0x2'));var intUtil=require(_0x8517('0x3'));var parser=require(_0x8517('0x4'));var entities=require('entities');var moment=require('moment');var Redis=require(_0x8517('0x5'));var config=require(_0x8517('0x6'));var logger=require('../../../../config/logger')(_0x8517('0x7'));config['redis']=_[_0x8517('0x8')](config[_0x8517('0x9')],{'host':_0x8517('0xa'),'port':0x18eb});var io=require(_0x8517('0xb'))(new Redis(config[_0x8517('0x9')]));function emit(_0x49739b,_0x46f6aa,_0x526e51){io['to'](_0x49739b)['emit'](_0x46f6aa,_0x526e51);}var headers={'Content-Type':_0x8517('0xc'),'Accept':_0x8517('0xc')};function getCall(_0x4dac4d,_0xdd6cfb,_0x24172f,_0x203154,_0x3be6b0,_0x1b4fc2){logger[_0x8517('0xd')](_0x8517('0xe'));var _0x12388f=_['merge']({'SMOWNERID':_0xdd6cfb['id'],'Call Type':_0x1b4fc2||_0x8517('0xf'),'Call Start Time':(_0x1b4fc2===_0x8517('0x10')?_0x3be6b0[_0x8517('0x11')]:_0x3be6b0[_0x8517('0x12')])||moment()[_0x8517('0x13')]('YYYY-MM-DD\x20HH:mm:ss'),'Subject':intUtil[_0x8517('0x14')](_0x203154[_0x8517('0x15')],_0x3be6b0,'\x20'),'Description':intUtil[_0x8517('0x14')](_0x203154[_0x8517('0x16')],_0x3be6b0,'\x0a')},getCustomFields(_0x203154[_0x8517('0x17')],_0x3be6b0));switch(_0x3be6b0[_0x8517('0x18')]){case _0x8517('0x19'):_0x12388f[_0x8517('0x1a')]=_0x8517('0x1b');break;case _0x8517('0x1c'):case _0x8517('0x1d'):_0x12388f[_0x8517('0x1a')]='Answered';break;case _0x8517('0x1e'):_0x12388f[_0x8517('0x1a')]=_0x8517('0x1f');break;case _0x8517('0x20'):_0x12388f[_0x8517('0x1a')]=_0x8517('0x21');break;default:}if(_0x3be6b0[_0x8517('0x22')]){_0x12388f['Call\x20Duration']=moment[_0x8517('0x23')](parseInt(_0x3be6b0['talktime'])*0x3e8)['format'](_0x8517('0x24'));}else if(_0x3be6b0[_0x8517('0x25')]&&_0x3be6b0[_0x8517('0x26')]){_0x12388f[_0x8517('0x27')]=moment[_0x8517('0x23')](moment(_0x3be6b0[_0x8517('0x26')],'YYYY-MM-DD\x20HH:mm:ss')['diff'](moment(_0x3be6b0[_0x8517('0x11')],_0x8517('0x28'))))[_0x8517('0x13')](_0x8517('0x24'));}if(_0x24172f[_0x8517('0x29')]){_0x12388f[_0x8517('0x29')]=_0x24172f['CONTACTID'];}else if(_0x24172f[_0x8517('0x2a')]){_0x12388f[_0x8517('0x2b')]='Leads';_0x12388f[_0x8517('0x2c')]=_0x24172f[_0x8517('0x2a')];}var _0x42c779='<Calls><row\x20no=\x221\x22>';for(var _0x634092 in _0x12388f){if(_0x12388f['hasOwnProperty'](_0x634092)){_0x42c779+=util[_0x8517('0x13')](_0x8517('0x2d'),entities[_0x8517('0x2e')](_0x634092),entities[_0x8517('0x2e')](_0x12388f[_0x634092]));}}_0x42c779+=_0x8517('0x2f');return request({'method':_0x8517('0x30'),'uri':util['format'](_0x8517('0x31'),_0x4dac4d['host']),'qs':{'authtoken':_0x4dac4d[_0x8517('0x32')],'scope':_0x8517('0x33'),'xmlData':_0x42c779},'json':!![]})[_0x8517('0x34')](function(_0x355aa6){_0x355aa6=JSON[_0x8517('0x35')](parser[_0x8517('0x36')](_0x355aa6));if(_0x355aa6['response']){if(_0x355aa6[_0x8517('0x37')]['result']&&_0x355aa6[_0x8517('0x37')][_0x8517('0x38')][_0x8517('0x39')]){logger[_0x8517('0xd')](_0x8517('0x3a'));return{'id':_0x355aa6[_0x8517('0x37')][_0x8517('0x38')][_0x8517('0x39')]['FL'][0x0]['$t']};}}throw new Error(_0x8517('0x3b')+JSON['stringify'](_0x355aa6));});}function getUser(_0x3e8f81,_0x1031b3){return request({'method':_0x8517('0x3c'),'uri':util['format']('https://crm.%s/crm/private/json/Users/getUsers',_0x3e8f81['host']),'qs':{'type':_0x8517('0x3d'),'authtoken':_0x3e8f81[_0x8517('0x32')],'scope':_0x8517('0x33')},'json':!![]})[_0x8517('0x34')](function(_0x5ed2a9){if(_0x5ed2a9[_0x8517('0x3e')]&&_0x5ed2a9['users'][_0x8517('0x3f')]){var _0x234da4;if(_0x1031b3){_0x234da4=_[_0x8517('0x40')](_0x5ed2a9['users'][_0x8517('0x3f')],{'email':_0x1031b3,'profile':'Standard'});}if(_0x234da4){logger[_0x8517('0xd')](_0x8517('0x41'));}else{logger['info']('Using\x20the\x20admin\x20account!');_0x234da4=_[_0x8517('0x40')](_0x5ed2a9[_0x8517('0x3e')][_0x8517('0x3f')],{'profile':_0x8517('0x42')});}return _0x234da4;}else{logger['error']('The\x20failing\x20result\x20is',JSON[_0x8517('0x43')](_0x5ed2a9));throw new Error(_0x8517('0x44')+JSON[_0x8517('0x43')](_0x5ed2a9));}});}function getEndUser(_0x516fb1,_0x2f975c,_0x10f4c1){logger['info'](_0x8517('0x45'),_0x10f4c1);return request({'method':_0x8517('0x3c'),'uri':util[_0x8517('0x13')](_0x8517('0x46'),_0x516fb1['host']),'qs':{'authtoken':_0x516fb1[_0x8517('0x32')],'scope':_0x8517('0x33'),'criteria':util[_0x8517('0x13')](_0x8517('0x47'),_0x10f4c1)},'json':!![]})[_0x8517('0x34')](function(_0x22592a){if(_0x22592a[_0x8517('0x37')]&&_0x22592a[_0x8517('0x37')][_0x8517('0x38')]){logger[_0x8517('0xd')](_0x8517('0x48'));var _0x42e62f={};var _0x232e49=_0x22592a['response']['result'][_0x8517('0x49')][_0x8517('0x4a')]['no']?_0x22592a[_0x8517('0x37')][_0x8517('0x38')][_0x8517('0x49')]['row']['FL']:_0x22592a[_0x8517('0x37')][_0x8517('0x38')]['Contacts'][_0x8517('0x4a')][0x0]['FL'];for(var _0x34fd09=0x0,_0x32fba6=_0x232e49[_0x8517('0x4b')];_0x34fd09<_0x32fba6;_0x34fd09++){_0x42e62f[_0x232e49[_0x34fd09]['val']]=_0x232e49[_0x34fd09][_0x8517('0x4c')];}return _0x42e62f;}else{return request({'method':_0x8517('0x3c'),'uri':util['format'](_0x8517('0x4d'),_0x516fb1[_0x8517('0x4e')]),'qs':{'authtoken':_0x516fb1[_0x8517('0x32')],'scope':'crmapi','criteria':util[_0x8517('0x13')](_0x8517('0x47'),_0x10f4c1)},'json':!![]})[_0x8517('0x34')](function(_0x404a40){if(_0x404a40[_0x8517('0x37')]&&_0x404a40[_0x8517('0x37')][_0x8517('0x38')]){logger['info'](_0x8517('0x4f'));var _0x1ea1fb={};var _0x5382b2=_0x404a40[_0x8517('0x37')][_0x8517('0x38')][_0x8517('0x50')][_0x8517('0x4a')]['no']?_0x404a40[_0x8517('0x37')][_0x8517('0x38')]['Leads'][_0x8517('0x4a')]['FL']:_0x404a40[_0x8517('0x37')][_0x8517('0x38')]['Leads'][_0x8517('0x4a')][0x0]['FL'];for(var _0x197480=0x0,_0x56d08b=_0x5382b2[_0x8517('0x4b')];_0x197480<_0x56d08b;_0x197480++){_0x1ea1fb[_0x5382b2[_0x197480][_0x8517('0x51')]]=_0x5382b2[_0x197480]['content'];}return _0x1ea1fb;}else{logger['info']('Enduser\x20not\x20found,\x20creating\x20a\x20new\x20enduser!');_0x2f975c=getName(_0x2f975c);return request({'method':_0x8517('0x30'),'uri':util[_0x8517('0x13')]('https://crm.%s/crm/private/xml/Leads/insertRecords',_0x516fb1[_0x8517('0x4e')]),'qs':{'authtoken':_0x516fb1['authToken'],'scope':'crmapi','xmlData':util[_0x8517('0x13')](_0x8517('0x52'),entities[_0x8517('0x2e')](_0x2f975c[0x0]),entities[_0x8517('0x2e')](_0x2f975c[0x1]),_0x10f4c1)},'json':!![]})['then'](function(_0x282601){_0x282601=JSON[_0x8517('0x35')](parser[_0x8517('0x36')](_0x282601));if(_0x282601['response']){if(_0x282601[_0x8517('0x37')][_0x8517('0x38')]&&_0x282601[_0x8517('0x37')][_0x8517('0x38')][_0x8517('0x39')]){logger[_0x8517('0xd')](_0x8517('0x53'));return request({'method':'GET','uri':util[_0x8517('0x13')]('https://crm.%s/crm/private/json/Leads/getRecordById',_0x516fb1['host']),'qs':{'authtoken':_0x516fb1[_0x8517('0x32')],'scope':_0x8517('0x33'),'id':_0x282601[_0x8517('0x37')][_0x8517('0x38')]['recorddetail']['FL'][0x0]['$t']},'json':!![]});}}throw new Error(_0x8517('0x54')+JSON[_0x8517('0x43')](_0x282601));})['then'](function(_0x50880b){if(_0x50880b[_0x8517('0x37')]){if(_0x50880b[_0x8517('0x37')][_0x8517('0x38')]){var _0x53b617={};for(var _0x26444e=0x0,_0x5c7e2f=_0x50880b[_0x8517('0x37')][_0x8517('0x38')][_0x8517('0x50')][_0x8517('0x4a')]['FL'][_0x8517('0x4b')];_0x26444e<_0x5c7e2f;_0x26444e++){_0x53b617[_0x50880b[_0x8517('0x37')][_0x8517('0x38')][_0x8517('0x50')][_0x8517('0x4a')]['FL'][_0x26444e]['val']]=_0x50880b['response'][_0x8517('0x38')][_0x8517('0x50')][_0x8517('0x4a')]['FL'][_0x26444e]['content'];}return _0x53b617;}}throw new Error(_0x8517('0x55')+JSON[_0x8517('0x43')](_0x50880b));});}});}});}function request(_0x445f9b){logger['debug']('[HTTP]',JSON[_0x8517('0x43')](_0x445f9b));return rp(_0x445f9b);}function getCustomFields(_0x345e02,_0x919ff8){var _0x35c46e={};if(_0x345e02[_0x8517('0x4b')]>0x0){_[_0x8517('0x56')](_0x345e02,function(_0x3d8773){if(_0x3d8773[_0x8517('0x57')]===_0x8517('0x58')&&_0x3d8773[_0x8517('0x59')]){_0x35c46e[_0x3d8773[_0x8517('0x59')]]=_0x3d8773[_0x8517('0x4c')][_0x8517('0x5a')]();}else if(_0x3d8773[_0x8517('0x57')]===_0x8517('0x5b')&&_0x3d8773[_0x8517('0x5c')]&&_0x3d8773['idField']&&_0x919ff8[_0x3d8773[_0x8517('0x5c')]]){_0x35c46e[_0x3d8773[_0x8517('0x59')]]=_0x919ff8[_0x3d8773[_0x8517('0x5c')]][_0x8517('0x5a')]();}else if(_0x3d8773[_0x8517('0x57')]===_0x8517('0x5d')&&_0x3d8773[_0x8517('0x5e')]&&_0x3d8773['Variable'][_0x8517('0x5f')]&&_0x3d8773[_0x8517('0x59')]&&_0x919ff8[_0x3d8773[_0x8517('0x5e')][_0x8517('0x5f')][_0x8517('0x60')]()]){_0x35c46e[_0x3d8773['idField']]=_0x919ff8[_0x3d8773[_0x8517('0x5e')]['name'][_0x8517('0x60')]()][_0x8517('0x5a')]();}});}return _0x35c46e;}function getName(_0x4147cf){if(_0x4147cf[_0x8517('0x61')]('\x20')>0x0){var _0x2351a9=_0x4147cf['split'](/ (.+)/);if(_0x2351a9[0x1]){return _0x2351a9;}}return[_0x4147cf,_0x4147cf];}exports[_0x8517('0x62')]=function(_0x31928a,_0x37a9b1,_0x45bd1c,_0x575d0d,_0x4f4b32,_0x11a447){var _0x4bc83e,_0x6fde20;_0x11a447[_0x8517('0x4e')]=intUtil['stripTrailingSlash'](_0x11a447[_0x8517('0x4e')]);_0x11a447[_0x8517('0x63')]=intUtil['stripTrailingSlash'](_0x11a447[_0x8517('0x63')]);if(_0x4f4b32&&_0x4f4b32[_0x8517('0x64')]){logger[_0x8517('0xd')](_0x8517('0x65'),_0x8517('0x66'));_0x37a9b1[_0x8517('0x67')]=util[_0x8517('0x13')](_0x8517('0x68'),_0x11a447['serverUrl'],_0x37a9b1[_0x8517('0x69')],md5(_0x37a9b1[_0x8517('0x69')]));}else{_0x37a9b1[_0x8517('0x67')]='';}return getUser(_0x11a447,_0x575d0d[_0x8517('0x6a')])['then'](function(_0x1bc0fb){_0x4bc83e=_0x1bc0fb;logger['info'](_0x8517('0x6b'),_0x4bc83e['id']);return getEndUser(_0x11a447,_0x37a9b1[_0x8517('0x6c')],_0x37a9b1[_0x8517('0x6d')]);})[_0x8517('0x34')](function(_0x52af58){_0x6fde20=_0x52af58;logger['info'](_0x8517('0x6e'),_0x6fde20[_0x8517('0x29')]||_0x6fde20[_0x8517('0x2a')]);return getCall(_0x11a447,_0x4bc83e,_0x6fde20,_0x45bd1c,_0x37a9b1,_0x8517('0x6f'));})['then'](function(_0x11a801){if(_0x11a801){logger[_0x8517('0xd')](_0x8517('0x70'),_0x11a801['id']);logger[_0x8517('0xd')](_0x8517('0x65'),_0x8517('0x71'));emit(util[_0x8517('0x13')](_0x8517('0x72'),_0x575d0d[_0x8517('0x5f')]),_0x8517('0x73'),{'uri':util['format'](_0x8517('0x74'),_0x11a447[_0x8517('0x4e')],_0x11a801['id'])});}})[_0x8517('0x75')](function(_0x512a09){logger[_0x8517('0x76')]('[QUEUE]',JSON[_0x8517('0x43')](_0x512a09));});};exports[_0x8517('0x10')]=function(_0x4d690e,_0x2504d3,_0x5e973c,_0x2c2e5d,_0x88c069,_0x1c7f45,_0x1236ba){var _0x53525c,_0x258280;_0x1c7f45['host']=intUtil[_0x8517('0x77')](_0x1c7f45[_0x8517('0x4e')]);_0x1c7f45[_0x8517('0x63')]=intUtil[_0x8517('0x77')](_0x1c7f45['serverUrl']);if(_0x1236ba&&_0x1236ba[_0x8517('0x78')]&&_0x1236ba[_0x8517('0x78')]!==_0x8517('0x79')){logger['info'](_0x8517('0x7a'),_0x8517('0x66'));_0x2504d3[_0x8517('0x67')]=util[_0x8517('0x13')](_0x8517('0x68'),_0x1c7f45[_0x8517('0x63')],_0x2504d3[_0x8517('0x69')],md5(_0x2504d3['uniqueid']));}return getUser(_0x1c7f45,_0x2c2e5d[_0x8517('0x6a')])['then'](function(_0x5179ae){_0x53525c=_0x5179ae;logger[_0x8517('0xd')](_0x8517('0x6b'),_0x53525c['id']);return getEndUser(_0x1c7f45,_0x2504d3[_0x8517('0x7b')],_0x2504d3['destcalleridnum']);})[_0x8517('0x34')](function(_0x62f8a8){_0x258280=_0x62f8a8;logger['info'](_0x8517('0x6e'),_0x258280['CONTACTID']||_0x258280['LEADID']);return getCall(_0x1c7f45,_0x53525c,_0x258280,_0x5e973c,_0x2504d3,_0x8517('0x7c'));})[_0x8517('0x34')](function(_0x16243c){if(_0x16243c){logger[_0x8517('0xd')](_0x8517('0x70'),_0x16243c['id']);logger['info'](_0x8517('0x7a'),_0x8517('0x71'));emit(util['format']('user:%s',_0x2c2e5d[_0x8517('0x5f')]),_0x8517('0x73'),{'uri':util[_0x8517('0x13')](_0x8517('0x74'),_0x1c7f45[_0x8517('0x4e')],_0x16243c['id'])});}})[_0x8517('0x75')](function(_0x5eabfe){logger['error'](_0x8517('0x7a'),JSON[_0x8517('0x43')](_0x5eabfe));});};exports['abandoned']=function(_0x2967e7,_0x111b70,_0x577a90,_0x3a0597,_0x3304ee,_0x3c1b7e){var _0x590a99,_0x5195a2;_0x3c1b7e[_0x8517('0x4e')]=intUtil[_0x8517('0x77')](_0x3c1b7e[_0x8517('0x4e')]);_0x3c1b7e[_0x8517('0x63')]=intUtil[_0x8517('0x77')](_0x3c1b7e['serverUrl']);if(_0x3304ee&&_0x3304ee[_0x8517('0x64')]){logger[_0x8517('0xd')]('[ABANDONED]',_0x8517('0x66'));_0x111b70[_0x8517('0x67')]=util[_0x8517('0x13')](_0x8517('0x68'),_0x3c1b7e[_0x8517('0x63')],_0x111b70[_0x8517('0x69')],md5(_0x111b70[_0x8517('0x69')]));}else{_0x111b70[_0x8517('0x67')]='';}return getUser(_0x3c1b7e)[_0x8517('0x34')](function(_0x1103b9){_0x590a99=_0x1103b9;logger[_0x8517('0xd')](_0x8517('0x6b'),_0x590a99['id']);return getEndUser(_0x3c1b7e,_0x111b70[_0x8517('0x6c')],_0x111b70[_0x8517('0x6d')]);})[_0x8517('0x34')](function(_0x227077){_0x5195a2=_0x227077;logger[_0x8517('0xd')](_0x8517('0x6e'),_0x5195a2[_0x8517('0x29')]||_0x5195a2['LEADID']);return getCall(_0x3c1b7e,_0x590a99,_0x5195a2,_0x577a90,_0x111b70,_0x8517('0x6f'));})[_0x8517('0x34')](function(_0x41b3ea){if(_0x41b3ea){logger[_0x8517('0xd')](_0x8517('0x70'),_0x41b3ea['id']);}})[_0x8517('0x75')](function(_0x225ee6){logger['error'](_0x8517('0x7d'),JSON[_0x8517('0x43')](_0x225ee6));});};
\ No newline at end of file
+var _0x68fc=['type','string','idField','toString','variable','variableName','customVariable','Variable','name','toLowerCase','split','queue','stripTrailingSlash','serverUrl','monitor_format','[QUEUE]','Recording\x20is\x20enabled!','%s/api/voice/recordings/%s/downloads?type=uniqueid&token=%s','uniqueid','recordingURL','email','The\x20User\x20ID\x20is:','The\x20Enduser\x20ID\x20is:','The\x20Call\x20ID\x20is:','Displaying\x20call\x20to\x20agent\x20in\x20a\x20new\x20tab...','user:%s','catch','recordingFormat','none','[OUTBOUND]','destcalleridname','Outbound','trigger:browser:url','https://crm.%s/crm/EntityInfo.do?module=Calls&id=%s','abandoned','[ABANDONED]','calleridname','Inbound','lodash','request-promise','md5','xml2json','moment','../../../../config/logger','zoho','redis','defaults','socket.io-emitter','emit','application/json','info','Creating\x20new\x20call...','merge','inbound','outbound','starttime','agentcalledAt','YYYY-MM-DD\x20HH:mm:ss','getString','Subjects','Descriptions','Fields','lastevent','called','Call\x20Result','connect','Answered','rejected','Rejected','Abandoned','talktime','Call\x20Duration','utc','format','mm:ss','endtime','diff','CONTACTID','LEADID','Leads','SEID','<Calls><row\x20no=\x221\x22>','hasOwnProperty','encodeXML','POST','https://crm.%s/crm/private/xml/Calls/insertRecords','host','crmapi','then','parse','toJson','response','result','recorddetail','Call\x20created!','stringify','GET','https://crm.%s/crm/private/json/Users/getUsers','AllUsers','users','user','Standard','Agent\x20found!','Using\x20the\x20admin\x20account!','find','Administrator','error','The\x20failing\x20result\x20is','Unable\x20to\x20retrieve\x20zoho\x20account\x20users:\x20','Searching\x20enduser\x20with\x20phone','authToken','Contacts','row','length','val','content','((Phone:%s))','Enduser\x20found\x20in\x20Leads!','Enduser\x20not\x20found,\x20creating\x20a\x20new\x20enduser!','https://crm.%s/crm/private/xml/Leads/insertRecords','Enduser\x20created.','https://crm.%s/crm/private/json/Leads/getRecordById','Error\x20on\x20Lead\x20creation:\x20','Error\x20on\x20Lead\x20retrieve:\x20','debug','[HTTP]','forEach'];(function(_0x28360e,_0x502db0){var _0x54e43a=function(_0x29503f){while(--_0x29503f){_0x28360e['push'](_0x28360e['shift']());}};_0x54e43a(++_0x502db0);}(_0x68fc,0xa5));var _0xc68f=function(_0x5309e3,_0x331241){_0x5309e3=_0x5309e3-0x0;var _0x56dea5=_0x68fc[_0x5309e3];return _0x56dea5;};'use strict';var _=require(_0xc68f('0x0'));var rp=require(_0xc68f('0x1'));var md5=require(_0xc68f('0x2'));var util=require('util');var intUtil=require('./util');var parser=require(_0xc68f('0x3'));var entities=require('entities');var moment=require(_0xc68f('0x4'));var Redis=require('ioredis');var config=require('../../../../config/environment');var logger=require(_0xc68f('0x5'))(_0xc68f('0x6'));config[_0xc68f('0x7')]=_[_0xc68f('0x8')](config['redis'],{'host':'localhost','port':0x18eb});var io=require(_0xc68f('0x9'))(new Redis(config[_0xc68f('0x7')]));function emit(_0x370977,_0x17aaaa,_0x11af4a){io['to'](_0x370977)[_0xc68f('0xa')](_0x17aaaa,_0x11af4a);}var headers={'Content-Type':_0xc68f('0xb'),'Accept':_0xc68f('0xb')};function getCall(_0x5a8226,_0x34691b,_0x5777f9,_0x3b1a43,_0x29f1fe,_0x1f2758){logger[_0xc68f('0xc')](_0xc68f('0xd'));var _0x2a0a52=_[_0xc68f('0xe')]({'SMOWNERID':_0x34691b['id'],'Call Type':_0x1f2758||_0xc68f('0xf'),'Call Start Time':(_0x1f2758===_0xc68f('0x10')?_0x29f1fe[_0xc68f('0x11')]:_0x29f1fe[_0xc68f('0x12')])||moment()['format'](_0xc68f('0x13')),'Subject':intUtil[_0xc68f('0x14')](_0x3b1a43[_0xc68f('0x15')],_0x29f1fe,'\x20'),'Description':intUtil[_0xc68f('0x14')](_0x3b1a43[_0xc68f('0x16')],_0x29f1fe,'\x0a')},getCustomFields(_0x3b1a43[_0xc68f('0x17')],_0x29f1fe));switch(_0x29f1fe[_0xc68f('0x18')]){case _0xc68f('0x19'):_0x2a0a52[_0xc68f('0x1a')]='Called';break;case'complete':case _0xc68f('0x1b'):_0x2a0a52[_0xc68f('0x1a')]=_0xc68f('0x1c');break;case _0xc68f('0x1d'):_0x2a0a52[_0xc68f('0x1a')]=_0xc68f('0x1e');break;case'abandoned':_0x2a0a52[_0xc68f('0x1a')]=_0xc68f('0x1f');break;default:}if(_0x29f1fe[_0xc68f('0x20')]){_0x2a0a52[_0xc68f('0x21')]=moment[_0xc68f('0x22')](parseInt(_0x29f1fe[_0xc68f('0x20')])*0x3e8)[_0xc68f('0x23')](_0xc68f('0x24'));}else if(_0x29f1fe['answertime']&&_0x29f1fe[_0xc68f('0x25')]){_0x2a0a52[_0xc68f('0x21')]=moment[_0xc68f('0x22')](moment(_0x29f1fe['endtime'],_0xc68f('0x13'))[_0xc68f('0x26')](moment(_0x29f1fe[_0xc68f('0x11')],_0xc68f('0x13'))))[_0xc68f('0x23')](_0xc68f('0x24'));}if(_0x5777f9[_0xc68f('0x27')]){_0x2a0a52['CONTACTID']=_0x5777f9[_0xc68f('0x27')];}else if(_0x5777f9[_0xc68f('0x28')]){_0x2a0a52['SEMODULE']=_0xc68f('0x29');_0x2a0a52[_0xc68f('0x2a')]=_0x5777f9[_0xc68f('0x28')];}var _0x44c4b2=_0xc68f('0x2b');for(var _0x48d797 in _0x2a0a52){if(_0x2a0a52[_0xc68f('0x2c')](_0x48d797)){_0x44c4b2+=util[_0xc68f('0x23')]('<FL\x20val=\x22%s\x22>%s</FL>',entities[_0xc68f('0x2d')](_0x48d797),entities[_0xc68f('0x2d')](_0x2a0a52[_0x48d797]));}}_0x44c4b2+='</row></Calls>';return request({'method':_0xc68f('0x2e'),'uri':util[_0xc68f('0x23')](_0xc68f('0x2f'),_0x5a8226[_0xc68f('0x30')]),'qs':{'authtoken':_0x5a8226['authToken'],'scope':_0xc68f('0x31'),'xmlData':_0x44c4b2},'json':!![]})[_0xc68f('0x32')](function(_0x26003a){_0x26003a=JSON[_0xc68f('0x33')](parser[_0xc68f('0x34')](_0x26003a));if(_0x26003a[_0xc68f('0x35')]){if(_0x26003a[_0xc68f('0x35')][_0xc68f('0x36')]&&_0x26003a['response'][_0xc68f('0x36')][_0xc68f('0x37')]){logger['info'](_0xc68f('0x38'));return{'id':_0x26003a[_0xc68f('0x35')][_0xc68f('0x36')][_0xc68f('0x37')]['FL'][0x0]['$t']};}}throw new Error('Error\x20on\x20call\x20creation:\x20'+JSON[_0xc68f('0x39')](_0x26003a));});}function getUser(_0x16e1d0,_0x56a82e){return request({'method':_0xc68f('0x3a'),'uri':util[_0xc68f('0x23')](_0xc68f('0x3b'),_0x16e1d0[_0xc68f('0x30')]),'qs':{'type':_0xc68f('0x3c'),'authtoken':_0x16e1d0['authToken'],'scope':'crmapi'},'json':!![]})[_0xc68f('0x32')](function(_0x346b05){if(_0x346b05[_0xc68f('0x3d')]&&_0x346b05[_0xc68f('0x3d')][_0xc68f('0x3e')]){var _0x550562;if(_0x56a82e){_0x550562=_['find'](_0x346b05[_0xc68f('0x3d')]['user'],{'email':_0x56a82e,'profile':_0xc68f('0x3f')});}if(_0x550562){logger[_0xc68f('0xc')](_0xc68f('0x40'));}else{logger[_0xc68f('0xc')](_0xc68f('0x41'));_0x550562=_[_0xc68f('0x42')](_0x346b05[_0xc68f('0x3d')]['user'],{'profile':_0xc68f('0x43')});}return _0x550562;}else{logger[_0xc68f('0x44')](_0xc68f('0x45'),JSON[_0xc68f('0x39')](_0x346b05));throw new Error(_0xc68f('0x46')+JSON[_0xc68f('0x39')](_0x346b05));}});}function getEndUser(_0x3c36f1,_0x253c81,_0x13be11){logger[_0xc68f('0xc')](_0xc68f('0x47'),_0x13be11);return request({'method':'GET','uri':util['format']('https://crm.%s/crm/private/json/Contacts/searchRecords',_0x3c36f1[_0xc68f('0x30')]),'qs':{'authtoken':_0x3c36f1[_0xc68f('0x48')],'scope':_0xc68f('0x31'),'criteria':util[_0xc68f('0x23')]('((Phone:%s))',_0x13be11)},'json':!![]})[_0xc68f('0x32')](function(_0x284e85){if(_0x284e85[_0xc68f('0x35')]&&_0x284e85['response'][_0xc68f('0x36')]){logger[_0xc68f('0xc')]('Enduser\x20found\x20in\x20Contacts!');var _0x148af5={};var _0x236684=_0x284e85[_0xc68f('0x35')]['result'][_0xc68f('0x49')][_0xc68f('0x4a')]['no']?_0x284e85[_0xc68f('0x35')][_0xc68f('0x36')][_0xc68f('0x49')][_0xc68f('0x4a')]['FL']:_0x284e85[_0xc68f('0x35')]['result'][_0xc68f('0x49')][_0xc68f('0x4a')][0x0]['FL'];for(var _0xe0e0f5=0x0,_0x30eeee=_0x236684[_0xc68f('0x4b')];_0xe0e0f5<_0x30eeee;_0xe0e0f5++){_0x148af5[_0x236684[_0xe0e0f5][_0xc68f('0x4c')]]=_0x236684[_0xe0e0f5][_0xc68f('0x4d')];}return _0x148af5;}else{return request({'method':_0xc68f('0x3a'),'uri':util[_0xc68f('0x23')]('https://crm.%s/crm/private/json/Leads/searchRecords',_0x3c36f1[_0xc68f('0x30')]),'qs':{'authtoken':_0x3c36f1[_0xc68f('0x48')],'scope':_0xc68f('0x31'),'criteria':util[_0xc68f('0x23')](_0xc68f('0x4e'),_0x13be11)},'json':!![]})[_0xc68f('0x32')](function(_0x3e7b43){if(_0x3e7b43['response']&&_0x3e7b43[_0xc68f('0x35')]['result']){logger['info'](_0xc68f('0x4f'));var _0x405d33={};var _0x493db7=_0x3e7b43['response'][_0xc68f('0x36')][_0xc68f('0x29')][_0xc68f('0x4a')]['no']?_0x3e7b43[_0xc68f('0x35')][_0xc68f('0x36')][_0xc68f('0x29')][_0xc68f('0x4a')]['FL']:_0x3e7b43[_0xc68f('0x35')][_0xc68f('0x36')][_0xc68f('0x29')][_0xc68f('0x4a')][0x0]['FL'];for(var _0x54d7d4=0x0,_0x414e47=_0x493db7['length'];_0x54d7d4<_0x414e47;_0x54d7d4++){_0x405d33[_0x493db7[_0x54d7d4][_0xc68f('0x4c')]]=_0x493db7[_0x54d7d4][_0xc68f('0x4d')];}return _0x405d33;}else{logger['info'](_0xc68f('0x50'));_0x253c81=getName(_0x253c81);return request({'method':_0xc68f('0x2e'),'uri':util[_0xc68f('0x23')](_0xc68f('0x51'),_0x3c36f1[_0xc68f('0x30')]),'qs':{'authtoken':_0x3c36f1[_0xc68f('0x48')],'scope':_0xc68f('0x31'),'xmlData':util[_0xc68f('0x23')]('<Leads><row\x20no=\x221\x22><FL\x20val=\x22First\x20Name\x22>%s</FL><FL\x20val=\x22Last\x20Name\x22>%s</FL><FL\x20val=\x22Phone\x22>%s</FL></row></Leads>',entities[_0xc68f('0x2d')](_0x253c81[0x0]),entities[_0xc68f('0x2d')](_0x253c81[0x1]),_0x13be11)},'json':!![]})[_0xc68f('0x32')](function(_0x57d99c){_0x57d99c=JSON['parse'](parser['toJson'](_0x57d99c));if(_0x57d99c[_0xc68f('0x35')]){if(_0x57d99c[_0xc68f('0x35')]['result']&&_0x57d99c[_0xc68f('0x35')]['result'][_0xc68f('0x37')]){logger[_0xc68f('0xc')](_0xc68f('0x52'));return request({'method':_0xc68f('0x3a'),'uri':util[_0xc68f('0x23')](_0xc68f('0x53'),_0x3c36f1[_0xc68f('0x30')]),'qs':{'authtoken':_0x3c36f1[_0xc68f('0x48')],'scope':_0xc68f('0x31'),'id':_0x57d99c[_0xc68f('0x35')][_0xc68f('0x36')]['recorddetail']['FL'][0x0]['$t']},'json':!![]});}}throw new Error(_0xc68f('0x54')+JSON[_0xc68f('0x39')](_0x57d99c));})['then'](function(_0x5ee8ba){if(_0x5ee8ba[_0xc68f('0x35')]){if(_0x5ee8ba[_0xc68f('0x35')][_0xc68f('0x36')]){var _0x4f883a={};for(var _0x3885c5=0x0,_0x929873=_0x5ee8ba['response']['result'][_0xc68f('0x29')][_0xc68f('0x4a')]['FL'][_0xc68f('0x4b')];_0x3885c5<_0x929873;_0x3885c5++){_0x4f883a[_0x5ee8ba[_0xc68f('0x35')][_0xc68f('0x36')][_0xc68f('0x29')][_0xc68f('0x4a')]['FL'][_0x3885c5][_0xc68f('0x4c')]]=_0x5ee8ba[_0xc68f('0x35')][_0xc68f('0x36')][_0xc68f('0x29')][_0xc68f('0x4a')]['FL'][_0x3885c5][_0xc68f('0x4d')];}return _0x4f883a;}}throw new Error(_0xc68f('0x55')+JSON[_0xc68f('0x39')](_0x5ee8ba));});}});}});}function request(_0x1733fe){logger[_0xc68f('0x56')](_0xc68f('0x57'),JSON[_0xc68f('0x39')](_0x1733fe));return rp(_0x1733fe);}function getCustomFields(_0x471ba0,_0x10389f){var _0x5495f4={};if(_0x471ba0['length']>0x0){_[_0xc68f('0x58')](_0x471ba0,function(_0x371316){if(_0x371316[_0xc68f('0x59')]===_0xc68f('0x5a')&&_0x371316[_0xc68f('0x5b')]){_0x5495f4[_0x371316[_0xc68f('0x5b')]]=_0x371316['content'][_0xc68f('0x5c')]();}else if(_0x371316[_0xc68f('0x59')]===_0xc68f('0x5d')&&_0x371316['variableName']&&_0x371316[_0xc68f('0x5b')]&&_0x10389f[_0x371316['variableName']]){_0x5495f4[_0x371316[_0xc68f('0x5b')]]=_0x10389f[_0x371316[_0xc68f('0x5e')]][_0xc68f('0x5c')]();}else if(_0x371316[_0xc68f('0x59')]===_0xc68f('0x5f')&&_0x371316['Variable']&&_0x371316[_0xc68f('0x60')]['name']&&_0x371316[_0xc68f('0x5b')]&&_0x10389f[_0x371316[_0xc68f('0x60')][_0xc68f('0x61')][_0xc68f('0x62')]()]){_0x5495f4[_0x371316['idField']]=_0x10389f[_0x371316['Variable'][_0xc68f('0x61')][_0xc68f('0x62')]()]['toString']();}});}return _0x5495f4;}function getName(_0xcf6034){if(_0xcf6034['indexOf']('\x20')>0x0){var _0x1e4c93=_0xcf6034[_0xc68f('0x63')](/ (.+)/);if(_0x1e4c93[0x1]){return _0x1e4c93;}}return[_0xcf6034,_0xcf6034];}exports[_0xc68f('0x64')]=function(_0x25422a,_0x27ce21,_0x5b680f,_0x49b319,_0x477fe8,_0x37ae46){var _0x3d19d4,_0x2cb279;_0x37ae46['host']=intUtil[_0xc68f('0x65')](_0x37ae46[_0xc68f('0x30')]);_0x37ae46[_0xc68f('0x66')]=intUtil[_0xc68f('0x65')](_0x37ae46[_0xc68f('0x66')]);if(_0x477fe8&&_0x477fe8[_0xc68f('0x67')]){logger['info'](_0xc68f('0x68'),_0xc68f('0x69'));_0x27ce21['recordingURL']=util[_0xc68f('0x23')](_0xc68f('0x6a'),_0x37ae46['serverUrl'],_0x27ce21[_0xc68f('0x6b')],md5(_0x27ce21['uniqueid']));}else{_0x27ce21[_0xc68f('0x6c')]='';}return getUser(_0x37ae46,_0x49b319[_0xc68f('0x6d')])[_0xc68f('0x32')](function(_0x9fb50b){_0x3d19d4=_0x9fb50b;logger['info'](_0xc68f('0x6e'),_0x3d19d4['id']);return getEndUser(_0x37ae46,_0x27ce21['calleridname'],_0x27ce21['calleridnum']);})[_0xc68f('0x32')](function(_0x2203d5){_0x2cb279=_0x2203d5;logger[_0xc68f('0xc')](_0xc68f('0x6f'),_0x2cb279['CONTACTID']||_0x2cb279['LEADID']);return getCall(_0x37ae46,_0x3d19d4,_0x2cb279,_0x5b680f,_0x27ce21,'Inbound');})['then'](function(_0xabbfa9){if(_0xabbfa9){logger[_0xc68f('0xc')](_0xc68f('0x70'),_0xabbfa9['id']);logger[_0xc68f('0xc')](_0xc68f('0x68'),_0xc68f('0x71'));emit(util[_0xc68f('0x23')](_0xc68f('0x72'),_0x49b319[_0xc68f('0x61')]),'trigger:browser:url',{'uri':util['format']('https://crm.%s/crm/EntityInfo.do?module=Calls&id=%s',_0x37ae46[_0xc68f('0x30')],_0xabbfa9['id'])});}})[_0xc68f('0x73')](function(_0x1c6ed9){logger['error']('[QUEUE]',JSON[_0xc68f('0x39')](_0x1c6ed9));});};exports['outbound']=function(_0x44a589,_0x578ed2,_0x52050b,_0x113b7c,_0x44d8a3,_0x2a7060,_0x1266fb){var _0x10a4bd,_0x79409e;_0x2a7060[_0xc68f('0x30')]=intUtil['stripTrailingSlash'](_0x2a7060[_0xc68f('0x30')]);_0x2a7060[_0xc68f('0x66')]=intUtil[_0xc68f('0x65')](_0x2a7060[_0xc68f('0x66')]);if(_0x1266fb&&_0x1266fb[_0xc68f('0x74')]&&_0x1266fb['recordingFormat']!==_0xc68f('0x75')){logger[_0xc68f('0xc')](_0xc68f('0x76'),_0xc68f('0x69'));_0x578ed2[_0xc68f('0x6c')]=util['format'](_0xc68f('0x6a'),_0x2a7060[_0xc68f('0x66')],_0x578ed2[_0xc68f('0x6b')],md5(_0x578ed2['uniqueid']));}return getUser(_0x2a7060,_0x113b7c['email'])['then'](function(_0x2ac238){_0x10a4bd=_0x2ac238;logger[_0xc68f('0xc')](_0xc68f('0x6e'),_0x10a4bd['id']);return getEndUser(_0x2a7060,_0x578ed2[_0xc68f('0x77')],_0x578ed2['destcalleridnum']);})['then'](function(_0xc069e){_0x79409e=_0xc069e;logger[_0xc68f('0xc')](_0xc68f('0x6f'),_0x79409e[_0xc68f('0x27')]||_0x79409e[_0xc68f('0x28')]);return getCall(_0x2a7060,_0x10a4bd,_0x79409e,_0x52050b,_0x578ed2,_0xc68f('0x78'));})['then'](function(_0x27796b){if(_0x27796b){logger[_0xc68f('0xc')](_0xc68f('0x70'),_0x27796b['id']);logger[_0xc68f('0xc')](_0xc68f('0x76'),'Displaying\x20call\x20to\x20agent\x20in\x20a\x20new\x20tab...');emit(util[_0xc68f('0x23')](_0xc68f('0x72'),_0x113b7c[_0xc68f('0x61')]),_0xc68f('0x79'),{'uri':util[_0xc68f('0x23')](_0xc68f('0x7a'),_0x2a7060[_0xc68f('0x30')],_0x27796b['id'])});}})['catch'](function(_0x557f06){logger[_0xc68f('0x44')](_0xc68f('0x76'),JSON[_0xc68f('0x39')](_0x557f06));});};exports[_0xc68f('0x7b')]=function(_0x1372ed,_0x4e6b24,_0x121d0d,_0x21ba96,_0x22f1f6,_0x532498){var _0x32a15f,_0x5622eb;_0x532498[_0xc68f('0x30')]=intUtil['stripTrailingSlash'](_0x532498[_0xc68f('0x30')]);_0x532498[_0xc68f('0x66')]=intUtil[_0xc68f('0x65')](_0x532498['serverUrl']);if(_0x22f1f6&&_0x22f1f6[_0xc68f('0x67')]){logger[_0xc68f('0xc')](_0xc68f('0x7c'),_0xc68f('0x69'));_0x4e6b24[_0xc68f('0x6c')]=util[_0xc68f('0x23')](_0xc68f('0x6a'),_0x532498['serverUrl'],_0x4e6b24[_0xc68f('0x6b')],md5(_0x4e6b24[_0xc68f('0x6b')]));}else{_0x4e6b24[_0xc68f('0x6c')]='';}return getUser(_0x532498)[_0xc68f('0x32')](function(_0x237e81){_0x32a15f=_0x237e81;logger['info'](_0xc68f('0x6e'),_0x32a15f['id']);return getEndUser(_0x532498,_0x4e6b24[_0xc68f('0x7d')],_0x4e6b24['calleridnum']);})['then'](function(_0x5c31a1){_0x5622eb=_0x5c31a1;logger[_0xc68f('0xc')](_0xc68f('0x6f'),_0x5622eb[_0xc68f('0x27')]||_0x5622eb[_0xc68f('0x28')]);return getCall(_0x532498,_0x32a15f,_0x5622eb,_0x121d0d,_0x4e6b24,_0xc68f('0x7e'));})[_0xc68f('0x32')](function(_0xc8f2f){if(_0xc8f2f){logger['info'](_0xc68f('0x70'),_0xc8f2f['id']);}})['catch'](function(_0x1e4a35){logger[_0xc68f('0x44')](_0xc68f('0x7c'),JSON[_0xc68f('0x39')](_0x1e4a35));});};
\ No newline at end of file