5ce3ed32f8b1df8938ba83c7624cc8399fe9263c
[motion2.git] / server / api / whatsappMessage / whatsappMessage.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 _0xea14=['intersection','attributes','fields','length','hasOwnProperty','nolimit','limit','order','sort','where','pick','filter','merge','VIRTUAL','WhatsappMessage','includeAll','include','findAll','rows','params','rawAttributes','find','create','body','describe','accept','read','readAt','YYYY-MM-DD\x20HH:mm:ss','UserId','user','agent','get','WhatsappInteraction','isNil','read1stAt','[WHATSAPPMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','interaction','null','acceptMessage','ContactId','sequelize','Sequelize','QueryTypes','SELECT','contact','User','email','manual','interface','format','SIP/%s','channel','motionChannel','event','EventManager','acceptmessage','whatsapp-interactions','role','SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20','fullname','internal','rejectmessage','WhatsappAccount','WhatsappAccountId','WhatsppMessage,\x20%s,\x20%s,\x20%s','received\x20delivery\x20report\x20from','inspect','twilio','MessageSid','messageId','MessageStatus','WhatsappAccount,\x20%s,\x20%s,\x20%s','eml-format','zip-dir','fast-json-patch','moment','bluebird','mustache','util','path','sox','fs-extra','lodash','squel','crypto','to-csv','papaparse','ioredis','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','redis','localhost','register','jayson/promise','client','http','request','then','info','WhatsappMessage,\x20%s,\x20%s','request\x20sent','debug','WhatsappMessage,\x20%s,\x20%s,\x20%s','stringify','error','code','message','catch','sendStatus','end','status','json','undefined','count','offset','set','Content-Range','apply','reject','update','destroy','stack','name','send','index','map','fieldName','type','key','model','query','keys','filters'];(function(_0x20a584,_0xe384a5){var _0x4b41a8=function(_0x2127c6){while(--_0x2127c6){_0x20a584['push'](_0x20a584['shift']());}};_0x4b41a8(++_0xe384a5);}(_0xea14,0x15b));var _0x4ea1=function(_0x3c8e39,_0x3b11c6){_0x3c8e39=_0x3c8e39-0x0;var _0x4e4b14=_0xea14[_0x3c8e39];return _0x4e4b14;};'use strict';var emlformat=require(_0x4ea1('0x0'));var rimraf=require('rimraf');var zipdir=require(_0x4ea1('0x1'));var jsonpatch=require(_0x4ea1('0x2'));var rp=require('request-promise');var moment=require(_0x4ea1('0x3'));var BPromise=require(_0x4ea1('0x4'));var Mustache=require(_0x4ea1('0x5'));var util=require(_0x4ea1('0x6'));var path=require(_0x4ea1('0x7'));var sox=require(_0x4ea1('0x8'));var csv=require('to-csv');var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x4ea1('0x9'));var _=require(_0x4ea1('0xa'));var squel=require(_0x4ea1('0xb'));var crypto=require(_0x4ea1('0xc'));var jsforce=require('jsforce');var deskjs=require('desk.js');var toCsv=require(_0x4ea1('0xd'));var querystring=require('querystring');var Papa=require(_0x4ea1('0xe'));var Redis=require(_0x4ea1('0xf'));var authService=require('../../components/auth/service');var qs=require('../../components/parsers/qs');var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x4ea1('0x10'));var logger=require(_0x4ea1('0x11'))(_0x4ea1('0x12'));var utils=require(_0x4ea1('0x13'));var config=require(_0x4ea1('0x14'));var licenseUtil=require('../../config/license/util');var db=require('../../mysqldb')['db'];config[_0x4ea1('0x15')]=_['defaults'](config['redis'],{'host':_0x4ea1('0x16'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x4ea1('0x15')]));require('./whatsappMessage.socket')[_0x4ea1('0x17')](socket);var jayson=require(_0x4ea1('0x18'));var client=jayson[_0x4ea1('0x19')][_0x4ea1('0x1a')]({'port':0x232c});var client9002=jayson[_0x4ea1('0x19')][_0x4ea1('0x1a')]({'port':0x232a});function respondWithRpcPromise(_0x4d9cae,_0x41375f,_0x94f9fb,_0xe2452d){return new BPromise(function(_0x2a3252,_0x13fb85){var _0x2fc277=_0xe2452d||client;return _0x2fc277[_0x4ea1('0x1b')](_0x4d9cae,_0x94f9fb)[_0x4ea1('0x1c')](function(_0x5743ff){logger[_0x4ea1('0x1d')](_0x4ea1('0x1e'),_0x41375f,_0x4ea1('0x1f'));logger[_0x4ea1('0x20')](_0x4ea1('0x21'),_0x41375f,_0x4ea1('0x1f'),JSON[_0x4ea1('0x22')](_0x5743ff));if(_0x5743ff[_0x4ea1('0x23')]){if(_0x5743ff[_0x4ea1('0x23')][_0x4ea1('0x24')]===0x1f4){logger[_0x4ea1('0x23')]('WhatsappMessage,\x20%s,\x20%s',_0x41375f,_0x5743ff[_0x4ea1('0x23')][_0x4ea1('0x25')]);return _0x13fb85(_0x5743ff[_0x4ea1('0x23')][_0x4ea1('0x25')]);}logger['error'](_0x4ea1('0x1e'),_0x41375f,_0x5743ff[_0x4ea1('0x23')][_0x4ea1('0x25')]);return _0x2a3252(_0x5743ff['error'][_0x4ea1('0x25')]);}else{logger[_0x4ea1('0x1d')](_0x4ea1('0x1e'),_0x41375f,'request\x20sent');_0x2a3252(_0x5743ff['result']['message']);}})[_0x4ea1('0x26')](function(_0x3795d7){logger[_0x4ea1('0x23')](_0x4ea1('0x1e'),_0x41375f,_0x3795d7);_0x13fb85(_0x3795d7);});});}function respondWithStatusCode(_0x541151,_0x1ed923){_0x1ed923=_0x1ed923||0xcc;return function(_0x427dd3){if(_0x427dd3){return _0x541151[_0x4ea1('0x27')](_0x1ed923);}return _0x541151['status'](_0x1ed923)[_0x4ea1('0x28')]();};}function respondWithResult(_0x3b4628,_0x4a9bfd){_0x4a9bfd=_0x4a9bfd||0xc8;return function(_0x24ea80){if(_0x24ea80){return _0x3b4628[_0x4ea1('0x29')](_0x4a9bfd)[_0x4ea1('0x2a')](_0x24ea80);}};}function respondWithFilteredResult(_0x58400b,_0x4fe953){return function(_0x233cbb){if(_0x233cbb){var _0x429797=typeof _0x4fe953['offset']==='undefined'&&typeof _0x4fe953['limit']===_0x4ea1('0x2b');var _0xc90556=_0x233cbb['count'];var _0x1b6001=_0x429797?0x0:_0x4fe953['offset'];var _0x5d62e8=_0x429797?_0x233cbb[_0x4ea1('0x2c')]:_0x4fe953[_0x4ea1('0x2d')]+_0x4fe953['limit'];var _0x432660;if(_0x5d62e8>=_0xc90556){_0x5d62e8=_0xc90556;_0x432660=0xc8;}else{_0x432660=0xce;}_0x58400b[_0x4ea1('0x29')](_0x432660);return _0x58400b[_0x4ea1('0x2e')](_0x4ea1('0x2f'),_0x1b6001+'-'+_0x5d62e8+'/'+_0xc90556)[_0x4ea1('0x2a')](_0x233cbb);}return null;};}function patchUpdates(_0x2b42ab){return function(_0x55c9e2){try{jsonpatch[_0x4ea1('0x30')](_0x55c9e2,_0x2b42ab,!![]);}catch(_0x15b782){return BPromise[_0x4ea1('0x31')](_0x15b782);}return _0x55c9e2['save']();};}function saveUpdates(_0x39bc5c,_0x1fe666){return function(_0x3a89c2){if(_0x3a89c2){return _0x3a89c2[_0x4ea1('0x32')](_0x39bc5c)['then'](function(_0x2925d8){return _0x2925d8;});}return null;};}function removeEntity(_0x2f5caa,_0x5f11c7){return function(_0x5d3b8e){if(_0x5d3b8e){return _0x5d3b8e[_0x4ea1('0x33')]()[_0x4ea1('0x1c')](function(){_0x2f5caa[_0x4ea1('0x29')](0xcc)['end']();});}};}function handleEntityNotFound(_0x42cba2,_0x4d8221){return function(_0x344c5e){if(!_0x344c5e){_0x42cba2[_0x4ea1('0x27')](0x194);}return _0x344c5e;};}function handleError(_0x5323ec,_0x5cbf1e){_0x5cbf1e=_0x5cbf1e||0x1f4;return function(_0x34c3d2){logger[_0x4ea1('0x23')](_0x34c3d2[_0x4ea1('0x34')]);if(_0x34c3d2['name']){delete _0x34c3d2[_0x4ea1('0x35')];}_0x5323ec[_0x4ea1('0x29')](_0x5cbf1e)[_0x4ea1('0x36')](_0x34c3d2);};}exports[_0x4ea1('0x37')]=function(_0x2f5827,_0x2864ff){var _0x73718b={},_0x3beaa0={},_0x403f85={'count':0x0,'rows':[]};var _0x1f13a9=_[_0x4ea1('0x38')](db['WhatsappMessage']['rawAttributes'],function(_0x58b844){return{'name':_0x58b844[_0x4ea1('0x39')],'type':_0x58b844[_0x4ea1('0x3a')][_0x4ea1('0x3b')]};});_0x3beaa0[_0x4ea1('0x3c')]=_[_0x4ea1('0x38')](_0x1f13a9,'name');_0x3beaa0[_0x4ea1('0x3d')]=_[_0x4ea1('0x3e')](_0x2f5827[_0x4ea1('0x3d')]);_0x3beaa0[_0x4ea1('0x3f')]=_[_0x4ea1('0x40')](_0x3beaa0['model'],_0x3beaa0[_0x4ea1('0x3d')]);_0x73718b[_0x4ea1('0x41')]=_[_0x4ea1('0x40')](_0x3beaa0[_0x4ea1('0x3c')],qs['fields'](_0x2f5827[_0x4ea1('0x3d')][_0x4ea1('0x42')]));_0x73718b['attributes']=_0x73718b['attributes'][_0x4ea1('0x43')]?_0x73718b['attributes']:_0x3beaa0[_0x4ea1('0x3c')];if(!_0x2f5827['query'][_0x4ea1('0x44')](_0x4ea1('0x45'))){_0x73718b[_0x4ea1('0x46')]=qs['limit'](_0x2f5827[_0x4ea1('0x3d')][_0x4ea1('0x46')]);_0x73718b['offset']=qs['offset'](_0x2f5827[_0x4ea1('0x3d')][_0x4ea1('0x2d')]);}_0x73718b[_0x4ea1('0x47')]=qs[_0x4ea1('0x48')](_0x2f5827[_0x4ea1('0x3d')][_0x4ea1('0x48')]);_0x73718b[_0x4ea1('0x49')]=qs[_0x4ea1('0x3f')](_[_0x4ea1('0x4a')](_0x2f5827['query'],_0x3beaa0[_0x4ea1('0x3f')]),_0x1f13a9);if(_0x2f5827[_0x4ea1('0x3d')][_0x4ea1('0x4b')]){_0x73718b[_0x4ea1('0x49')]=_[_0x4ea1('0x4c')](_0x73718b[_0x4ea1('0x49')],{'$or':_[_0x4ea1('0x38')](_0x1f13a9,function(_0x46130b){if(_0x46130b[_0x4ea1('0x3a')]!==_0x4ea1('0x4d')){var _0x2850df={};_0x2850df[_0x46130b['name']]={'$like':'%'+_0x2f5827[_0x4ea1('0x3d')][_0x4ea1('0x4b')]+'%'};return _0x2850df;}})});}_0x73718b=_[_0x4ea1('0x4c')]({},_0x73718b,_0x2f5827['options']);var _0x508182={'where':_0x73718b[_0x4ea1('0x49')]};return db[_0x4ea1('0x4e')]['count'](_0x508182)[_0x4ea1('0x1c')](function(_0x11789f){_0x403f85['count']=_0x11789f;if(_0x2f5827[_0x4ea1('0x3d')][_0x4ea1('0x4f')]){_0x73718b[_0x4ea1('0x50')]=[{'all':!![]}];}return db[_0x4ea1('0x4e')][_0x4ea1('0x51')](_0x73718b);})[_0x4ea1('0x1c')](function(_0x4188ba){_0x403f85[_0x4ea1('0x52')]=_0x4188ba;return _0x403f85;})[_0x4ea1('0x1c')](respondWithFilteredResult(_0x2864ff,_0x73718b))[_0x4ea1('0x26')](handleError(_0x2864ff,null));};exports['show']=function(_0x32fa9f,_0x3b3ad3){var _0x8e5a5d={'raw':!![],'where':{'id':_0x32fa9f[_0x4ea1('0x53')]['id']}},_0x296a76={};_0x296a76[_0x4ea1('0x3c')]=_[_0x4ea1('0x3e')](db[_0x4ea1('0x4e')][_0x4ea1('0x54')]);_0x296a76['query']=_[_0x4ea1('0x3e')](_0x32fa9f[_0x4ea1('0x3d')]);_0x296a76[_0x4ea1('0x3f')]=_[_0x4ea1('0x40')](_0x296a76['model'],_0x296a76[_0x4ea1('0x3d')]);_0x8e5a5d[_0x4ea1('0x41')]=_[_0x4ea1('0x40')](_0x296a76['model'],qs['fields'](_0x32fa9f[_0x4ea1('0x3d')][_0x4ea1('0x42')]));_0x8e5a5d[_0x4ea1('0x41')]=_0x8e5a5d[_0x4ea1('0x41')][_0x4ea1('0x43')]?_0x8e5a5d[_0x4ea1('0x41')]:_0x296a76[_0x4ea1('0x3c')];if(_0x32fa9f[_0x4ea1('0x3d')][_0x4ea1('0x4f')]){_0x8e5a5d['include']=[{'all':!![]}];}_0x8e5a5d=_[_0x4ea1('0x4c')]({},_0x8e5a5d,_0x32fa9f['options']);return db[_0x4ea1('0x4e')][_0x4ea1('0x55')](_0x8e5a5d)[_0x4ea1('0x1c')](handleEntityNotFound(_0x3b3ad3,null))[_0x4ea1('0x1c')](respondWithResult(_0x3b3ad3,null))['catch'](handleError(_0x3b3ad3,null));};exports['create']=function(_0x57b6fe,_0x4bedf5){return db[_0x4ea1('0x4e')][_0x4ea1('0x56')](_0x57b6fe[_0x4ea1('0x57')],{})[_0x4ea1('0x1c')](respondWithResult(_0x4bedf5,0xc9))[_0x4ea1('0x26')](handleError(_0x4bedf5,null));};exports[_0x4ea1('0x32')]=function(_0x2f2a27,_0x3afaf8){if(_0x2f2a27[_0x4ea1('0x57')]['id']){delete _0x2f2a27['body']['id'];}return db['WhatsappMessage'][_0x4ea1('0x55')]({'where':{'id':_0x2f2a27['params']['id']}})['then'](handleEntityNotFound(_0x3afaf8,null))[_0x4ea1('0x1c')](saveUpdates(_0x2f2a27['body'],null))[_0x4ea1('0x1c')](respondWithResult(_0x3afaf8,null))['catch'](handleError(_0x3afaf8,null));};exports[_0x4ea1('0x33')]=function(_0x4fd33e,_0x58dd8f){return db[_0x4ea1('0x4e')]['find']({'where':{'id':_0x4fd33e[_0x4ea1('0x53')]['id']}})[_0x4ea1('0x1c')](handleEntityNotFound(_0x58dd8f,null))[_0x4ea1('0x1c')](removeEntity(_0x58dd8f,null))['catch'](handleError(_0x58dd8f,null));};exports[_0x4ea1('0x58')]=function(_0x3371e8,_0x5b212d){return db['WhatsappMessage'][_0x4ea1('0x58')]()[_0x4ea1('0x1c')](respondWithResult(_0x5b212d,null))[_0x4ea1('0x26')](handleError(_0x5b212d,null));};var interaction_log=require(_0x4ea1('0x11'))('whatsapp-interactions');exports[_0x4ea1('0x59')]=function(_0x3f4077,_0x53657c,_0x105f13){var _0x10dbfd={'agent':{},'channel':'whatsapp'};if(_0x3f4077['body']['id']){delete _0x3f4077['body']['id'];}_0x3f4077[_0x4ea1('0x57')][_0x4ea1('0x5a')]=!![];_0x3f4077[_0x4ea1('0x57')][_0x4ea1('0x5b')]=moment()['format'](_0x4ea1('0x5c'));_0x3f4077[_0x4ea1('0x57')][_0x4ea1('0x5d')]=_0x3f4077[_0x4ea1('0x57')][_0x4ea1('0x5d')]||_0x3f4077[_0x4ea1('0x5e')]['id'];_0x10dbfd[_0x4ea1('0x5f')]['id']=_0x3f4077[_0x4ea1('0x57')][_0x4ea1('0x5d')];return db['WhatsappMessage'][_0x4ea1('0x55')]({'where':{'id':_0x3f4077[_0x4ea1('0x53')]['id'],'UserId':null}})['then'](handleEntityNotFound(_0x53657c,null))[_0x4ea1('0x1c')](saveUpdates(_0x3f4077[_0x4ea1('0x57')],null))['then'](function(_0x58cde4){if(_0x58cde4){_0x10dbfd['message']=_0x58cde4[_0x4ea1('0x60')]({'plain':!![]});return db[_0x4ea1('0x61')][_0x4ea1('0x55')]({'where':{'id':_0x58cde4['WhatsappInteractionId']}});}return null;})[_0x4ea1('0x1c')](handleEntityNotFound(_0x53657c,null))[_0x4ea1('0x1c')](function(_0x50a924){if(_0x50a924){return _0x50a924['update']({'UserId':_0x3f4077[_0x4ea1('0x57')][_0x4ea1('0x5d')],'read1stAt':_[_0x4ea1('0x62')](_0x50a924[_0x4ea1('0x63')])?moment()['format'](_0x4ea1('0x5c')):undefined});}return null;})['then'](function(_0x56c7b1){if(_0x56c7b1){_0x10dbfd['interaction']=_0x56c7b1[_0x4ea1('0x60')]({'plain':!![]});interaction_log[_0x4ea1('0x1d')](_0x4ea1('0x64'),_0x3f4077[_0x4ea1('0x5e')]['id'],_0x3f4077[_0x4ea1('0x5e')][_0x4ea1('0x35')],_0x3f4077[_0x4ea1('0x5e')]['role'],_0x10dbfd[_0x4ea1('0x65')]['id'],_0x3f4077[_0x4ea1('0x57')]?JSON[_0x4ea1('0x22')](_0x3f4077['body']):_0x4ea1('0x66'));return respondWithRpcPromise('AcceptMessage',_0x4ea1('0x67'),_0x10dbfd);}return null;})[_0x4ea1('0x1c')](function(_0x23ecff){var _0x1b4411='SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20'+_0x23ecff[_0x4ea1('0x25')][_0x4ea1('0x68')];return db[_0x4ea1('0x69')][_0x4ea1('0x3d')](_0x1b4411,{'type':db[_0x4ea1('0x6a')][_0x4ea1('0x6b')][_0x4ea1('0x6c')],'raw':!![]})['then'](function(_0x1f53e0){return _0x1f53e0;});})[_0x4ea1('0x1c')](function(_0x13c459){if(_0x13c459){_0x10dbfd['message'][_0x4ea1('0x6d')]=_0x13c459[0x0];if(!_0x3f4077[_0x4ea1('0x57')][_0x4ea1('0x5d')])return;return db[_0x4ea1('0x6e')][_0x4ea1('0x55')]({'where':{'id':_0x3f4077[_0x4ea1('0x57')][_0x4ea1('0x5d')],'role':'agent'},'attributes':['id',_0x4ea1('0x35'),'fullname',_0x4ea1('0x6f'),'internal'],'raw':!![]});}return null;})[_0x4ea1('0x1c')](function(_0x461382){if(!_0x461382)return null;_0x10dbfd['message'][_0x4ea1('0x5f')]=_0x461382;return _0x10dbfd;})['then'](function(_0x505968){if(_0x505968){if(_0x3f4077['body'][_0x4ea1('0x70')]){_0x10dbfd['message'][_0x4ea1('0x71')]=util[_0x4ea1('0x72')](_0x4ea1('0x73'),_0x3f4077[_0x4ea1('0x5e')][_0x4ea1('0x35')]);_0x10dbfd['message'][_0x4ea1('0x74')]=_0x10dbfd[_0x4ea1('0x74')];_0x10dbfd[_0x4ea1('0x25')][_0x4ea1('0x75')]=_0x10dbfd[_0x4ea1('0x74')];_0x10dbfd[_0x4ea1('0x25')][_0x4ea1('0x76')]=_0x4ea1('0x59');return respondWithRpcPromise(_0x4ea1('0x77'),_0x4ea1('0x77'),{'event':_0x4ea1('0x78'),'message':_0x10dbfd[_0x4ea1('0x25')]},client9002)[_0x4ea1('0x1c')](function(){return _0x10dbfd;});}return _0x10dbfd;}return null;})[_0x4ea1('0x1c')](respondWithResult(_0x53657c,null))[_0x4ea1('0x26')](handleError(_0x53657c,null));};var interaction_log=require(_0x4ea1('0x11'))(_0x4ea1('0x79'));exports[_0x4ea1('0x31')]=function(_0x19a0fb,_0x152442,_0x1a117e){var _0x183858={'agent':{},'channel':'whatsapp'};if(_0x19a0fb[_0x4ea1('0x57')]['id']){delete _0x19a0fb[_0x4ea1('0x57')]['id'];}_0x19a0fb[_0x4ea1('0x57')][_0x4ea1('0x5d')]=_0x19a0fb[_0x4ea1('0x57')][_0x4ea1('0x5d')]||_0x19a0fb[_0x4ea1('0x5e')]['id'];_0x183858[_0x4ea1('0x5f')]['id']=_0x19a0fb[_0x4ea1('0x57')]['UserId'];return db[_0x4ea1('0x4e')][_0x4ea1('0x55')]({'where':{'id':_0x19a0fb[_0x4ea1('0x53')]['id'],'UserId':null}})['then'](handleEntityNotFound(_0x152442,null))[_0x4ea1('0x1c')](function(_0x649b8b){if(_0x649b8b){_0x183858['message']=_0x649b8b[_0x4ea1('0x60')]({'plain':!![]});return db[_0x4ea1('0x61')][_0x4ea1('0x55')]({'where':{'id':_0x649b8b['WhatsappInteractionId']}});}return null;})[_0x4ea1('0x1c')](handleEntityNotFound(_0x152442,null))[_0x4ea1('0x1c')](function(_0x46f9bd){if(_0x46f9bd){_0x183858[_0x4ea1('0x65')]=_0x46f9bd[_0x4ea1('0x60')]({'plain':!![]});interaction_log['info']('[WHATSAPPMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s',_0x19a0fb[_0x4ea1('0x5e')]['id'],_0x19a0fb[_0x4ea1('0x5e')][_0x4ea1('0x35')],_0x19a0fb[_0x4ea1('0x5e')][_0x4ea1('0x7a')],_0x183858['interaction']['id'],_0x19a0fb[_0x4ea1('0x57')]?JSON[_0x4ea1('0x22')](_0x19a0fb['body']):_0x4ea1('0x66'));return respondWithRpcPromise('RejectMessage','rejectMessage',_0x183858);}return null;})[_0x4ea1('0x1c')](function(_0x48ac95){var _0x478caa=_0x4ea1('0x7b')+_0x48ac95[_0x4ea1('0x25')]['ContactId'];return db[_0x4ea1('0x69')][_0x4ea1('0x3d')](_0x478caa,{'type':db[_0x4ea1('0x6a')]['QueryTypes'][_0x4ea1('0x6c')],'raw':!![]})[_0x4ea1('0x1c')](function(_0x3105fc){return _0x3105fc;});})[_0x4ea1('0x1c')](function(_0x9c5760){if(_0x9c5760){_0x183858[_0x4ea1('0x25')][_0x4ea1('0x6d')]=_0x9c5760[0x0];if(!_0x19a0fb['body'][_0x4ea1('0x5d')])return;return db[_0x4ea1('0x6e')]['find']({'where':{'id':_0x19a0fb[_0x4ea1('0x57')]['UserId'],'role':_0x4ea1('0x5f')},'attributes':['id','name',_0x4ea1('0x7c'),_0x4ea1('0x6f'),_0x4ea1('0x7d')],'raw':!![]});}return null;})[_0x4ea1('0x1c')](function(_0xf95206){if(!_0xf95206)return null;_0x183858[_0x4ea1('0x25')][_0x4ea1('0x5f')]=_0xf95206;return _0x183858;})[_0x4ea1('0x1c')](function(_0x3edd86){if(_0x3edd86){_0x3edd86[_0x4ea1('0x25')]['interface']=util[_0x4ea1('0x72')](_0x4ea1('0x73'),_0x19a0fb['user'][_0x4ea1('0x35')]);_0x3edd86[_0x4ea1('0x25')][_0x4ea1('0x74')]=_0x183858[_0x4ea1('0x74')];_0x3edd86[_0x4ea1('0x25')]['motionChannel']=_0x183858[_0x4ea1('0x74')];_0x3edd86[_0x4ea1('0x25')]['event']='reject';respondWithRpcPromise(_0x4ea1('0x77'),_0x4ea1('0x77'),{'event':_0x4ea1('0x7e'),'message':_0x3edd86[_0x4ea1('0x25')]},client9002);return _0x183858;}return null;})[_0x4ea1('0x1c')](respondWithResult(_0x152442,null))[_0x4ea1('0x26')](handleError(_0x152442,null));};exports[_0x4ea1('0x29')]=function(_0x219860,_0x3e735b,_0x66897b){if(_0x219860[_0x4ea1('0x57')]['id']){delete _0x219860[_0x4ea1('0x57')]['id'];}var _0x435d37;return db[_0x4ea1('0x4e')][_0x4ea1('0x55')]({'where':{'id':_0x219860[_0x4ea1('0x53')]['id']}})[_0x4ea1('0x1c')](handleEntityNotFound(_0x3e735b,null))[_0x4ea1('0x1c')](function(_0x544489){if(_0x544489){_0x435d37=_0x544489;return db[_0x4ea1('0x7f')]['find']({'where':{'id':_0x544489[_0x4ea1('0x80')]}});}})[_0x4ea1('0x1c')](handleEntityNotFound(_0x3e735b,null))['then'](function(_0x2ac633){if(_0x2ac633){logger[_0x4ea1('0x20')](_0x4ea1('0x81'),_0x4ea1('0x29'),_0x4ea1('0x82'),_0x2ac633[_0x4ea1('0x3a')],util[_0x4ea1('0x83')](_0x219860[_0x4ea1('0x57')],{'showHidden':![],'depth':null}));switch(_0x2ac633[_0x4ea1('0x3a')]){case _0x4ea1('0x84'):if(_0x219860['body'][_0x4ea1('0x85')]&&_0x219860['body']['MessageSid']===_0x435d37[_0x4ea1('0x86')]&&_0x219860[_0x4ea1('0x57')][_0x4ea1('0x87')]&&_0x219860[_0x4ea1('0x57')][_0x4ea1('0x87')]===_0x4ea1('0x5a')){return _0x435d37[_0x4ea1('0x32')]({'read':!![]});}else{logger[_0x4ea1('0x23')](_0x4ea1('0x88'),_0x4ea1('0x29'),_0x4ea1('0x84'),util['inspect'](_0x219860[_0x4ea1('0x57')],{'showHidden':![],'depth':null}));}break;}return _0x435d37;}})[_0x4ea1('0x1c')](respondWithResult(_0x3e735b,null))[_0x4ea1('0x26')](handleError(_0x3e735b,null));};