Built motion from commit 52c8a02d.|2.6.29
[motion2.git] / server / api / smsMessage / smsMessage.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 _0xbedb=['messageId','SmsAccount,\x20%s,\x20%s,\x20%s','inspect','plivo','MessageUUID','indexOf','Status','plivio','infobip','results','groupName','DELIVERED','eml-format','zip-dir','fast-json-patch','request-promise','mustache','util','path','sox','to-csv','ejs','fs-extra','lodash','squel','crypto','desk.js','papaparse','ioredis','../../components/auth/service','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','redis','localhost','socket.io-emitter','./smsMessage.socket','register','jayson/promise','client','http','then','info','SmsMessage,\x20%s,\x20%s','request\x20sent','debug','SmsMessage,\x20%s,\x20%s,\x20%s','stringify','error','code','message','catch','status','undefined','offset','set','save','update','sendStatus','stack','send','index','map','SmsMessage','rawAttributes','fieldName','key','model','name','query','keys','filters','intersection','attributes','fields','length','nolimit','limit','sort','pick','filter','where','merge','type','VIRTUAL','options','count','include','rows','show','params','includeAll','create','body','find','destroy','describe','accept','sms','readAt','format','YYYY-MM-DD\x20HH:mm:ss','UserId','user','agent','get','SmsInteractionId','isNil','read1stAt','interaction','[SMSMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','null','AcceptMessage','ContactId','sequelize','QueryTypes','contact','fullname','email','internal','manual','interface','SIP/%s','channel','event','EventManager','sms-interactions','reject','SmsInteraction','[SMSMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','role','RejectMessage','rejectMessage','SELECT','User','motionChannel','rejectmessage','SmsAccount','SmsAccountId','received\x20delivery\x20report\x20from','twilio','MessageSid'];(function(_0x36087c,_0x34daad){var _0x24563e=function(_0x485aa8){while(--_0x485aa8){_0x36087c['push'](_0x36087c['shift']());}};_0x24563e(++_0x34daad);}(_0xbedb,0x12e));var _0xbbed=function(_0x3dd15e,_0x1f0015){_0x3dd15e=_0x3dd15e-0x0;var _0x231fd0=_0xbedb[_0x3dd15e];return _0x231fd0;};'use strict';var emlformat=require(_0xbbed('0x0'));var rimraf=require('rimraf');var zipdir=require(_0xbbed('0x1'));var jsonpatch=require(_0xbbed('0x2'));var rp=require(_0xbbed('0x3'));var moment=require('moment');var BPromise=require('bluebird');var Mustache=require(_0xbbed('0x4'));var util=require(_0xbbed('0x5'));var path=require(_0xbbed('0x6'));var sox=require(_0xbbed('0x7'));var csv=require(_0xbbed('0x8'));var ejs=require(_0xbbed('0x9'));var fs=require('fs');var fs_extra=require(_0xbbed('0xa'));var _=require(_0xbbed('0xb'));var squel=require(_0xbbed('0xc'));var crypto=require(_0xbbed('0xd'));var jsforce=require('jsforce');var deskjs=require(_0xbbed('0xe'));var toCsv=require('to-csv');var querystring=require('querystring');var Papa=require(_0xbbed('0xf'));var Redis=require(_0xbbed('0x10'));var authService=require(_0xbbed('0x11'));var qs=require('../../components/parsers/qs');var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0xbbed('0x12'));var logger=require(_0xbbed('0x13'))(_0xbbed('0x14'));var utils=require(_0xbbed('0x15'));var config=require(_0xbbed('0x16'));var licenseUtil=require(_0xbbed('0x17'));var db=require('../../mysqldb')['db'];config[_0xbbed('0x18')]=_['defaults'](config[_0xbbed('0x18')],{'host':_0xbbed('0x19'),'port':0x18eb});var socket=require(_0xbbed('0x1a'))(new Redis(config[_0xbbed('0x18')]));require(_0xbbed('0x1b'))[_0xbbed('0x1c')](socket);var jayson=require(_0xbbed('0x1d'));var client=jayson[_0xbbed('0x1e')][_0xbbed('0x1f')]({'port':0x232c});var client9002=jayson[_0xbbed('0x1e')]['http']({'port':0x232a});function respondWithRpcPromise(_0x359469,_0x5dfb44,_0x1b58bc,_0x117e1e){return new BPromise(function(_0xf860ff,_0x1744b5){var _0xe9dc82=_0x117e1e||client;return _0xe9dc82['request'](_0x359469,_0x1b58bc)[_0xbbed('0x20')](function(_0x2e1789){logger[_0xbbed('0x21')](_0xbbed('0x22'),_0x5dfb44,_0xbbed('0x23'));logger[_0xbbed('0x24')](_0xbbed('0x25'),_0x5dfb44,_0xbbed('0x23'),JSON[_0xbbed('0x26')](_0x2e1789));if(_0x2e1789[_0xbbed('0x27')]){if(_0x2e1789[_0xbbed('0x27')][_0xbbed('0x28')]===0x1f4){logger[_0xbbed('0x27')]('SmsMessage,\x20%s,\x20%s',_0x5dfb44,_0x2e1789[_0xbbed('0x27')][_0xbbed('0x29')]);return _0x1744b5(_0x2e1789[_0xbbed('0x27')]['message']);}logger[_0xbbed('0x27')](_0xbbed('0x22'),_0x5dfb44,_0x2e1789[_0xbbed('0x27')][_0xbbed('0x29')]);return _0xf860ff(_0x2e1789['error'][_0xbbed('0x29')]);}else{logger['info'](_0xbbed('0x22'),_0x5dfb44,_0xbbed('0x23'));_0xf860ff(_0x2e1789['result'][_0xbbed('0x29')]);}})[_0xbbed('0x2a')](function(_0x11ebcf){logger[_0xbbed('0x27')](_0xbbed('0x22'),_0x5dfb44,_0x11ebcf);_0x1744b5(_0x11ebcf);});});}function respondWithStatusCode(_0x11e140,_0x4fba6e){_0x4fba6e=_0x4fba6e||0xcc;return function(_0x1231ad){if(_0x1231ad){return _0x11e140['sendStatus'](_0x4fba6e);}return _0x11e140[_0xbbed('0x2b')](_0x4fba6e)['end']();};}function respondWithResult(_0xc8cdb1,_0x457b58){_0x457b58=_0x457b58||0xc8;return function(_0x37db7b){if(_0x37db7b){return _0xc8cdb1[_0xbbed('0x2b')](_0x457b58)['json'](_0x37db7b);}};}function respondWithFilteredResult(_0x1339b9,_0x45aff2){return function(_0x381cb8){if(_0x381cb8){var _0x446c21=typeof _0x45aff2['offset']===_0xbbed('0x2c')&&typeof _0x45aff2['limit']===_0xbbed('0x2c');var _0x3294b9=_0x381cb8['count'];var _0x35fb77=_0x446c21?0x0:_0x45aff2[_0xbbed('0x2d')];var _0x4d444f=_0x446c21?_0x381cb8['count']:_0x45aff2['offset']+_0x45aff2['limit'];var _0x5601da;if(_0x4d444f>=_0x3294b9){_0x4d444f=_0x3294b9;_0x5601da=0xc8;}else{_0x5601da=0xce;}_0x1339b9[_0xbbed('0x2b')](_0x5601da);return _0x1339b9[_0xbbed('0x2e')]('Content-Range',_0x35fb77+'-'+_0x4d444f+'/'+_0x3294b9)['json'](_0x381cb8);}return null;};}function patchUpdates(_0xafaa37){return function(_0x46da2f){try{jsonpatch['apply'](_0x46da2f,_0xafaa37,!![]);}catch(_0x30d5b7){return BPromise['reject'](_0x30d5b7);}return _0x46da2f[_0xbbed('0x2f')]();};}function saveUpdates(_0x186ce5,_0x3bf31e){return function(_0x479669){if(_0x479669){return _0x479669[_0xbbed('0x30')](_0x186ce5)[_0xbbed('0x20')](function(_0x27a932){return _0x27a932;});}return null;};}function removeEntity(_0x3b868f,_0x240280){return function(_0x1f4904){if(_0x1f4904){return _0x1f4904['destroy']()[_0xbbed('0x20')](function(){_0x3b868f['status'](0xcc)['end']();});}};}function handleEntityNotFound(_0x1831f6,_0x5dfc63){return function(_0x3ae498){if(!_0x3ae498){_0x1831f6[_0xbbed('0x31')](0x194);}return _0x3ae498;};}function handleError(_0x1ce1b1,_0x259d5a){_0x259d5a=_0x259d5a||0x1f4;return function(_0x58f1f3){logger[_0xbbed('0x27')](_0x58f1f3[_0xbbed('0x32')]);if(_0x58f1f3['name']){delete _0x58f1f3['name'];}_0x1ce1b1['status'](_0x259d5a)[_0xbbed('0x33')](_0x58f1f3);};}exports[_0xbbed('0x34')]=function(_0x2ab97c,_0xa8d2ab){var _0x176d21={},_0x6318a7={},_0x3dd7b8={'count':0x0,'rows':[]};var _0x5045d8=_[_0xbbed('0x35')](db[_0xbbed('0x36')][_0xbbed('0x37')],function(_0xc50bb2){return{'name':_0xc50bb2[_0xbbed('0x38')],'type':_0xc50bb2['type'][_0xbbed('0x39')]};});_0x6318a7[_0xbbed('0x3a')]=_['map'](_0x5045d8,_0xbbed('0x3b'));_0x6318a7[_0xbbed('0x3c')]=_[_0xbbed('0x3d')](_0x2ab97c[_0xbbed('0x3c')]);_0x6318a7[_0xbbed('0x3e')]=_[_0xbbed('0x3f')](_0x6318a7['model'],_0x6318a7['query']);_0x176d21[_0xbbed('0x40')]=_['intersection'](_0x6318a7[_0xbbed('0x3a')],qs['fields'](_0x2ab97c[_0xbbed('0x3c')][_0xbbed('0x41')]));_0x176d21[_0xbbed('0x40')]=_0x176d21[_0xbbed('0x40')][_0xbbed('0x42')]?_0x176d21[_0xbbed('0x40')]:_0x6318a7['model'];if(!_0x2ab97c[_0xbbed('0x3c')]['hasOwnProperty'](_0xbbed('0x43'))){_0x176d21[_0xbbed('0x44')]=qs[_0xbbed('0x44')](_0x2ab97c['query'][_0xbbed('0x44')]);_0x176d21['offset']=qs['offset'](_0x2ab97c[_0xbbed('0x3c')]['offset']);}_0x176d21['order']=qs[_0xbbed('0x45')](_0x2ab97c[_0xbbed('0x3c')][_0xbbed('0x45')]);_0x176d21['where']=qs[_0xbbed('0x3e')](_[_0xbbed('0x46')](_0x2ab97c['query'],_0x6318a7[_0xbbed('0x3e')]),_0x5045d8);if(_0x2ab97c[_0xbbed('0x3c')][_0xbbed('0x47')]){_0x176d21[_0xbbed('0x48')]=_[_0xbbed('0x49')](_0x176d21[_0xbbed('0x48')],{'$or':_[_0xbbed('0x35')](_0x5045d8,function(_0x59852c){if(_0x59852c[_0xbbed('0x4a')]!==_0xbbed('0x4b')){var _0x3907f8={};_0x3907f8[_0x59852c[_0xbbed('0x3b')]]={'$like':'%'+_0x2ab97c[_0xbbed('0x3c')][_0xbbed('0x47')]+'%'};return _0x3907f8;}})});}_0x176d21=_['merge']({},_0x176d21,_0x2ab97c[_0xbbed('0x4c')]);var _0x49bc42={'where':_0x176d21['where']};return db[_0xbbed('0x36')][_0xbbed('0x4d')](_0x49bc42)['then'](function(_0x2b988a){_0x3dd7b8[_0xbbed('0x4d')]=_0x2b988a;if(_0x2ab97c[_0xbbed('0x3c')]['includeAll']){_0x176d21[_0xbbed('0x4e')]=[{'all':!![]}];}return db[_0xbbed('0x36')]['findAll'](_0x176d21);})[_0xbbed('0x20')](function(_0x2120ac){_0x3dd7b8[_0xbbed('0x4f')]=_0x2120ac;return _0x3dd7b8;})[_0xbbed('0x20')](respondWithFilteredResult(_0xa8d2ab,_0x176d21))[_0xbbed('0x2a')](handleError(_0xa8d2ab,null));};exports[_0xbbed('0x50')]=function(_0x22a64f,_0x2d5061){var _0x3c46bf={'raw':!![],'where':{'id':_0x22a64f[_0xbbed('0x51')]['id']}},_0xb658dc={};_0xb658dc[_0xbbed('0x3a')]=_[_0xbbed('0x3d')](db[_0xbbed('0x36')][_0xbbed('0x37')]);_0xb658dc[_0xbbed('0x3c')]=_[_0xbbed('0x3d')](_0x22a64f[_0xbbed('0x3c')]);_0xb658dc[_0xbbed('0x3e')]=_['intersection'](_0xb658dc[_0xbbed('0x3a')],_0xb658dc['query']);_0x3c46bf['attributes']=_['intersection'](_0xb658dc[_0xbbed('0x3a')],qs['fields'](_0x22a64f[_0xbbed('0x3c')][_0xbbed('0x41')]));_0x3c46bf[_0xbbed('0x40')]=_0x3c46bf[_0xbbed('0x40')][_0xbbed('0x42')]?_0x3c46bf['attributes']:_0xb658dc[_0xbbed('0x3a')];if(_0x22a64f['query'][_0xbbed('0x52')]){_0x3c46bf[_0xbbed('0x4e')]=[{'all':!![]}];}_0x3c46bf=_[_0xbbed('0x49')]({},_0x3c46bf,_0x22a64f['options']);return db['SmsMessage']['find'](_0x3c46bf)[_0xbbed('0x20')](handleEntityNotFound(_0x2d5061,null))[_0xbbed('0x20')](respondWithResult(_0x2d5061,null))[_0xbbed('0x2a')](handleError(_0x2d5061,null));};exports[_0xbbed('0x53')]=function(_0x362704,_0x2def3e){return db[_0xbbed('0x36')][_0xbbed('0x53')](_0x362704[_0xbbed('0x54')],{})[_0xbbed('0x20')](respondWithResult(_0x2def3e,0xc9))[_0xbbed('0x2a')](handleError(_0x2def3e,null));};exports['update']=function(_0x440eb3,_0x1fd0de){if(_0x440eb3[_0xbbed('0x54')]['id']){delete _0x440eb3[_0xbbed('0x54')]['id'];}return db[_0xbbed('0x36')][_0xbbed('0x55')]({'where':{'id':_0x440eb3['params']['id']}})['then'](handleEntityNotFound(_0x1fd0de,null))[_0xbbed('0x20')](saveUpdates(_0x440eb3[_0xbbed('0x54')],null))['then'](respondWithResult(_0x1fd0de,null))[_0xbbed('0x2a')](handleError(_0x1fd0de,null));};exports[_0xbbed('0x56')]=function(_0x48db09,_0x202896){return db[_0xbbed('0x36')]['find']({'where':{'id':_0x48db09[_0xbbed('0x51')]['id']}})[_0xbbed('0x20')](handleEntityNotFound(_0x202896,null))[_0xbbed('0x20')](removeEntity(_0x202896,null))[_0xbbed('0x2a')](handleError(_0x202896,null));};exports['describe']=function(_0x19abbb,_0x33aa47){return db[_0xbbed('0x36')][_0xbbed('0x57')]()[_0xbbed('0x20')](respondWithResult(_0x33aa47,null))['catch'](handleError(_0x33aa47,null));};var interaction_log=require('../../config/logger')('sms-interactions');exports[_0xbbed('0x58')]=function(_0x14a702,_0x443bf,_0x22dfed){var _0x15fe7b={'agent':{},'channel':_0xbbed('0x59')};if(_0x14a702[_0xbbed('0x54')]['id']){delete _0x14a702[_0xbbed('0x54')]['id'];}_0x14a702[_0xbbed('0x54')]['read']=!![];_0x14a702[_0xbbed('0x54')][_0xbbed('0x5a')]=moment()[_0xbbed('0x5b')](_0xbbed('0x5c'));_0x14a702['body'][_0xbbed('0x5d')]=_0x14a702[_0xbbed('0x54')][_0xbbed('0x5d')]||_0x14a702[_0xbbed('0x5e')]['id'];_0x15fe7b[_0xbbed('0x5f')]['id']=_0x14a702[_0xbbed('0x54')][_0xbbed('0x5d')];return db['SmsMessage'][_0xbbed('0x55')]({'where':{'id':_0x14a702[_0xbbed('0x51')]['id'],'UserId':null}})['then'](handleEntityNotFound(_0x443bf,null))['then'](saveUpdates(_0x14a702[_0xbbed('0x54')],null))[_0xbbed('0x20')](function(_0x1ec36e){if(_0x1ec36e){_0x15fe7b[_0xbbed('0x29')]=_0x1ec36e[_0xbbed('0x60')]({'plain':!![]});return db['SmsInteraction']['find']({'where':{'id':_0x1ec36e[_0xbbed('0x61')]}});}return null;})['then'](handleEntityNotFound(_0x443bf,null))[_0xbbed('0x20')](function(_0x58e1ce){if(_0x58e1ce){return _0x58e1ce[_0xbbed('0x30')]({'UserId':_0x14a702['body'][_0xbbed('0x5d')],'read1stAt':_[_0xbbed('0x62')](_0x58e1ce[_0xbbed('0x63')])?moment()[_0xbbed('0x5b')](_0xbbed('0x5c')):undefined});}return null;})['then'](function(_0x2443ef){if(_0x2443ef){_0x15fe7b[_0xbbed('0x64')]=_0x2443ef[_0xbbed('0x60')]({'plain':!![]});interaction_log['info'](_0xbbed('0x65'),_0x14a702[_0xbbed('0x5e')]['id'],_0x14a702[_0xbbed('0x5e')][_0xbbed('0x3b')],_0x14a702[_0xbbed('0x5e')]['role'],_0x15fe7b[_0xbbed('0x64')]['id'],_0x14a702[_0xbbed('0x54')]?JSON[_0xbbed('0x26')](_0x14a702['body']):_0xbbed('0x66'));return respondWithRpcPromise(_0xbbed('0x67'),'acceptMessage',_0x15fe7b);}return null;})['then'](function(_0x51c2e6){var _0x118427='SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20'+_0x51c2e6[_0xbbed('0x29')][_0xbbed('0x68')];return db[_0xbbed('0x69')][_0xbbed('0x3c')](_0x118427,{'type':db['Sequelize'][_0xbbed('0x6a')]['SELECT'],'raw':!![]})[_0xbbed('0x20')](function(_0x878ee){return _0x878ee;});})[_0xbbed('0x20')](function(_0x5f5488){if(_0x5f5488){_0x15fe7b[_0xbbed('0x29')][_0xbbed('0x6b')]=_0x5f5488[0x0];if(!_0x14a702[_0xbbed('0x54')][_0xbbed('0x5d')])return;return db['User'][_0xbbed('0x55')]({'where':{'id':_0x14a702[_0xbbed('0x54')]['UserId'],'role':_0xbbed('0x5f')},'attributes':['id',_0xbbed('0x3b'),_0xbbed('0x6c'),_0xbbed('0x6d'),_0xbbed('0x6e')],'raw':!![]});}return null;})[_0xbbed('0x20')](function(_0x44d0c2){if(!_0x44d0c2)return null;_0x15fe7b[_0xbbed('0x29')][_0xbbed('0x5f')]=_0x44d0c2;return _0x15fe7b;})['then'](function(_0x35647f){if(_0x35647f){if(_0x14a702['body'][_0xbbed('0x6f')]){_0x15fe7b['message'][_0xbbed('0x70')]=util[_0xbbed('0x5b')](_0xbbed('0x71'),_0x14a702['user'][_0xbbed('0x3b')]);_0x15fe7b[_0xbbed('0x29')][_0xbbed('0x72')]=_0x15fe7b[_0xbbed('0x72')];_0x15fe7b[_0xbbed('0x29')]['motionChannel']=_0x15fe7b[_0xbbed('0x72')];_0x15fe7b['message'][_0xbbed('0x73')]=_0xbbed('0x58');return respondWithRpcPromise(_0xbbed('0x74'),'EventManager',{'event':'acceptmessage','message':_0x15fe7b[_0xbbed('0x29')]},client9002)[_0xbbed('0x20')](function(){return _0x15fe7b;});}return _0x15fe7b;}return null;})[_0xbbed('0x20')](respondWithResult(_0x443bf,null))[_0xbbed('0x2a')](handleError(_0x443bf,null));};var interaction_log=require(_0xbbed('0x13'))(_0xbbed('0x75'));exports[_0xbbed('0x76')]=function(_0xc6cbc0,_0x20572d,_0x9c03ff){var _0x1fcbc6={'agent':{},'channel':_0xbbed('0x59')};if(_0xc6cbc0['body']['id']){delete _0xc6cbc0[_0xbbed('0x54')]['id'];}_0xc6cbc0['body'][_0xbbed('0x5d')]=_0xc6cbc0[_0xbbed('0x54')]['UserId']||_0xc6cbc0['user']['id'];_0x1fcbc6['agent']['id']=_0xc6cbc0[_0xbbed('0x54')][_0xbbed('0x5d')];return db[_0xbbed('0x36')][_0xbbed('0x55')]({'where':{'id':_0xc6cbc0[_0xbbed('0x51')]['id'],'UserId':null}})[_0xbbed('0x20')](handleEntityNotFound(_0x20572d,null))[_0xbbed('0x20')](function(_0x46b0be){if(_0x46b0be){_0x1fcbc6[_0xbbed('0x29')]=_0x46b0be[_0xbbed('0x60')]({'plain':!![]});return db[_0xbbed('0x77')]['find']({'where':{'id':_0x46b0be[_0xbbed('0x61')]}});}return null;})[_0xbbed('0x20')](handleEntityNotFound(_0x20572d,null))[_0xbbed('0x20')](function(_0x388e30){if(_0x388e30){_0x1fcbc6[_0xbbed('0x64')]=_0x388e30[_0xbbed('0x60')]({'plain':!![]});interaction_log[_0xbbed('0x21')](_0xbbed('0x78'),_0xc6cbc0[_0xbbed('0x5e')]['id'],_0xc6cbc0[_0xbbed('0x5e')][_0xbbed('0x3b')],_0xc6cbc0[_0xbbed('0x5e')][_0xbbed('0x79')],_0x1fcbc6[_0xbbed('0x64')]['id'],_0xc6cbc0[_0xbbed('0x54')]?JSON[_0xbbed('0x26')](_0xc6cbc0[_0xbbed('0x54')]):_0xbbed('0x66'));return respondWithRpcPromise(_0xbbed('0x7a'),_0xbbed('0x7b'),_0x1fcbc6);}return null;})[_0xbbed('0x20')](function(_0x11b80d){var _0x8b974c='SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20'+_0x11b80d[_0xbbed('0x29')][_0xbbed('0x68')];return db['sequelize'][_0xbbed('0x3c')](_0x8b974c,{'type':db['Sequelize']['QueryTypes'][_0xbbed('0x7c')],'raw':!![]})[_0xbbed('0x20')](function(_0x931287){return _0x931287;});})[_0xbbed('0x20')](function(_0x398dc0){if(_0x398dc0){_0x1fcbc6['message'][_0xbbed('0x6b')]=_0x398dc0[0x0];if(!_0xc6cbc0[_0xbbed('0x54')][_0xbbed('0x5d')])return;return db[_0xbbed('0x7d')]['find']({'where':{'id':_0xc6cbc0['body'][_0xbbed('0x5d')],'role':_0xbbed('0x5f')},'attributes':['id','name',_0xbbed('0x6c'),_0xbbed('0x6d'),_0xbbed('0x6e')],'raw':!![]});}return null;})[_0xbbed('0x20')](function(_0x4552e6){if(!_0x4552e6)return null;_0x1fcbc6[_0xbbed('0x29')][_0xbbed('0x5f')]=_0x4552e6;return _0x1fcbc6;})['then'](function(_0x46eaaa){if(_0x46eaaa){_0x46eaaa[_0xbbed('0x29')][_0xbbed('0x70')]=util[_0xbbed('0x5b')](_0xbbed('0x71'),_0xc6cbc0[_0xbbed('0x5e')][_0xbbed('0x3b')]);_0x46eaaa[_0xbbed('0x29')]['channel']=_0x1fcbc6[_0xbbed('0x72')];_0x46eaaa[_0xbbed('0x29')][_0xbbed('0x7e')]=_0x1fcbc6[_0xbbed('0x72')];_0x46eaaa[_0xbbed('0x29')][_0xbbed('0x73')]='reject';respondWithRpcPromise(_0xbbed('0x74'),'EventManager',{'event':_0xbbed('0x7f'),'message':_0x46eaaa['message']},client9002);return _0x1fcbc6;}return null;})['then'](respondWithResult(_0x20572d,null))[_0xbbed('0x2a')](handleError(_0x20572d,null));};exports[_0xbbed('0x2b')]=function(_0x5249d4,_0x1e653f,_0x130065){if(_0x5249d4['body']['id']){delete _0x5249d4[_0xbbed('0x54')]['id'];}var _0x2b0005;return db[_0xbbed('0x36')][_0xbbed('0x55')]({'where':{'id':_0x5249d4[_0xbbed('0x51')]['id']}})['then'](handleEntityNotFound(_0x1e653f,null))[_0xbbed('0x20')](function(_0x496c7b){if(_0x496c7b){_0x2b0005=_0x496c7b;return db[_0xbbed('0x80')][_0xbbed('0x55')]({'where':{'id':_0x496c7b[_0xbbed('0x81')]}});}})[_0xbbed('0x20')](handleEntityNotFound(_0x1e653f,null))['then'](function(_0x19519e){if(_0x19519e){logger[_0xbbed('0x24')](_0xbbed('0x25'),_0xbbed('0x2b'),_0xbbed('0x82'),_0x19519e[_0xbbed('0x4a')],util['inspect'](_0x5249d4[_0xbbed('0x54')],{'showHidden':![],'depth':null}));switch(_0x19519e['type']){case _0xbbed('0x83'):if(_0x5249d4[_0xbbed('0x54')]['MessageSid']&&_0x5249d4[_0xbbed('0x54')][_0xbbed('0x84')]===_0x2b0005[_0xbbed('0x85')]){return _0x2b0005[_0xbbed('0x30')]({'read':!![]});}else{logger[_0xbbed('0x27')](_0xbbed('0x86'),_0xbbed('0x2b'),'twilio',util[_0xbbed('0x87')](_0x5249d4[_0xbbed('0x54')],{'showHidden':![],'depth':null}));}break;case _0xbbed('0x88'):if(_0x5249d4['body'][_0xbbed('0x89')]&&_0x5249d4[_0xbbed('0x54')]['MessageUUID']===_0x2b0005[_0xbbed('0x85')]&&_[_0xbbed('0x8a')](['sent','delivered'],_0x5249d4[_0xbbed('0x54')][_0xbbed('0x8b')])>=0x0){return _0x2b0005[_0xbbed('0x30')]({'read':!![]});}else{logger[_0xbbed('0x27')](_0xbbed('0x86'),_0xbbed('0x2b'),_0xbbed('0x8c'),util[_0xbbed('0x87')](_0x5249d4[_0xbbed('0x54')],{'showHidden':![],'depth':null}));}break;case _0xbbed('0x8d'):var _0x1e064b=_0x5249d4[_0xbbed('0x54')][_0xbbed('0x8e')][0x0];if(_0x1e064b[_0xbbed('0x2b')][_0xbbed('0x8f')]===_0xbbed('0x90')){return _0x2b0005[_0xbbed('0x30')]({'read':!![]});}else{logger[_0xbbed('0x27')](_0xbbed('0x86'),_0xbbed('0x2b'),_0xbbed('0x8d'),util[_0xbbed('0x87')](_0x5249d4['body'],{'showHidden':![],'depth':null}));}break;}return _0x2b0005;}})[_0xbbed('0x20')](respondWithResult(_0x1e653f,null))[_0xbbed('0x2a')](handleError(_0x1e653f,null));};