Built motion from commit 973e3e332e1c8e2f84c4b0cd2e5af794131724f5. Version 3.0.0...
[motion-next.git] / server / config / socketio.js
1 const a886_0x1ca8=['voice:outbound','UserProfileResource','role','FaxQueue','sms','FaxInteractions','WhatsappQueues','log','join','ivr','findAll','undefined','admin','campaign:%s:%s','resourceId','FaxInteraction','SmsQueue','fax','MailInteraction','all','VoiceQueue','MailQueues','Trunk','getWhatsappQueues','voice','voice:inbound','length','setMaxListeners','chat','user_has_mail_interactions:remove','IvrCampaigns','catch','nsp','ChatInteractions','connection','WhatsappInteraction','%s:queue:%s','SmsInteractions','MailInteractions','user_has_chat_interactions:remove','where','removeWhatsappInteractions','user','agent','ChatQueue','emit','whatsapp','connectedAt','../mysqldb','SmsQueues','Trunks','Campaign','ChatQueues','address','WhatsappQueue','mail','name','user_has_openchannel_interactions:remove','push','Agents','removeSmsInteractions','remoteAddress','VoiceQueues','FaxQueues','query','trunk:%s','then','OpenchannelQueues','WhatsappInteractions','default','userProfileId','MailQueue','map','disconnect','getFaxQueues','removeOpenchannelInteractions','OpenchannelInteraction','OpenchannelQueue','leave','user:%s','User','util','type','SmsInteraction','request','handshake','format','findOne','ChatInteraction','removeChatInteractions','include','user_has_fax_interactions:remove'];(function(_0x3e5c0a,_0x1ca851){const _0x134050=function(_0x5d5dea){while(--_0x5d5dea){_0x3e5c0a['push'](_0x3e5c0a['shift']());}};_0x134050(++_0x1ca851);}(a886_0x1ca8,0x193));const a886_0x1340=function(_0x3e5c0a,_0x1ca851){_0x3e5c0a=_0x3e5c0a-0x0;let _0x134050=a886_0x1ca8[_0x3e5c0a];return _0x134050;};const _0x37abc2=a886_0x1340;'use strict';const _=require('lodash'),util=require(_0x37abc2('0x2e')),db=require(_0x37abc2('0xd'))['db'],queryQueues={'attributes':['id',_0x37abc2('0x15')],'include':[{'as':_0x37abc2('0x18'),'model':db[_0x37abc2('0x2d')],'attributes':['id',_0x37abc2('0x15'),_0x37abc2('0x3b')],'raw':!![],'where':{'role':'agent'},'required':![]}]},queryTelephones={'raw':!![],'attributes':['id',_0x37abc2('0x15')],'where':{'role':'telephone'}},queryTrunks={'raw':!![],'attributes':['id',_0x37abc2('0x15')]},queryAgents={'raw':!![],'attributes':['id',_0x37abc2('0x15')],'where':{'role':'agent'}},queryCampaigns={'raw':!![],'attributes':['id',_0x37abc2('0x15'),_0x37abc2('0x2f')],'where':{'type':_0x37abc2('0x42')}};function getAssociatedResources(_0x5d5dea,_0x1ee4e5,_0x3d09b4){const _0x453584=_0x37abc2;return db['UserProfileSection']['findOne']({'where':{'name':_0x5d5dea,'userProfileId':_0x1ee4e5},'raw':!![]})[_0x453584('0x1f')](function(_0x3dab8e){const _0x4d24c1=_0x453584;if(_0x3dab8e){if(_0x3dab8e['autoAssociation']){let _0x4dbf20;switch(_0x5d5dea){case'VoiceQueues':case _0x4d24c1('0x11'):case _0x4d24c1('0x1c'):case'SmsQueues':case _0x4d24c1('0x4e'):case _0x4d24c1('0x20'):case _0x4d24c1('0x3f'):_0x4dbf20=queryQueues;break;case'Telephones':_0x4dbf20=queryTelephones;break;case _0x4d24c1('0xf'):_0x4dbf20=queryTrunks;break;case _0x4d24c1('0x57'):_0x4dbf20=queryCampaigns;break;default:break;}return _0x4dbf20?db[_0x3d09b4][_0x4d24c1('0x43')](_0x4dbf20):_0x4dbf20;}else return db[_0x4d24c1('0x3a')][_0x4d24c1('0x43')]({'attributes':[_0x4d24c1('0x47')],'where':{'sectionId':_0x3dab8e['id']},'raw':!![]})[_0x4d24c1('0x1f')](function(_0x4bc0f0){const _0x4cdf20=_0x4d24c1;if(_0x4bc0f0){const _0xebd746={'where':{'id':_[_0x4cdf20('0x25')](_0x4bc0f0,'resourceId')},'raw':!![]};switch(_0x3d09b4){case'User':_0xebd746[_0x4cdf20('0x5')][_0x4cdf20('0x3b')]='telephone';break;case _0x4cdf20('0x10'):_0xebd746[_0x4cdf20('0x5')][_0x4cdf20('0x2f')]=_0x4cdf20('0x42');break;}return db[_0x3d09b4]['findAll'](_0xebd746);}else return[];});}else return[];})[_0x453584('0x1f')](function(_0x5c50cc){return _0x5c50cc;});}function joinOrLeaveQueues(_0x4dd34e,_0x142504,_0x3b6b71,_0x6910fc){const _0x3d30a5=_0x37abc2;_0x4dd34e[_0x142504](util['format'](_0x3d30a5('0x1'),_0x3b6b71,_0x6910fc['name']));if(_0x6910fc[_0x3d30a5('0x18')])for(let _0x2795f7=0x0;_0x2795f7<_0x6910fc[_0x3d30a5('0x18')][_0x3d30a5('0x53')];_0x2795f7+=0x1){_0x4dd34e[_0x142504](util[_0x3d30a5('0x33')](_0x3d30a5('0x2c'),_0x6910fc[_0x3d30a5('0x18')][_0x2795f7][_0x3d30a5('0x15')]));}}function joinOrLeave(_0x44cfd2,_0x298c11,_0x50f51f){const _0x398d19=_0x37abc2;let _0x4469b0;_0x44cfd2[_0x398d19('0x32')][_0x398d19('0x1d')]['id']&&db[_0x398d19('0x2d')][_0x398d19('0x34')]({'attributes':['id',_0x398d19('0x15'),'role','userProfileId'],'where':{'id':_0x44cfd2[_0x398d19('0x32')][_0x398d19('0x1d')]['id']},'include':[{'model':db[_0x398d19('0x35')],'as':_0x398d19('0x5a'),'attributes':['id'],'raw':!![]},{'model':db[_0x398d19('0x4b')],'as':_0x398d19('0x3'),'attributes':['id'],'raw':!![]},{'model':db[_0x398d19('0x48')],'as':'FaxInteractions','attributes':['id'],'raw':!![]},{'model':db[_0x398d19('0x30')],'as':'SmsInteractions','attributes':['id'],'raw':!![]},{'model':db[_0x398d19('0x29')],'as':'OpenchannelInteractions','attributes':['id'],'raw':!![]},{'model':db[_0x398d19('0x0')],'as':'WhatsappInteractions','attributes':['id'],'raw':!![]}]})[_0x398d19('0x1f')](function(_0x94af1f){const _0x34dfb0=_0x398d19;if(_0x94af1f){_0x4469b0=_0x94af1f,_0x44cfd2[_0x298c11](util[_0x34dfb0('0x33')](_0x34dfb0('0x2c'),_0x94af1f[_0x34dfb0('0x15')]));const _0x7b553a=[];switch(_0x94af1f[_0x34dfb0('0x3b')]){case _0x34dfb0('0x45'):_0x44cfd2[_0x298c11]('voice:inbound'),_0x44cfd2[_0x298c11](_0x34dfb0('0x39'));typeof queryQueues[_0x34dfb0('0x37')]!==_0x34dfb0('0x44')&&delete queryQueues['include'];_0x7b553a[_0x34dfb0('0x17')](db['VoiceQueue']['findAll'](queryQueues)),_0x7b553a[_0x34dfb0('0x17')](db[_0x34dfb0('0x9')][_0x34dfb0('0x43')](queryQueues)),_0x7b553a[_0x34dfb0('0x17')](db[_0x34dfb0('0x3c')][_0x34dfb0('0x43')](queryQueues)),_0x7b553a[_0x34dfb0('0x17')](db[_0x34dfb0('0x49')][_0x34dfb0('0x43')](queryQueues)),_0x7b553a[_0x34dfb0('0x17')](db[_0x34dfb0('0x24')][_0x34dfb0('0x43')](queryQueues)),_0x7b553a[_0x34dfb0('0x17')](db['OpenchannelQueue'][_0x34dfb0('0x43')](queryQueues)),_0x7b553a['push'](db['WhatsappQueue']['findAll'](queryQueues)),_0x7b553a[_0x34dfb0('0x17')](db['User']['findAll'](queryTelephones)),_0x7b553a[_0x34dfb0('0x17')](db[_0x34dfb0('0x4f')]['findAll'](queryTrunks)),_0x7b553a[_0x34dfb0('0x17')](db[_0x34dfb0('0x10')][_0x34dfb0('0x43')](queryCampaigns)),_0x7b553a['push'](db['User'][_0x34dfb0('0x43')](queryAgents));break;case _0x34dfb0('0x7'):_0x44cfd2[_0x298c11]('voice:inbound'),_0x44cfd2[_0x298c11](_0x34dfb0('0x39')),_0x7b553a[_0x34dfb0('0x17')](getAssociatedResources(_0x34dfb0('0x1b'),_0x94af1f[_0x34dfb0('0x23')],_0x34dfb0('0x4d'))),_0x7b553a['push'](getAssociatedResources('ChatQueues',_0x94af1f[_0x34dfb0('0x23')],_0x34dfb0('0x9'))),_0x7b553a['push'](getAssociatedResources(_0x34dfb0('0x1c'),_0x94af1f[_0x34dfb0('0x23')],'FaxQueue')),_0x7b553a[_0x34dfb0('0x17')](getAssociatedResources(_0x34dfb0('0xe'),_0x94af1f[_0x34dfb0('0x23')],_0x34dfb0('0x49'))),_0x7b553a[_0x34dfb0('0x17')](getAssociatedResources(_0x34dfb0('0x4e'),_0x94af1f[_0x34dfb0('0x23')],_0x34dfb0('0x24'))),_0x7b553a[_0x34dfb0('0x17')](getAssociatedResources(_0x34dfb0('0x20'),_0x94af1f[_0x34dfb0('0x23')],_0x34dfb0('0x2a'))),_0x7b553a[_0x34dfb0('0x17')](getAssociatedResources(_0x34dfb0('0x3f'),_0x94af1f[_0x34dfb0('0x23')],_0x34dfb0('0x13'))),_0x7b553a['push'](getAssociatedResources('Telephones',_0x94af1f[_0x34dfb0('0x23')],_0x34dfb0('0x2d'))),_0x7b553a['push'](getAssociatedResources('Trunks',_0x94af1f['userProfileId'],_0x34dfb0('0x4f'))),_0x7b553a[_0x34dfb0('0x17')](getAssociatedResources(_0x34dfb0('0x57'),_0x94af1f['userProfileId'],'Campaign')),_0x7b553a[_0x34dfb0('0x17')](db['User']['findAll'](queryAgents));break;case _0x34dfb0('0x8'):_0x44cfd2[_0x298c11](_0x34dfb0('0x52')),_0x44cfd2[_0x298c11](_0x34dfb0('0x39')),_0x7b553a[_0x34dfb0('0x17')](_0x94af1f['getVoiceQueues']({'attributes':['id',_0x34dfb0('0x15')]})),_0x7b553a[_0x34dfb0('0x17')](_0x94af1f['getChatQueues']({'attributes':['id',_0x34dfb0('0x15')]})),_0x7b553a[_0x34dfb0('0x17')](_0x94af1f[_0x34dfb0('0x27')]({'attributes':['id',_0x34dfb0('0x15')]})),_0x7b553a[_0x34dfb0('0x17')](_0x94af1f['getSmsQueues']({'attributes':['id','name']})),_0x7b553a['push'](_0x94af1f['getMailQueues']({'attributes':['id',_0x34dfb0('0x15')]})),_0x7b553a[_0x34dfb0('0x17')](_0x94af1f['getOpenchannelQueues']({'attributes':['id','name']})),_0x7b553a[_0x34dfb0('0x17')](_0x94af1f[_0x34dfb0('0x50')]({'attributes':['id',_0x34dfb0('0x15')]}));break;}return Promise[_0x34dfb0('0x4c')](_0x7b553a);}})['then'](function(_0x4bf359){const _0x450058=_0x398d19;if(_0x4bf359&&_0x4bf359[_0x450058('0x53')])for(let _0x171925=0x0;_0x171925<_0x4bf359[_0x450058('0x53')];_0x171925+=0x1){for(let _0x372838=0x0;_0x372838<_0x4bf359[_0x171925][_0x450058('0x53')];_0x372838+=0x1){switch(_0x171925){case 0x0:joinOrLeaveQueues(_0x44cfd2,_0x298c11,_0x450058('0x51'),_0x4bf359[_0x171925][_0x372838]);break;case 0x1:joinOrLeaveQueues(_0x44cfd2,_0x298c11,_0x450058('0x55'),_0x4bf359[_0x171925][_0x372838]);break;case 0x2:joinOrLeaveQueues(_0x44cfd2,_0x298c11,_0x450058('0x4a'),_0x4bf359[_0x171925][_0x372838]);break;case 0x3:joinOrLeaveQueues(_0x44cfd2,_0x298c11,_0x450058('0x3d'),_0x4bf359[_0x171925][_0x372838]);break;case 0x4:joinOrLeaveQueues(_0x44cfd2,_0x298c11,_0x450058('0x14'),_0x4bf359[_0x171925][_0x372838]);break;case 0x5:joinOrLeaveQueues(_0x44cfd2,_0x298c11,'openchannel',_0x4bf359[_0x171925][_0x372838]);break;case 0x6:joinOrLeaveQueues(_0x44cfd2,_0x298c11,_0x450058('0xb'),_0x4bf359[_0x171925][_0x372838]);break;case 0x7:_0x44cfd2[_0x298c11](util[_0x450058('0x33')]('telephone:%s',_0x4bf359[_0x171925][_0x372838]['name']));break;case 0x8:_0x44cfd2[_0x298c11](util[_0x450058('0x33')](_0x450058('0x1e'),_0x4bf359[_0x171925][_0x372838][_0x450058('0x15')]));break;case 0x9:_0x44cfd2[_0x298c11](util[_0x450058('0x33')](_0x450058('0x46'),_0x4bf359[_0x171925][_0x372838][_0x450058('0x2f')],_0x4bf359[_0x171925][_0x372838][_0x450058('0x15')]));break;case 0xa:_0x44cfd2[_0x298c11](util[_0x450058('0x33')](_0x450058('0x2c'),_0x4bf359[_0x171925][_0x372838][_0x450058('0x15')]));break;}}}})['then'](function(){const _0x1413f4=_0x398d19;if(_0x298c11===_0x1413f4('0x2b')){const _0x192a1c=_[_0x1413f4('0x25')](_0x4469b0[_0x1413f4('0x5a')],'id');return _0x4469b0[_0x1413f4('0x36')](_0x192a1c)['then'](function(){const _0x2ae033=_0x1413f4;for(let _0xd47f36=0x0;_0xd47f36<_0x192a1c[_0x2ae033('0x53')];_0xd47f36+=0x1){_0x50f51f[_0x2ae033('0xa')](_0x2ae033('0x4'),{'ChatInteractionId':Number(_0x192a1c[_0xd47f36]),'UserId':Number(_0x4469b0['id'])});}});}})[_0x398d19('0x1f')](function(){const _0x5733f9=_0x398d19;if(_0x298c11===_0x5733f9('0x2b')){const _0x3d5adb=_[_0x5733f9('0x25')](_0x4469b0[_0x5733f9('0x3')],'id');return _0x4469b0['removeMailInteractions'](_0x3d5adb)[_0x5733f9('0x1f')](function(){const _0x292fd2=_0x5733f9;for(let _0x5399b5=0x0;_0x5399b5<_0x3d5adb['length'];_0x5399b5+=0x1){_0x50f51f['emit'](_0x292fd2('0x56'),{'MailInteractionId':Number(_0x3d5adb[_0x5399b5]),'UserId':Number(_0x4469b0['id'])});}});}})['then'](function(){const _0x2486dd=_0x398d19;if(_0x298c11===_0x2486dd('0x2b')){const _0x11df21=_[_0x2486dd('0x25')](_0x4469b0[_0x2486dd('0x3e')],'id');return _0x4469b0['removeFaxInteractions'](_0x11df21)['then'](function(){const _0xaa5d61=_0x2486dd;for(let _0x32cdef=0x0;_0x32cdef<_0x11df21[_0xaa5d61('0x53')];_0x32cdef+=0x1){_0x50f51f[_0xaa5d61('0xa')](_0xaa5d61('0x38'),{'FaxInteractionId':Number(_0x11df21[_0x32cdef]),'UserId':Number(_0x4469b0['id'])});}});}})['then'](function(){const _0x1bcf2a=_0x398d19;if(_0x298c11===_0x1bcf2a('0x2b')){const _0x85f4d0=_[_0x1bcf2a('0x25')](_0x4469b0[_0x1bcf2a('0x2')],'id');return _0x4469b0[_0x1bcf2a('0x19')](_0x85f4d0)[_0x1bcf2a('0x1f')](function(){const _0x51d4f9=_0x1bcf2a;for(let _0x3ebf2b=0x0;_0x3ebf2b<_0x85f4d0[_0x51d4f9('0x53')];_0x3ebf2b+=0x1){_0x50f51f[_0x51d4f9('0xa')]('user_has_sms_interactions:remove',{'SmsInteractionId':Number(_0x85f4d0[_0x3ebf2b]),'UserId':Number(_0x4469b0['id'])});}});}})[_0x398d19('0x1f')](function(){const _0x249fb1=_0x398d19;if(_0x298c11==='leave'){const _0x39d618=_[_0x249fb1('0x25')](_0x4469b0['OpenchannelInteractions'],'id');return _0x4469b0[_0x249fb1('0x28')](_0x39d618)['then'](function(){const _0x5da7a1=_0x249fb1;for(let _0x23bf6d=0x0;_0x23bf6d<_0x39d618[_0x5da7a1('0x53')];_0x23bf6d+=0x1){_0x50f51f[_0x5da7a1('0xa')](_0x5da7a1('0x16'),{'OpenchannelInteractionId':Number(_0x39d618[_0x23bf6d]),'UserId':Number(_0x4469b0['id'])});}});}})[_0x398d19('0x1f')](function(){const _0x394217=_0x398d19;if(_0x298c11===_0x394217('0x2b')){const _0xc51258=_['map'](_0x4469b0[_0x394217('0x21')],'id');return _0x4469b0[_0x394217('0x6')](_0xc51258)[_0x394217('0x1f')](function(){const _0x476435=_0x394217;for(let _0x33e164=0x0;_0x33e164<_0xc51258['length'];_0x33e164+=0x1){_0x50f51f[_0x476435('0xa')]('user_has_whatsapp_interactions:remove',{'WhatsappInteractionId':Number(_0xc51258[_0x33e164]),'UserId':Number(_0x4469b0['id'])});}});}})[_0x398d19('0x58')](function(_0x5e63d4){const _0x415561=_0x398d19;_0x44cfd2[_0x415561('0x40')](_0x5e63d4);});}function onDisconnect(_0x42501c,_0x1e43b7){const _0x2bc3ff=_0x37abc2;joinOrLeave(_0x42501c,_0x2bc3ff('0x2b'),_0x1e43b7);}function onConnect(_0x58b2a6){const _0x2b8bf5=_0x37abc2;joinOrLeave(_0x58b2a6,_0x2b8bf5('0x41'));}exports[_0x37abc2('0x22')]=function(_0x54605d){const _0x2c0759=_0x37abc2;_0x54605d['on'](_0x2c0759('0x5b'),function(_0x231073){const _0x184588=_0x2c0759;_0x231073[_0x184588('0x54')](0x0),_0x231073[_0x184588('0x12')]=_0x231073[_0x184588('0x31')][_0x184588('0x5b')][_0x184588('0x1a')]+':'+_0x231073[_0x184588('0x31')][_0x184588('0x5b')]['remotePort'],_0x231073[_0x184588('0xc')]=new Date(),_0x231073[_0x184588('0x40')]=function(_0x1ea67f){const _0x37d918=_0x184588;console[_0x37d918('0x40')]('SocketIO\x20'+_0x231073[_0x37d918('0x59')][_0x37d918('0x15')]+'['+_0x231073['address']+']',_0x1ea67f);},_0x231073['on'](_0x184588('0x26'),function(){const _0x422b5d=_0x184588;onDisconnect(_0x231073,_0x54605d),_0x231073[_0x422b5d('0x40')]('DISCONNECTED');}),onConnect(_0x231073),_0x231073['log']('CONNECTED');});};