50796f51aa2c35aa643f82f3b9d564b5b5cf76ef
[motion-next.git] / server / api / user / user.rpc.js
1 const a651_0x1a95=['PAUSE','then','map','callysquare','catch','GetUser','SIP/%s','type','../../config/license/util','./user.socket','agents','loginInPause','sequelize','findAll','merge','../../mysqldb','UserVoiceQueue.penalty','mail','mobile','lodash','where','internal','system','chat','format','Unknown\x20channel','all','Pause','forEach','ShowUser','getChannels','../../config/logger','role','message','voice','interface','LogoutUser','channel','LOGIN','getVoiceQueues','openchannel','LoginUser','push','update','attributes','register','name','UserVoiceQueueRt','options','model','YYYY-MM-DD\x20HH:mm:ss','stringify','info','include','DEFAULT\x20PAUSE','destroy','Maximum\x20login\x20has\x20been\x20reached','phone','findOne','User','agent','debug','../../rediscache','length','PauseUser','body','MemberReport','set','limit','bulkCreate','count','error','LOGININPAUSE','isValidChannel'];(function(_0x178d66,_0x1a95e1){const _0x3f599f=function(_0x158df2){while(--_0x158df2){_0x178d66['push'](_0x178d66['shift']());}};_0x3f599f(++_0x1a95e1);}(a651_0x1a95,0x178));const a651_0x3f59=function(_0x178d66,_0x1a95e1){_0x178d66=_0x178d66-0x0;let _0x3f599f=a651_0x1a95[_0x178d66];return _0x3f599f;};const _0x21a522=a651_0x3f59;'use strict';const _=require(_0x21a522('0xd')),util=require('util'),db=require(_0x21a522('0x9'))['db'],logger=require(_0x21a522('0x19'))('rpc'),moment=require('moment'),utils=require('../../config/utils'),{getSocket}=require(_0x21a522('0x38')),socket=getSocket(),sequelize=require(_0x21a522('0x6')),{Op}=sequelize;require(_0x21a522('0x3'))[_0x21a522('0x27')](socket),exports['GetUser']=function(_0x158df2){const _0x29b8d8=this;return new Promise(function(_0x22d4ef,_0x23ae09){const _0x1cb7a5=a651_0x3f59;return db[_0x1cb7a5('0x35')][_0x1cb7a5('0x7')]({'raw':_0x158df2[_0x1cb7a5('0x2a')]?_0x158df2[_0x1cb7a5('0x2a')]['raw']===undefined?!![]:![]:!![],'where':_0x158df2[_0x1cb7a5('0x2a')]?_0x158df2[_0x1cb7a5('0x2a')][_0x1cb7a5('0xe')]||null:null,'attributes':_0x158df2[_0x1cb7a5('0x2a')]?_0x158df2[_0x1cb7a5('0x2a')][_0x1cb7a5('0x26')]||null:null,'limit':_0x158df2[_0x1cb7a5('0x2a')]?_0x158df2[_0x1cb7a5('0x2a')][_0x1cb7a5('0x3e')]||null:null,'include':_0x158df2[_0x1cb7a5('0x2a')]?_0x158df2['options'][_0x1cb7a5('0x2f')]?_['map'](_0x158df2[_0x1cb7a5('0x2a')]['include'],function(_0x47ee33){const _0x5e1298=_0x1cb7a5;return{'model':db[_0x47ee33[_0x5e1298('0x2b')]],'as':_0x47ee33['as'],'attributes':_0x47ee33[_0x5e1298('0x26')],'include':_0x47ee33['include']?_[_0x5e1298('0x46')](_0x47ee33[_0x5e1298('0x2f')],function(_0xc6f9b){const _0x5d163e=_0x5e1298;return{'model':db[_0xc6f9b[_0x5d163e('0x2b')]],'as':_0xc6f9b['as'],'attributes':_0xc6f9b['attributes'],'include':_0xc6f9b[_0x5d163e('0x2f')]?_['map'](_0xc6f9b[_0x5d163e('0x2f')],function(_0x4dfff9){const _0x91f1fa=_0x5d163e;return{'model':db[_0x4dfff9[_0x91f1fa('0x2b')]],'as':_0x4dfff9['as'],'attributes':_0x4dfff9[_0x91f1fa('0x26')]};}):[]};}):[]};}):[]:[]})['then'](function(_0x2ad81b){const _0x1f2980=_0x1cb7a5;logger[_0x1f2980('0x2e')](_0x1f2980('0x49'),_0x158df2),logger[_0x1f2980('0x37')](_0x1f2980('0x49'),_0x158df2,JSON[_0x1f2980('0x2d')](_0x2ad81b)),_0x22d4ef(_0x2ad81b);})[_0x1cb7a5('0x48')](function(_0x2f6db7){const _0x57b870=_0x1cb7a5;logger[_0x57b870('0x41')]('GetUser',_0x2f6db7['message'],_0x158df2),_0x23ae09(_0x29b8d8['error'](0x1f4,_0x2f6db7['message']));});});},exports['ShowUser']=function(_0xd9b739){const _0x4aa56b=this;return new Promise(function(_0x4be305,_0x1fdac9){const _0x48f2e6=a651_0x3f59;return db[_0x48f2e6('0x35')][_0x48f2e6('0x34')]({'raw':_0xd9b739['options']?_0xd9b739['options']['raw']===undefined?!![]:![]:!![],'where':_0xd9b739[_0x48f2e6('0x2a')]?_0xd9b739[_0x48f2e6('0x2a')][_0x48f2e6('0xe')]||null:null,'attributes':_0xd9b739[_0x48f2e6('0x2a')]?_0xd9b739[_0x48f2e6('0x2a')][_0x48f2e6('0x26')]||null:null,'include':_0xd9b739['options']?_0xd9b739[_0x48f2e6('0x2a')][_0x48f2e6('0x2f')]?_['map'](_0xd9b739['options'][_0x48f2e6('0x2f')],function(_0x8fa1a8){const _0xb47276=_0x48f2e6;return{'model':db[_0x8fa1a8[_0xb47276('0x2b')]],'as':_0x8fa1a8['as'],'attributes':_0x8fa1a8[_0xb47276('0x26')],'include':_0x8fa1a8['include']?_[_0xb47276('0x46')](_0x8fa1a8[_0xb47276('0x2f')],function(_0x4b8a90){const _0x3c6c99=_0xb47276;return{'model':db[_0x4b8a90[_0x3c6c99('0x2b')]],'as':_0x4b8a90['as'],'attributes':_0x4b8a90[_0x3c6c99('0x26')],'include':_0x4b8a90[_0x3c6c99('0x2f')]?_[_0x3c6c99('0x46')](_0x4b8a90[_0x3c6c99('0x2f')],function(_0x42d388){const _0x1c6b21=_0x3c6c99;return{'model':db[_0x42d388['model']],'as':_0x42d388['as'],'attributes':_0x42d388[_0x1c6b21('0x26')]};}):[]};}):[]};}):[]:[]})[_0x48f2e6('0x45')](function(_0x460663){const _0x4b1a23=_0x48f2e6;logger[_0x4b1a23('0x2e')](_0x4b1a23('0x17'),_0xd9b739),logger[_0x4b1a23('0x37')]('ShowUser',_0xd9b739,JSON[_0x4b1a23('0x2d')](_0x460663)),_0x4be305(_0x460663);})[_0x48f2e6('0x48')](function(_0x5abde6){const _0x586791=_0x48f2e6;logger[_0x586791('0x41')](_0x586791('0x17'),_0x5abde6[_0x586791('0x1b')],_0xd9b739),_0x1fdac9(_0x4aa56b[_0x586791('0x41')](0x1f4,_0x5abde6[_0x586791('0x1b')]));});});},exports[_0x21a522('0x3a')]=function(_0x182513){const _0x46c2e1=this;return new Promise(function(_0x4f5bcc,_0x28733c){const _0x49d7fe=a651_0x3f59;let _0x30e179;return db['User']['findOne']({'where':_0x182513[_0x49d7fe('0x2a')][_0x49d7fe('0xe')]||{},'attributes':['id',_0x49d7fe('0x28'),_0x49d7fe('0x1a'),_0x49d7fe('0xf'),'interface']})[_0x49d7fe('0x45')](function(_0x22800c){const _0x3d7df5=_0x49d7fe;if(_0x22800c)return _0x30e179=_0x22800c,db[_0x3d7df5('0x29')][_0x3d7df5('0x25')]({'paused':0x1},{'where':{'UserId':_0x30e179['id']},'individualHooks':!![]});})[_0x49d7fe('0x45')](function(){const _0x4906ab=_0x49d7fe;if(_0x30e179)return db[_0x4906ab('0x3c')][_0x4906ab('0x7')]({'where':{'membername':_0x30e179[_0x4906ab('0x28')],'type':_0x4906ab('0x44'),'exitAt':null}});})['then'](function(_0x4e84a3){const _0x2b6f48=_0x49d7fe;if(_0x30e179){if(_0x4e84a3&&_0x4e84a3[_0x2b6f48('0x39')]){const _0x235241=moment()[_0x2b6f48('0x12')](_0x2b6f48('0x2c'));for(let _0x5caa99=0x0,_0x30227e=_0x4e84a3[_0x2b6f48('0x39')];_0x5caa99<_0x30227e;_0x5caa99++){_0x4e84a3[_0x5caa99][_0x2b6f48('0x25')]({'exitAt':_0x235241});}}}})[_0x49d7fe('0x45')](function(){const _0x1fc1db=_0x49d7fe;if(_0x30e179){const _0x1c5313=[],_0x17f8fd=utils[_0x1fc1db('0x18')]();return _0x17f8fd[_0x1fc1db('0x16')](function(_0x57ca30){const _0x41c260=_0x1fc1db;_0x1c5313[_0x41c260('0x24')]({'channel':_0x57ca30,'membername':_0x30e179['name'],'interface':_['isNil'](_0x30e179[_0x41c260('0x1d')])?util[_0x41c260('0x12')](_0x41c260('0x0'),_0x30e179[_0x41c260('0x28')]):_0x30e179[_0x41c260('0x1d')],'type':_0x41c260('0x44'),'enterAt':moment()[_0x41c260('0x12')](_0x41c260('0x2c')),'data1':_0x182513[_0x41c260('0x3b')][_0x41c260('0x1')]||_0x41c260('0x30'),'role':_0x30e179['role'],'internal':_0x30e179[_0x41c260('0xf')],'uniqueid':_0x182513['body']['uniqueid']||null});}),db[_0x1fc1db('0x3c')][_0x1fc1db('0x3f')](_0x1c5313,{'individualHooks':!![]});}})[_0x49d7fe('0x45')](function(){const _0x111658=_0x49d7fe;if(_0x30e179)return _0x30e179[_0x111658('0x25')]({'voicePause':!![],'mailPause':!![],'chatPause':!![],'faxPause':!![],'smsPause':!![],'openchannelPause':!![],'pauseType':_0x182513[_0x111658('0x3b')]['type']||_0x111658('0x30'),'lastPauseAt':moment()['format']('YYYY-MM-DD\x20HH:mm:ss')});})[_0x49d7fe('0x45')](function(_0x2c5ed7){_0x4f5bcc(_0x2c5ed7);})[_0x49d7fe('0x48')](function(_0x4a48be){const _0x3ae5b5=_0x49d7fe;_0x28733c(_0x46c2e1[_0x3ae5b5('0x41')](0x1f4,_0x4a48be[_0x3ae5b5('0x1b')]));});});},exports['UnpauseUser']=function(_0x1317aa){const _0x2cdd4d=this;return new Promise(function(_0x14cd0a,_0x1401b5){const _0x37c586=a651_0x3f59;let _0x4e25e8;return db[_0x37c586('0x35')][_0x37c586('0x34')]({'where':_0x1317aa['options'][_0x37c586('0xe')]||{},'attributes':['id',_0x37c586('0x28')]})[_0x37c586('0x45')](function(_0x541369){const _0x12cfe0=_0x37c586;if(_0x541369){_0x4e25e8=_0x541369;if(_0x1317aa[_0x12cfe0('0x3b')][_0x12cfe0('0x1f')]&&!utils[_0x12cfe0('0x43')](_0x1317aa['body'][_0x12cfe0('0x1f')]))throw new Error(_0x12cfe0('0x13'));switch(_0x1317aa[_0x12cfe0('0x3b')][_0x12cfe0('0x1f')]){case _0x12cfe0('0x1c'):return db[_0x12cfe0('0x29')][_0x12cfe0('0x25')]({'paused':0x0},{'where':{'UserId':_0x4e25e8['id']}})['then'](function(){const _0xe66a6=_0x12cfe0;return db[_0xe66a6('0x3c')]['findOne']({'where':{'channel':_0x1317aa[_0xe66a6('0x3b')][_0xe66a6('0x1f')],'membername':_0x4e25e8[_0xe66a6('0x28')],'type':_0xe66a6('0x44'),'exitAt':null}});})[_0x12cfe0('0x45')](function(_0x38aaec){const _0x40e3f9=_0x12cfe0;if(_0x38aaec)return _0x38aaec[_0x40e3f9('0x25')]({'exitAt':moment()['format'](_0x40e3f9('0x2c')),'data2':_0x40e3f9('0x10')},{'individualHooks':!![]});return null;})[_0x12cfe0('0x45')](function(){const _0x20aa97=_0x12cfe0;return _0x4e25e8[_0x20aa97('0x25')]({'voicePause':![]});});case _0x12cfe0('0xb'):case _0x12cfe0('0x11'):case'fax':case'sms':case _0x12cfe0('0x22'):return db[_0x12cfe0('0x3c')][_0x12cfe0('0x34')]({'where':{'channel':_0x1317aa[_0x12cfe0('0x3b')][_0x12cfe0('0x1f')],'membername':_0x4e25e8[_0x12cfe0('0x28')],'type':_0x12cfe0('0x44'),'exitAt':null}})[_0x12cfe0('0x45')](function(_0x4e650d){const _0xe1e6da=_0x12cfe0;return _0x4e650d[_0xe1e6da('0x25')]({'exitAt':moment()[_0xe1e6da('0x12')]('YYYY-MM-DD\x20HH:mm:ss'),'data2':_0xe1e6da('0x10')},{'individualHooks':!![]});})[_0x12cfe0('0x45')](function(){const _0x360072=_0x12cfe0,_0x407cad={};return _[_0x360072('0x3d')](_0x407cad,util[_0x360072('0x12')]('%s%s',_0x1317aa[_0x360072('0x3b')]['channel'],_0x360072('0x15')),![]),_0x4e25e8['update'](_0x407cad);});default:return db[_0x12cfe0('0x29')][_0x12cfe0('0x25')]({'paused':0x0},{'where':{'UserId':_0x4e25e8['id']}})[_0x12cfe0('0x45')](function(){const _0x4dd32f=_0x12cfe0;return db[_0x4dd32f('0x3c')][_0x4dd32f('0x7')]({'where':{'membername':_0x4e25e8[_0x4dd32f('0x28')],'type':_0x4dd32f('0x44'),'exitAt':null}});})['then'](function(_0x269fea){const _0x14c241=_0x12cfe0,_0x65c4c3=[];return _0x269fea[_0x14c241('0x16')](function(_0xb7ae29){const _0x163526=_0x14c241;_0x65c4c3[_0x163526('0x24')](_0xb7ae29[_0x163526('0x25')]({'exitAt':moment()['format'](_0x163526('0x2c')),'data2':_0x163526('0x10')}));}),Promise[_0x14c241('0x14')](_0x65c4c3);})[_0x12cfe0('0x45')](function(){const _0x3fdd5f=_0x12cfe0;return _0x4e25e8[_0x3fdd5f('0x25')]({'voicePause':![],'mailPause':![],'chatPause':![],'faxPause':![],'smsPause':![],'openchannelPause':![]});});}}})['then'](function(_0x22b303){_0x14cd0a(_0x22b303);})[_0x37c586('0x48')](function(_0xd951d0){const _0x35aa5b=_0x37c586;_0x1401b5(_0x2cdd4d['error'](0x1f4,_0xd951d0[_0x35aa5b('0x1b')]));});});},exports[_0x21a522('0x1e')]=function(_0x3914cf){const _0xfb2f7f=this;return new Promise(function(_0x358cb5,_0x420f66){const _0x2467a7=a651_0x3f59;let _0x5419ac;return db['User'][_0x2467a7('0x34')]({'where':_0x3914cf[_0x2467a7('0x2a')][_0x2467a7('0xe')]||{},'attributes':['id',_0x2467a7('0x28')]})[_0x2467a7('0x45')](function(_0x295549){const _0x842f64=_0x2467a7;if(_0x295549)return _0x5419ac=_0x295549,db[_0x842f64('0x29')][_0x842f64('0x31')]({'where':{'membername':_0x5419ac[_0x842f64('0x28')]},'individualHooks':!![]});})['then'](function(){const _0x5bcaef=_0x2467a7;if(_0x5419ac)return db[_0x5bcaef('0x3c')][_0x5bcaef('0x7')]({'where':{'membername':_0x5419ac[_0x5bcaef('0x28')],'exitAt':null}});})[_0x2467a7('0x45')](function(_0x2db5e5){const _0x54b0fa=_0x2467a7;if(_0x5419ac){if(_0x2db5e5&&_0x2db5e5[_0x54b0fa('0x39')]){const _0x5dd0f6=[];return _0x2db5e5[_0x54b0fa('0x16')](function(_0x365807){const _0x404fa1=_0x54b0fa;_0x5dd0f6[_0x404fa1('0x24')](_0x365807['update']({'exitAt':moment()[_0x404fa1('0x12')]('YYYY-MM-DD\x20HH:mm:ss')}));}),Promise[_0x54b0fa('0x14')](_0x5dd0f6);}}})[_0x2467a7('0x45')](function(){const _0x421bf7=_0x2467a7;if(_0x5419ac)return _0x5419ac[_0x421bf7('0x25')]({'online':![],'lastLoginAt':null,'voicePause':![],'mailPause':![],'chatPause':![],'faxPause':![],'smsPause':![],'openchannelPause':![]});})[_0x2467a7('0x45')](function(_0x3451f1){_0x358cb5(_0x3451f1);})[_0x2467a7('0x48')](function(_0x1a6e72){const _0x5da700=_0x2467a7;_0x420f66(_0xfb2f7f[_0x5da700('0x41')](0x1f4,_0x1a6e72[_0x5da700('0x1b')]));});});},exports[_0x21a522('0x23')]=function(_0x168f2f){const _0x1fa8c0=this;return new Promise(function(_0x59f833,_0x51376e){const _0x4ad34f=a651_0x3f59;let _0x529044,_0x54efd0,_0x46ffdf,_0x168cd2;return db[_0x4ad34f('0x35')][_0x4ad34f('0x34')]({'where':_0x168f2f[_0x4ad34f('0x2a')][_0x4ad34f('0xe')]||{},'attributes':['id',_0x4ad34f('0x28'),_0x4ad34f('0x1a'),_0x4ad34f('0xc'),_0x4ad34f('0x33'),'internal',_0x4ad34f('0x5'),'interface']})['then'](function(_0x3e55c1){const _0x4c09e1=_0x4ad34f;if(_0x3e55c1)return _0x529044=_0x3e55c1,_0x168cd2=_0x168f2f[_0x4c09e1('0x3b')][_0x4c09e1('0x1d')]?_0x168f2f[_0x4c09e1('0x3b')]['interface']:util[_0x4c09e1('0x12')](_0x4c09e1('0x0'),_0x529044[_0x4c09e1('0x28')]),db[_0x4c09e1('0x35')][_0x4c09e1('0x40')]({'where':{'role':_0x4c09e1('0x36'),'online':!![],'id':{[Op['ne']]:_0x529044['id']}}});})['then'](function(_0x4ad54e){const _0x584f38=_0x4ad34f;if(_0x4ad54e)return _0x46ffdf=_0x4ad54e,require(_0x584f38('0x2'))['getLicense']();})[_0x4ad34f('0x45')](function(_0x19b882){const _0x3d3610=_0x4ad34f;if(_0x19b882&&_0x19b882[_0x3d3610('0x4')]&&_0x46ffdf>=_0x19b882[_0x3d3610('0x4')])throw new Error(_0x3d3610('0x32'));})[_0x4ad34f('0x45')](function(){const _0x285866=_0x4ad34f;if(_0x529044)return db['UserVoiceQueueRt']['destroy']({'where':{'membername':_0x529044[_0x285866('0x28')]},'individualHooks':!![]});})[_0x4ad34f('0x45')](function(){const _0x1f2bae=_0x4ad34f;if(_0x529044)return _0x529044[_0x1f2bae('0x21')]({'raw':!![]});})['then'](function(_0x1f0b1f){const _0x2d80c2=_0x4ad34f;if(_0x529044){if(_0x1f0b1f){const _0x93787a=[];_0x54efd0=_0x1f0b1f;if(_0x54efd0['length']){for(let _0x3f1359=0x0;_0x3f1359<_0x54efd0[_0x2d80c2('0x39')];_0x3f1359++){_0x93787a[_0x2d80c2('0x24')](db['UserVoiceQueueRt']['upsert']({'membername':_0x529044[_0x2d80c2('0x28')],'UserId':_0x529044['id'],'queue_name':_0x54efd0[_0x3f1359][_0x2d80c2('0x28')],'VoiceQueueId':_0x54efd0[_0x3f1359]['id'],'interface':_0x168cd2,'paused':_0x529044[_0x2d80c2('0x5')]||![],'penalty':_0x54efd0[_0x3f1359][_0x2d80c2('0xa')]||0x0}));}return Promise[_0x2d80c2('0x14')](_0x93787a);}}}})[_0x4ad34f('0x45')](function(){const _0x4c4126=_0x4ad34f;if(_0x529044)return db['MemberReport'][_0x4c4126('0x7')]({'where':{'membername':_0x529044['name'],'exitAt':null}});})[_0x4ad34f('0x45')](function(_0x2f7b26){const _0x3a85f7=_0x4ad34f;if(_0x529044){if(_0x2f7b26&&_0x2f7b26[_0x3a85f7('0x39')]){const _0x2882dc=[];return _0x2f7b26[_0x3a85f7('0x16')](function(_0x436ad4){const _0x2c2e23=_0x3a85f7;_0x2882dc[_0x2c2e23('0x24')](_0x436ad4[_0x2c2e23('0x25')]({'exitAt':moment()[_0x2c2e23('0x12')]('YYYY-MM-DD\x20HH:mm:ss')}));}),Promise[_0x3a85f7('0x14')](_0x2882dc);}}})['then'](function(){const _0x55a270=_0x4ad34f;if(_0x529044){const _0x3de094=[],_0x1a31e8=[],_0xfe1728=utils['getChannels'](),_0x455a13={'membername':_0x529044[_0x55a270('0x28')],'interface':_0x168cd2,'enterAt':moment()[_0x55a270('0x12')](_0x55a270('0x2c')),'role':_0x529044[_0x55a270('0x1a')],'internal':_0x529044[_0x55a270('0xf')]};return _0xfe1728['forEach'](function(_0x2860d4){const _0x1b3138=_0x55a270;_0x3de094[_0x1b3138('0x24')](_[_0x1b3138('0x8')]({'channel':_0x2860d4,'type':_0x1b3138('0x20'),'data1':_0x1b3138('0x47'),'data2':_0x168cd2},_0x455a13)),_0x529044[_0x1b3138('0x5')]&&_0x1a31e8[_0x1b3138('0x24')](_[_0x1b3138('0x8')]({'channel':_0x2860d4,'type':_0x1b3138('0x44'),'data1':'LOGININPAUSE'},_0x455a13));}),db[_0x55a270('0x3c')][_0x55a270('0x3f')](_0x3de094['concat'](_0x1a31e8),{'individualHooks':!![]});}})[_0x4ad34f('0x45')](function(){const _0x5de645=_0x4ad34f;if(_0x529044)return _0x529044[_0x5de645('0x25')]({'online':!![],'lastLoginAt':moment()[_0x5de645('0x12')](_0x5de645('0x2c')),'voicePause':_0x529044[_0x5de645('0x5')]||![],'mailPause':_0x529044[_0x5de645('0x5')]||![],'chatPause':_0x529044[_0x5de645('0x5')]||![],'faxPause':_0x529044['loginInPause']||![],'smsPause':_0x529044[_0x5de645('0x5')]||![],'openchannelPause':_0x529044['loginInPause']||![],'pauseType':_0x529044[_0x5de645('0x5')]?_0x5de645('0x42'):null,'lastPauseAt':moment()[_0x5de645('0x12')](_0x5de645('0x2c')),'interface':_0x168cd2});})[_0x4ad34f('0x45')](function(_0x222e57){_0x59f833(_0x222e57);})[_0x4ad34f('0x48')](function(_0x2202be){const _0x96baaf=_0x4ad34f;_0x51376e(_0x1fa8c0[_0x96baaf('0x41')](0x1f4,_0x2202be[_0x96baaf('0x1b')]));});});};