Built motion from commit d5e4af8c.|2.6.23
[motion2.git] / server / api / chatMessage / chatMessage.controller.js
1 // *************************************************************************
2 // *                                                                       *
3 // * xCALLY Motion -  The Omnichannel Contact Center                       *
4 // * Copyright (c) Xenialab s.r.l. All Rights Reserved                     *
5 // *                                                                       *
6 // *************************************************************************
7 // *                                                                       *
8 // * Email: info@xcally.com                                                *
9 // * Website: https://www.xcally.com                                       *
10 // *                                                                       *
11 // *************************************************************************
12 // *                                                                       *
13 // * The SOFTWARE PRODUCT is protected by copyright laws and international *
14 // * copyright treaties, as well as other intellectual property laws and   *
15 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                         *
16 // *                                                                       *
17 // *************************************************************************
18 var _0xd2eb=['merge','VIRTUAL','options','then','includeAll','include','findAll','rows','keys','find','catch','create','body','params','destroy','describe','chat-interactions','accept','read','format','UserId','user','get','ChatInteraction','ChatInteractionId','isNil','read1stAt','YYYY-MM-DD\x20HH:mm:ss','interaction','null','acceptMessage','SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20','ContactId','Sequelize','QueryTypes','SELECT','contact','User','agent','fullname','manual','interface','SIP/%s','channel','event','EventManager','acceptmessage','parse','formData','chat','[CHATMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','role','RejectMessage','rejectMessage','sequelize','email','motionChannel','rejectmessage','eml-format','rimraf','zip-dir','request-promise','moment','bluebird','mustache','sox','ejs','fs-extra','lodash','squel','crypto','jsforce','desk.js','to-csv','querystring','papaparse','ioredis','../../components/auth/service','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/license/util','../../mysqldb','redis','localhost','socket.io-emitter','./chatMessage.socket','register','jayson/promise','client','http','request','info','ChatMessage,\x20%s,\x20%s','request\x20sent','ChatMessage,\x20%s,\x20%s,\x20%s','stringify','error','code','message','result','status','end','undefined','limit','count','offset','set','Content-Range','json','apply','reject','save','update','sendStatus','stack','name','send','ChatMessage','rawAttributes','key','model','map','query','filters','intersection','attributes','fields','length','hasOwnProperty','sort','where','pick','filter'];(function(_0x5401da,_0x572809){var _0x2e669e=function(_0x382b70){while(--_0x382b70){_0x5401da['push'](_0x5401da['shift']());}};_0x2e669e(++_0x572809);}(_0xd2eb,0x1cf));var _0xbd2e=function(_0x2f8b82,_0x62abcb){_0x2f8b82=_0x2f8b82-0x0;var _0x60afef=_0xd2eb[_0x2f8b82];return _0x60afef;};'use strict';var emlformat=require(_0xbd2e('0x0'));var rimraf=require(_0xbd2e('0x1'));var zipdir=require(_0xbd2e('0x2'));var jsonpatch=require('fast-json-patch');var rp=require(_0xbd2e('0x3'));var moment=require(_0xbd2e('0x4'));var BPromise=require(_0xbd2e('0x5'));var Mustache=require(_0xbd2e('0x6'));var util=require('util');var path=require('path');var sox=require(_0xbd2e('0x7'));var csv=require('to-csv');var ejs=require(_0xbd2e('0x8'));var fs=require('fs');var fs_extra=require(_0xbd2e('0x9'));var _=require(_0xbd2e('0xa'));var squel=require(_0xbd2e('0xb'));var crypto=require(_0xbd2e('0xc'));var jsforce=require(_0xbd2e('0xd'));var deskjs=require(_0xbd2e('0xe'));var toCsv=require(_0xbd2e('0xf'));var querystring=require(_0xbd2e('0x10'));var Papa=require(_0xbd2e('0x11'));var Redis=require(_0xbd2e('0x12'));var authService=require(_0xbd2e('0x13'));var qs=require('../../components/parsers/qs');var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0xbd2e('0x14'));var logger=require(_0xbd2e('0x15'))(_0xbd2e('0x16'));var utils=require(_0xbd2e('0x17'));var config=require('../../config/environment');var licenseUtil=require(_0xbd2e('0x18'));var db=require(_0xbd2e('0x19'))['db'];config[_0xbd2e('0x1a')]=_['defaults'](config[_0xbd2e('0x1a')],{'host':_0xbd2e('0x1b'),'port':0x18eb});var socket=require(_0xbd2e('0x1c'))(new Redis(config[_0xbd2e('0x1a')]));require(_0xbd2e('0x1d'))[_0xbd2e('0x1e')](socket);var jayson=require(_0xbd2e('0x1f'));var client=jayson[_0xbd2e('0x20')][_0xbd2e('0x21')]({'port':0x232c});var client9002=jayson[_0xbd2e('0x20')][_0xbd2e('0x21')]({'port':0x232a});function respondWithRpcPromise(_0x3f98c5,_0x21037c,_0x100d14,_0x3327e0){return new BPromise(function(_0x420e9b,_0x4096d9){var _0x2d9b39=_0x3327e0||client;return _0x2d9b39[_0xbd2e('0x22')](_0x3f98c5,_0x100d14)['then'](function(_0x4b2a27){logger[_0xbd2e('0x23')](_0xbd2e('0x24'),_0x21037c,_0xbd2e('0x25'));logger['debug'](_0xbd2e('0x26'),_0x21037c,_0xbd2e('0x25'),JSON[_0xbd2e('0x27')](_0x4b2a27));if(_0x4b2a27[_0xbd2e('0x28')]){if(_0x4b2a27[_0xbd2e('0x28')][_0xbd2e('0x29')]===0x1f4){logger['error']('ChatMessage,\x20%s,\x20%s',_0x21037c,_0x4b2a27[_0xbd2e('0x28')][_0xbd2e('0x2a')]);return _0x4096d9(_0x4b2a27['error'][_0xbd2e('0x2a')]);}logger[_0xbd2e('0x28')](_0xbd2e('0x24'),_0x21037c,_0x4b2a27[_0xbd2e('0x28')][_0xbd2e('0x2a')]);return _0x420e9b(_0x4b2a27[_0xbd2e('0x28')]['message']);}else{logger[_0xbd2e('0x23')](_0xbd2e('0x24'),_0x21037c,'request\x20sent');_0x420e9b(_0x4b2a27[_0xbd2e('0x2b')][_0xbd2e('0x2a')]);}})['catch'](function(_0xa7673){logger[_0xbd2e('0x28')](_0xbd2e('0x24'),_0x21037c,_0xa7673);_0x4096d9(_0xa7673);});});}function respondWithStatusCode(_0x3d7ec8,_0x443cb0){_0x443cb0=_0x443cb0||0xcc;return function(_0x253715){if(_0x253715){return _0x3d7ec8['sendStatus'](_0x443cb0);}return _0x3d7ec8[_0xbd2e('0x2c')](_0x443cb0)[_0xbd2e('0x2d')]();};}function respondWithResult(_0x5726f6,_0x11c6a3){_0x11c6a3=_0x11c6a3||0xc8;return function(_0x1e1db0){if(_0x1e1db0){return _0x5726f6[_0xbd2e('0x2c')](_0x11c6a3)['json'](_0x1e1db0);}};}function respondWithFilteredResult(_0x33d845,_0x2671c4){return function(_0x16cced){if(_0x16cced){var _0x52156a=typeof _0x2671c4['offset']===_0xbd2e('0x2e')&&typeof _0x2671c4[_0xbd2e('0x2f')]===_0xbd2e('0x2e');var _0x408cf5=_0x16cced[_0xbd2e('0x30')];var _0x470670=_0x52156a?0x0:_0x2671c4[_0xbd2e('0x31')];var _0x48c266=_0x52156a?_0x16cced[_0xbd2e('0x30')]:_0x2671c4[_0xbd2e('0x31')]+_0x2671c4[_0xbd2e('0x2f')];var _0x2af6a1;if(_0x48c266>=_0x408cf5){_0x48c266=_0x408cf5;_0x2af6a1=0xc8;}else{_0x2af6a1=0xce;}_0x33d845['status'](_0x2af6a1);return _0x33d845[_0xbd2e('0x32')](_0xbd2e('0x33'),_0x470670+'-'+_0x48c266+'/'+_0x408cf5)[_0xbd2e('0x34')](_0x16cced);}return null;};}function patchUpdates(_0x504fef){return function(_0x3d0b56){try{jsonpatch[_0xbd2e('0x35')](_0x3d0b56,_0x504fef,!![]);}catch(_0x49c254){return BPromise[_0xbd2e('0x36')](_0x49c254);}return _0x3d0b56[_0xbd2e('0x37')]();};}function saveUpdates(_0x24247f,_0x30904e){return function(_0x4526db){if(_0x4526db){return _0x4526db[_0xbd2e('0x38')](_0x24247f)['then'](function(_0x5596ec){return _0x5596ec;});}return null;};}function removeEntity(_0xa29ce6,_0x309321){return function(_0x1c8a51){if(_0x1c8a51){return _0x1c8a51['destroy']()['then'](function(){_0xa29ce6[_0xbd2e('0x2c')](0xcc)[_0xbd2e('0x2d')]();});}};}function handleEntityNotFound(_0xfae1f4,_0x242432){return function(_0x4dd636){if(!_0x4dd636){_0xfae1f4[_0xbd2e('0x39')](0x194);}return _0x4dd636;};}function handleError(_0x26e2ba,_0x574ce4){_0x574ce4=_0x574ce4||0x1f4;return function(_0xf2776d){logger[_0xbd2e('0x28')](_0xf2776d[_0xbd2e('0x3a')]);if(_0xf2776d[_0xbd2e('0x3b')]){delete _0xf2776d['name'];}_0x26e2ba[_0xbd2e('0x2c')](_0x574ce4)[_0xbd2e('0x3c')](_0xf2776d);};}exports['index']=function(_0x51443f,_0xbfce34){var _0x524d35={},_0x5b1103={},_0x1c91a2={'count':0x0,'rows':[]};var _0x1b3de6=_['map'](db[_0xbd2e('0x3d')][_0xbd2e('0x3e')],function(_0x36edfb){return{'name':_0x36edfb['fieldName'],'type':_0x36edfb['type'][_0xbd2e('0x3f')]};});_0x5b1103[_0xbd2e('0x40')]=_[_0xbd2e('0x41')](_0x1b3de6,'name');_0x5b1103[_0xbd2e('0x42')]=_['keys'](_0x51443f[_0xbd2e('0x42')]);_0x5b1103[_0xbd2e('0x43')]=_[_0xbd2e('0x44')](_0x5b1103[_0xbd2e('0x40')],_0x5b1103[_0xbd2e('0x42')]);_0x524d35[_0xbd2e('0x45')]=_[_0xbd2e('0x44')](_0x5b1103[_0xbd2e('0x40')],qs[_0xbd2e('0x46')](_0x51443f['query'][_0xbd2e('0x46')]));_0x524d35[_0xbd2e('0x45')]=_0x524d35[_0xbd2e('0x45')][_0xbd2e('0x47')]?_0x524d35[_0xbd2e('0x45')]:_0x5b1103[_0xbd2e('0x40')];if(!_0x51443f['query'][_0xbd2e('0x48')]('nolimit')){_0x524d35[_0xbd2e('0x2f')]=qs['limit'](_0x51443f[_0xbd2e('0x42')][_0xbd2e('0x2f')]);_0x524d35['offset']=qs[_0xbd2e('0x31')](_0x51443f[_0xbd2e('0x42')][_0xbd2e('0x31')]);}_0x524d35['order']=qs[_0xbd2e('0x49')](_0x51443f['query'][_0xbd2e('0x49')]);_0x524d35[_0xbd2e('0x4a')]=qs[_0xbd2e('0x43')](_[_0xbd2e('0x4b')](_0x51443f[_0xbd2e('0x42')],_0x5b1103['filters']),_0x1b3de6);if(_0x51443f[_0xbd2e('0x42')][_0xbd2e('0x4c')]){_0x524d35['where']=_[_0xbd2e('0x4d')](_0x524d35['where'],{'$or':_[_0xbd2e('0x41')](_0x1b3de6,function(_0x4c09d1){if(_0x4c09d1['type']!==_0xbd2e('0x4e')){var _0x7a649e={};_0x7a649e[_0x4c09d1[_0xbd2e('0x3b')]]={'$like':'%'+_0x51443f[_0xbd2e('0x42')][_0xbd2e('0x4c')]+'%'};return _0x7a649e;}})});}_0x524d35=_[_0xbd2e('0x4d')]({},_0x524d35,_0x51443f[_0xbd2e('0x4f')]);var _0x50353a={'where':_0x524d35[_0xbd2e('0x4a')]};return db['ChatMessage']['count'](_0x50353a)[_0xbd2e('0x50')](function(_0x14f150){_0x1c91a2[_0xbd2e('0x30')]=_0x14f150;if(_0x51443f['query'][_0xbd2e('0x51')]){_0x524d35[_0xbd2e('0x52')]=[{'all':!![]}];}return db[_0xbd2e('0x3d')][_0xbd2e('0x53')](_0x524d35);})[_0xbd2e('0x50')](function(_0x390a08){_0x1c91a2[_0xbd2e('0x54')]=_0x390a08;return _0x1c91a2;})['then'](respondWithFilteredResult(_0xbfce34,_0x524d35))['catch'](handleError(_0xbfce34,null));};exports['show']=function(_0x54ff6c,_0x38302d){var _0x1d2f70={'raw':!![],'where':{'id':_0x54ff6c['params']['id']}},_0x41a5ad={};_0x41a5ad['model']=_[_0xbd2e('0x55')](db['ChatMessage'][_0xbd2e('0x3e')]);_0x41a5ad[_0xbd2e('0x42')]=_[_0xbd2e('0x55')](_0x54ff6c[_0xbd2e('0x42')]);_0x41a5ad[_0xbd2e('0x43')]=_[_0xbd2e('0x44')](_0x41a5ad[_0xbd2e('0x40')],_0x41a5ad[_0xbd2e('0x42')]);_0x1d2f70[_0xbd2e('0x45')]=_['intersection'](_0x41a5ad[_0xbd2e('0x40')],qs['fields'](_0x54ff6c[_0xbd2e('0x42')][_0xbd2e('0x46')]));_0x1d2f70[_0xbd2e('0x45')]=_0x1d2f70[_0xbd2e('0x45')]['length']?_0x1d2f70['attributes']:_0x41a5ad[_0xbd2e('0x40')];if(_0x54ff6c[_0xbd2e('0x42')]['includeAll']){_0x1d2f70[_0xbd2e('0x52')]=[{'all':!![]}];}_0x1d2f70=_[_0xbd2e('0x4d')]({},_0x1d2f70,_0x54ff6c['options']);return db['ChatMessage'][_0xbd2e('0x56')](_0x1d2f70)[_0xbd2e('0x50')](handleEntityNotFound(_0x38302d,null))[_0xbd2e('0x50')](respondWithResult(_0x38302d,null))[_0xbd2e('0x57')](handleError(_0x38302d,null));};exports[_0xbd2e('0x58')]=function(_0xb47842,_0x42a36f){return db[_0xbd2e('0x3d')][_0xbd2e('0x58')](_0xb47842['body'],{})[_0xbd2e('0x50')](respondWithResult(_0x42a36f,0xc9))[_0xbd2e('0x57')](handleError(_0x42a36f,null));};exports['update']=function(_0x4612b0,_0x288465){if(_0x4612b0[_0xbd2e('0x59')]['id']){delete _0x4612b0[_0xbd2e('0x59')]['id'];}return db[_0xbd2e('0x3d')][_0xbd2e('0x56')]({'where':{'id':_0x4612b0[_0xbd2e('0x5a')]['id']}})[_0xbd2e('0x50')](handleEntityNotFound(_0x288465,null))[_0xbd2e('0x50')](saveUpdates(_0x4612b0[_0xbd2e('0x59')],null))[_0xbd2e('0x50')](respondWithResult(_0x288465,null))[_0xbd2e('0x57')](handleError(_0x288465,null));};exports[_0xbd2e('0x5b')]=function(_0x175ae5,_0x1cb705){return db[_0xbd2e('0x3d')]['find']({'where':{'id':_0x175ae5[_0xbd2e('0x5a')]['id']}})[_0xbd2e('0x50')](handleEntityNotFound(_0x1cb705,null))[_0xbd2e('0x50')](removeEntity(_0x1cb705,null))['catch'](handleError(_0x1cb705,null));};exports[_0xbd2e('0x5c')]=function(_0x48eb7b,_0x545ad8){return db[_0xbd2e('0x3d')][_0xbd2e('0x5c')]()['then'](respondWithResult(_0x545ad8,null))[_0xbd2e('0x57')](handleError(_0x545ad8,null));};var interaction_log=require(_0xbd2e('0x15'))(_0xbd2e('0x5d'));exports[_0xbd2e('0x5e')]=function(_0x34739b,_0x2647fb,_0x3fe782){var _0x37ba0e={'agent':{},'channel':'chat'};if(_0x34739b[_0xbd2e('0x59')]['id']){delete _0x34739b[_0xbd2e('0x59')]['id'];}_0x34739b[_0xbd2e('0x59')][_0xbd2e('0x5f')]=!![];_0x34739b[_0xbd2e('0x59')]['readAt']=moment()[_0xbd2e('0x60')]('YYYY-MM-DD\x20HH:mm:ss');_0x34739b[_0xbd2e('0x59')][_0xbd2e('0x61')]=_0x34739b['body'][_0xbd2e('0x61')]||_0x34739b[_0xbd2e('0x62')]['id'];_0x37ba0e['agent']['id']=_0x34739b[_0xbd2e('0x59')]['UserId'];return db[_0xbd2e('0x3d')]['find']({'where':{'id':_0x34739b[_0xbd2e('0x5a')]['id'],'UserId':null}})[_0xbd2e('0x50')](handleEntityNotFound(_0x2647fb,null))[_0xbd2e('0x50')](saveUpdates(_0x34739b['body'],null))[_0xbd2e('0x50')](function(_0x3a06db){if(_0x3a06db){_0x37ba0e[_0xbd2e('0x2a')]=_0x3a06db[_0xbd2e('0x63')]({'plain':!![]});return db[_0xbd2e('0x64')][_0xbd2e('0x56')]({'where':{'id':_0x3a06db[_0xbd2e('0x65')]}});}return null;})['then'](handleEntityNotFound(_0x2647fb,null))[_0xbd2e('0x50')](function(_0x10f740){if(_0x10f740){return _0x10f740[_0xbd2e('0x38')]({'UserId':_0x34739b[_0xbd2e('0x59')][_0xbd2e('0x61')],'read1stAt':_[_0xbd2e('0x66')](_0x10f740[_0xbd2e('0x67')])?moment()[_0xbd2e('0x60')](_0xbd2e('0x68')):undefined});}return null;})['then'](function(_0x30076a){if(_0x30076a){_0x37ba0e[_0xbd2e('0x69')]=_0x30076a[_0xbd2e('0x63')]({'plain':!![]});interaction_log[_0xbd2e('0x23')]('[CHATMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s',_0x34739b[_0xbd2e('0x62')]['id'],_0x34739b[_0xbd2e('0x62')]['name'],_0x34739b['user']['role'],_0x37ba0e[_0xbd2e('0x69')]['id'],_0x34739b['body']?JSON['stringify'](_0x34739b['body']):_0xbd2e('0x6a'));return respondWithRpcPromise('AcceptMessage',_0xbd2e('0x6b'),_0x37ba0e);}return null;})[_0xbd2e('0x50')](function(_0x3e485f){var _0x2be706=_0xbd2e('0x6c')+_0x3e485f[_0xbd2e('0x2a')][_0xbd2e('0x6d')];return db['sequelize'][_0xbd2e('0x42')](_0x2be706,{'type':db[_0xbd2e('0x6e')][_0xbd2e('0x6f')][_0xbd2e('0x70')],'raw':!![]})[_0xbd2e('0x50')](function(_0x3505e3){return _0x3505e3;});})[_0xbd2e('0x50')](function(_0x262041){if(_0x262041){_0x37ba0e[_0xbd2e('0x2a')][_0xbd2e('0x71')]=_0x262041[0x0];if(!_0x34739b[_0xbd2e('0x59')][_0xbd2e('0x61')])return;return db[_0xbd2e('0x72')][_0xbd2e('0x56')]({'where':{'id':_0x34739b['body']['UserId'],'role':_0xbd2e('0x73')},'attributes':['id','name',_0xbd2e('0x74'),'email','internal'],'raw':!![]});}return null;})['then'](function(_0x585116){if(!_0x585116)return null;_0x37ba0e[_0xbd2e('0x2a')][_0xbd2e('0x73')]=_0x585116;return _0x37ba0e;})['then'](function(_0x27cfb6){if(_0x27cfb6){if(_0x34739b['body'][_0xbd2e('0x75')]){_0x37ba0e['message'][_0xbd2e('0x76')]=util[_0xbd2e('0x60')](_0xbd2e('0x77'),_0x34739b[_0xbd2e('0x62')]['name']);_0x37ba0e[_0xbd2e('0x2a')][_0xbd2e('0x78')]=_0x37ba0e[_0xbd2e('0x78')];_0x37ba0e[_0xbd2e('0x2a')]['motionChannel']=_0x37ba0e[_0xbd2e('0x78')];_0x37ba0e[_0xbd2e('0x2a')][_0xbd2e('0x79')]=_0xbd2e('0x5e');return respondWithRpcPromise(_0xbd2e('0x7a'),_0xbd2e('0x7a'),{'event':_0xbd2e('0x7b'),'message':_[_0xbd2e('0x4d')](_0x37ba0e['message'],JSON[_0xbd2e('0x7c')](_0x37ba0e['interaction'][_0xbd2e('0x7d')]))},client9002)['then'](function(){return _0x37ba0e;});}return _0x37ba0e;}return null;})['then'](respondWithResult(_0x2647fb,null))['catch'](handleError(_0x2647fb,null));};var interaction_log=require('../../config/logger')(_0xbd2e('0x5d'));exports[_0xbd2e('0x36')]=function(_0xf7f935,_0x3770f9,_0x2ff52e){var _0x1104be={'agent':{},'channel':_0xbd2e('0x7e')};if(_0xf7f935[_0xbd2e('0x59')]['id']){delete _0xf7f935[_0xbd2e('0x59')]['id'];}_0xf7f935[_0xbd2e('0x59')][_0xbd2e('0x61')]=_0xf7f935[_0xbd2e('0x59')]['UserId']||_0xf7f935[_0xbd2e('0x62')]['id'];_0x1104be[_0xbd2e('0x73')]['id']=_0xf7f935[_0xbd2e('0x59')][_0xbd2e('0x61')];return db[_0xbd2e('0x3d')]['find']({'where':{'id':_0xf7f935[_0xbd2e('0x5a')]['id'],'UserId':null}})[_0xbd2e('0x50')](handleEntityNotFound(_0x3770f9,null))[_0xbd2e('0x50')](function(_0x355e61){if(_0x355e61){_0x1104be[_0xbd2e('0x2a')]=_0x355e61[_0xbd2e('0x63')]({'plain':!![]});return db[_0xbd2e('0x64')][_0xbd2e('0x56')]({'where':{'id':_0x355e61[_0xbd2e('0x65')]}});}return null;})[_0xbd2e('0x50')](handleEntityNotFound(_0x3770f9,null))['then'](function(_0x4a4343){if(_0x4a4343){_0x1104be[_0xbd2e('0x69')]=_0x4a4343[_0xbd2e('0x63')]({'plain':!![]});interaction_log['info'](_0xbd2e('0x7f'),_0xf7f935['user']['id'],_0xf7f935[_0xbd2e('0x62')][_0xbd2e('0x3b')],_0xf7f935[_0xbd2e('0x62')][_0xbd2e('0x80')],_0x1104be[_0xbd2e('0x69')]['id'],_0xf7f935[_0xbd2e('0x59')]?JSON[_0xbd2e('0x27')](_0xf7f935[_0xbd2e('0x59')]):_0xbd2e('0x6a'));return respondWithRpcPromise(_0xbd2e('0x81'),_0xbd2e('0x82'),_0x1104be);}return null;})[_0xbd2e('0x50')](function(_0x11dd41){var _0x40ffc5=_0xbd2e('0x6c')+_0x11dd41[_0xbd2e('0x2a')][_0xbd2e('0x6d')];return db[_0xbd2e('0x83')]['query'](_0x40ffc5,{'type':db['Sequelize'][_0xbd2e('0x6f')][_0xbd2e('0x70')],'raw':!![]})[_0xbd2e('0x50')](function(_0x2b7082){return _0x2b7082;});})['then'](function(_0x2763c7){if(_0x2763c7){_0x1104be[_0xbd2e('0x2a')][_0xbd2e('0x71')]=_0x2763c7[0x0];if(!_0xf7f935['body'][_0xbd2e('0x61')])return;return db[_0xbd2e('0x72')][_0xbd2e('0x56')]({'where':{'id':_0xf7f935[_0xbd2e('0x59')][_0xbd2e('0x61')],'role':_0xbd2e('0x73')},'attributes':['id',_0xbd2e('0x3b'),'fullname',_0xbd2e('0x84'),'internal'],'raw':!![]});}return null;})[_0xbd2e('0x50')](function(_0x1e3488){if(!_0x1e3488)return null;_0x1104be[_0xbd2e('0x2a')][_0xbd2e('0x73')]=_0x1e3488;return _0x1104be;})[_0xbd2e('0x50')](function(_0x261e07){if(_0x261e07){_0x261e07[_0xbd2e('0x2a')][_0xbd2e('0x76')]=util[_0xbd2e('0x60')](_0xbd2e('0x77'),_0xf7f935[_0xbd2e('0x62')][_0xbd2e('0x3b')]);_0x261e07[_0xbd2e('0x2a')]['channel']=_0x1104be[_0xbd2e('0x78')];_0x261e07['message'][_0xbd2e('0x85')]=_0x1104be[_0xbd2e('0x78')];_0x261e07[_0xbd2e('0x2a')][_0xbd2e('0x79')]=_0xbd2e('0x36');respondWithRpcPromise('EventManager',_0xbd2e('0x7a'),{'event':_0xbd2e('0x86'),'message':_['merge'](_0x1104be[_0xbd2e('0x2a')],JSON[_0xbd2e('0x7c')](_0x1104be[_0xbd2e('0x69')][_0xbd2e('0x7d')]))},client9002);return _0x1104be;}return null;})[_0xbd2e('0x50')](respondWithResult(_0x3770f9,null))[_0xbd2e('0x57')](handleError(_0x3770f9,null));};