Built motion from commit a679711e.|2.6.15
[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 _0xed33=['send','index','map','ChatMessage','rawAttributes','type','key','model','keys','query','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','filters','pick','filter','merge','VIRTUAL','options','includeAll','include','findAll','rows','show','params','find','create','body','describe','chat-interactions','chat','readAt','format','YYYY-MM-DD\x20HH:mm:ss','UserId','user','agent','get','ChatInteraction','isNil','read1stAt','interaction','info','[CHATMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','AcceptMessage','acceptMessage','SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20','Sequelize','QueryTypes','SELECT','fullname','internal','manual','SIP/%s','channel','motionChannel','event','accept','EventManager','acceptmessage','parse','ChatInteractionId','[CHATMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','null','rejectMessage','ContactId','sequelize','contact','User','email','interface','rejectmessage','formData','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','sox','to-csv','ejs','fs-extra','lodash','squel','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','../../config/license/util','redis','./chatMessage.socket','jayson/promise','client','http','request','then','ChatMessage,\x20%s,\x20%s','request\x20sent','debug','ChatMessage,\x20%s,\x20%s,\x20%s','stringify','error','code','message','result','catch','sendStatus','end','json','undefined','limit','count','offset','set','Content-Range','reject','save','update','destroy','status','name'];(function(_0x5e3167,_0xf05dcd){var _0x17f61c=function(_0x19efd9){while(--_0x19efd9){_0x5e3167['push'](_0x5e3167['shift']());}};_0x17f61c(++_0xf05dcd);}(_0xed33,0xda));var _0x3ed3=function(_0x24cabd,_0x1554b6){_0x24cabd=_0x24cabd-0x0;var _0x2d2a9f=_0xed33[_0x24cabd];return _0x2d2a9f;};'use strict';var emlformat=require(_0x3ed3('0x0'));var rimraf=require(_0x3ed3('0x1'));var zipdir=require(_0x3ed3('0x2'));var jsonpatch=require(_0x3ed3('0x3'));var rp=require(_0x3ed3('0x4'));var moment=require(_0x3ed3('0x5'));var BPromise=require(_0x3ed3('0x6'));var Mustache=require(_0x3ed3('0x7'));var util=require(_0x3ed3('0x8'));var path=require('path');var sox=require(_0x3ed3('0x9'));var csv=require(_0x3ed3('0xa'));var ejs=require(_0x3ed3('0xb'));var fs=require('fs');var fs_extra=require(_0x3ed3('0xc'));var _=require(_0x3ed3('0xd'));var squel=require(_0x3ed3('0xe'));var crypto=require('crypto');var jsforce=require(_0x3ed3('0xf'));var deskjs=require(_0x3ed3('0x10'));var toCsv=require(_0x3ed3('0xa'));var querystring=require(_0x3ed3('0x11'));var Papa=require(_0x3ed3('0x12'));var Redis=require(_0x3ed3('0x13'));var authService=require(_0x3ed3('0x14'));var qs=require(_0x3ed3('0x15'));var as=require(_0x3ed3('0x16'));var hardwareService=require(_0x3ed3('0x17'));var logger=require(_0x3ed3('0x18'))('api');var utils=require(_0x3ed3('0x19'));var config=require(_0x3ed3('0x1a'));var licenseUtil=require(_0x3ed3('0x1b'));var db=require('../../mysqldb')['db'];config[_0x3ed3('0x1c')]=_['defaults'](config[_0x3ed3('0x1c')],{'host':'localhost','port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config['redis']));require(_0x3ed3('0x1d'))['register'](socket);var jayson=require(_0x3ed3('0x1e'));var client=jayson[_0x3ed3('0x1f')][_0x3ed3('0x20')]({'port':0x232c});var client9002=jayson[_0x3ed3('0x1f')]['http']({'port':0x232a});function respondWithRpcPromise(_0x8033df,_0x2c6727,_0x244cb6,_0x5dbcda){return new BPromise(function(_0x112745,_0x10bc0c){var _0x4722c6=_0x5dbcda||client;return _0x4722c6[_0x3ed3('0x21')](_0x8033df,_0x244cb6)[_0x3ed3('0x22')](function(_0x1143eb){logger['info'](_0x3ed3('0x23'),_0x2c6727,_0x3ed3('0x24'));logger[_0x3ed3('0x25')](_0x3ed3('0x26'),_0x2c6727,_0x3ed3('0x24'),JSON[_0x3ed3('0x27')](_0x1143eb));if(_0x1143eb[_0x3ed3('0x28')]){if(_0x1143eb[_0x3ed3('0x28')][_0x3ed3('0x29')]===0x1f4){logger[_0x3ed3('0x28')]('ChatMessage,\x20%s,\x20%s',_0x2c6727,_0x1143eb[_0x3ed3('0x28')][_0x3ed3('0x2a')]);return _0x10bc0c(_0x1143eb[_0x3ed3('0x28')]['message']);}logger[_0x3ed3('0x28')](_0x3ed3('0x23'),_0x2c6727,_0x1143eb['error']['message']);return _0x112745(_0x1143eb['error'][_0x3ed3('0x2a')]);}else{logger['info'](_0x3ed3('0x23'),_0x2c6727,_0x3ed3('0x24'));_0x112745(_0x1143eb[_0x3ed3('0x2b')][_0x3ed3('0x2a')]);}})[_0x3ed3('0x2c')](function(_0x19ebbd){logger[_0x3ed3('0x28')](_0x3ed3('0x23'),_0x2c6727,_0x19ebbd);_0x10bc0c(_0x19ebbd);});});}function respondWithStatusCode(_0x4bef65,_0x1b2b74){_0x1b2b74=_0x1b2b74||0xcc;return function(_0x5b018a){if(_0x5b018a){return _0x4bef65[_0x3ed3('0x2d')](_0x1b2b74);}return _0x4bef65['status'](_0x1b2b74)[_0x3ed3('0x2e')]();};}function respondWithResult(_0x2ddd27,_0x4146cc){_0x4146cc=_0x4146cc||0xc8;return function(_0x2d9283){if(_0x2d9283){return _0x2ddd27['status'](_0x4146cc)[_0x3ed3('0x2f')](_0x2d9283);}};}function respondWithFilteredResult(_0x55485b,_0x489fa3){return function(_0x14bf78){if(_0x14bf78){var _0x23dcd5=typeof _0x489fa3['offset']===_0x3ed3('0x30')&&typeof _0x489fa3[_0x3ed3('0x31')]===_0x3ed3('0x30');var _0x1b998d=_0x14bf78['count'];var _0x5bb512=_0x23dcd5?0x0:_0x489fa3['offset'];var _0x46db01=_0x23dcd5?_0x14bf78[_0x3ed3('0x32')]:_0x489fa3[_0x3ed3('0x33')]+_0x489fa3['limit'];var _0x5645e2;if(_0x46db01>=_0x1b998d){_0x46db01=_0x1b998d;_0x5645e2=0xc8;}else{_0x5645e2=0xce;}_0x55485b['status'](_0x5645e2);return _0x55485b[_0x3ed3('0x34')](_0x3ed3('0x35'),_0x5bb512+'-'+_0x46db01+'/'+_0x1b998d)[_0x3ed3('0x2f')](_0x14bf78);}return null;};}function patchUpdates(_0x422f3b){return function(_0x2e4d51){try{jsonpatch['apply'](_0x2e4d51,_0x422f3b,!![]);}catch(_0x5f3c37){return BPromise[_0x3ed3('0x36')](_0x5f3c37);}return _0x2e4d51[_0x3ed3('0x37')]();};}function saveUpdates(_0x4902f5,_0x3b7c43){return function(_0x517032){if(_0x517032){return _0x517032[_0x3ed3('0x38')](_0x4902f5)[_0x3ed3('0x22')](function(_0x49ef8b){return _0x49ef8b;});}return null;};}function removeEntity(_0x41c77a,_0x38ef87){return function(_0xd41615){if(_0xd41615){return _0xd41615[_0x3ed3('0x39')]()[_0x3ed3('0x22')](function(){_0x41c77a[_0x3ed3('0x3a')](0xcc)['end']();});}};}function handleEntityNotFound(_0x3d05e1,_0x245005){return function(_0x490e74){if(!_0x490e74){_0x3d05e1[_0x3ed3('0x2d')](0x194);}return _0x490e74;};}function handleError(_0x2d26af,_0x11e1c6){_0x11e1c6=_0x11e1c6||0x1f4;return function(_0xe96a10){logger['error'](_0xe96a10['stack']);if(_0xe96a10[_0x3ed3('0x3b')]){delete _0xe96a10['name'];}_0x2d26af[_0x3ed3('0x3a')](_0x11e1c6)[_0x3ed3('0x3c')](_0xe96a10);};}exports[_0x3ed3('0x3d')]=function(_0x1cc22a,_0x2ed119){var _0x4788c6={},_0x24bc3d={},_0x4ac1b5={'count':0x0,'rows':[]};var _0x788004=_[_0x3ed3('0x3e')](db[_0x3ed3('0x3f')][_0x3ed3('0x40')],function(_0xe881d1){return{'name':_0xe881d1['fieldName'],'type':_0xe881d1[_0x3ed3('0x41')][_0x3ed3('0x42')]};});_0x24bc3d[_0x3ed3('0x43')]=_[_0x3ed3('0x3e')](_0x788004,_0x3ed3('0x3b'));_0x24bc3d['query']=_[_0x3ed3('0x44')](_0x1cc22a[_0x3ed3('0x45')]);_0x24bc3d['filters']=_[_0x3ed3('0x46')](_0x24bc3d[_0x3ed3('0x43')],_0x24bc3d[_0x3ed3('0x45')]);_0x4788c6[_0x3ed3('0x47')]=_[_0x3ed3('0x46')](_0x24bc3d[_0x3ed3('0x43')],qs[_0x3ed3('0x48')](_0x1cc22a[_0x3ed3('0x45')][_0x3ed3('0x48')]));_0x4788c6['attributes']=_0x4788c6[_0x3ed3('0x47')][_0x3ed3('0x49')]?_0x4788c6[_0x3ed3('0x47')]:_0x24bc3d[_0x3ed3('0x43')];if(!_0x1cc22a[_0x3ed3('0x45')][_0x3ed3('0x4a')](_0x3ed3('0x4b'))){_0x4788c6[_0x3ed3('0x31')]=qs[_0x3ed3('0x31')](_0x1cc22a[_0x3ed3('0x45')]['limit']);_0x4788c6[_0x3ed3('0x33')]=qs['offset'](_0x1cc22a[_0x3ed3('0x45')][_0x3ed3('0x33')]);}_0x4788c6[_0x3ed3('0x4c')]=qs[_0x3ed3('0x4d')](_0x1cc22a[_0x3ed3('0x45')][_0x3ed3('0x4d')]);_0x4788c6[_0x3ed3('0x4e')]=qs[_0x3ed3('0x4f')](_[_0x3ed3('0x50')](_0x1cc22a[_0x3ed3('0x45')],_0x24bc3d[_0x3ed3('0x4f')]),_0x788004);if(_0x1cc22a[_0x3ed3('0x45')][_0x3ed3('0x51')]){_0x4788c6['where']=_[_0x3ed3('0x52')](_0x4788c6[_0x3ed3('0x4e')],{'$or':_[_0x3ed3('0x3e')](_0x788004,function(_0x524f41){if(_0x524f41[_0x3ed3('0x41')]!==_0x3ed3('0x53')){var _0x540a1d={};_0x540a1d[_0x524f41[_0x3ed3('0x3b')]]={'$like':'%'+_0x1cc22a[_0x3ed3('0x45')][_0x3ed3('0x51')]+'%'};return _0x540a1d;}})});}_0x4788c6=_['merge']({},_0x4788c6,_0x1cc22a[_0x3ed3('0x54')]);var _0x982298={'where':_0x4788c6[_0x3ed3('0x4e')]};return db[_0x3ed3('0x3f')][_0x3ed3('0x32')](_0x982298)['then'](function(_0x13b848){_0x4ac1b5[_0x3ed3('0x32')]=_0x13b848;if(_0x1cc22a[_0x3ed3('0x45')][_0x3ed3('0x55')]){_0x4788c6[_0x3ed3('0x56')]=[{'all':!![]}];}return db[_0x3ed3('0x3f')][_0x3ed3('0x57')](_0x4788c6);})[_0x3ed3('0x22')](function(_0xbc266a){_0x4ac1b5[_0x3ed3('0x58')]=_0xbc266a;return _0x4ac1b5;})[_0x3ed3('0x22')](respondWithFilteredResult(_0x2ed119,_0x4788c6))['catch'](handleError(_0x2ed119,null));};exports[_0x3ed3('0x59')]=function(_0x1b5197,_0x4bfeda){var _0x5c7e12={'raw':!![],'where':{'id':_0x1b5197[_0x3ed3('0x5a')]['id']}},_0x471846={};_0x471846['model']=_['keys'](db[_0x3ed3('0x3f')]['rawAttributes']);_0x471846['query']=_[_0x3ed3('0x44')](_0x1b5197[_0x3ed3('0x45')]);_0x471846['filters']=_[_0x3ed3('0x46')](_0x471846[_0x3ed3('0x43')],_0x471846[_0x3ed3('0x45')]);_0x5c7e12[_0x3ed3('0x47')]=_[_0x3ed3('0x46')](_0x471846[_0x3ed3('0x43')],qs[_0x3ed3('0x48')](_0x1b5197[_0x3ed3('0x45')]['fields']));_0x5c7e12[_0x3ed3('0x47')]=_0x5c7e12[_0x3ed3('0x47')]['length']?_0x5c7e12[_0x3ed3('0x47')]:_0x471846[_0x3ed3('0x43')];if(_0x1b5197[_0x3ed3('0x45')]['includeAll']){_0x5c7e12[_0x3ed3('0x56')]=[{'all':!![]}];}_0x5c7e12=_[_0x3ed3('0x52')]({},_0x5c7e12,_0x1b5197[_0x3ed3('0x54')]);return db[_0x3ed3('0x3f')][_0x3ed3('0x5b')](_0x5c7e12)[_0x3ed3('0x22')](handleEntityNotFound(_0x4bfeda,null))['then'](respondWithResult(_0x4bfeda,null))[_0x3ed3('0x2c')](handleError(_0x4bfeda,null));};exports['create']=function(_0x53e77c,_0x184ab9){return db[_0x3ed3('0x3f')][_0x3ed3('0x5c')](_0x53e77c[_0x3ed3('0x5d')],{})['then'](respondWithResult(_0x184ab9,0xc9))[_0x3ed3('0x2c')](handleError(_0x184ab9,null));};exports[_0x3ed3('0x38')]=function(_0x8e0cfe,_0x543d73){if(_0x8e0cfe[_0x3ed3('0x5d')]['id']){delete _0x8e0cfe[_0x3ed3('0x5d')]['id'];}return db[_0x3ed3('0x3f')]['find']({'where':{'id':_0x8e0cfe[_0x3ed3('0x5a')]['id']}})[_0x3ed3('0x22')](handleEntityNotFound(_0x543d73,null))['then'](saveUpdates(_0x8e0cfe[_0x3ed3('0x5d')],null))[_0x3ed3('0x22')](respondWithResult(_0x543d73,null))['catch'](handleError(_0x543d73,null));};exports[_0x3ed3('0x39')]=function(_0x28ac6e,_0x5cadd0){return db[_0x3ed3('0x3f')][_0x3ed3('0x5b')]({'where':{'id':_0x28ac6e[_0x3ed3('0x5a')]['id']}})[_0x3ed3('0x22')](handleEntityNotFound(_0x5cadd0,null))[_0x3ed3('0x22')](removeEntity(_0x5cadd0,null))['catch'](handleError(_0x5cadd0,null));};exports['describe']=function(_0x2158dd,_0x3cb54d){return db['ChatMessage'][_0x3ed3('0x5e')]()[_0x3ed3('0x22')](respondWithResult(_0x3cb54d,null))[_0x3ed3('0x2c')](handleError(_0x3cb54d,null));};var interaction_log=require('../../config/logger')(_0x3ed3('0x5f'));exports['accept']=function(_0x236331,_0x1184e7,_0x599078){var _0x31baf3={'agent':{},'channel':_0x3ed3('0x60')};if(_0x236331[_0x3ed3('0x5d')]['id']){delete _0x236331['body']['id'];}_0x236331[_0x3ed3('0x5d')]['read']=!![];_0x236331[_0x3ed3('0x5d')][_0x3ed3('0x61')]=moment()[_0x3ed3('0x62')](_0x3ed3('0x63'));_0x236331[_0x3ed3('0x5d')][_0x3ed3('0x64')]=_0x236331[_0x3ed3('0x5d')][_0x3ed3('0x64')]||_0x236331[_0x3ed3('0x65')]['id'];_0x31baf3[_0x3ed3('0x66')]['id']=_0x236331[_0x3ed3('0x5d')]['UserId'];return db[_0x3ed3('0x3f')]['find']({'where':{'id':_0x236331[_0x3ed3('0x5a')]['id'],'UserId':null}})[_0x3ed3('0x22')](handleEntityNotFound(_0x1184e7,null))['then'](saveUpdates(_0x236331[_0x3ed3('0x5d')],null))[_0x3ed3('0x22')](function(_0x343168){if(_0x343168){_0x31baf3['message']=_0x343168[_0x3ed3('0x67')]({'plain':!![]});return db[_0x3ed3('0x68')][_0x3ed3('0x5b')]({'where':{'id':_0x343168['ChatInteractionId']}});}return null;})[_0x3ed3('0x22')](handleEntityNotFound(_0x1184e7,null))[_0x3ed3('0x22')](function(_0x220d4a){if(_0x220d4a){return _0x220d4a[_0x3ed3('0x38')]({'UserId':_0x236331[_0x3ed3('0x5d')][_0x3ed3('0x64')],'read1stAt':_[_0x3ed3('0x69')](_0x220d4a[_0x3ed3('0x6a')])?moment()[_0x3ed3('0x62')](_0x3ed3('0x63')):undefined});}return null;})[_0x3ed3('0x22')](function(_0x259038){if(_0x259038){_0x31baf3[_0x3ed3('0x6b')]=_0x259038[_0x3ed3('0x67')]({'plain':!![]});interaction_log[_0x3ed3('0x6c')](_0x3ed3('0x6d'),_0x236331[_0x3ed3('0x65')]['id'],_0x236331['user'][_0x3ed3('0x3b')],_0x236331[_0x3ed3('0x65')]['role'],_0x31baf3[_0x3ed3('0x6b')]['id'],_0x236331[_0x3ed3('0x5d')]?JSON['stringify'](_0x236331[_0x3ed3('0x5d')]):'null');return respondWithRpcPromise(_0x3ed3('0x6e'),_0x3ed3('0x6f'),_0x31baf3);}return null;})[_0x3ed3('0x22')](function(_0x2dec40){var _0x472802=_0x3ed3('0x70')+_0x2dec40[_0x3ed3('0x2a')]['ContactId'];return db['sequelize'][_0x3ed3('0x45')](_0x472802,{'type':db[_0x3ed3('0x71')][_0x3ed3('0x72')][_0x3ed3('0x73')],'raw':!![]})[_0x3ed3('0x22')](function(_0x171f71){return _0x171f71;});})[_0x3ed3('0x22')](function(_0x4e658d){if(_0x4e658d){_0x31baf3[_0x3ed3('0x2a')]['contact']=_0x4e658d[0x0];if(!_0x236331[_0x3ed3('0x5d')][_0x3ed3('0x64')])return;return db['User'][_0x3ed3('0x5b')]({'where':{'id':_0x236331['body']['UserId'],'role':_0x3ed3('0x66')},'attributes':['id','name',_0x3ed3('0x74'),'email',_0x3ed3('0x75')],'raw':!![]});}return null;})[_0x3ed3('0x22')](function(_0x3bb7fd){if(!_0x3bb7fd)return null;_0x31baf3['message'][_0x3ed3('0x66')]=_0x3bb7fd;return _0x31baf3;})[_0x3ed3('0x22')](function(_0x59fb72){if(_0x59fb72){if(_0x236331[_0x3ed3('0x5d')][_0x3ed3('0x76')]){_0x31baf3[_0x3ed3('0x2a')]['interface']=util[_0x3ed3('0x62')](_0x3ed3('0x77'),_0x236331['user'][_0x3ed3('0x3b')]);_0x31baf3[_0x3ed3('0x2a')][_0x3ed3('0x78')]=_0x31baf3[_0x3ed3('0x78')];_0x31baf3[_0x3ed3('0x2a')][_0x3ed3('0x79')]=_0x31baf3[_0x3ed3('0x78')];_0x31baf3['message'][_0x3ed3('0x7a')]=_0x3ed3('0x7b');return respondWithRpcPromise(_0x3ed3('0x7c'),_0x3ed3('0x7c'),{'event':_0x3ed3('0x7d'),'message':_[_0x3ed3('0x52')](_0x31baf3['message'],JSON[_0x3ed3('0x7e')](_0x31baf3['interaction']['formData']))},client9002)[_0x3ed3('0x22')](function(){return _0x31baf3;});}return _0x31baf3;}return null;})[_0x3ed3('0x22')](respondWithResult(_0x1184e7,null))[_0x3ed3('0x2c')](handleError(_0x1184e7,null));};var interaction_log=require('../../config/logger')(_0x3ed3('0x5f'));exports['reject']=function(_0xafc625,_0x5258ce,_0x13611c){var _0x15d0a5={'agent':{},'channel':'chat'};if(_0xafc625[_0x3ed3('0x5d')]['id']){delete _0xafc625[_0x3ed3('0x5d')]['id'];}_0xafc625[_0x3ed3('0x5d')][_0x3ed3('0x64')]=_0xafc625[_0x3ed3('0x5d')][_0x3ed3('0x64')]||_0xafc625['user']['id'];_0x15d0a5[_0x3ed3('0x66')]['id']=_0xafc625[_0x3ed3('0x5d')][_0x3ed3('0x64')];return db[_0x3ed3('0x3f')]['find']({'where':{'id':_0xafc625[_0x3ed3('0x5a')]['id'],'UserId':null}})[_0x3ed3('0x22')](handleEntityNotFound(_0x5258ce,null))[_0x3ed3('0x22')](function(_0x284d47){if(_0x284d47){_0x15d0a5['message']=_0x284d47[_0x3ed3('0x67')]({'plain':!![]});return db[_0x3ed3('0x68')][_0x3ed3('0x5b')]({'where':{'id':_0x284d47[_0x3ed3('0x7f')]}});}return null;})['then'](handleEntityNotFound(_0x5258ce,null))[_0x3ed3('0x22')](function(_0x21d9ff){if(_0x21d9ff){_0x15d0a5['interaction']=_0x21d9ff[_0x3ed3('0x67')]({'plain':!![]});interaction_log[_0x3ed3('0x6c')](_0x3ed3('0x80'),_0xafc625[_0x3ed3('0x65')]['id'],_0xafc625['user'][_0x3ed3('0x3b')],_0xafc625['user']['role'],_0x15d0a5[_0x3ed3('0x6b')]['id'],_0xafc625[_0x3ed3('0x5d')]?JSON[_0x3ed3('0x27')](_0xafc625[_0x3ed3('0x5d')]):_0x3ed3('0x81'));return respondWithRpcPromise('RejectMessage',_0x3ed3('0x82'),_0x15d0a5);}return null;})[_0x3ed3('0x22')](function(_0x845178){var _0x28033b=_0x3ed3('0x70')+_0x845178[_0x3ed3('0x2a')][_0x3ed3('0x83')];return db[_0x3ed3('0x84')][_0x3ed3('0x45')](_0x28033b,{'type':db[_0x3ed3('0x71')][_0x3ed3('0x72')][_0x3ed3('0x73')],'raw':!![]})[_0x3ed3('0x22')](function(_0x1cf22f){return _0x1cf22f;});})['then'](function(_0x5f291e){if(_0x5f291e){_0x15d0a5[_0x3ed3('0x2a')][_0x3ed3('0x85')]=_0x5f291e[0x0];if(!_0xafc625[_0x3ed3('0x5d')][_0x3ed3('0x64')])return;return db[_0x3ed3('0x86')][_0x3ed3('0x5b')]({'where':{'id':_0xafc625['body'][_0x3ed3('0x64')],'role':_0x3ed3('0x66')},'attributes':['id','name',_0x3ed3('0x74'),_0x3ed3('0x87'),_0x3ed3('0x75')],'raw':!![]});}return null;})[_0x3ed3('0x22')](function(_0xafef50){if(!_0xafef50)return null;_0x15d0a5[_0x3ed3('0x2a')][_0x3ed3('0x66')]=_0xafef50;return _0x15d0a5;})[_0x3ed3('0x22')](function(_0xdbce56){if(_0xdbce56){_0xdbce56[_0x3ed3('0x2a')][_0x3ed3('0x88')]=util[_0x3ed3('0x62')](_0x3ed3('0x77'),_0xafc625[_0x3ed3('0x65')][_0x3ed3('0x3b')]);_0xdbce56[_0x3ed3('0x2a')][_0x3ed3('0x78')]=_0x15d0a5[_0x3ed3('0x78')];_0xdbce56['message']['motionChannel']=_0x15d0a5[_0x3ed3('0x78')];_0xdbce56[_0x3ed3('0x2a')][_0x3ed3('0x7a')]='reject';respondWithRpcPromise(_0x3ed3('0x7c'),_0x3ed3('0x7c'),{'event':_0x3ed3('0x89'),'message':_['merge'](_0x15d0a5['message'],JSON['parse'](_0x15d0a5[_0x3ed3('0x6b')][_0x3ed3('0x8a')]))},client9002);return _0x15d0a5;}return null;})[_0x3ed3('0x22')](respondWithResult(_0x5258ce,null))[_0x3ed3('0x2c')](handleError(_0x5258ce,null));};