d394ba98a95e0ce7c54de4b337fad65e259c67d3
[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 _0xe9b7=['AcceptMessage','SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20','Sequelize','QueryTypes','SELECT','contact','User','fullname','email','internal','manual','interface','SIP/%s','channel','motionChannel','event','EventManager','acceptmessage','WhatsappInteraction','[WHATSAPPMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','RejectMessage','rejectMessage','ContactId','sequelize','rejectmessage','WhatsappAccount','WhatsappAccountId','WhatsppMessage,\x20%s,\x20%s,\x20%s','received\x20delivery\x20report\x20from','inspect','twilio','MessageSid','MessageStatus','read','WhatsappAccount,\x20%s,\x20%s,\x20%s','rimraf','fast-json-patch','moment','util','path','sox','to-csv','ejs','fs-extra','lodash','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','../../config/environment','../../mysqldb','redis','defaults','localhost','socket.io-emitter','./whatsappMessage.socket','register','http','client','request','then','info','WhatsappMessage,\x20%s,\x20%s','request\x20sent','debug','WhatsappMessage,\x20%s,\x20%s,\x20%s','stringify','error','code','message','result','catch','sendStatus','status','end','json','offset','undefined','count','limit','set','Content-Range','apply','reject','destroy','name','index','map','WhatsappMessage','rawAttributes','type','key','model','query','filters','attributes','intersection','fields','hasOwnProperty','nolimit','sort','where','pick','filter','merge','options','includeAll','include','findAll','rows','show','params','keys','find','create','body','describe','whatsapp-interactions','accept','whatsapp','readAt','format','YYYY-MM-DD\x20HH:mm:ss','UserId','user','agent','get','WhatsappInteractionId','update','isNil','interaction','[WHATSAPPMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','role','null'];(function(_0x18ab2a,_0x4debcd){var _0x16dcee=function(_0x10107a){while(--_0x10107a){_0x18ab2a['push'](_0x18ab2a['shift']());}};_0x16dcee(++_0x4debcd);}(_0xe9b7,0x139));var _0x7e9b=function(_0x177fb0,_0x210ea7){_0x177fb0=_0x177fb0-0x0;var _0xeb5ec5=_0xe9b7[_0x177fb0];return _0xeb5ec5;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0x7e9b('0x0'));var zipdir=require('zip-dir');var jsonpatch=require(_0x7e9b('0x1'));var rp=require('request-promise');var moment=require(_0x7e9b('0x2'));var BPromise=require('bluebird');var Mustache=require('mustache');var util=require(_0x7e9b('0x3'));var path=require(_0x7e9b('0x4'));var sox=require(_0x7e9b('0x5'));var csv=require(_0x7e9b('0x6'));var ejs=require(_0x7e9b('0x7'));var fs=require('fs');var fs_extra=require(_0x7e9b('0x8'));var _=require(_0x7e9b('0x9'));var squel=require('squel');var crypto=require(_0x7e9b('0xa'));var jsforce=require(_0x7e9b('0xb'));var deskjs=require(_0x7e9b('0xc'));var toCsv=require(_0x7e9b('0x6'));var querystring=require(_0x7e9b('0xd'));var Papa=require(_0x7e9b('0xe'));var Redis=require(_0x7e9b('0xf'));var authService=require('../../components/auth/service');var qs=require(_0x7e9b('0x10'));var as=require(_0x7e9b('0x11'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x7e9b('0x12'))('api');var utils=require('../../config/utils');var config=require(_0x7e9b('0x13'));var licenseUtil=require('../../config/license/util');var db=require(_0x7e9b('0x14'))['db'];config[_0x7e9b('0x15')]=_[_0x7e9b('0x16')](config['redis'],{'host':_0x7e9b('0x17'),'port':0x18eb});var socket=require(_0x7e9b('0x18'))(new Redis(config['redis']));require(_0x7e9b('0x19'))[_0x7e9b('0x1a')](socket);var jayson=require('jayson/promise');var client=jayson['client'][_0x7e9b('0x1b')]({'port':0x232c});var client9002=jayson[_0x7e9b('0x1c')]['http']({'port':0x232a});function respondWithRpcPromise(_0x7db5ac,_0x55a75c,_0x244a82,_0xaed11){return new BPromise(function(_0x3f953e,_0x144e6e){var _0x2f201c=_0xaed11||client;return _0x2f201c[_0x7e9b('0x1d')](_0x7db5ac,_0x244a82)[_0x7e9b('0x1e')](function(_0x517878){logger[_0x7e9b('0x1f')](_0x7e9b('0x20'),_0x55a75c,_0x7e9b('0x21'));logger[_0x7e9b('0x22')](_0x7e9b('0x23'),_0x55a75c,'request\x20sent',JSON[_0x7e9b('0x24')](_0x517878));if(_0x517878[_0x7e9b('0x25')]){if(_0x517878[_0x7e9b('0x25')][_0x7e9b('0x26')]===0x1f4){logger['error'](_0x7e9b('0x20'),_0x55a75c,_0x517878[_0x7e9b('0x25')][_0x7e9b('0x27')]);return _0x144e6e(_0x517878[_0x7e9b('0x25')]['message']);}logger[_0x7e9b('0x25')](_0x7e9b('0x20'),_0x55a75c,_0x517878['error'][_0x7e9b('0x27')]);return _0x3f953e(_0x517878[_0x7e9b('0x25')][_0x7e9b('0x27')]);}else{logger['info']('WhatsappMessage,\x20%s,\x20%s',_0x55a75c,_0x7e9b('0x21'));_0x3f953e(_0x517878[_0x7e9b('0x28')][_0x7e9b('0x27')]);}})[_0x7e9b('0x29')](function(_0xcd7d2a){logger[_0x7e9b('0x25')](_0x7e9b('0x20'),_0x55a75c,_0xcd7d2a);_0x144e6e(_0xcd7d2a);});});}function respondWithStatusCode(_0x337141,_0x4866c9){_0x4866c9=_0x4866c9||0xcc;return function(_0x450fcc){if(_0x450fcc){return _0x337141[_0x7e9b('0x2a')](_0x4866c9);}return _0x337141[_0x7e9b('0x2b')](_0x4866c9)[_0x7e9b('0x2c')]();};}function respondWithResult(_0x2bfa44,_0x2cca89){_0x2cca89=_0x2cca89||0xc8;return function(_0x56097e){if(_0x56097e){return _0x2bfa44['status'](_0x2cca89)[_0x7e9b('0x2d')](_0x56097e);}};}function respondWithFilteredResult(_0x5a160a,_0x47b4be){return function(_0x2137cc){if(_0x2137cc){var _0x334d69=typeof _0x47b4be[_0x7e9b('0x2e')]===_0x7e9b('0x2f')&&typeof _0x47b4be['limit']===_0x7e9b('0x2f');var _0xd5aad9=_0x2137cc[_0x7e9b('0x30')];var _0x43815b=_0x334d69?0x0:_0x47b4be['offset'];var _0x166994=_0x334d69?_0x2137cc[_0x7e9b('0x30')]:_0x47b4be[_0x7e9b('0x2e')]+_0x47b4be[_0x7e9b('0x31')];var _0x2d6715;if(_0x166994>=_0xd5aad9){_0x166994=_0xd5aad9;_0x2d6715=0xc8;}else{_0x2d6715=0xce;}_0x5a160a[_0x7e9b('0x2b')](_0x2d6715);return _0x5a160a[_0x7e9b('0x32')](_0x7e9b('0x33'),_0x43815b+'-'+_0x166994+'/'+_0xd5aad9)['json'](_0x2137cc);}return null;};}function patchUpdates(_0x3c659f){return function(_0x4398da){try{jsonpatch[_0x7e9b('0x34')](_0x4398da,_0x3c659f,!![]);}catch(_0x56c9f9){return BPromise[_0x7e9b('0x35')](_0x56c9f9);}return _0x4398da['save']();};}function saveUpdates(_0x46da9a,_0x1822c9){return function(_0x41d65d){if(_0x41d65d){return _0x41d65d['update'](_0x46da9a)[_0x7e9b('0x1e')](function(_0xbd546c){return _0xbd546c;});}return null;};}function removeEntity(_0x561381,_0x34d59c){return function(_0x10e0a8){if(_0x10e0a8){return _0x10e0a8[_0x7e9b('0x36')]()[_0x7e9b('0x1e')](function(){_0x561381['status'](0xcc)[_0x7e9b('0x2c')]();});}};}function handleEntityNotFound(_0x2b722d,_0x4e223a){return function(_0x1c4440){if(!_0x1c4440){_0x2b722d[_0x7e9b('0x2a')](0x194);}return _0x1c4440;};}function handleError(_0x26c43a,_0x15cc3f){_0x15cc3f=_0x15cc3f||0x1f4;return function(_0x54a683){logger[_0x7e9b('0x25')](_0x54a683['stack']);if(_0x54a683[_0x7e9b('0x37')]){delete _0x54a683[_0x7e9b('0x37')];}_0x26c43a[_0x7e9b('0x2b')](_0x15cc3f)['send'](_0x54a683);};}exports[_0x7e9b('0x38')]=function(_0x3ddece,_0x120d13){var _0xa16f9d={},_0x14f351={},_0x1dc448={'count':0x0,'rows':[]};var _0x4c3591=_[_0x7e9b('0x39')](db[_0x7e9b('0x3a')][_0x7e9b('0x3b')],function(_0x480389){return{'name':_0x480389['fieldName'],'type':_0x480389[_0x7e9b('0x3c')][_0x7e9b('0x3d')]};});_0x14f351[_0x7e9b('0x3e')]=_['map'](_0x4c3591,_0x7e9b('0x37'));_0x14f351[_0x7e9b('0x3f')]=_['keys'](_0x3ddece[_0x7e9b('0x3f')]);_0x14f351[_0x7e9b('0x40')]=_['intersection'](_0x14f351['model'],_0x14f351['query']);_0xa16f9d[_0x7e9b('0x41')]=_[_0x7e9b('0x42')](_0x14f351[_0x7e9b('0x3e')],qs[_0x7e9b('0x43')](_0x3ddece[_0x7e9b('0x3f')][_0x7e9b('0x43')]));_0xa16f9d[_0x7e9b('0x41')]=_0xa16f9d[_0x7e9b('0x41')]['length']?_0xa16f9d[_0x7e9b('0x41')]:_0x14f351[_0x7e9b('0x3e')];if(!_0x3ddece['query'][_0x7e9b('0x44')](_0x7e9b('0x45'))){_0xa16f9d[_0x7e9b('0x31')]=qs['limit'](_0x3ddece['query'][_0x7e9b('0x31')]);_0xa16f9d[_0x7e9b('0x2e')]=qs[_0x7e9b('0x2e')](_0x3ddece[_0x7e9b('0x3f')]['offset']);}_0xa16f9d['order']=qs[_0x7e9b('0x46')](_0x3ddece[_0x7e9b('0x3f')]['sort']);_0xa16f9d[_0x7e9b('0x47')]=qs[_0x7e9b('0x40')](_[_0x7e9b('0x48')](_0x3ddece[_0x7e9b('0x3f')],_0x14f351[_0x7e9b('0x40')]),_0x4c3591);if(_0x3ddece['query'][_0x7e9b('0x49')]){_0xa16f9d[_0x7e9b('0x47')]=_['merge'](_0xa16f9d['where'],{'$or':_[_0x7e9b('0x39')](_0x4c3591,function(_0x517f29){if(_0x517f29[_0x7e9b('0x3c')]!=='VIRTUAL'){var _0x5608bd={};_0x5608bd[_0x517f29[_0x7e9b('0x37')]]={'$like':'%'+_0x3ddece[_0x7e9b('0x3f')]['filter']+'%'};return _0x5608bd;}})});}_0xa16f9d=_[_0x7e9b('0x4a')]({},_0xa16f9d,_0x3ddece[_0x7e9b('0x4b')]);var _0x5b042d={'where':_0xa16f9d['where']};return db[_0x7e9b('0x3a')]['count'](_0x5b042d)[_0x7e9b('0x1e')](function(_0x558482){_0x1dc448[_0x7e9b('0x30')]=_0x558482;if(_0x3ddece['query'][_0x7e9b('0x4c')]){_0xa16f9d[_0x7e9b('0x4d')]=[{'all':!![]}];}return db[_0x7e9b('0x3a')][_0x7e9b('0x4e')](_0xa16f9d);})[_0x7e9b('0x1e')](function(_0x1a3161){_0x1dc448[_0x7e9b('0x4f')]=_0x1a3161;return _0x1dc448;})['then'](respondWithFilteredResult(_0x120d13,_0xa16f9d))[_0x7e9b('0x29')](handleError(_0x120d13,null));};exports[_0x7e9b('0x50')]=function(_0x362004,_0x118b99){var _0xa98aab={'raw':!![],'where':{'id':_0x362004[_0x7e9b('0x51')]['id']}},_0x5060ec={};_0x5060ec[_0x7e9b('0x3e')]=_[_0x7e9b('0x52')](db['WhatsappMessage'][_0x7e9b('0x3b')]);_0x5060ec['query']=_[_0x7e9b('0x52')](_0x362004[_0x7e9b('0x3f')]);_0x5060ec['filters']=_[_0x7e9b('0x42')](_0x5060ec[_0x7e9b('0x3e')],_0x5060ec[_0x7e9b('0x3f')]);_0xa98aab[_0x7e9b('0x41')]=_[_0x7e9b('0x42')](_0x5060ec['model'],qs[_0x7e9b('0x43')](_0x362004[_0x7e9b('0x3f')][_0x7e9b('0x43')]));_0xa98aab[_0x7e9b('0x41')]=_0xa98aab[_0x7e9b('0x41')]['length']?_0xa98aab[_0x7e9b('0x41')]:_0x5060ec[_0x7e9b('0x3e')];if(_0x362004[_0x7e9b('0x3f')][_0x7e9b('0x4c')]){_0xa98aab[_0x7e9b('0x4d')]=[{'all':!![]}];}_0xa98aab=_['merge']({},_0xa98aab,_0x362004[_0x7e9b('0x4b')]);return db[_0x7e9b('0x3a')][_0x7e9b('0x53')](_0xa98aab)[_0x7e9b('0x1e')](handleEntityNotFound(_0x118b99,null))[_0x7e9b('0x1e')](respondWithResult(_0x118b99,null))['catch'](handleError(_0x118b99,null));};exports[_0x7e9b('0x54')]=function(_0x11f124,_0x32b5c2){return db['WhatsappMessage']['create'](_0x11f124[_0x7e9b('0x55')],{})['then'](respondWithResult(_0x32b5c2,0xc9))[_0x7e9b('0x29')](handleError(_0x32b5c2,null));};exports['update']=function(_0xe4dfe0,_0xabec67){if(_0xe4dfe0[_0x7e9b('0x55')]['id']){delete _0xe4dfe0[_0x7e9b('0x55')]['id'];}return db[_0x7e9b('0x3a')]['find']({'where':{'id':_0xe4dfe0['params']['id']}})[_0x7e9b('0x1e')](handleEntityNotFound(_0xabec67,null))[_0x7e9b('0x1e')](saveUpdates(_0xe4dfe0[_0x7e9b('0x55')],null))[_0x7e9b('0x1e')](respondWithResult(_0xabec67,null))[_0x7e9b('0x29')](handleError(_0xabec67,null));};exports[_0x7e9b('0x36')]=function(_0x1447cf,_0x15479a){return db['WhatsappMessage']['find']({'where':{'id':_0x1447cf[_0x7e9b('0x51')]['id']}})[_0x7e9b('0x1e')](handleEntityNotFound(_0x15479a,null))[_0x7e9b('0x1e')](removeEntity(_0x15479a,null))[_0x7e9b('0x29')](handleError(_0x15479a,null));};exports[_0x7e9b('0x56')]=function(_0x5683e0,_0xfffdc0){return db[_0x7e9b('0x3a')][_0x7e9b('0x56')]()[_0x7e9b('0x1e')](respondWithResult(_0xfffdc0,null))[_0x7e9b('0x29')](handleError(_0xfffdc0,null));};var interaction_log=require(_0x7e9b('0x12'))(_0x7e9b('0x57'));exports[_0x7e9b('0x58')]=function(_0x15466f,_0x5cc395,_0x3dc734){var _0x21f441={'agent':{},'channel':_0x7e9b('0x59')};if(_0x15466f[_0x7e9b('0x55')]['id']){delete _0x15466f['body']['id'];}_0x15466f['body']['read']=!![];_0x15466f[_0x7e9b('0x55')][_0x7e9b('0x5a')]=moment()[_0x7e9b('0x5b')](_0x7e9b('0x5c'));_0x15466f[_0x7e9b('0x55')][_0x7e9b('0x5d')]=_0x15466f[_0x7e9b('0x55')]['UserId']||_0x15466f[_0x7e9b('0x5e')]['id'];_0x21f441[_0x7e9b('0x5f')]['id']=_0x15466f[_0x7e9b('0x55')][_0x7e9b('0x5d')];return db['WhatsappMessage'][_0x7e9b('0x53')]({'where':{'id':_0x15466f[_0x7e9b('0x51')]['id'],'UserId':null}})[_0x7e9b('0x1e')](handleEntityNotFound(_0x5cc395,null))[_0x7e9b('0x1e')](saveUpdates(_0x15466f[_0x7e9b('0x55')],null))[_0x7e9b('0x1e')](function(_0x7b42ef){if(_0x7b42ef){_0x21f441[_0x7e9b('0x27')]=_0x7b42ef[_0x7e9b('0x60')]({'plain':!![]});return db['WhatsappInteraction'][_0x7e9b('0x53')]({'where':{'id':_0x7b42ef[_0x7e9b('0x61')]}});}return null;})[_0x7e9b('0x1e')](handleEntityNotFound(_0x5cc395,null))[_0x7e9b('0x1e')](function(_0x40db79){if(_0x40db79){return _0x40db79[_0x7e9b('0x62')]({'UserId':_0x15466f['body'][_0x7e9b('0x5d')],'read1stAt':_[_0x7e9b('0x63')](_0x40db79['read1stAt'])?moment()[_0x7e9b('0x5b')](_0x7e9b('0x5c')):undefined});}return null;})[_0x7e9b('0x1e')](function(_0x131083){if(_0x131083){_0x21f441[_0x7e9b('0x64')]=_0x131083['get']({'plain':!![]});interaction_log[_0x7e9b('0x1f')](_0x7e9b('0x65'),_0x15466f[_0x7e9b('0x5e')]['id'],_0x15466f[_0x7e9b('0x5e')][_0x7e9b('0x37')],_0x15466f[_0x7e9b('0x5e')][_0x7e9b('0x66')],_0x21f441[_0x7e9b('0x64')]['id'],_0x15466f[_0x7e9b('0x55')]?JSON[_0x7e9b('0x24')](_0x15466f[_0x7e9b('0x55')]):_0x7e9b('0x67'));return respondWithRpcPromise(_0x7e9b('0x68'),'acceptMessage',_0x21f441);}return null;})[_0x7e9b('0x1e')](function(_0x39da95){var _0x39ae4f=_0x7e9b('0x69')+_0x39da95[_0x7e9b('0x27')]['ContactId'];return db['sequelize'][_0x7e9b('0x3f')](_0x39ae4f,{'type':db[_0x7e9b('0x6a')][_0x7e9b('0x6b')][_0x7e9b('0x6c')],'raw':!![]})[_0x7e9b('0x1e')](function(_0x1f5012){return _0x1f5012;});})[_0x7e9b('0x1e')](function(_0x2f0922){if(_0x2f0922){_0x21f441[_0x7e9b('0x27')][_0x7e9b('0x6d')]=_0x2f0922[0x0];if(!_0x15466f[_0x7e9b('0x55')][_0x7e9b('0x5d')])return;return db[_0x7e9b('0x6e')]['find']({'where':{'id':_0x15466f['body'][_0x7e9b('0x5d')],'role':_0x7e9b('0x5f')},'attributes':['id','name',_0x7e9b('0x6f'),_0x7e9b('0x70'),_0x7e9b('0x71')],'raw':!![]});}return null;})[_0x7e9b('0x1e')](function(_0x208a62){if(!_0x208a62)return null;_0x21f441[_0x7e9b('0x27')][_0x7e9b('0x5f')]=_0x208a62;return _0x21f441;})['then'](function(_0x263899){if(_0x263899){if(_0x15466f[_0x7e9b('0x55')][_0x7e9b('0x72')]){_0x21f441['message'][_0x7e9b('0x73')]=util[_0x7e9b('0x5b')](_0x7e9b('0x74'),_0x15466f[_0x7e9b('0x5e')][_0x7e9b('0x37')]);_0x21f441[_0x7e9b('0x27')][_0x7e9b('0x75')]=_0x21f441[_0x7e9b('0x75')];_0x21f441[_0x7e9b('0x27')][_0x7e9b('0x76')]=_0x21f441[_0x7e9b('0x75')];_0x21f441[_0x7e9b('0x27')][_0x7e9b('0x77')]=_0x7e9b('0x58');return respondWithRpcPromise(_0x7e9b('0x78'),_0x7e9b('0x78'),{'event':_0x7e9b('0x79'),'message':_0x21f441[_0x7e9b('0x27')]},client9002)[_0x7e9b('0x1e')](function(){return _0x21f441;});}return _0x21f441;}return null;})[_0x7e9b('0x1e')](respondWithResult(_0x5cc395,null))[_0x7e9b('0x29')](handleError(_0x5cc395,null));};var interaction_log=require(_0x7e9b('0x12'))('whatsapp-interactions');exports[_0x7e9b('0x35')]=function(_0x4f1460,_0x5ee1c9,_0x337521){var _0x5b0942={'agent':{},'channel':_0x7e9b('0x59')};if(_0x4f1460['body']['id']){delete _0x4f1460['body']['id'];}_0x4f1460[_0x7e9b('0x55')]['UserId']=_0x4f1460[_0x7e9b('0x55')][_0x7e9b('0x5d')]||_0x4f1460[_0x7e9b('0x5e')]['id'];_0x5b0942['agent']['id']=_0x4f1460[_0x7e9b('0x55')][_0x7e9b('0x5d')];return db[_0x7e9b('0x3a')][_0x7e9b('0x53')]({'where':{'id':_0x4f1460[_0x7e9b('0x51')]['id'],'UserId':null}})[_0x7e9b('0x1e')](handleEntityNotFound(_0x5ee1c9,null))[_0x7e9b('0x1e')](function(_0x2bcebc){if(_0x2bcebc){_0x5b0942[_0x7e9b('0x27')]=_0x2bcebc[_0x7e9b('0x60')]({'plain':!![]});return db[_0x7e9b('0x7a')][_0x7e9b('0x53')]({'where':{'id':_0x2bcebc[_0x7e9b('0x61')]}});}return null;})[_0x7e9b('0x1e')](handleEntityNotFound(_0x5ee1c9,null))[_0x7e9b('0x1e')](function(_0x34b757){if(_0x34b757){_0x5b0942['interaction']=_0x34b757['get']({'plain':!![]});interaction_log[_0x7e9b('0x1f')](_0x7e9b('0x7b'),_0x4f1460[_0x7e9b('0x5e')]['id'],_0x4f1460['user']['name'],_0x4f1460[_0x7e9b('0x5e')][_0x7e9b('0x66')],_0x5b0942['interaction']['id'],_0x4f1460[_0x7e9b('0x55')]?JSON[_0x7e9b('0x24')](_0x4f1460['body']):_0x7e9b('0x67'));return respondWithRpcPromise(_0x7e9b('0x7c'),_0x7e9b('0x7d'),_0x5b0942);}return null;})[_0x7e9b('0x1e')](function(_0x122ec9){var _0xa7fc50='SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20'+_0x122ec9['message'][_0x7e9b('0x7e')];return db[_0x7e9b('0x7f')][_0x7e9b('0x3f')](_0xa7fc50,{'type':db['Sequelize'][_0x7e9b('0x6b')][_0x7e9b('0x6c')],'raw':!![]})['then'](function(_0x1bb7bf){return _0x1bb7bf;});})[_0x7e9b('0x1e')](function(_0x392916){if(_0x392916){_0x5b0942[_0x7e9b('0x27')][_0x7e9b('0x6d')]=_0x392916[0x0];if(!_0x4f1460[_0x7e9b('0x55')][_0x7e9b('0x5d')])return;return db[_0x7e9b('0x6e')][_0x7e9b('0x53')]({'where':{'id':_0x4f1460[_0x7e9b('0x55')]['UserId'],'role':_0x7e9b('0x5f')},'attributes':['id','name',_0x7e9b('0x6f'),_0x7e9b('0x70'),_0x7e9b('0x71')],'raw':!![]});}return null;})[_0x7e9b('0x1e')](function(_0x12a4de){if(!_0x12a4de)return null;_0x5b0942[_0x7e9b('0x27')][_0x7e9b('0x5f')]=_0x12a4de;return _0x5b0942;})[_0x7e9b('0x1e')](function(_0x531ec9){if(_0x531ec9){_0x531ec9['message'][_0x7e9b('0x73')]=util[_0x7e9b('0x5b')](_0x7e9b('0x74'),_0x4f1460[_0x7e9b('0x5e')]['name']);_0x531ec9[_0x7e9b('0x27')][_0x7e9b('0x75')]=_0x5b0942[_0x7e9b('0x75')];_0x531ec9['message']['motionChannel']=_0x5b0942[_0x7e9b('0x75')];_0x531ec9['message']['event']=_0x7e9b('0x35');respondWithRpcPromise(_0x7e9b('0x78'),_0x7e9b('0x78'),{'event':_0x7e9b('0x80'),'message':_0x531ec9[_0x7e9b('0x27')]},client9002);return _0x5b0942;}return null;})['then'](respondWithResult(_0x5ee1c9,null))[_0x7e9b('0x29')](handleError(_0x5ee1c9,null));};exports[_0x7e9b('0x2b')]=function(_0x1f2664,_0x2ada39,_0xcb604a){if(_0x1f2664[_0x7e9b('0x55')]['id']){delete _0x1f2664[_0x7e9b('0x55')]['id'];}var _0x3bc379;return db[_0x7e9b('0x3a')][_0x7e9b('0x53')]({'where':{'id':_0x1f2664[_0x7e9b('0x51')]['id']}})['then'](handleEntityNotFound(_0x2ada39,null))[_0x7e9b('0x1e')](function(_0x449564){if(_0x449564){_0x3bc379=_0x449564;return db[_0x7e9b('0x81')]['find']({'where':{'id':_0x449564[_0x7e9b('0x82')]}});}})[_0x7e9b('0x1e')](handleEntityNotFound(_0x2ada39,null))[_0x7e9b('0x1e')](function(_0x258f9f){if(_0x258f9f){logger['debug'](_0x7e9b('0x83'),_0x7e9b('0x2b'),_0x7e9b('0x84'),_0x258f9f[_0x7e9b('0x3c')],util[_0x7e9b('0x85')](_0x1f2664[_0x7e9b('0x55')],{'showHidden':![],'depth':null}));switch(_0x258f9f[_0x7e9b('0x3c')]){case _0x7e9b('0x86'):if(_0x1f2664['body'][_0x7e9b('0x87')]&&_0x1f2664[_0x7e9b('0x55')][_0x7e9b('0x87')]===_0x3bc379['messageId']&&_0x1f2664[_0x7e9b('0x55')][_0x7e9b('0x88')]&&_0x1f2664[_0x7e9b('0x55')][_0x7e9b('0x88')]===_0x7e9b('0x89')){return _0x3bc379['update']({'read':!![]});}else{logger[_0x7e9b('0x25')](_0x7e9b('0x8a'),_0x7e9b('0x2b'),'twilio',util[_0x7e9b('0x85')](_0x1f2664[_0x7e9b('0x55')],{'showHidden':![],'depth':null}));}break;}return _0x3bc379;}})['then'](respondWithResult(_0x2ada39,null))[_0x7e9b('0x29')](handleError(_0x2ada39,null));};