be01f9b5420ddc7de367da2e5b2a5271d2198f58
[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 _0xe797=['indexOf','sent','Status','plivio','infobip','results','groupName','DELIVERED','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','mustache','util','sox','to-csv','ejs','squel','crypto','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','redis','socket.io-emitter','./smsMessage.socket','register','client','http','request','then','debug','SmsMessage,\x20%s,\x20%s,\x20%s','request\x20sent','error','code','SmsMessage,\x20%s,\x20%s','message','info','catch','status','json','limit','undefined','count','offset','set','apply','reject','save','update','destroy','end','stack','name','send','index','map','SmsMessage','rawAttributes','fieldName','type','model','query','keys','filters','intersection','attributes','fields','hasOwnProperty','order','sort','where','pick','filter','merge','includeAll','include','findAll','rows','show','params','options','find','create','body','describe','sms-interactions','accept','sms','read','readAt','format','YYYY-MM-DD\x20HH:mm:ss','UserId','user','agent','SmsInteraction','isNil','read1stAt','interaction','get','[SMSMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','stringify','null','acceptMessage','SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20','sequelize','Sequelize','QueryTypes','SELECT','contact','email','manual','interface','SIP/%s','channel','motionChannel','event','acceptmessage','role','rejectMessage','ContactId','User','fullname','EventManager','rejectmessage','SmsAccount','SmsAccountId','received\x20delivery\x20report\x20from','twilio','MessageSid','messageId','SmsAccount,\x20%s,\x20%s,\x20%s','inspect','MessageUUID'];(function(_0x4d88f6,_0x52f758){var _0x2041c8=function(_0x16f556){while(--_0x16f556){_0x4d88f6['push'](_0x4d88f6['shift']());}};_0x2041c8(++_0x52f758);}(_0xe797,0x12a));var _0x7e79=function(_0x2dd469,_0x356586){_0x2dd469=_0x2dd469-0x0;var _0x4dcb1b=_0xe797[_0x2dd469];return _0x4dcb1b;};'use strict';var emlformat=require(_0x7e79('0x0'));var rimraf=require(_0x7e79('0x1'));var zipdir=require(_0x7e79('0x2'));var jsonpatch=require(_0x7e79('0x3'));var rp=require(_0x7e79('0x4'));var moment=require(_0x7e79('0x5'));var BPromise=require('bluebird');var Mustache=require(_0x7e79('0x6'));var util=require(_0x7e79('0x7'));var path=require('path');var sox=require(_0x7e79('0x8'));var csv=require(_0x7e79('0x9'));var ejs=require(_0x7e79('0xa'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require('lodash');var squel=require(_0x7e79('0xb'));var crypto=require(_0x7e79('0xc'));var jsforce=require('jsforce');var deskjs=require('desk.js');var toCsv=require(_0x7e79('0x9'));var querystring=require(_0x7e79('0xd'));var Papa=require(_0x7e79('0xe'));var Redis=require('ioredis');var authService=require(_0x7e79('0xf'));var qs=require(_0x7e79('0x10'));var as=require(_0x7e79('0x11'));var hardwareService=require(_0x7e79('0x12'));var logger=require(_0x7e79('0x13'))(_0x7e79('0x14'));var utils=require(_0x7e79('0x15'));var config=require(_0x7e79('0x16'));var licenseUtil=require(_0x7e79('0x17'));var db=require('../../mysqldb')['db'];config[_0x7e79('0x18')]=_['defaults'](config[_0x7e79('0x18')],{'host':'localhost','port':0x18eb});var socket=require(_0x7e79('0x19'))(new Redis(config[_0x7e79('0x18')]));require(_0x7e79('0x1a'))[_0x7e79('0x1b')](socket);var jayson=require('jayson/promise');var client=jayson[_0x7e79('0x1c')][_0x7e79('0x1d')]({'port':0x232c});var client9002=jayson[_0x7e79('0x1c')][_0x7e79('0x1d')]({'port':0x232a});function respondWithRpcPromise(_0x1bf6ef,_0xdabb80,_0x361560,_0x4e09b5){return new BPromise(function(_0x2ec0c7,_0x3bf2d3){var _0x36db1e=_0x4e09b5||client;return _0x36db1e[_0x7e79('0x1e')](_0x1bf6ef,_0x361560)[_0x7e79('0x1f')](function(_0x4c687b){logger['info']('SmsMessage,\x20%s,\x20%s',_0xdabb80,'request\x20sent');logger[_0x7e79('0x20')](_0x7e79('0x21'),_0xdabb80,_0x7e79('0x22'),JSON['stringify'](_0x4c687b));if(_0x4c687b[_0x7e79('0x23')]){if(_0x4c687b[_0x7e79('0x23')][_0x7e79('0x24')]===0x1f4){logger[_0x7e79('0x23')](_0x7e79('0x25'),_0xdabb80,_0x4c687b[_0x7e79('0x23')][_0x7e79('0x26')]);return _0x3bf2d3(_0x4c687b['error'][_0x7e79('0x26')]);}logger[_0x7e79('0x23')](_0x7e79('0x25'),_0xdabb80,_0x4c687b[_0x7e79('0x23')][_0x7e79('0x26')]);return _0x2ec0c7(_0x4c687b[_0x7e79('0x23')]['message']);}else{logger[_0x7e79('0x27')]('SmsMessage,\x20%s,\x20%s',_0xdabb80,_0x7e79('0x22'));_0x2ec0c7(_0x4c687b['result']['message']);}})[_0x7e79('0x28')](function(_0x67b3be){logger['error'](_0x7e79('0x25'),_0xdabb80,_0x67b3be);_0x3bf2d3(_0x67b3be);});});}function respondWithStatusCode(_0x9d987,_0x23b264){_0x23b264=_0x23b264||0xcc;return function(_0x423def){if(_0x423def){return _0x9d987['sendStatus'](_0x23b264);}return _0x9d987[_0x7e79('0x29')](_0x23b264)['end']();};}function respondWithResult(_0xb6c5b4,_0x21ded9){_0x21ded9=_0x21ded9||0xc8;return function(_0x153821){if(_0x153821){return _0xb6c5b4[_0x7e79('0x29')](_0x21ded9)[_0x7e79('0x2a')](_0x153821);}};}function respondWithFilteredResult(_0x595302,_0x3e7076){return function(_0xcbd3da){if(_0xcbd3da){var _0x3e8405=typeof _0x3e7076['offset']==='undefined'&&typeof _0x3e7076[_0x7e79('0x2b')]===_0x7e79('0x2c');var _0x5791d1=_0xcbd3da[_0x7e79('0x2d')];var _0x45209c=_0x3e8405?0x0:_0x3e7076['offset'];var _0x36a725=_0x3e8405?_0xcbd3da[_0x7e79('0x2d')]:_0x3e7076[_0x7e79('0x2e')]+_0x3e7076[_0x7e79('0x2b')];var _0x3a4504;if(_0x36a725>=_0x5791d1){_0x36a725=_0x5791d1;_0x3a4504=0xc8;}else{_0x3a4504=0xce;}_0x595302['status'](_0x3a4504);return _0x595302[_0x7e79('0x2f')]('Content-Range',_0x45209c+'-'+_0x36a725+'/'+_0x5791d1)[_0x7e79('0x2a')](_0xcbd3da);}return null;};}function patchUpdates(_0x6e61fa){return function(_0x760d0d){try{jsonpatch[_0x7e79('0x30')](_0x760d0d,_0x6e61fa,!![]);}catch(_0x1a12fa){return BPromise[_0x7e79('0x31')](_0x1a12fa);}return _0x760d0d[_0x7e79('0x32')]();};}function saveUpdates(_0x1df81b,_0x107145){return function(_0x187855){if(_0x187855){return _0x187855[_0x7e79('0x33')](_0x1df81b)[_0x7e79('0x1f')](function(_0x418dc8){return _0x418dc8;});}return null;};}function removeEntity(_0x4fdb8b,_0x56ac6c){return function(_0x3a7f69){if(_0x3a7f69){return _0x3a7f69[_0x7e79('0x34')]()[_0x7e79('0x1f')](function(){_0x4fdb8b[_0x7e79('0x29')](0xcc)[_0x7e79('0x35')]();});}};}function handleEntityNotFound(_0xb32896,_0x32d384){return function(_0x30c753){if(!_0x30c753){_0xb32896['sendStatus'](0x194);}return _0x30c753;};}function handleError(_0x34d436,_0x2a1651){_0x2a1651=_0x2a1651||0x1f4;return function(_0x223833){logger[_0x7e79('0x23')](_0x223833[_0x7e79('0x36')]);if(_0x223833[_0x7e79('0x37')]){delete _0x223833['name'];}_0x34d436['status'](_0x2a1651)[_0x7e79('0x38')](_0x223833);};}exports[_0x7e79('0x39')]=function(_0x16a845,_0x3c80ba){var _0x9e1881={},_0x304d87={},_0x4cc922={'count':0x0,'rows':[]};var _0x46ffab=_[_0x7e79('0x3a')](db[_0x7e79('0x3b')][_0x7e79('0x3c')],function(_0x582fcf){return{'name':_0x582fcf[_0x7e79('0x3d')],'type':_0x582fcf[_0x7e79('0x3e')]['key']};});_0x304d87[_0x7e79('0x3f')]=_[_0x7e79('0x3a')](_0x46ffab,'name');_0x304d87[_0x7e79('0x40')]=_[_0x7e79('0x41')](_0x16a845[_0x7e79('0x40')]);_0x304d87[_0x7e79('0x42')]=_[_0x7e79('0x43')](_0x304d87[_0x7e79('0x3f')],_0x304d87[_0x7e79('0x40')]);_0x9e1881[_0x7e79('0x44')]=_[_0x7e79('0x43')](_0x304d87[_0x7e79('0x3f')],qs['fields'](_0x16a845[_0x7e79('0x40')][_0x7e79('0x45')]));_0x9e1881[_0x7e79('0x44')]=_0x9e1881[_0x7e79('0x44')]['length']?_0x9e1881[_0x7e79('0x44')]:_0x304d87['model'];if(!_0x16a845[_0x7e79('0x40')][_0x7e79('0x46')]('nolimit')){_0x9e1881[_0x7e79('0x2b')]=qs['limit'](_0x16a845[_0x7e79('0x40')]['limit']);_0x9e1881[_0x7e79('0x2e')]=qs['offset'](_0x16a845['query'][_0x7e79('0x2e')]);}_0x9e1881[_0x7e79('0x47')]=qs[_0x7e79('0x48')](_0x16a845['query'][_0x7e79('0x48')]);_0x9e1881[_0x7e79('0x49')]=qs[_0x7e79('0x42')](_[_0x7e79('0x4a')](_0x16a845[_0x7e79('0x40')],_0x304d87[_0x7e79('0x42')]),_0x46ffab);if(_0x16a845[_0x7e79('0x40')][_0x7e79('0x4b')]){_0x9e1881[_0x7e79('0x49')]=_['merge'](_0x9e1881[_0x7e79('0x49')],{'$or':_[_0x7e79('0x3a')](_0x46ffab,function(_0x2527ff){if(_0x2527ff[_0x7e79('0x3e')]!=='VIRTUAL'){var _0x55c921={};_0x55c921[_0x2527ff[_0x7e79('0x37')]]={'$like':'%'+_0x16a845['query'][_0x7e79('0x4b')]+'%'};return _0x55c921;}})});}_0x9e1881=_[_0x7e79('0x4c')]({},_0x9e1881,_0x16a845['options']);var _0x269323={'where':_0x9e1881[_0x7e79('0x49')]};return db['SmsMessage']['count'](_0x269323)[_0x7e79('0x1f')](function(_0x4ff4e5){_0x4cc922[_0x7e79('0x2d')]=_0x4ff4e5;if(_0x16a845[_0x7e79('0x40')][_0x7e79('0x4d')]){_0x9e1881[_0x7e79('0x4e')]=[{'all':!![]}];}return db['SmsMessage'][_0x7e79('0x4f')](_0x9e1881);})[_0x7e79('0x1f')](function(_0x31c8f6){_0x4cc922[_0x7e79('0x50')]=_0x31c8f6;return _0x4cc922;})[_0x7e79('0x1f')](respondWithFilteredResult(_0x3c80ba,_0x9e1881))['catch'](handleError(_0x3c80ba,null));};exports[_0x7e79('0x51')]=function(_0x5ab4a5,_0x4f062c){var _0x3613c0={'raw':!![],'where':{'id':_0x5ab4a5[_0x7e79('0x52')]['id']}},_0x56d704={};_0x56d704[_0x7e79('0x3f')]=_[_0x7e79('0x41')](db[_0x7e79('0x3b')][_0x7e79('0x3c')]);_0x56d704[_0x7e79('0x40')]=_[_0x7e79('0x41')](_0x5ab4a5['query']);_0x56d704[_0x7e79('0x42')]=_[_0x7e79('0x43')](_0x56d704[_0x7e79('0x3f')],_0x56d704[_0x7e79('0x40')]);_0x3613c0[_0x7e79('0x44')]=_[_0x7e79('0x43')](_0x56d704['model'],qs[_0x7e79('0x45')](_0x5ab4a5[_0x7e79('0x40')][_0x7e79('0x45')]));_0x3613c0['attributes']=_0x3613c0[_0x7e79('0x44')]['length']?_0x3613c0['attributes']:_0x56d704['model'];if(_0x5ab4a5[_0x7e79('0x40')][_0x7e79('0x4d')]){_0x3613c0[_0x7e79('0x4e')]=[{'all':!![]}];}_0x3613c0=_[_0x7e79('0x4c')]({},_0x3613c0,_0x5ab4a5[_0x7e79('0x53')]);return db['SmsMessage'][_0x7e79('0x54')](_0x3613c0)['then'](handleEntityNotFound(_0x4f062c,null))[_0x7e79('0x1f')](respondWithResult(_0x4f062c,null))[_0x7e79('0x28')](handleError(_0x4f062c,null));};exports[_0x7e79('0x55')]=function(_0x9ede5,_0x3ebb47){return db['SmsMessage']['create'](_0x9ede5['body'],{})['then'](respondWithResult(_0x3ebb47,0xc9))['catch'](handleError(_0x3ebb47,null));};exports[_0x7e79('0x33')]=function(_0x108468,_0x2a7b1f){if(_0x108468['body']['id']){delete _0x108468[_0x7e79('0x56')]['id'];}return db[_0x7e79('0x3b')][_0x7e79('0x54')]({'where':{'id':_0x108468[_0x7e79('0x52')]['id']}})['then'](handleEntityNotFound(_0x2a7b1f,null))[_0x7e79('0x1f')](saveUpdates(_0x108468[_0x7e79('0x56')],null))[_0x7e79('0x1f')](respondWithResult(_0x2a7b1f,null))[_0x7e79('0x28')](handleError(_0x2a7b1f,null));};exports[_0x7e79('0x34')]=function(_0x421cca,_0x3d1ed9){return db['SmsMessage'][_0x7e79('0x54')]({'where':{'id':_0x421cca[_0x7e79('0x52')]['id']}})[_0x7e79('0x1f')](handleEntityNotFound(_0x3d1ed9,null))[_0x7e79('0x1f')](removeEntity(_0x3d1ed9,null))[_0x7e79('0x28')](handleError(_0x3d1ed9,null));};exports[_0x7e79('0x57')]=function(_0x5b2dbf,_0x3bdfe8){return db['SmsMessage'][_0x7e79('0x57')]()[_0x7e79('0x1f')](respondWithResult(_0x3bdfe8,null))[_0x7e79('0x28')](handleError(_0x3bdfe8,null));};var interaction_log=require('../../config/logger')(_0x7e79('0x58'));exports[_0x7e79('0x59')]=function(_0x40cae5,_0x5a89f0,_0x294eb4){var _0x4d208e={'agent':{},'channel':_0x7e79('0x5a')};if(_0x40cae5[_0x7e79('0x56')]['id']){delete _0x40cae5[_0x7e79('0x56')]['id'];}_0x40cae5[_0x7e79('0x56')][_0x7e79('0x5b')]=!![];_0x40cae5[_0x7e79('0x56')][_0x7e79('0x5c')]=moment()[_0x7e79('0x5d')](_0x7e79('0x5e'));_0x40cae5[_0x7e79('0x56')][_0x7e79('0x5f')]=_0x40cae5[_0x7e79('0x56')][_0x7e79('0x5f')]||_0x40cae5[_0x7e79('0x60')]['id'];_0x4d208e[_0x7e79('0x61')]['id']=_0x40cae5[_0x7e79('0x56')][_0x7e79('0x5f')];return db[_0x7e79('0x3b')][_0x7e79('0x54')]({'where':{'id':_0x40cae5['params']['id'],'UserId':null}})[_0x7e79('0x1f')](handleEntityNotFound(_0x5a89f0,null))['then'](saveUpdates(_0x40cae5['body'],null))[_0x7e79('0x1f')](function(_0x2fcbf1){if(_0x2fcbf1){_0x4d208e[_0x7e79('0x26')]=_0x2fcbf1['get']({'plain':!![]});return db[_0x7e79('0x62')]['find']({'where':{'id':_0x2fcbf1['SmsInteractionId']}});}return null;})[_0x7e79('0x1f')](handleEntityNotFound(_0x5a89f0,null))[_0x7e79('0x1f')](function(_0x2e27e9){if(_0x2e27e9){return _0x2e27e9[_0x7e79('0x33')]({'UserId':_0x40cae5['body'][_0x7e79('0x5f')],'read1stAt':_[_0x7e79('0x63')](_0x2e27e9[_0x7e79('0x64')])?moment()[_0x7e79('0x5d')](_0x7e79('0x5e')):undefined});}return null;})['then'](function(_0x49a5c9){if(_0x49a5c9){_0x4d208e[_0x7e79('0x65')]=_0x49a5c9[_0x7e79('0x66')]({'plain':!![]});interaction_log[_0x7e79('0x27')](_0x7e79('0x67'),_0x40cae5[_0x7e79('0x60')]['id'],_0x40cae5['user'][_0x7e79('0x37')],_0x40cae5['user']['role'],_0x4d208e['interaction']['id'],_0x40cae5[_0x7e79('0x56')]?JSON[_0x7e79('0x68')](_0x40cae5[_0x7e79('0x56')]):_0x7e79('0x69'));return respondWithRpcPromise('AcceptMessage',_0x7e79('0x6a'),_0x4d208e);}return null;})[_0x7e79('0x1f')](function(_0x49ece0){var _0x63e5bd=_0x7e79('0x6b')+_0x49ece0[_0x7e79('0x26')]['ContactId'];return db[_0x7e79('0x6c')][_0x7e79('0x40')](_0x63e5bd,{'type':db[_0x7e79('0x6d')][_0x7e79('0x6e')][_0x7e79('0x6f')],'raw':!![]})['then'](function(_0x1bd9ae){return _0x1bd9ae;});})[_0x7e79('0x1f')](function(_0x35073f){if(_0x35073f){_0x4d208e[_0x7e79('0x26')][_0x7e79('0x70')]=_0x35073f[0x0];if(!_0x40cae5[_0x7e79('0x56')]['UserId'])return;return db['User'][_0x7e79('0x54')]({'where':{'id':_0x40cae5[_0x7e79('0x56')]['UserId'],'role':_0x7e79('0x61')},'attributes':['id',_0x7e79('0x37'),'fullname',_0x7e79('0x71'),'internal'],'raw':!![]});}return null;})[_0x7e79('0x1f')](function(_0x3d4adb){if(!_0x3d4adb)return null;_0x4d208e[_0x7e79('0x26')]['agent']=_0x3d4adb;return _0x4d208e;})[_0x7e79('0x1f')](function(_0x360aa9){if(_0x360aa9){if(_0x40cae5[_0x7e79('0x56')][_0x7e79('0x72')]){_0x4d208e['message'][_0x7e79('0x73')]=util['format'](_0x7e79('0x74'),_0x40cae5[_0x7e79('0x60')][_0x7e79('0x37')]);_0x4d208e[_0x7e79('0x26')][_0x7e79('0x75')]=_0x4d208e['channel'];_0x4d208e[_0x7e79('0x26')][_0x7e79('0x76')]=_0x4d208e[_0x7e79('0x75')];_0x4d208e[_0x7e79('0x26')][_0x7e79('0x77')]='accept';return respondWithRpcPromise('EventManager','EventManager',{'event':_0x7e79('0x78'),'message':_0x4d208e[_0x7e79('0x26')]},client9002)[_0x7e79('0x1f')](function(){return _0x4d208e;});}return _0x4d208e;}return null;})[_0x7e79('0x1f')](respondWithResult(_0x5a89f0,null))[_0x7e79('0x28')](handleError(_0x5a89f0,null));};var interaction_log=require(_0x7e79('0x13'))(_0x7e79('0x58'));exports[_0x7e79('0x31')]=function(_0x4e45f5,_0x331669,_0x4f1d2d){var _0x1e824f={'agent':{},'channel':_0x7e79('0x5a')};if(_0x4e45f5[_0x7e79('0x56')]['id']){delete _0x4e45f5[_0x7e79('0x56')]['id'];}_0x4e45f5[_0x7e79('0x56')][_0x7e79('0x5f')]=_0x4e45f5['body']['UserId']||_0x4e45f5[_0x7e79('0x60')]['id'];_0x1e824f[_0x7e79('0x61')]['id']=_0x4e45f5['body'][_0x7e79('0x5f')];return db[_0x7e79('0x3b')][_0x7e79('0x54')]({'where':{'id':_0x4e45f5['params']['id'],'UserId':null}})['then'](handleEntityNotFound(_0x331669,null))[_0x7e79('0x1f')](function(_0xfb2ad5){if(_0xfb2ad5){_0x1e824f[_0x7e79('0x26')]=_0xfb2ad5[_0x7e79('0x66')]({'plain':!![]});return db[_0x7e79('0x62')][_0x7e79('0x54')]({'where':{'id':_0xfb2ad5['SmsInteractionId']}});}return null;})[_0x7e79('0x1f')](handleEntityNotFound(_0x331669,null))['then'](function(_0x4d204c){if(_0x4d204c){_0x1e824f[_0x7e79('0x65')]=_0x4d204c[_0x7e79('0x66')]({'plain':!![]});interaction_log[_0x7e79('0x27')]('[SMSMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s',_0x4e45f5['user']['id'],_0x4e45f5[_0x7e79('0x60')]['name'],_0x4e45f5[_0x7e79('0x60')][_0x7e79('0x79')],_0x1e824f[_0x7e79('0x65')]['id'],_0x4e45f5[_0x7e79('0x56')]?JSON[_0x7e79('0x68')](_0x4e45f5[_0x7e79('0x56')]):_0x7e79('0x69'));return respondWithRpcPromise('RejectMessage',_0x7e79('0x7a'),_0x1e824f);}return null;})[_0x7e79('0x1f')](function(_0x554c77){var _0x187b7a=_0x7e79('0x6b')+_0x554c77[_0x7e79('0x26')][_0x7e79('0x7b')];return db[_0x7e79('0x6c')][_0x7e79('0x40')](_0x187b7a,{'type':db['Sequelize']['QueryTypes'][_0x7e79('0x6f')],'raw':!![]})[_0x7e79('0x1f')](function(_0x41cad6){return _0x41cad6;});})[_0x7e79('0x1f')](function(_0x4f7130){if(_0x4f7130){_0x1e824f[_0x7e79('0x26')][_0x7e79('0x70')]=_0x4f7130[0x0];if(!_0x4e45f5[_0x7e79('0x56')][_0x7e79('0x5f')])return;return db[_0x7e79('0x7c')][_0x7e79('0x54')]({'where':{'id':_0x4e45f5[_0x7e79('0x56')][_0x7e79('0x5f')],'role':_0x7e79('0x61')},'attributes':['id',_0x7e79('0x37'),_0x7e79('0x7d'),_0x7e79('0x71'),'internal'],'raw':!![]});}return null;})['then'](function(_0x5ae851){if(!_0x5ae851)return null;_0x1e824f[_0x7e79('0x26')]['agent']=_0x5ae851;return _0x1e824f;})[_0x7e79('0x1f')](function(_0x5b0683){if(_0x5b0683){_0x5b0683[_0x7e79('0x26')]['interface']=util['format'](_0x7e79('0x74'),_0x4e45f5['user']['name']);_0x5b0683['message'][_0x7e79('0x75')]=_0x1e824f[_0x7e79('0x75')];_0x5b0683['message'][_0x7e79('0x76')]=_0x1e824f[_0x7e79('0x75')];_0x5b0683[_0x7e79('0x26')][_0x7e79('0x77')]='reject';respondWithRpcPromise(_0x7e79('0x7e'),_0x7e79('0x7e'),{'event':_0x7e79('0x7f'),'message':_0x5b0683[_0x7e79('0x26')]},client9002);return _0x1e824f;}return null;})['then'](respondWithResult(_0x331669,null))[_0x7e79('0x28')](handleError(_0x331669,null));};exports[_0x7e79('0x29')]=function(_0x1f31d3,_0x3ce471,_0x1cdb8d){if(_0x1f31d3[_0x7e79('0x56')]['id']){delete _0x1f31d3[_0x7e79('0x56')]['id'];}var _0x8b6ed6;return db[_0x7e79('0x3b')][_0x7e79('0x54')]({'where':{'id':_0x1f31d3['params']['id']}})[_0x7e79('0x1f')](handleEntityNotFound(_0x3ce471,null))[_0x7e79('0x1f')](function(_0x28118d){if(_0x28118d){_0x8b6ed6=_0x28118d;return db[_0x7e79('0x80')][_0x7e79('0x54')]({'where':{'id':_0x28118d[_0x7e79('0x81')]}});}})[_0x7e79('0x1f')](handleEntityNotFound(_0x3ce471,null))[_0x7e79('0x1f')](function(_0x2fb9f9){if(_0x2fb9f9){logger[_0x7e79('0x20')]('SmsMessage,\x20%s,\x20%s,\x20%s',_0x7e79('0x29'),_0x7e79('0x82'),_0x2fb9f9[_0x7e79('0x3e')],util['inspect'](_0x1f31d3[_0x7e79('0x56')],{'showHidden':![],'depth':null}));switch(_0x2fb9f9[_0x7e79('0x3e')]){case _0x7e79('0x83'):if(_0x1f31d3[_0x7e79('0x56')][_0x7e79('0x84')]&&_0x1f31d3['body']['MessageSid']===_0x8b6ed6[_0x7e79('0x85')]){return _0x8b6ed6['update']({'read':!![]});}else{logger[_0x7e79('0x23')](_0x7e79('0x86'),'status',_0x7e79('0x83'),util[_0x7e79('0x87')](_0x1f31d3['body'],{'showHidden':![],'depth':null}));}break;case'plivo':if(_0x1f31d3['body'][_0x7e79('0x88')]&&_0x1f31d3[_0x7e79('0x56')][_0x7e79('0x88')]===_0x8b6ed6[_0x7e79('0x85')]&&_[_0x7e79('0x89')]([_0x7e79('0x8a'),'delivered'],_0x1f31d3[_0x7e79('0x56')][_0x7e79('0x8b')])>=0x0){return _0x8b6ed6[_0x7e79('0x33')]({'read':!![]});}else{logger['error']('SmsAccount,\x20%s,\x20%s,\x20%s','status',_0x7e79('0x8c'),util[_0x7e79('0x87')](_0x1f31d3[_0x7e79('0x56')],{'showHidden':![],'depth':null}));}break;case _0x7e79('0x8d'):var _0x2ae786=_0x1f31d3[_0x7e79('0x56')][_0x7e79('0x8e')][0x0];if(_0x2ae786['status'][_0x7e79('0x8f')]===_0x7e79('0x90')){return _0x8b6ed6[_0x7e79('0x33')]({'read':!![]});}else{logger[_0x7e79('0x23')](_0x7e79('0x86'),_0x7e79('0x29'),_0x7e79('0x8d'),util['inspect'](_0x1f31d3[_0x7e79('0x56')],{'showHidden':![],'depth':null}));}break;}return _0x8b6ed6;}})[_0x7e79('0x1f')](respondWithResult(_0x3ce471,null))[_0x7e79('0x28')](handleError(_0x3ce471,null));};