07148057e75aba507ebd7a1ec071b98431e73a0a
[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 _0xf03d=['lodash','crypto','desk.js','querystring','papaparse','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/environment','../../config/license/util','redis','defaults','localhost','socket.io-emitter','jayson/promise','client','http','request','SmsMessage,\x20%s,\x20%s','request\x20sent','debug','SmsMessage,\x20%s,\x20%s,\x20%s','stringify','error','message','info','result','catch','sendStatus','end','status','json','offset','undefined','count','limit','Content-Range','reject','update','then','destroy','stack','name','index','SmsMessage','rawAttributes','type','key','model','map','query','keys','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','filters','pick','filter','where','merge','options','includeAll','include','rows','show','params','create','body','find','describe','../../config/logger','accept','sms','format','YYYY-MM-DD\x20HH:mm:ss','UserId','get','SmsInteraction','SmsInteractionId','isNil','read1stAt','user','role','interaction','AcceptMessage','acceptMessage','ContactId','sequelize','Sequelize','QueryTypes','SELECT','contact','User','agent','fullname','email','internal','manual','interface','SIP/%s','channel','motionChannel','EventManager','acceptmessage','sms-interactions','[SMSMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','null','RejectMessage','SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20','event','SmsAccountId','received\x20delivery\x20report\x20from','inspect','twilio','MessageSid','SmsAccount,\x20%s,\x20%s,\x20%s','plivo','MessageUUID','messageId','indexOf','sent','delivered','Status','plivio','infobip','results','groupName','DELIVERED','eml-format','rimraf','zip-dir','request-promise','moment','bluebird','mustache','util','path','sox','to-csv','ejs'];(function(_0x414901,_0x20ee6a){var _0x2cae72=function(_0x1f13bc){while(--_0x1f13bc){_0x414901['push'](_0x414901['shift']());}};_0x2cae72(++_0x20ee6a);}(_0xf03d,0x1a7));var _0xdf03=function(_0x3051e7,_0x3cd14d){_0x3051e7=_0x3051e7-0x0;var _0x4fbc85=_0xf03d[_0x3051e7];return _0x4fbc85;};'use strict';var emlformat=require(_0xdf03('0x0'));var rimraf=require(_0xdf03('0x1'));var zipdir=require(_0xdf03('0x2'));var jsonpatch=require('fast-json-patch');var rp=require(_0xdf03('0x3'));var moment=require(_0xdf03('0x4'));var BPromise=require(_0xdf03('0x5'));var Mustache=require(_0xdf03('0x6'));var util=require(_0xdf03('0x7'));var path=require(_0xdf03('0x8'));var sox=require(_0xdf03('0x9'));var csv=require(_0xdf03('0xa'));var ejs=require(_0xdf03('0xb'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0xdf03('0xc'));var squel=require('squel');var crypto=require(_0xdf03('0xd'));var jsforce=require('jsforce');var deskjs=require(_0xdf03('0xe'));var toCsv=require(_0xdf03('0xa'));var querystring=require(_0xdf03('0xf'));var Papa=require(_0xdf03('0x10'));var Redis=require('ioredis');var authService=require('../../components/auth/service');var qs=require(_0xdf03('0x11'));var as=require(_0xdf03('0x12'));var hardwareService=require(_0xdf03('0x13'));var logger=require('../../config/logger')('api');var utils=require('../../config/utils');var config=require(_0xdf03('0x14'));var licenseUtil=require(_0xdf03('0x15'));var db=require('../../mysqldb')['db'];config[_0xdf03('0x16')]=_[_0xdf03('0x17')](config[_0xdf03('0x16')],{'host':_0xdf03('0x18'),'port':0x18eb});var socket=require(_0xdf03('0x19'))(new Redis(config['redis']));require('./smsMessage.socket')['register'](socket);var jayson=require(_0xdf03('0x1a'));var client=jayson[_0xdf03('0x1b')][_0xdf03('0x1c')]({'port':0x232c});var client9002=jayson[_0xdf03('0x1b')]['http']({'port':0x232a});function respondWithRpcPromise(_0x43ab5d,_0x1b4b7f,_0x3b936a,_0x3bb274){return new BPromise(function(_0x216176,_0x232938){var _0x406451=_0x3bb274||client;return _0x406451[_0xdf03('0x1d')](_0x43ab5d,_0x3b936a)['then'](function(_0x112d54){logger['info'](_0xdf03('0x1e'),_0x1b4b7f,_0xdf03('0x1f'));logger[_0xdf03('0x20')](_0xdf03('0x21'),_0x1b4b7f,_0xdf03('0x1f'),JSON[_0xdf03('0x22')](_0x112d54));if(_0x112d54[_0xdf03('0x23')]){if(_0x112d54[_0xdf03('0x23')]['code']===0x1f4){logger[_0xdf03('0x23')](_0xdf03('0x1e'),_0x1b4b7f,_0x112d54['error'][_0xdf03('0x24')]);return _0x232938(_0x112d54['error'][_0xdf03('0x24')]);}logger['error'](_0xdf03('0x1e'),_0x1b4b7f,_0x112d54[_0xdf03('0x23')][_0xdf03('0x24')]);return _0x216176(_0x112d54['error'][_0xdf03('0x24')]);}else{logger[_0xdf03('0x25')](_0xdf03('0x1e'),_0x1b4b7f,_0xdf03('0x1f'));_0x216176(_0x112d54[_0xdf03('0x26')][_0xdf03('0x24')]);}})[_0xdf03('0x27')](function(_0x4cc4f3){logger['error'](_0xdf03('0x1e'),_0x1b4b7f,_0x4cc4f3);_0x232938(_0x4cc4f3);});});}function respondWithStatusCode(_0x2457a6,_0x2c61cc){_0x2c61cc=_0x2c61cc||0xcc;return function(_0x5cd6ce){if(_0x5cd6ce){return _0x2457a6[_0xdf03('0x28')](_0x2c61cc);}return _0x2457a6['status'](_0x2c61cc)[_0xdf03('0x29')]();};}function respondWithResult(_0x11f483,_0x309a02){_0x309a02=_0x309a02||0xc8;return function(_0x1ab727){if(_0x1ab727){return _0x11f483[_0xdf03('0x2a')](_0x309a02)[_0xdf03('0x2b')](_0x1ab727);}};}function respondWithFilteredResult(_0x19d26d,_0x3affb7){return function(_0x1ca481){if(_0x1ca481){var _0x587303=typeof _0x3affb7[_0xdf03('0x2c')]===_0xdf03('0x2d')&&typeof _0x3affb7['limit']===_0xdf03('0x2d');var _0x4187b7=_0x1ca481['count'];var _0x786365=_0x587303?0x0:_0x3affb7['offset'];var _0x52ec9f=_0x587303?_0x1ca481[_0xdf03('0x2e')]:_0x3affb7[_0xdf03('0x2c')]+_0x3affb7[_0xdf03('0x2f')];var _0x514124;if(_0x52ec9f>=_0x4187b7){_0x52ec9f=_0x4187b7;_0x514124=0xc8;}else{_0x514124=0xce;}_0x19d26d[_0xdf03('0x2a')](_0x514124);return _0x19d26d['set'](_0xdf03('0x30'),_0x786365+'-'+_0x52ec9f+'/'+_0x4187b7)['json'](_0x1ca481);}return null;};}function patchUpdates(_0x4b9c46){return function(_0x17103d){try{jsonpatch['apply'](_0x17103d,_0x4b9c46,!![]);}catch(_0x591f40){return BPromise[_0xdf03('0x31')](_0x591f40);}return _0x17103d['save']();};}function saveUpdates(_0x3ec641,_0x1056c3){return function(_0x51c67d){if(_0x51c67d){return _0x51c67d[_0xdf03('0x32')](_0x3ec641)[_0xdf03('0x33')](function(_0x4f7add){return _0x4f7add;});}return null;};}function removeEntity(_0xb1a799,_0x24e8f5){return function(_0x563c9d){if(_0x563c9d){return _0x563c9d[_0xdf03('0x34')]()[_0xdf03('0x33')](function(){_0xb1a799['status'](0xcc)[_0xdf03('0x29')]();});}};}function handleEntityNotFound(_0x14171,_0x541fec){return function(_0x14d878){if(!_0x14d878){_0x14171[_0xdf03('0x28')](0x194);}return _0x14d878;};}function handleError(_0x588724,_0x1ccb9f){_0x1ccb9f=_0x1ccb9f||0x1f4;return function(_0x382431){logger[_0xdf03('0x23')](_0x382431[_0xdf03('0x35')]);if(_0x382431[_0xdf03('0x36')]){delete _0x382431[_0xdf03('0x36')];}_0x588724[_0xdf03('0x2a')](_0x1ccb9f)['send'](_0x382431);};}exports[_0xdf03('0x37')]=function(_0x14d5b6,_0x261965){var _0x1dfed5={},_0x129aa4={},_0xbfd796={'count':0x0,'rows':[]};var _0x455e99=_['map'](db[_0xdf03('0x38')][_0xdf03('0x39')],function(_0x1ac94d){return{'name':_0x1ac94d['fieldName'],'type':_0x1ac94d[_0xdf03('0x3a')][_0xdf03('0x3b')]};});_0x129aa4[_0xdf03('0x3c')]=_[_0xdf03('0x3d')](_0x455e99,'name');_0x129aa4[_0xdf03('0x3e')]=_[_0xdf03('0x3f')](_0x14d5b6[_0xdf03('0x3e')]);_0x129aa4['filters']=_[_0xdf03('0x40')](_0x129aa4[_0xdf03('0x3c')],_0x129aa4[_0xdf03('0x3e')]);_0x1dfed5[_0xdf03('0x41')]=_['intersection'](_0x129aa4['model'],qs['fields'](_0x14d5b6[_0xdf03('0x3e')][_0xdf03('0x42')]));_0x1dfed5[_0xdf03('0x41')]=_0x1dfed5[_0xdf03('0x41')][_0xdf03('0x43')]?_0x1dfed5[_0xdf03('0x41')]:_0x129aa4['model'];if(!_0x14d5b6[_0xdf03('0x3e')][_0xdf03('0x44')](_0xdf03('0x45'))){_0x1dfed5[_0xdf03('0x2f')]=qs['limit'](_0x14d5b6[_0xdf03('0x3e')][_0xdf03('0x2f')]);_0x1dfed5[_0xdf03('0x2c')]=qs['offset'](_0x14d5b6['query'][_0xdf03('0x2c')]);}_0x1dfed5[_0xdf03('0x46')]=qs['sort'](_0x14d5b6[_0xdf03('0x3e')][_0xdf03('0x47')]);_0x1dfed5['where']=qs[_0xdf03('0x48')](_[_0xdf03('0x49')](_0x14d5b6[_0xdf03('0x3e')],_0x129aa4[_0xdf03('0x48')]),_0x455e99);if(_0x14d5b6[_0xdf03('0x3e')][_0xdf03('0x4a')]){_0x1dfed5[_0xdf03('0x4b')]=_['merge'](_0x1dfed5[_0xdf03('0x4b')],{'$or':_[_0xdf03('0x3d')](_0x455e99,function(_0x4b3025){if(_0x4b3025['type']!=='VIRTUAL'){var _0x381008={};_0x381008[_0x4b3025[_0xdf03('0x36')]]={'$like':'%'+_0x14d5b6[_0xdf03('0x3e')][_0xdf03('0x4a')]+'%'};return _0x381008;}})});}_0x1dfed5=_[_0xdf03('0x4c')]({},_0x1dfed5,_0x14d5b6[_0xdf03('0x4d')]);var _0x113ffe={'where':_0x1dfed5[_0xdf03('0x4b')]};return db[_0xdf03('0x38')][_0xdf03('0x2e')](_0x113ffe)[_0xdf03('0x33')](function(_0x4881d5){_0xbfd796[_0xdf03('0x2e')]=_0x4881d5;if(_0x14d5b6['query'][_0xdf03('0x4e')]){_0x1dfed5[_0xdf03('0x4f')]=[{'all':!![]}];}return db[_0xdf03('0x38')]['findAll'](_0x1dfed5);})[_0xdf03('0x33')](function(_0x402b1a){_0xbfd796[_0xdf03('0x50')]=_0x402b1a;return _0xbfd796;})[_0xdf03('0x33')](respondWithFilteredResult(_0x261965,_0x1dfed5))['catch'](handleError(_0x261965,null));};exports[_0xdf03('0x51')]=function(_0x267a59,_0x49db04){var _0x4dced6={'raw':!![],'where':{'id':_0x267a59[_0xdf03('0x52')]['id']}},_0x209afc={};_0x209afc[_0xdf03('0x3c')]=_[_0xdf03('0x3f')](db[_0xdf03('0x38')]['rawAttributes']);_0x209afc[_0xdf03('0x3e')]=_[_0xdf03('0x3f')](_0x267a59[_0xdf03('0x3e')]);_0x209afc[_0xdf03('0x48')]=_[_0xdf03('0x40')](_0x209afc[_0xdf03('0x3c')],_0x209afc[_0xdf03('0x3e')]);_0x4dced6[_0xdf03('0x41')]=_['intersection'](_0x209afc[_0xdf03('0x3c')],qs[_0xdf03('0x42')](_0x267a59[_0xdf03('0x3e')]['fields']));_0x4dced6[_0xdf03('0x41')]=_0x4dced6['attributes'][_0xdf03('0x43')]?_0x4dced6[_0xdf03('0x41')]:_0x209afc[_0xdf03('0x3c')];if(_0x267a59['query'][_0xdf03('0x4e')]){_0x4dced6['include']=[{'all':!![]}];}_0x4dced6=_[_0xdf03('0x4c')]({},_0x4dced6,_0x267a59[_0xdf03('0x4d')]);return db[_0xdf03('0x38')]['find'](_0x4dced6)[_0xdf03('0x33')](handleEntityNotFound(_0x49db04,null))[_0xdf03('0x33')](respondWithResult(_0x49db04,null))[_0xdf03('0x27')](handleError(_0x49db04,null));};exports[_0xdf03('0x53')]=function(_0x25e46e,_0x362eb5){return db[_0xdf03('0x38')][_0xdf03('0x53')](_0x25e46e[_0xdf03('0x54')],{})[_0xdf03('0x33')](respondWithResult(_0x362eb5,0xc9))[_0xdf03('0x27')](handleError(_0x362eb5,null));};exports[_0xdf03('0x32')]=function(_0x3fc0b5,_0x556627){if(_0x3fc0b5[_0xdf03('0x54')]['id']){delete _0x3fc0b5[_0xdf03('0x54')]['id'];}return db[_0xdf03('0x38')][_0xdf03('0x55')]({'where':{'id':_0x3fc0b5[_0xdf03('0x52')]['id']}})[_0xdf03('0x33')](handleEntityNotFound(_0x556627,null))[_0xdf03('0x33')](saveUpdates(_0x3fc0b5['body'],null))[_0xdf03('0x33')](respondWithResult(_0x556627,null))[_0xdf03('0x27')](handleError(_0x556627,null));};exports[_0xdf03('0x34')]=function(_0x4a92c5,_0xef4515){return db[_0xdf03('0x38')][_0xdf03('0x55')]({'where':{'id':_0x4a92c5[_0xdf03('0x52')]['id']}})[_0xdf03('0x33')](handleEntityNotFound(_0xef4515,null))[_0xdf03('0x33')](removeEntity(_0xef4515,null))[_0xdf03('0x27')](handleError(_0xef4515,null));};exports[_0xdf03('0x56')]=function(_0xf02a97,_0x590183){return db[_0xdf03('0x38')][_0xdf03('0x56')]()[_0xdf03('0x33')](respondWithResult(_0x590183,null))[_0xdf03('0x27')](handleError(_0x590183,null));};var interaction_log=require(_0xdf03('0x57'))('sms-interactions');exports[_0xdf03('0x58')]=function(_0x347b45,_0x420148,_0x5daccb){var _0x31ae71={'agent':{},'channel':_0xdf03('0x59')};if(_0x347b45[_0xdf03('0x54')]['id']){delete _0x347b45['body']['id'];}_0x347b45[_0xdf03('0x54')]['read']=!![];_0x347b45[_0xdf03('0x54')]['readAt']=moment()[_0xdf03('0x5a')](_0xdf03('0x5b'));_0x347b45[_0xdf03('0x54')][_0xdf03('0x5c')]=_0x347b45[_0xdf03('0x54')][_0xdf03('0x5c')]||_0x347b45['user']['id'];_0x31ae71['agent']['id']=_0x347b45[_0xdf03('0x54')][_0xdf03('0x5c')];return db[_0xdf03('0x38')][_0xdf03('0x55')]({'where':{'id':_0x347b45[_0xdf03('0x52')]['id'],'UserId':null}})[_0xdf03('0x33')](handleEntityNotFound(_0x420148,null))['then'](saveUpdates(_0x347b45[_0xdf03('0x54')],null))[_0xdf03('0x33')](function(_0x52ab18){if(_0x52ab18){_0x31ae71[_0xdf03('0x24')]=_0x52ab18[_0xdf03('0x5d')]({'plain':!![]});return db[_0xdf03('0x5e')][_0xdf03('0x55')]({'where':{'id':_0x52ab18[_0xdf03('0x5f')]}});}return null;})[_0xdf03('0x33')](handleEntityNotFound(_0x420148,null))[_0xdf03('0x33')](function(_0x4dac41){if(_0x4dac41){return _0x4dac41['update']({'UserId':_0x347b45['body'][_0xdf03('0x5c')],'read1stAt':_[_0xdf03('0x60')](_0x4dac41[_0xdf03('0x61')])?moment()[_0xdf03('0x5a')](_0xdf03('0x5b')):undefined});}return null;})[_0xdf03('0x33')](function(_0x34b671){if(_0x34b671){_0x31ae71['interaction']=_0x34b671[_0xdf03('0x5d')]({'plain':!![]});interaction_log['info']('[SMSMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s',_0x347b45[_0xdf03('0x62')]['id'],_0x347b45['user']['name'],_0x347b45[_0xdf03('0x62')][_0xdf03('0x63')],_0x31ae71[_0xdf03('0x64')]['id'],_0x347b45[_0xdf03('0x54')]?JSON[_0xdf03('0x22')](_0x347b45[_0xdf03('0x54')]):'null');return respondWithRpcPromise(_0xdf03('0x65'),_0xdf03('0x66'),_0x31ae71);}return null;})[_0xdf03('0x33')](function(_0x222956){var _0x2de49a='SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20'+_0x222956[_0xdf03('0x24')][_0xdf03('0x67')];return db[_0xdf03('0x68')][_0xdf03('0x3e')](_0x2de49a,{'type':db[_0xdf03('0x69')][_0xdf03('0x6a')][_0xdf03('0x6b')],'raw':!![]})['then'](function(_0x1c24f2){return _0x1c24f2;});})[_0xdf03('0x33')](function(_0xbecbec){if(_0xbecbec){_0x31ae71['message'][_0xdf03('0x6c')]=_0xbecbec[0x0];if(!_0x347b45['body']['UserId'])return;return db[_0xdf03('0x6d')]['find']({'where':{'id':_0x347b45[_0xdf03('0x54')]['UserId'],'role':_0xdf03('0x6e')},'attributes':['id',_0xdf03('0x36'),_0xdf03('0x6f'),_0xdf03('0x70'),_0xdf03('0x71')],'raw':!![]});}return null;})[_0xdf03('0x33')](function(_0x5b40f5){if(!_0x5b40f5)return null;_0x31ae71[_0xdf03('0x24')]['agent']=_0x5b40f5;return _0x31ae71;})[_0xdf03('0x33')](function(_0x278b73){if(_0x278b73){if(_0x347b45[_0xdf03('0x54')][_0xdf03('0x72')]){_0x31ae71[_0xdf03('0x24')][_0xdf03('0x73')]=util[_0xdf03('0x5a')](_0xdf03('0x74'),_0x347b45[_0xdf03('0x62')][_0xdf03('0x36')]);_0x31ae71[_0xdf03('0x24')][_0xdf03('0x75')]=_0x31ae71[_0xdf03('0x75')];_0x31ae71[_0xdf03('0x24')][_0xdf03('0x76')]=_0x31ae71['channel'];_0x31ae71[_0xdf03('0x24')]['event']=_0xdf03('0x58');return respondWithRpcPromise('EventManager',_0xdf03('0x77'),{'event':_0xdf03('0x78'),'message':_0x31ae71['message']},client9002)[_0xdf03('0x33')](function(){return _0x31ae71;});}return _0x31ae71;}return null;})[_0xdf03('0x33')](respondWithResult(_0x420148,null))[_0xdf03('0x27')](handleError(_0x420148,null));};var interaction_log=require(_0xdf03('0x57'))(_0xdf03('0x79'));exports[_0xdf03('0x31')]=function(_0x2ee07b,_0x466c02,_0x188d6f){var _0x131868={'agent':{},'channel':_0xdf03('0x59')};if(_0x2ee07b[_0xdf03('0x54')]['id']){delete _0x2ee07b[_0xdf03('0x54')]['id'];}_0x2ee07b[_0xdf03('0x54')][_0xdf03('0x5c')]=_0x2ee07b[_0xdf03('0x54')][_0xdf03('0x5c')]||_0x2ee07b[_0xdf03('0x62')]['id'];_0x131868[_0xdf03('0x6e')]['id']=_0x2ee07b[_0xdf03('0x54')]['UserId'];return db['SmsMessage'][_0xdf03('0x55')]({'where':{'id':_0x2ee07b[_0xdf03('0x52')]['id'],'UserId':null}})[_0xdf03('0x33')](handleEntityNotFound(_0x466c02,null))[_0xdf03('0x33')](function(_0x381404){if(_0x381404){_0x131868[_0xdf03('0x24')]=_0x381404['get']({'plain':!![]});return db['SmsInteraction'][_0xdf03('0x55')]({'where':{'id':_0x381404[_0xdf03('0x5f')]}});}return null;})[_0xdf03('0x33')](handleEntityNotFound(_0x466c02,null))[_0xdf03('0x33')](function(_0x5b6133){if(_0x5b6133){_0x131868[_0xdf03('0x64')]=_0x5b6133['get']({'plain':!![]});interaction_log[_0xdf03('0x25')](_0xdf03('0x7a'),_0x2ee07b[_0xdf03('0x62')]['id'],_0x2ee07b['user'][_0xdf03('0x36')],_0x2ee07b[_0xdf03('0x62')][_0xdf03('0x63')],_0x131868['interaction']['id'],_0x2ee07b[_0xdf03('0x54')]?JSON[_0xdf03('0x22')](_0x2ee07b[_0xdf03('0x54')]):_0xdf03('0x7b'));return respondWithRpcPromise(_0xdf03('0x7c'),'rejectMessage',_0x131868);}return null;})['then'](function(_0x537f62){var _0x48b6b4=_0xdf03('0x7d')+_0x537f62[_0xdf03('0x24')][_0xdf03('0x67')];return db[_0xdf03('0x68')]['query'](_0x48b6b4,{'type':db[_0xdf03('0x69')][_0xdf03('0x6a')]['SELECT'],'raw':!![]})[_0xdf03('0x33')](function(_0x54cae5){return _0x54cae5;});})[_0xdf03('0x33')](function(_0x2cd9b4){if(_0x2cd9b4){_0x131868['message'][_0xdf03('0x6c')]=_0x2cd9b4[0x0];if(!_0x2ee07b[_0xdf03('0x54')][_0xdf03('0x5c')])return;return db['User']['find']({'where':{'id':_0x2ee07b[_0xdf03('0x54')]['UserId'],'role':_0xdf03('0x6e')},'attributes':['id','name','fullname',_0xdf03('0x70'),'internal'],'raw':!![]});}return null;})['then'](function(_0x4a2a1f){if(!_0x4a2a1f)return null;_0x131868[_0xdf03('0x24')]['agent']=_0x4a2a1f;return _0x131868;})[_0xdf03('0x33')](function(_0x2ff584){if(_0x2ff584){_0x2ff584[_0xdf03('0x24')][_0xdf03('0x73')]=util[_0xdf03('0x5a')](_0xdf03('0x74'),_0x2ee07b['user'][_0xdf03('0x36')]);_0x2ff584[_0xdf03('0x24')][_0xdf03('0x75')]=_0x131868[_0xdf03('0x75')];_0x2ff584[_0xdf03('0x24')]['motionChannel']=_0x131868[_0xdf03('0x75')];_0x2ff584[_0xdf03('0x24')][_0xdf03('0x7e')]=_0xdf03('0x31');respondWithRpcPromise('EventManager',_0xdf03('0x77'),{'event':'rejectmessage','message':_0x2ff584[_0xdf03('0x24')]},client9002);return _0x131868;}return null;})['then'](respondWithResult(_0x466c02,null))[_0xdf03('0x27')](handleError(_0x466c02,null));};exports[_0xdf03('0x2a')]=function(_0x319437,_0x2a3450,_0x513790){if(_0x319437[_0xdf03('0x54')]['id']){delete _0x319437[_0xdf03('0x54')]['id'];}var _0x2943a2;return db[_0xdf03('0x38')]['find']({'where':{'id':_0x319437[_0xdf03('0x52')]['id']}})[_0xdf03('0x33')](handleEntityNotFound(_0x2a3450,null))[_0xdf03('0x33')](function(_0x5424b6){if(_0x5424b6){_0x2943a2=_0x5424b6;return db['SmsAccount']['find']({'where':{'id':_0x5424b6[_0xdf03('0x7f')]}});}})['then'](handleEntityNotFound(_0x2a3450,null))[_0xdf03('0x33')](function(_0x366c92){if(_0x366c92){logger['debug'](_0xdf03('0x21'),'status',_0xdf03('0x80'),_0x366c92[_0xdf03('0x3a')],util[_0xdf03('0x81')](_0x319437[_0xdf03('0x54')],{'showHidden':![],'depth':null}));switch(_0x366c92[_0xdf03('0x3a')]){case _0xdf03('0x82'):if(_0x319437[_0xdf03('0x54')][_0xdf03('0x83')]&&_0x319437['body'][_0xdf03('0x83')]===_0x2943a2['messageId']){return _0x2943a2['update']({'read':!![]});}else{logger[_0xdf03('0x23')](_0xdf03('0x84'),_0xdf03('0x2a'),'twilio',util[_0xdf03('0x81')](_0x319437[_0xdf03('0x54')],{'showHidden':![],'depth':null}));}break;case _0xdf03('0x85'):if(_0x319437[_0xdf03('0x54')]['MessageUUID']&&_0x319437[_0xdf03('0x54')][_0xdf03('0x86')]===_0x2943a2[_0xdf03('0x87')]&&_[_0xdf03('0x88')]([_0xdf03('0x89'),_0xdf03('0x8a')],_0x319437[_0xdf03('0x54')][_0xdf03('0x8b')])>=0x0){return _0x2943a2[_0xdf03('0x32')]({'read':!![]});}else{logger[_0xdf03('0x23')](_0xdf03('0x84'),_0xdf03('0x2a'),_0xdf03('0x8c'),util[_0xdf03('0x81')](_0x319437[_0xdf03('0x54')],{'showHidden':![],'depth':null}));}break;case _0xdf03('0x8d'):var _0x69885b=_0x319437[_0xdf03('0x54')][_0xdf03('0x8e')][0x0];if(_0x69885b[_0xdf03('0x2a')][_0xdf03('0x8f')]===_0xdf03('0x90')){return _0x2943a2[_0xdf03('0x32')]({'read':!![]});}else{logger[_0xdf03('0x23')](_0xdf03('0x84'),_0xdf03('0x2a'),_0xdf03('0x8d'),util[_0xdf03('0x81')](_0x319437['body'],{'showHidden':![],'depth':null}));}break;}return _0x2943a2;}})[_0xdf03('0x33')](respondWithResult(_0x2a3450,null))[_0xdf03('0x27')](handleError(_0x2a3450,null));};