Built motion from commit 25580385.|2.6.2
[motion2.git] / server / api / user / user.rpc.js
index dd0e27c..59c4e7c 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x7412=['body','type','DEFAULT\x20PAUSE','YYYY-MM-DD\x20HH:mm:ss','channel','Unknown\x20channel','voice','mail','chat','fax','sms','openchannel','whatsapp','system','set','Pause','findAll','all','LogoutUser','findOne','destroy','LoginUser','role','mobile','SIP/%s','agent','getLicense','agents','Maximum\x20login\x20has\x20been\x20reached','getVoiceQueues','upsert','UserVoiceQueue.penalty','merge','LOGIN','callysquare','loginInPause','bulkCreate','concat','lodash','util','moment','bluebird','ioredis','../../config/utils','../../config/logger','rpc','../../config/environment','client','http','defaults','redis','localhost','register','request','then','User,\x20%s,\x20%s','request\x20sent','debug','stringify','code','message','error','info','result','catch','GetUser','User','options','raw','where','attributes','map','include','model','ShowUser','find','name','internal','interface','UserVoiceQueueRt','update','MemberReport','length','format','updateAttributes','getChannels','forEach','push','isNil','PAUSE'];(function(_0x1d38fc,_0x27cd20){var _0x1a260c=function(_0x3f31ab){while(--_0x3f31ab){_0x1d38fc['push'](_0x1d38fc['shift']());}};_0x1a260c(++_0x27cd20);}(_0x7412,0x1e8));var _0x2741=function(_0x368fb9,_0x1a9895){_0x368fb9=_0x368fb9-0x0;var _0x4892fb=_0x7412[_0x368fb9];return _0x4892fb;};'use strict';var _=require(_0x2741('0x0'));var util=require(_0x2741('0x1'));var moment=require(_0x2741('0x2'));var BPromise=require(_0x2741('0x3'));var rs=require('randomstring');var fs=require('fs');var Redis=require(_0x2741('0x4'));var db=require('../../mysqldb')['db'];var utils=require(_0x2741('0x5'));var logger=require(_0x2741('0x6'))(_0x2741('0x7'));var config=require(_0x2741('0x8'));var jayson=require('jayson/promise');var client=jayson[_0x2741('0x9')][_0x2741('0xa')]({'port':0x232a});config['redis']=_[_0x2741('0xb')](config[_0x2741('0xc')],{'host':_0x2741('0xd'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x2741('0xc')]));require('./user.socket')[_0x2741('0xe')](socket);function respondWithRpcPromise(_0x30e136,_0x267b44,_0x327170){return new BPromise(function(_0x2c7241,_0xc6c9c6){return client[_0x2741('0xf')](_0x30e136,_0x327170)[_0x2741('0x10')](function(_0x143c20){logger['info'](_0x2741('0x11'),_0x267b44,_0x2741('0x12'));logger[_0x2741('0x13')]('User,\x20%s,\x20%s,\x20%s',_0x267b44,'request\x20sent',JSON[_0x2741('0x14')](_0x143c20));if(_0x143c20['error']){if(_0x143c20['error'][_0x2741('0x15')]===0x1f4){logger['error']('User,\x20%s,\x20%s',_0x267b44,_0x143c20['error'][_0x2741('0x16')]);return _0xc6c9c6(_0x143c20['error'][_0x2741('0x16')]);}logger[_0x2741('0x17')](_0x2741('0x11'),_0x267b44,_0x143c20['error'][_0x2741('0x16')]);return _0x2c7241(_0x143c20[_0x2741('0x17')]['message']);}else{logger[_0x2741('0x18')](_0x2741('0x11'),_0x267b44,_0x2741('0x12'));_0x2c7241(_0x143c20[_0x2741('0x19')][_0x2741('0x16')]);}})[_0x2741('0x1a')](function(_0x3be0d2){logger[_0x2741('0x17')](_0x2741('0x11'),_0x267b44,_0x3be0d2);_0xc6c9c6(_0x3be0d2);});});}exports[_0x2741('0x1b')]=function(_0x1a52c9){var _0x1e76f1=this;return new Promise(function(_0x12bad7,_0x51abcb){return db[_0x2741('0x1c')]['findAll']({'raw':_0x1a52c9[_0x2741('0x1d')]?_0x1a52c9[_0x2741('0x1d')][_0x2741('0x1e')]===undefined?!![]:![]:!![],'where':_0x1a52c9[_0x2741('0x1d')]?_0x1a52c9[_0x2741('0x1d')][_0x2741('0x1f')]||null:null,'attributes':_0x1a52c9[_0x2741('0x1d')]?_0x1a52c9['options'][_0x2741('0x20')]||null:null,'limit':_0x1a52c9[_0x2741('0x1d')]?_0x1a52c9[_0x2741('0x1d')]['limit']||null:null,'include':_0x1a52c9['options']?_0x1a52c9[_0x2741('0x1d')]['include']?_[_0x2741('0x21')](_0x1a52c9['options']['include'],function(_0x4907ed){return{'model':db[_0x4907ed['model']],'as':_0x4907ed['as'],'attributes':_0x4907ed['attributes'],'include':_0x4907ed[_0x2741('0x22')]?_['map'](_0x4907ed['include'],function(_0x48d742){return{'model':db[_0x48d742['model']],'as':_0x48d742['as'],'attributes':_0x48d742[_0x2741('0x20')],'include':_0x48d742['include']?_['map'](_0x48d742[_0x2741('0x22')],function(_0xca11a5){return{'model':db[_0xca11a5[_0x2741('0x23')]],'as':_0xca11a5['as'],'attributes':_0xca11a5[_0x2741('0x20')]};}):[]};}):[]};}):[]:[]})[_0x2741('0x10')](function(_0x3debd9){logger[_0x2741('0x18')](_0x2741('0x1b'),_0x1a52c9);logger[_0x2741('0x13')]('GetUser',_0x1a52c9,JSON[_0x2741('0x14')](_0x3debd9));_0x12bad7(_0x3debd9);})[_0x2741('0x1a')](function(_0xcc9546){logger[_0x2741('0x17')](_0x2741('0x1b'),_0xcc9546[_0x2741('0x16')],_0x1a52c9);_0x51abcb(_0x1e76f1[_0x2741('0x17')](0x1f4,_0xcc9546[_0x2741('0x16')]));});});};exports[_0x2741('0x24')]=function(_0x1fd5da){var _0x2c8d00=this;return new Promise(function(_0x268687,_0x14af8f){return db[_0x2741('0x1c')][_0x2741('0x25')]({'raw':_0x1fd5da[_0x2741('0x1d')]?_0x1fd5da[_0x2741('0x1d')][_0x2741('0x1e')]===undefined?!![]:![]:!![],'where':_0x1fd5da['options']?_0x1fd5da[_0x2741('0x1d')]['where']||null:null,'attributes':_0x1fd5da[_0x2741('0x1d')]?_0x1fd5da['options'][_0x2741('0x20')]||null:null,'include':_0x1fd5da[_0x2741('0x1d')]?_0x1fd5da[_0x2741('0x1d')][_0x2741('0x22')]?_[_0x2741('0x21')](_0x1fd5da['options'][_0x2741('0x22')],function(_0x3fb007){return{'model':db[_0x3fb007[_0x2741('0x23')]],'as':_0x3fb007['as'],'attributes':_0x3fb007[_0x2741('0x20')],'include':_0x3fb007[_0x2741('0x22')]?_[_0x2741('0x21')](_0x3fb007['include'],function(_0x3dba0e){return{'model':db[_0x3dba0e[_0x2741('0x23')]],'as':_0x3dba0e['as'],'attributes':_0x3dba0e[_0x2741('0x20')],'include':_0x3dba0e['include']?_[_0x2741('0x21')](_0x3dba0e[_0x2741('0x22')],function(_0x3da0e8){return{'model':db[_0x3da0e8[_0x2741('0x23')]],'as':_0x3da0e8['as'],'attributes':_0x3da0e8[_0x2741('0x20')]};}):[]};}):[]};}):[]:[]})[_0x2741('0x10')](function(_0x50d727){logger['info'](_0x2741('0x24'),_0x1fd5da);logger[_0x2741('0x13')]('ShowUser',_0x1fd5da,JSON['stringify'](_0x50d727));_0x268687(_0x50d727);})['catch'](function(_0x4b6c26){logger['error'](_0x2741('0x24'),_0x4b6c26[_0x2741('0x16')],_0x1fd5da);_0x14af8f(_0x2c8d00['error'](0x1f4,_0x4b6c26[_0x2741('0x16')]));});});};exports['PauseUser']=function(_0x2c4791){var _0x37bf31=this;return new Promise(function(_0x3c2997,_0x1a6d0e){var _0x62651;return db[_0x2741('0x1c')][_0x2741('0x25')]({'where':_0x2c4791['options']['where']||{},'attributes':['id',_0x2741('0x26'),'role',_0x2741('0x27'),_0x2741('0x28')]})[_0x2741('0x10')](function(_0x192d71){if(_0x192d71){_0x62651=_0x192d71;return db[_0x2741('0x29')][_0x2741('0x2a')]({'paused':0x1},{'where':{'UserId':_0x62651['id']},'individualHooks':!![]});}})['then'](function(){if(_0x62651){return db[_0x2741('0x2b')]['findAll']({'where':{'membername':_0x62651[_0x2741('0x26')],'type':'PAUSE','exitAt':null}});}})['then'](function(_0x457656){if(_0x62651){if(_0x457656&&_0x457656[_0x2741('0x2c')]){var _0x48e8b1=moment()[_0x2741('0x2d')]('YYYY-MM-DD\x20HH:mm:ss');for(var _0x8158f6=0x0,_0x5b016b=_0x457656[_0x2741('0x2c')];_0x8158f6<_0x5b016b;_0x8158f6++){_0x457656[_0x8158f6][_0x2741('0x2e')]({'exitAt':_0x48e8b1});}}}})[_0x2741('0x10')](function(){if(_0x62651){var _0x3fcfaa=[];var _0x2f0456=utils[_0x2741('0x2f')]();_0x2f0456[_0x2741('0x30')](function(_0xd03131){_0x3fcfaa[_0x2741('0x31')]({'channel':_0xd03131,'membername':_0x62651[_0x2741('0x26')],'interface':_[_0x2741('0x32')](_0x62651[_0x2741('0x28')])?util[_0x2741('0x2d')]('SIP/%s',_0x62651[_0x2741('0x26')]):_0x62651[_0x2741('0x28')],'type':_0x2741('0x33'),'enterAt':moment()[_0x2741('0x2d')]('YYYY-MM-DD\x20HH:mm:ss'),'data1':_0x2c4791[_0x2741('0x34')]['type']||'DEFAULT\x20PAUSE','role':_0x62651['role'],'internal':_0x62651[_0x2741('0x27')],'uniqueid':_0x2c4791['body']['uniqueid']||null});});return db[_0x2741('0x2b')]['bulkCreate'](_0x3fcfaa,{'individualHooks':!![]});}})['then'](function(){if(_0x62651){return _0x62651[_0x2741('0x2a')]({'voicePause':!![],'mailPause':!![],'chatPause':!![],'faxPause':!![],'smsPause':!![],'openchannelPause':!![],'whatsappPause':!![],'pauseType':_0x2c4791['body'][_0x2741('0x35')]||_0x2741('0x36'),'lastPauseAt':moment()[_0x2741('0x2d')](_0x2741('0x37'))});}})[_0x2741('0x10')](function(_0xdeb9a9){_0x3c2997(_0xdeb9a9);})[_0x2741('0x1a')](function(_0x2e501c){_0x1a6d0e(_0x37bf31[_0x2741('0x17')](0x1f4,_0x2e501c[_0x2741('0x16')]));});});};exports['UnpauseUser']=function(_0x54abc4){var _0x1e7ebe=this;return new Promise(function(_0x14cc3f,_0x4655ae){var _0x12ccb;return db['User']['findOne']({'where':_0x54abc4[_0x2741('0x1d')]['where']||{},'attributes':['id',_0x2741('0x26')]})[_0x2741('0x10')](function(_0x21218c){if(_0x21218c){_0x12ccb=_0x21218c;if(_0x54abc4[_0x2741('0x34')][_0x2741('0x38')]&&!utils['isValidChannel'](_0x54abc4[_0x2741('0x34')][_0x2741('0x38')])){throw new Error(_0x2741('0x39'));}switch(_0x54abc4['body'][_0x2741('0x38')]){case _0x2741('0x3a'):return db[_0x2741('0x29')][_0x2741('0x2a')]({'paused':0x0},{'where':{'UserId':_0x12ccb['id']}})[_0x2741('0x10')](function(){return db[_0x2741('0x2b')]['find']({'where':{'channel':_0x54abc4[_0x2741('0x34')]['channel'],'membername':_0x12ccb[_0x2741('0x26')],'type':'PAUSE','exitAt':null}});})[_0x2741('0x10')](function(_0x46de1c){if(_0x46de1c){return _0x46de1c['update']({'exitAt':moment()[_0x2741('0x2d')](_0x2741('0x37')),'data2':'system'},{'individualHooks':!![]});}return null;})['then'](function(){return _0x12ccb[_0x2741('0x2a')]({'voicePause':![]});});case _0x2741('0x3b'):case _0x2741('0x3c'):case _0x2741('0x3d'):case _0x2741('0x3e'):case _0x2741('0x3f'):case _0x2741('0x40'):return db[_0x2741('0x2b')][_0x2741('0x25')]({'where':{'channel':_0x54abc4[_0x2741('0x34')][_0x2741('0x38')],'membername':_0x12ccb[_0x2741('0x26')],'type':_0x2741('0x33'),'exitAt':null}})[_0x2741('0x10')](function(_0x1bad06){return _0x1bad06['update']({'exitAt':moment()[_0x2741('0x2d')](_0x2741('0x37')),'data2':_0x2741('0x41')},{'individualHooks':!![]});})[_0x2741('0x10')](function(){var _0x375426={};_[_0x2741('0x42')](_0x375426,util[_0x2741('0x2d')]('%s%s',_0x54abc4[_0x2741('0x34')][_0x2741('0x38')],_0x2741('0x43')),![]);return _0x12ccb[_0x2741('0x2a')](_0x375426);});default:return db[_0x2741('0x29')][_0x2741('0x2a')]({'paused':0x0},{'where':{'UserId':_0x12ccb['id']}})[_0x2741('0x10')](function(){return db['MemberReport'][_0x2741('0x44')]({'where':{'membername':_0x12ccb[_0x2741('0x26')],'type':'PAUSE','exitAt':null}});})[_0x2741('0x10')](function(_0x32cad5){var _0x57d151=[];_0x32cad5['forEach'](function(_0x55c5d0){_0x57d151[_0x2741('0x31')](_0x55c5d0['update']({'exitAt':moment()[_0x2741('0x2d')](_0x2741('0x37')),'data2':'system'}));});return BPromise[_0x2741('0x45')](_0x57d151);})[_0x2741('0x10')](function(){return _0x12ccb[_0x2741('0x2a')]({'voicePause':![],'mailPause':![],'chatPause':![],'faxPause':![],'smsPause':![],'openchannelPause':![],'whatsappPause':![]});});}}})['then'](function(_0x5b7dde){_0x14cc3f(_0x5b7dde);})['catch'](function(_0x3f54ca){_0x4655ae(_0x1e7ebe['error'](0x1f4,_0x3f54ca[_0x2741('0x16')]));});});};exports[_0x2741('0x46')]=function(_0x27fb21){var _0x5461d7=this;return new Promise(function(_0x4542f0,_0x2728cf){var _0x1b0e79;return db[_0x2741('0x1c')][_0x2741('0x47')]({'where':_0x27fb21[_0x2741('0x1d')][_0x2741('0x1f')]||{},'attributes':['id',_0x2741('0x26')]})['then'](function(_0x21964e){if(_0x21964e){_0x1b0e79=_0x21964e;return db[_0x2741('0x29')][_0x2741('0x48')]({'where':{'membername':_0x1b0e79[_0x2741('0x26')]},'individualHooks':!![]});}})[_0x2741('0x10')](function(){if(_0x1b0e79){return db[_0x2741('0x2b')][_0x2741('0x44')]({'where':{'membername':_0x1b0e79[_0x2741('0x26')],'exitAt':null}});}})[_0x2741('0x10')](function(_0xe19780){if(_0x1b0e79){if(_0xe19780&&_0xe19780[_0x2741('0x2c')]){var _0x7db410=[];_0xe19780['forEach'](function(_0x20b913){_0x7db410['push'](_0x20b913[_0x2741('0x2a')]({'exitAt':moment()['format'](_0x2741('0x37'))}));});return BPromise[_0x2741('0x45')](_0x7db410);}}})['then'](function(){if(_0x1b0e79){return _0x1b0e79['update']({'online':![],'voicePause':![],'mailPause':![],'chatPause':![],'faxPause':![],'smsPause':![],'openchannelPause':![]});}})['then'](function(_0x1f52df){_0x4542f0(_0x1f52df);})['catch'](function(_0x399544){_0x2728cf(_0x5461d7[_0x2741('0x17')](0x1f4,_0x399544[_0x2741('0x16')]));});});};exports[_0x2741('0x49')]=function(_0x426f1e){var _0x562c5c=this;return new Promise(function(_0x1fbdac,_0x24dd5a){var _0x3c3561;var _0x3c9415;var _0x4d225d;var _0x21f0f2;return db[_0x2741('0x1c')][_0x2741('0x47')]({'where':_0x426f1e[_0x2741('0x1d')]['where']||{},'attributes':['id',_0x2741('0x26'),_0x2741('0x4a'),_0x2741('0x4b'),'phone',_0x2741('0x27'),'loginInPause','interface']})[_0x2741('0x10')](function(_0x5bc44a){if(_0x5bc44a){_0x3c3561=_0x5bc44a;_0x21f0f2=_0x426f1e['body']['interface']?_0x426f1e['body'][_0x2741('0x28')]:util[_0x2741('0x2d')](_0x2741('0x4c'),_0x3c3561[_0x2741('0x26')]);return db[_0x2741('0x1c')]['count']({'where':{'role':_0x2741('0x4d'),'online':!![],'id':{'$ne':_0x3c3561['id']}}});}})[_0x2741('0x10')](function(_0x4ec3fb){if(_0x4ec3fb){_0x4d225d=_0x4ec3fb;return require('../../config/license/util')[_0x2741('0x4e')]();}})['then'](function(_0x5bfbad){if(_0x5bfbad&&_0x5bfbad[_0x2741('0x4f')]&&_0x4d225d>=_0x5bfbad[_0x2741('0x4f')]){throw new Error(_0x2741('0x50'));}})[_0x2741('0x10')](function(){if(_0x3c3561){return db[_0x2741('0x29')][_0x2741('0x48')]({'where':{'membername':_0x3c3561[_0x2741('0x26')]},'individualHooks':!![]});}})[_0x2741('0x10')](function(){if(_0x3c3561){return _0x3c3561[_0x2741('0x51')]({'raw':!![]});}})[_0x2741('0x10')](function(_0x1e35c6){if(_0x3c3561){if(_0x1e35c6){var _0x75e03b=[];_0x3c9415=_0x1e35c6;if(_0x3c9415[_0x2741('0x2c')]){for(var _0x2bcc39=0x0;_0x2bcc39<_0x3c9415[_0x2741('0x2c')];_0x2bcc39++){_0x75e03b[_0x2741('0x31')](db[_0x2741('0x29')][_0x2741('0x52')]({'membername':_0x3c3561['name'],'UserId':_0x3c3561['id'],'queue_name':_0x3c9415[_0x2bcc39][_0x2741('0x26')],'VoiceQueueId':_0x3c9415[_0x2bcc39]['id'],'interface':_0x21f0f2,'paused':_0x3c3561['loginInPause']||![],'penalty':_0x3c9415[_0x2bcc39][_0x2741('0x53')]||0x0}));}return BPromise[_0x2741('0x45')](_0x75e03b);}}}})[_0x2741('0x10')](function(){if(_0x3c3561){return db[_0x2741('0x2b')][_0x2741('0x44')]({'where':{'membername':_0x3c3561[_0x2741('0x26')],'exitAt':null}});}})[_0x2741('0x10')](function(_0x142c9c){if(_0x3c3561){if(_0x142c9c&&_0x142c9c['length']){var _0x427b1a=[];_0x142c9c['forEach'](function(_0x861669){_0x427b1a[_0x2741('0x31')](_0x861669[_0x2741('0x2a')]({'exitAt':moment()[_0x2741('0x2d')]('YYYY-MM-DD\x20HH:mm:ss')}));});return BPromise['all'](_0x427b1a);}}})['then'](function(_0x26c6d7){if(_0x3c3561){var _0x9df8a5=[];var _0x366390=[];var _0x31e534=utils[_0x2741('0x2f')]();var _0x4c26a4={'membername':_0x3c3561[_0x2741('0x26')],'interface':_0x21f0f2,'enterAt':moment()[_0x2741('0x2d')](_0x2741('0x37')),'role':_0x3c3561[_0x2741('0x4a')],'internal':_0x3c3561[_0x2741('0x27')]};_0x31e534[_0x2741('0x30')](function(_0x4418de){_0x9df8a5[_0x2741('0x31')](_[_0x2741('0x54')]({'channel':_0x4418de,'type':_0x2741('0x55'),'data1':_0x2741('0x56'),'data2':_0x21f0f2},_0x4c26a4));if(_0x3c3561[_0x2741('0x57')]){_0x366390[_0x2741('0x31')](_[_0x2741('0x54')]({'channel':_0x4418de,'type':'PAUSE','data1':'LOGININPAUSE'},_0x4c26a4));}});return db[_0x2741('0x2b')][_0x2741('0x58')](_0x9df8a5[_0x2741('0x59')](_0x366390),{'individualHooks':!![]});}})[_0x2741('0x10')](function(){if(_0x3c3561){return _0x3c3561['update']({'online':!![],'lastLoginAt':moment()['format'](_0x2741('0x37')),'voicePause':_0x3c3561['loginInPause']||![],'mailPause':_0x3c3561['loginInPause']||![],'chatPause':_0x3c3561[_0x2741('0x57')]||![],'faxPause':_0x3c3561['loginInPause']||![],'smsPause':_0x3c3561['loginInPause']||![],'openchannelPause':_0x3c3561['loginInPause']||![],'pauseType':_0x3c3561[_0x2741('0x57')]?'LOGININPAUSE':null,'lastPauseAt':moment()[_0x2741('0x2d')](_0x2741('0x37')),'interface':_0x21f0f2});}})['then'](function(_0x7b7fa8){_0x1fbdac(_0x7b7fa8);})['catch'](function(_0x88f0cd){_0x24dd5a(_0x562c5c[_0x2741('0x17')](0x1f4,_0x88f0cd[_0x2741('0x16')]));});});};
\ No newline at end of file
+var _0x52a6=['http','redis','defaults','localhost','socket.io-emitter','./user.socket','register','then','info','request\x20sent','User,\x20%s,\x20%s,\x20%s','stringify','error','code','message','User,\x20%s,\x20%s','catch','User','findAll','options','raw','where','limit','include','model','attributes','map','GetUser','ShowUser','debug','name','role','internal','interface','update','MemberReport','PAUSE','length','YYYY-MM-DD\x20HH:mm:ss','isNil','SIP/%s','format','body','type','DEFAULT\x20PAUSE','bulkCreate','UnpauseUser','isValidChannel','channel','Unknown\x20channel','UserVoiceQueueRt','find','system','mail','chat','openchannel','whatsapp','set','%s%s','Pause','push','all','LogoutUser','findOne','destroy','forEach','LoginUser','phone','loginInPause','agent','agents','Maximum\x20login\x20has\x20been\x20reached','getVoiceQueues','upsert','UserVoiceQueue.penalty','getChannels','merge','LOGIN','callysquare','LOGININPAUSE','concat','util','moment','../../mysqldb','../../config/utils','../../config/logger','rpc','jayson/promise','client'];(function(_0x40aa58,_0x5b22fc){var _0x532346=function(_0x2a6cd3){while(--_0x2a6cd3){_0x40aa58['push'](_0x40aa58['shift']());}};_0x532346(++_0x5b22fc);}(_0x52a6,0xaa));var _0x652a=function(_0x1db643,_0x4a147b){_0x1db643=_0x1db643-0x0;var _0x59a8ff=_0x52a6[_0x1db643];return _0x59a8ff;};'use strict';var _=require('lodash');var util=require(_0x652a('0x0'));var moment=require(_0x652a('0x1'));var BPromise=require('bluebird');var rs=require('randomstring');var fs=require('fs');var Redis=require('ioredis');var db=require(_0x652a('0x2'))['db'];var utils=require(_0x652a('0x3'));var logger=require(_0x652a('0x4'))(_0x652a('0x5'));var config=require('../../config/environment');var jayson=require(_0x652a('0x6'));var client=jayson[_0x652a('0x7')][_0x652a('0x8')]({'port':0x232a});config[_0x652a('0x9')]=_[_0x652a('0xa')](config[_0x652a('0x9')],{'host':_0x652a('0xb'),'port':0x18eb});var socket=require(_0x652a('0xc'))(new Redis(config['redis']));require(_0x652a('0xd'))[_0x652a('0xe')](socket);function respondWithRpcPromise(_0x500945,_0x52498e,_0x16070f){return new BPromise(function(_0xb789fd,_0x7d799c){return client['request'](_0x500945,_0x16070f)[_0x652a('0xf')](function(_0x4d06c8){logger[_0x652a('0x10')]('User,\x20%s,\x20%s',_0x52498e,_0x652a('0x11'));logger['debug'](_0x652a('0x12'),_0x52498e,'request\x20sent',JSON[_0x652a('0x13')](_0x4d06c8));if(_0x4d06c8[_0x652a('0x14')]){if(_0x4d06c8[_0x652a('0x14')][_0x652a('0x15')]===0x1f4){logger[_0x652a('0x14')]('User,\x20%s,\x20%s',_0x52498e,_0x4d06c8[_0x652a('0x14')][_0x652a('0x16')]);return _0x7d799c(_0x4d06c8['error'][_0x652a('0x16')]);}logger[_0x652a('0x14')](_0x652a('0x17'),_0x52498e,_0x4d06c8['error'][_0x652a('0x16')]);return _0xb789fd(_0x4d06c8[_0x652a('0x14')]['message']);}else{logger[_0x652a('0x10')](_0x652a('0x17'),_0x52498e,_0x652a('0x11'));_0xb789fd(_0x4d06c8['result'][_0x652a('0x16')]);}})[_0x652a('0x18')](function(_0x37f140){logger[_0x652a('0x14')]('User,\x20%s,\x20%s',_0x52498e,_0x37f140);_0x7d799c(_0x37f140);});});}exports['GetUser']=function(_0x3675b7){var _0x286dca=this;return new Promise(function(_0x1a580b,_0xc65164){return db[_0x652a('0x19')][_0x652a('0x1a')]({'raw':_0x3675b7[_0x652a('0x1b')]?_0x3675b7[_0x652a('0x1b')][_0x652a('0x1c')]===undefined?!![]:![]:!![],'where':_0x3675b7[_0x652a('0x1b')]?_0x3675b7[_0x652a('0x1b')][_0x652a('0x1d')]||null:null,'attributes':_0x3675b7[_0x652a('0x1b')]?_0x3675b7[_0x652a('0x1b')]['attributes']||null:null,'limit':_0x3675b7[_0x652a('0x1b')]?_0x3675b7[_0x652a('0x1b')][_0x652a('0x1e')]||null:null,'include':_0x3675b7['options']?_0x3675b7['options'][_0x652a('0x1f')]?_['map'](_0x3675b7[_0x652a('0x1b')]['include'],function(_0x1d2e61){return{'model':db[_0x1d2e61[_0x652a('0x20')]],'as':_0x1d2e61['as'],'attributes':_0x1d2e61[_0x652a('0x21')],'include':_0x1d2e61[_0x652a('0x1f')]?_['map'](_0x1d2e61[_0x652a('0x1f')],function(_0x32fd72){return{'model':db[_0x32fd72[_0x652a('0x20')]],'as':_0x32fd72['as'],'attributes':_0x32fd72['attributes'],'include':_0x32fd72[_0x652a('0x1f')]?_[_0x652a('0x22')](_0x32fd72[_0x652a('0x1f')],function(_0x1b0c7d){return{'model':db[_0x1b0c7d[_0x652a('0x20')]],'as':_0x1b0c7d['as'],'attributes':_0x1b0c7d[_0x652a('0x21')]};}):[]};}):[]};}):[]:[]})[_0x652a('0xf')](function(_0x52581c){logger[_0x652a('0x10')]('GetUser',_0x3675b7);logger['debug'](_0x652a('0x23'),_0x3675b7,JSON[_0x652a('0x13')](_0x52581c));_0x1a580b(_0x52581c);})[_0x652a('0x18')](function(_0x2b84b1){logger[_0x652a('0x14')]('GetUser',_0x2b84b1[_0x652a('0x16')],_0x3675b7);_0xc65164(_0x286dca['error'](0x1f4,_0x2b84b1[_0x652a('0x16')]));});});};exports[_0x652a('0x24')]=function(_0x442d6f){var _0x260940=this;return new Promise(function(_0x192318,_0x5b5bd6){return db[_0x652a('0x19')]['find']({'raw':_0x442d6f[_0x652a('0x1b')]?_0x442d6f[_0x652a('0x1b')][_0x652a('0x1c')]===undefined?!![]:![]:!![],'where':_0x442d6f[_0x652a('0x1b')]?_0x442d6f[_0x652a('0x1b')]['where']||null:null,'attributes':_0x442d6f[_0x652a('0x1b')]?_0x442d6f[_0x652a('0x1b')][_0x652a('0x21')]||null:null,'include':_0x442d6f[_0x652a('0x1b')]?_0x442d6f[_0x652a('0x1b')][_0x652a('0x1f')]?_[_0x652a('0x22')](_0x442d6f[_0x652a('0x1b')]['include'],function(_0xb16384){return{'model':db[_0xb16384[_0x652a('0x20')]],'as':_0xb16384['as'],'attributes':_0xb16384[_0x652a('0x21')],'include':_0xb16384[_0x652a('0x1f')]?_[_0x652a('0x22')](_0xb16384[_0x652a('0x1f')],function(_0x2f2c66){return{'model':db[_0x2f2c66['model']],'as':_0x2f2c66['as'],'attributes':_0x2f2c66[_0x652a('0x21')],'include':_0x2f2c66[_0x652a('0x1f')]?_['map'](_0x2f2c66['include'],function(_0x3bf4e5){return{'model':db[_0x3bf4e5[_0x652a('0x20')]],'as':_0x3bf4e5['as'],'attributes':_0x3bf4e5[_0x652a('0x21')]};}):[]};}):[]};}):[]:[]})[_0x652a('0xf')](function(_0x55af2b){logger['info'](_0x652a('0x24'),_0x442d6f);logger[_0x652a('0x25')](_0x652a('0x24'),_0x442d6f,JSON['stringify'](_0x55af2b));_0x192318(_0x55af2b);})[_0x652a('0x18')](function(_0x57324b){logger[_0x652a('0x14')](_0x652a('0x24'),_0x57324b['message'],_0x442d6f);_0x5b5bd6(_0x260940[_0x652a('0x14')](0x1f4,_0x57324b[_0x652a('0x16')]));});});};exports['PauseUser']=function(_0x5093e5){var _0x2e6746=this;return new Promise(function(_0x3409b,_0x182bba){var _0x352d88;return db[_0x652a('0x19')]['find']({'where':_0x5093e5[_0x652a('0x1b')]['where']||{},'attributes':['id',_0x652a('0x26'),_0x652a('0x27'),_0x652a('0x28'),_0x652a('0x29')]})['then'](function(_0xc6dd03){if(_0xc6dd03){_0x352d88=_0xc6dd03;return db['UserVoiceQueueRt'][_0x652a('0x2a')]({'paused':0x1},{'where':{'UserId':_0x352d88['id']},'individualHooks':!![]});}})[_0x652a('0xf')](function(){if(_0x352d88){return db[_0x652a('0x2b')][_0x652a('0x1a')]({'where':{'membername':_0x352d88['name'],'type':_0x652a('0x2c'),'exitAt':null}});}})[_0x652a('0xf')](function(_0x2c081a){if(_0x352d88){if(_0x2c081a&&_0x2c081a[_0x652a('0x2d')]){var _0x4c8b4d=moment()['format'](_0x652a('0x2e'));for(var _0x2e04a6=0x0,_0x437273=_0x2c081a['length'];_0x2e04a6<_0x437273;_0x2e04a6++){_0x2c081a[_0x2e04a6]['updateAttributes']({'exitAt':_0x4c8b4d});}}}})[_0x652a('0xf')](function(){if(_0x352d88){var _0x45127b=[];var _0x34f2a3=utils['getChannels']();_0x34f2a3['forEach'](function(_0x57f440){_0x45127b['push']({'channel':_0x57f440,'membername':_0x352d88[_0x652a('0x26')],'interface':_[_0x652a('0x2f')](_0x352d88['interface'])?util['format'](_0x652a('0x30'),_0x352d88[_0x652a('0x26')]):_0x352d88[_0x652a('0x29')],'type':_0x652a('0x2c'),'enterAt':moment()[_0x652a('0x31')](_0x652a('0x2e')),'data1':_0x5093e5[_0x652a('0x32')][_0x652a('0x33')]||_0x652a('0x34'),'role':_0x352d88['role'],'internal':_0x352d88[_0x652a('0x28')],'uniqueid':_0x5093e5['body']['uniqueid']||null});});return db[_0x652a('0x2b')][_0x652a('0x35')](_0x45127b,{'individualHooks':!![]});}})[_0x652a('0xf')](function(){if(_0x352d88){return _0x352d88[_0x652a('0x2a')]({'voicePause':!![],'mailPause':!![],'chatPause':!![],'faxPause':!![],'smsPause':!![],'openchannelPause':!![],'whatsappPause':!![],'pauseType':_0x5093e5[_0x652a('0x32')]['type']||'DEFAULT\x20PAUSE','lastPauseAt':moment()[_0x652a('0x31')](_0x652a('0x2e'))});}})['then'](function(_0x3ba83a){_0x3409b(_0x3ba83a);})['catch'](function(_0x5eff3d){_0x182bba(_0x2e6746[_0x652a('0x14')](0x1f4,_0x5eff3d[_0x652a('0x16')]));});});};exports[_0x652a('0x36')]=function(_0x52ba92){var _0x507c76=this;return new Promise(function(_0x589245,_0x10c159){var _0x312266;return db[_0x652a('0x19')]['findOne']({'where':_0x52ba92[_0x652a('0x1b')][_0x652a('0x1d')]||{},'attributes':['id',_0x652a('0x26')]})['then'](function(_0x3f8806){if(_0x3f8806){_0x312266=_0x3f8806;if(_0x52ba92[_0x652a('0x32')]['channel']&&!utils[_0x652a('0x37')](_0x52ba92['body'][_0x652a('0x38')])){throw new Error(_0x652a('0x39'));}switch(_0x52ba92[_0x652a('0x32')][_0x652a('0x38')]){case'voice':return db[_0x652a('0x3a')][_0x652a('0x2a')]({'paused':0x0},{'where':{'UserId':_0x312266['id']}})[_0x652a('0xf')](function(){return db[_0x652a('0x2b')][_0x652a('0x3b')]({'where':{'channel':_0x52ba92['body'][_0x652a('0x38')],'membername':_0x312266['name'],'type':'PAUSE','exitAt':null}});})[_0x652a('0xf')](function(_0x3d414d){if(_0x3d414d){return _0x3d414d[_0x652a('0x2a')]({'exitAt':moment()[_0x652a('0x31')](_0x652a('0x2e')),'data2':_0x652a('0x3c')},{'individualHooks':!![]});}return null;})['then'](function(){return _0x312266[_0x652a('0x2a')]({'voicePause':![]});});case _0x652a('0x3d'):case _0x652a('0x3e'):case'fax':case'sms':case _0x652a('0x3f'):case _0x652a('0x40'):return db[_0x652a('0x2b')]['find']({'where':{'channel':_0x52ba92[_0x652a('0x32')][_0x652a('0x38')],'membername':_0x312266['name'],'type':_0x652a('0x2c'),'exitAt':null}})[_0x652a('0xf')](function(_0xde8fbb){return _0xde8fbb[_0x652a('0x2a')]({'exitAt':moment()[_0x652a('0x31')]('YYYY-MM-DD\x20HH:mm:ss'),'data2':_0x652a('0x3c')},{'individualHooks':!![]});})[_0x652a('0xf')](function(){var _0xa669f7={};_[_0x652a('0x41')](_0xa669f7,util[_0x652a('0x31')](_0x652a('0x42'),_0x52ba92[_0x652a('0x32')][_0x652a('0x38')],_0x652a('0x43')),![]);return _0x312266[_0x652a('0x2a')](_0xa669f7);});default:return db[_0x652a('0x3a')][_0x652a('0x2a')]({'paused':0x0},{'where':{'UserId':_0x312266['id']}})[_0x652a('0xf')](function(){return db[_0x652a('0x2b')][_0x652a('0x1a')]({'where':{'membername':_0x312266[_0x652a('0x26')],'type':_0x652a('0x2c'),'exitAt':null}});})['then'](function(_0x58ea0d){var _0x276490=[];_0x58ea0d['forEach'](function(_0x474954){_0x276490[_0x652a('0x44')](_0x474954[_0x652a('0x2a')]({'exitAt':moment()[_0x652a('0x31')](_0x652a('0x2e')),'data2':_0x652a('0x3c')}));});return BPromise[_0x652a('0x45')](_0x276490);})['then'](function(){return _0x312266['update']({'voicePause':![],'mailPause':![],'chatPause':![],'faxPause':![],'smsPause':![],'openchannelPause':![],'whatsappPause':![]});});}}})['then'](function(_0x261b88){_0x589245(_0x261b88);})[_0x652a('0x18')](function(_0x4d017d){_0x10c159(_0x507c76[_0x652a('0x14')](0x1f4,_0x4d017d['message']));});});};exports[_0x652a('0x46')]=function(_0x2b308c){var _0x48476d=this;return new Promise(function(_0xc12758,_0x110fc4){var _0x2248e6;return db['User'][_0x652a('0x47')]({'where':_0x2b308c[_0x652a('0x1b')]['where']||{},'attributes':['id',_0x652a('0x26')]})['then'](function(_0x6bea6d){if(_0x6bea6d){_0x2248e6=_0x6bea6d;return db[_0x652a('0x3a')][_0x652a('0x48')]({'where':{'membername':_0x2248e6[_0x652a('0x26')]},'individualHooks':!![]});}})[_0x652a('0xf')](function(){if(_0x2248e6){return db['MemberReport'][_0x652a('0x1a')]({'where':{'membername':_0x2248e6[_0x652a('0x26')],'exitAt':null}});}})['then'](function(_0x527931){if(_0x2248e6){if(_0x527931&&_0x527931['length']){var _0x5f26d5=[];_0x527931[_0x652a('0x49')](function(_0x4f5710){_0x5f26d5[_0x652a('0x44')](_0x4f5710[_0x652a('0x2a')]({'exitAt':moment()[_0x652a('0x31')](_0x652a('0x2e'))}));});return BPromise['all'](_0x5f26d5);}}})[_0x652a('0xf')](function(){if(_0x2248e6){return _0x2248e6[_0x652a('0x2a')]({'online':![],'voicePause':![],'mailPause':![],'chatPause':![],'faxPause':![],'smsPause':![],'openchannelPause':![]});}})[_0x652a('0xf')](function(_0x36ae4c){_0xc12758(_0x36ae4c);})[_0x652a('0x18')](function(_0x167198){_0x110fc4(_0x48476d[_0x652a('0x14')](0x1f4,_0x167198[_0x652a('0x16')]));});});};exports[_0x652a('0x4a')]=function(_0x57c838){var _0x23e177=this;return new Promise(function(_0x3269fd,_0x25d99a){var _0x31f285;var _0x5929e4;var _0x5783ca;var _0x435faf;return db[_0x652a('0x19')][_0x652a('0x47')]({'where':_0x57c838['options'][_0x652a('0x1d')]||{},'attributes':['id',_0x652a('0x26'),_0x652a('0x27'),'mobile',_0x652a('0x4b'),'internal',_0x652a('0x4c'),'interface']})['then'](function(_0x556df9){if(_0x556df9){_0x31f285=_0x556df9;_0x435faf=_0x57c838[_0x652a('0x32')][_0x652a('0x29')]?_0x57c838[_0x652a('0x32')][_0x652a('0x29')]:util[_0x652a('0x31')](_0x652a('0x30'),_0x31f285[_0x652a('0x26')]);return db[_0x652a('0x19')]['count']({'where':{'role':_0x652a('0x4d'),'online':!![],'id':{'$ne':_0x31f285['id']}}});}})[_0x652a('0xf')](function(_0x345000){if(_0x345000){_0x5783ca=_0x345000;return require('../../config/license/util')['getLicense']();}})[_0x652a('0xf')](function(_0x3d126d){if(_0x3d126d&&_0x3d126d[_0x652a('0x4e')]&&_0x5783ca>=_0x3d126d[_0x652a('0x4e')]){throw new Error(_0x652a('0x4f'));}})[_0x652a('0xf')](function(){if(_0x31f285){return db[_0x652a('0x3a')]['destroy']({'where':{'membername':_0x31f285[_0x652a('0x26')]},'individualHooks':!![]});}})[_0x652a('0xf')](function(){if(_0x31f285){return _0x31f285[_0x652a('0x50')]({'raw':!![]});}})[_0x652a('0xf')](function(_0x41df5b){if(_0x31f285){if(_0x41df5b){var _0x31ba1d=[];_0x5929e4=_0x41df5b;if(_0x5929e4[_0x652a('0x2d')]){for(var _0x493f03=0x0;_0x493f03<_0x5929e4[_0x652a('0x2d')];_0x493f03++){_0x31ba1d['push'](db['UserVoiceQueueRt'][_0x652a('0x51')]({'membername':_0x31f285[_0x652a('0x26')],'UserId':_0x31f285['id'],'queue_name':_0x5929e4[_0x493f03][_0x652a('0x26')],'VoiceQueueId':_0x5929e4[_0x493f03]['id'],'interface':_0x435faf,'paused':_0x31f285[_0x652a('0x4c')]||![],'penalty':_0x5929e4[_0x493f03][_0x652a('0x52')]||0x0}));}return BPromise[_0x652a('0x45')](_0x31ba1d);}}}})[_0x652a('0xf')](function(){if(_0x31f285){return db[_0x652a('0x2b')][_0x652a('0x1a')]({'where':{'membername':_0x31f285[_0x652a('0x26')],'exitAt':null}});}})['then'](function(_0x31c52f){if(_0x31f285){if(_0x31c52f&&_0x31c52f[_0x652a('0x2d')]){var _0x517647=[];_0x31c52f[_0x652a('0x49')](function(_0x3afd7c){_0x517647[_0x652a('0x44')](_0x3afd7c[_0x652a('0x2a')]({'exitAt':moment()[_0x652a('0x31')]('YYYY-MM-DD\x20HH:mm:ss')}));});return BPromise[_0x652a('0x45')](_0x517647);}}})[_0x652a('0xf')](function(_0x149182){if(_0x31f285){var _0x44aaf5=[];var _0x4193da=[];var _0x2e34e6=utils[_0x652a('0x53')]();var _0x1b8f3b={'membername':_0x31f285['name'],'interface':_0x435faf,'enterAt':moment()['format'](_0x652a('0x2e')),'role':_0x31f285[_0x652a('0x27')],'internal':_0x31f285['internal']};_0x2e34e6[_0x652a('0x49')](function(_0xf82252){_0x44aaf5[_0x652a('0x44')](_[_0x652a('0x54')]({'channel':_0xf82252,'type':_0x652a('0x55'),'data1':_0x652a('0x56'),'data2':_0x435faf},_0x1b8f3b));if(_0x31f285['loginInPause']){_0x4193da[_0x652a('0x44')](_[_0x652a('0x54')]({'channel':_0xf82252,'type':_0x652a('0x2c'),'data1':_0x652a('0x57')},_0x1b8f3b));}});return db['MemberReport'][_0x652a('0x35')](_0x44aaf5[_0x652a('0x58')](_0x4193da),{'individualHooks':!![]});}})['then'](function(){if(_0x31f285){return _0x31f285[_0x652a('0x2a')]({'online':!![],'lastLoginAt':moment()['format'](_0x652a('0x2e')),'voicePause':_0x31f285[_0x652a('0x4c')]||![],'mailPause':_0x31f285['loginInPause']||![],'chatPause':_0x31f285[_0x652a('0x4c')]||![],'faxPause':_0x31f285[_0x652a('0x4c')]||![],'smsPause':_0x31f285[_0x652a('0x4c')]||![],'openchannelPause':_0x31f285[_0x652a('0x4c')]||![],'pauseType':_0x31f285[_0x652a('0x4c')]?_0x652a('0x57'):null,'lastPauseAt':moment()[_0x652a('0x31')](_0x652a('0x2e')),'interface':_0x435faf});}})['then'](function(_0xd681ff){_0x3269fd(_0xd681ff);})[_0x652a('0x18')](function(_0x3e19ef){_0x25d99a(_0x23e177[_0x652a('0x14')](0x1f4,_0x3e19ef['message']));});});};
\ No newline at end of file