Built motion from commit 3e059bc2.|2.5.32
[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 _0x0f84=['rimraf','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','ejs','fs-extra','lodash','crypto','jsforce','desk.js','papaparse','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','defaults','redis','localhost','./smsMessage.socket','register','jayson/promise','client','http','request','info','SmsMessage,\x20%s,\x20%s','request\x20sent','debug','stringify','error','message','result','catch','sendStatus','offset','undefined','limit','count','Content-Range','apply','reject','save','update','then','destroy','status','end','stack','name','send','index','map','SmsMessage','fieldName','type','key','model','query','keys','filters','intersection','attributes','fields','order','sort','where','filter','VIRTUAL','merge','options','includeAll','include','findAll','show','params','rawAttributes','length','find','create','body','describe','sms-interactions','accept','sms','read','readAt','format','YYYY-MM-DD\x20HH:mm:ss','user','agent','UserId','get','SmsInteraction','SmsInteractionId','read1stAt','interaction','role','acceptMessage','SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20','ContactId','Sequelize','QueryTypes','SELECT','contact','fullname','email','internal','interface','channel','EventManager','acceptmessage','[SMSMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','RejectMessage','rejectMessage','sequelize','SIP/%s','event','SmsAccountId','SmsMessage,\x20%s,\x20%s,\x20%s','inspect','twilio','MessageSid','messageId','SmsAccount,\x20%s,\x20%s,\x20%s','plivo','MessageUUID','delivered','Status','plivio','infobip','results','groupName','DELIVERED'];(function(_0x3bc138,_0x55d3ed){var _0x2e49a4=function(_0x536856){while(--_0x536856){_0x3bc138['push'](_0x3bc138['shift']());}};_0x2e49a4(++_0x55d3ed);}(_0x0f84,0x11c));var _0x40f8=function(_0x540d2d,_0x4438b2){_0x540d2d=_0x540d2d-0x0;var _0x2faf3a=_0x0f84[_0x540d2d];return _0x2faf3a;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0x40f8('0x0'));var zipdir=require('zip-dir');var jsonpatch=require(_0x40f8('0x1'));var rp=require(_0x40f8('0x2'));var moment=require(_0x40f8('0x3'));var BPromise=require(_0x40f8('0x4'));var Mustache=require(_0x40f8('0x5'));var util=require(_0x40f8('0x6'));var path=require(_0x40f8('0x7'));var sox=require(_0x40f8('0x8'));var csv=require('to-csv');var ejs=require(_0x40f8('0x9'));var fs=require('fs');var fs_extra=require(_0x40f8('0xa'));var _=require(_0x40f8('0xb'));var squel=require('squel');var crypto=require(_0x40f8('0xc'));var jsforce=require(_0x40f8('0xd'));var deskjs=require(_0x40f8('0xe'));var toCsv=require('to-csv');var querystring=require('querystring');var Papa=require(_0x40f8('0xf'));var Redis=require('ioredis');var authService=require(_0x40f8('0x10'));var qs=require('../../components/parsers/qs');var as=require(_0x40f8('0x11'));var hardwareService=require(_0x40f8('0x12'));var logger=require(_0x40f8('0x13'))(_0x40f8('0x14'));var utils=require(_0x40f8('0x15'));var config=require(_0x40f8('0x16'));var licenseUtil=require('../../config/license/util');var db=require(_0x40f8('0x17'))['db'];config['redis']=_[_0x40f8('0x18')](config[_0x40f8('0x19')],{'host':_0x40f8('0x1a'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x40f8('0x19')]));require(_0x40f8('0x1b'))[_0x40f8('0x1c')](socket);var jayson=require(_0x40f8('0x1d'));var client=jayson[_0x40f8('0x1e')][_0x40f8('0x1f')]({'port':0x232c});var client9002=jayson['client'][_0x40f8('0x1f')]({'port':0x232a});function respondWithRpcPromise(_0x56ba6b,_0x394ee5,_0x1236bc,_0x6922bf){return new BPromise(function(_0x48c221,_0x3f205b){var _0x2e9949=_0x6922bf||client;return _0x2e9949[_0x40f8('0x20')](_0x56ba6b,_0x1236bc)['then'](function(_0x4462f6){logger[_0x40f8('0x21')](_0x40f8('0x22'),_0x394ee5,_0x40f8('0x23'));logger[_0x40f8('0x24')]('SmsMessage,\x20%s,\x20%s,\x20%s',_0x394ee5,_0x40f8('0x23'),JSON[_0x40f8('0x25')](_0x4462f6));if(_0x4462f6[_0x40f8('0x26')]){if(_0x4462f6[_0x40f8('0x26')]['code']===0x1f4){logger[_0x40f8('0x26')](_0x40f8('0x22'),_0x394ee5,_0x4462f6[_0x40f8('0x26')][_0x40f8('0x27')]);return _0x3f205b(_0x4462f6[_0x40f8('0x26')][_0x40f8('0x27')]);}logger['error']('SmsMessage,\x20%s,\x20%s',_0x394ee5,_0x4462f6['error'][_0x40f8('0x27')]);return _0x48c221(_0x4462f6[_0x40f8('0x26')][_0x40f8('0x27')]);}else{logger[_0x40f8('0x21')]('SmsMessage,\x20%s,\x20%s',_0x394ee5,_0x40f8('0x23'));_0x48c221(_0x4462f6[_0x40f8('0x28')][_0x40f8('0x27')]);}})[_0x40f8('0x29')](function(_0x5a0278){logger[_0x40f8('0x26')](_0x40f8('0x22'),_0x394ee5,_0x5a0278);_0x3f205b(_0x5a0278);});});}function respondWithStatusCode(_0x5a1848,_0x5e2b51){_0x5e2b51=_0x5e2b51||0xcc;return function(_0x469df4){if(_0x469df4){return _0x5a1848[_0x40f8('0x2a')](_0x5e2b51);}return _0x5a1848['status'](_0x5e2b51)['end']();};}function respondWithResult(_0x284575,_0x411bcd){_0x411bcd=_0x411bcd||0xc8;return function(_0x35ff1f){if(_0x35ff1f){return _0x284575['status'](_0x411bcd)['json'](_0x35ff1f);}};}function respondWithFilteredResult(_0x463f1d,_0x5babb2){return function(_0x32c88e){if(_0x32c88e){var _0x66c125=typeof _0x5babb2[_0x40f8('0x2b')]===_0x40f8('0x2c')&&typeof _0x5babb2[_0x40f8('0x2d')]===_0x40f8('0x2c');var _0x4d665f=_0x32c88e['count'];var _0x4d3997=_0x66c125?0x0:_0x5babb2['offset'];var _0x2a49cb=_0x66c125?_0x32c88e[_0x40f8('0x2e')]:_0x5babb2[_0x40f8('0x2b')]+_0x5babb2[_0x40f8('0x2d')];var _0xc997f2;if(_0x2a49cb>=_0x4d665f){_0x2a49cb=_0x4d665f;_0xc997f2=0xc8;}else{_0xc997f2=0xce;}_0x463f1d['status'](_0xc997f2);return _0x463f1d['set'](_0x40f8('0x2f'),_0x4d3997+'-'+_0x2a49cb+'/'+_0x4d665f)['json'](_0x32c88e);}return null;};}function patchUpdates(_0x1ddef8){return function(_0x27a007){try{jsonpatch[_0x40f8('0x30')](_0x27a007,_0x1ddef8,!![]);}catch(_0x4f9ab1){return BPromise[_0x40f8('0x31')](_0x4f9ab1);}return _0x27a007[_0x40f8('0x32')]();};}function saveUpdates(_0xc758af,_0x411462){return function(_0x4762f0){if(_0x4762f0){return _0x4762f0[_0x40f8('0x33')](_0xc758af)[_0x40f8('0x34')](function(_0x2828e9){return _0x2828e9;});}return null;};}function removeEntity(_0xff2f11,_0x3f7db9){return function(_0x32a1ae){if(_0x32a1ae){return _0x32a1ae[_0x40f8('0x35')]()[_0x40f8('0x34')](function(){_0xff2f11[_0x40f8('0x36')](0xcc)[_0x40f8('0x37')]();});}};}function handleEntityNotFound(_0x3ab9d3,_0x4e7d4e){return function(_0x20ef66){if(!_0x20ef66){_0x3ab9d3[_0x40f8('0x2a')](0x194);}return _0x20ef66;};}function handleError(_0xa93171,_0x1d4928){_0x1d4928=_0x1d4928||0x1f4;return function(_0x5113c7){logger[_0x40f8('0x26')](_0x5113c7[_0x40f8('0x38')]);if(_0x5113c7['name']){delete _0x5113c7[_0x40f8('0x39')];}_0xa93171[_0x40f8('0x36')](_0x1d4928)[_0x40f8('0x3a')](_0x5113c7);};}exports[_0x40f8('0x3b')]=function(_0x436195,_0x8ada24){var _0x4e6f80={},_0x3d20de={},_0x20b944={'count':0x0,'rows':[]};var _0x454244=_[_0x40f8('0x3c')](db[_0x40f8('0x3d')]['rawAttributes'],function(_0xf91597){return{'name':_0xf91597[_0x40f8('0x3e')],'type':_0xf91597[_0x40f8('0x3f')][_0x40f8('0x40')]};});_0x3d20de[_0x40f8('0x41')]=_[_0x40f8('0x3c')](_0x454244,_0x40f8('0x39'));_0x3d20de[_0x40f8('0x42')]=_[_0x40f8('0x43')](_0x436195['query']);_0x3d20de[_0x40f8('0x44')]=_[_0x40f8('0x45')](_0x3d20de[_0x40f8('0x41')],_0x3d20de[_0x40f8('0x42')]);_0x4e6f80[_0x40f8('0x46')]=_[_0x40f8('0x45')](_0x3d20de[_0x40f8('0x41')],qs[_0x40f8('0x47')](_0x436195[_0x40f8('0x42')]['fields']));_0x4e6f80['attributes']=_0x4e6f80[_0x40f8('0x46')]['length']?_0x4e6f80[_0x40f8('0x46')]:_0x3d20de[_0x40f8('0x41')];if(!_0x436195[_0x40f8('0x42')]['hasOwnProperty']('nolimit')){_0x4e6f80[_0x40f8('0x2d')]=qs[_0x40f8('0x2d')](_0x436195['query'][_0x40f8('0x2d')]);_0x4e6f80[_0x40f8('0x2b')]=qs[_0x40f8('0x2b')](_0x436195[_0x40f8('0x42')][_0x40f8('0x2b')]);}_0x4e6f80[_0x40f8('0x48')]=qs[_0x40f8('0x49')](_0x436195[_0x40f8('0x42')][_0x40f8('0x49')]);_0x4e6f80[_0x40f8('0x4a')]=qs[_0x40f8('0x44')](_['pick'](_0x436195[_0x40f8('0x42')],_0x3d20de['filters']),_0x454244);if(_0x436195[_0x40f8('0x42')][_0x40f8('0x4b')]){_0x4e6f80['where']=_['merge'](_0x4e6f80[_0x40f8('0x4a')],{'$or':_['map'](_0x454244,function(_0x5580df){if(_0x5580df[_0x40f8('0x3f')]!==_0x40f8('0x4c')){var _0x1bd3f1={};_0x1bd3f1[_0x5580df[_0x40f8('0x39')]]={'$like':'%'+_0x436195[_0x40f8('0x42')]['filter']+'%'};return _0x1bd3f1;}})});}_0x4e6f80=_[_0x40f8('0x4d')]({},_0x4e6f80,_0x436195[_0x40f8('0x4e')]);var _0x261f7f={'where':_0x4e6f80[_0x40f8('0x4a')]};return db['SmsMessage'][_0x40f8('0x2e')](_0x261f7f)[_0x40f8('0x34')](function(_0x1bcced){_0x20b944['count']=_0x1bcced;if(_0x436195['query'][_0x40f8('0x4f')]){_0x4e6f80[_0x40f8('0x50')]=[{'all':!![]}];}return db[_0x40f8('0x3d')][_0x40f8('0x51')](_0x4e6f80);})['then'](function(_0x3f650e){_0x20b944['rows']=_0x3f650e;return _0x20b944;})[_0x40f8('0x34')](respondWithFilteredResult(_0x8ada24,_0x4e6f80))[_0x40f8('0x29')](handleError(_0x8ada24,null));};exports[_0x40f8('0x52')]=function(_0x57a3b8,_0x578fe6){var _0x414f03={'raw':!![],'where':{'id':_0x57a3b8[_0x40f8('0x53')]['id']}},_0x542817={};_0x542817[_0x40f8('0x41')]=_[_0x40f8('0x43')](db[_0x40f8('0x3d')][_0x40f8('0x54')]);_0x542817[_0x40f8('0x42')]=_[_0x40f8('0x43')](_0x57a3b8['query']);_0x542817[_0x40f8('0x44')]=_['intersection'](_0x542817['model'],_0x542817['query']);_0x414f03[_0x40f8('0x46')]=_[_0x40f8('0x45')](_0x542817[_0x40f8('0x41')],qs[_0x40f8('0x47')](_0x57a3b8[_0x40f8('0x42')][_0x40f8('0x47')]));_0x414f03[_0x40f8('0x46')]=_0x414f03[_0x40f8('0x46')][_0x40f8('0x55')]?_0x414f03[_0x40f8('0x46')]:_0x542817['model'];if(_0x57a3b8[_0x40f8('0x42')]['includeAll']){_0x414f03[_0x40f8('0x50')]=[{'all':!![]}];}_0x414f03=_[_0x40f8('0x4d')]({},_0x414f03,_0x57a3b8[_0x40f8('0x4e')]);return db[_0x40f8('0x3d')][_0x40f8('0x56')](_0x414f03)[_0x40f8('0x34')](handleEntityNotFound(_0x578fe6,null))['then'](respondWithResult(_0x578fe6,null))[_0x40f8('0x29')](handleError(_0x578fe6,null));};exports['create']=function(_0x28a781,_0x18dd7d){return db[_0x40f8('0x3d')][_0x40f8('0x57')](_0x28a781['body'],{})[_0x40f8('0x34')](respondWithResult(_0x18dd7d,0xc9))['catch'](handleError(_0x18dd7d,null));};exports[_0x40f8('0x33')]=function(_0x504928,_0x39609c){if(_0x504928[_0x40f8('0x58')]['id']){delete _0x504928[_0x40f8('0x58')]['id'];}return db['SmsMessage']['find']({'where':{'id':_0x504928['params']['id']}})[_0x40f8('0x34')](handleEntityNotFound(_0x39609c,null))[_0x40f8('0x34')](saveUpdates(_0x504928['body'],null))[_0x40f8('0x34')](respondWithResult(_0x39609c,null))['catch'](handleError(_0x39609c,null));};exports['destroy']=function(_0x68ec21,_0x14ece0){return db[_0x40f8('0x3d')][_0x40f8('0x56')]({'where':{'id':_0x68ec21['params']['id']}})[_0x40f8('0x34')](handleEntityNotFound(_0x14ece0,null))[_0x40f8('0x34')](removeEntity(_0x14ece0,null))[_0x40f8('0x29')](handleError(_0x14ece0,null));};exports[_0x40f8('0x59')]=function(_0xfb8987,_0x537347){return db['SmsMessage'][_0x40f8('0x59')]()[_0x40f8('0x34')](respondWithResult(_0x537347,null))[_0x40f8('0x29')](handleError(_0x537347,null));};var interaction_log=require(_0x40f8('0x13'))(_0x40f8('0x5a'));exports[_0x40f8('0x5b')]=function(_0x36df62,_0x49c5f6,_0x55e07b){var _0x3b7ee1={'agent':{},'channel':_0x40f8('0x5c')};if(_0x36df62[_0x40f8('0x58')]['id']){delete _0x36df62[_0x40f8('0x58')]['id'];}_0x36df62[_0x40f8('0x58')][_0x40f8('0x5d')]=!![];_0x36df62['body'][_0x40f8('0x5e')]=moment()[_0x40f8('0x5f')](_0x40f8('0x60'));_0x36df62['body']['UserId']=_0x36df62[_0x40f8('0x58')]['UserId']||_0x36df62[_0x40f8('0x61')]['id'];_0x3b7ee1[_0x40f8('0x62')]['id']=_0x36df62[_0x40f8('0x58')][_0x40f8('0x63')];return db['SmsMessage'][_0x40f8('0x56')]({'where':{'id':_0x36df62[_0x40f8('0x53')]['id'],'UserId':null}})[_0x40f8('0x34')](handleEntityNotFound(_0x49c5f6,null))['then'](saveUpdates(_0x36df62[_0x40f8('0x58')],null))[_0x40f8('0x34')](function(_0x21ec2d){if(_0x21ec2d){_0x3b7ee1[_0x40f8('0x27')]=_0x21ec2d[_0x40f8('0x64')]({'plain':!![]});return db[_0x40f8('0x65')][_0x40f8('0x56')]({'where':{'id':_0x21ec2d[_0x40f8('0x66')]}});}return null;})[_0x40f8('0x34')](handleEntityNotFound(_0x49c5f6,null))[_0x40f8('0x34')](function(_0x29a555){if(_0x29a555){return _0x29a555[_0x40f8('0x33')]({'UserId':_0x36df62[_0x40f8('0x58')][_0x40f8('0x63')],'read1stAt':_['isNil'](_0x29a555[_0x40f8('0x67')])?moment()[_0x40f8('0x5f')](_0x40f8('0x60')):undefined});}return null;})['then'](function(_0x16fd0b){if(_0x16fd0b){_0x3b7ee1[_0x40f8('0x68')]=_0x16fd0b[_0x40f8('0x64')]({'plain':!![]});interaction_log[_0x40f8('0x21')]('[SMSMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s',_0x36df62[_0x40f8('0x61')]['id'],_0x36df62['user']['name'],_0x36df62['user'][_0x40f8('0x69')],_0x3b7ee1[_0x40f8('0x68')]['id'],_0x36df62['body']?JSON['stringify'](_0x36df62[_0x40f8('0x58')]):'null');return respondWithRpcPromise('AcceptMessage',_0x40f8('0x6a'),_0x3b7ee1);}return null;})['then'](function(_0x4de3c3){var _0x4f9816=_0x40f8('0x6b')+_0x4de3c3[_0x40f8('0x27')][_0x40f8('0x6c')];return db['sequelize'][_0x40f8('0x42')](_0x4f9816,{'type':db[_0x40f8('0x6d')][_0x40f8('0x6e')][_0x40f8('0x6f')],'raw':!![]})[_0x40f8('0x34')](function(_0x3d68bb){return _0x3d68bb;});})[_0x40f8('0x34')](function(_0x5a2a59){if(_0x5a2a59){_0x3b7ee1[_0x40f8('0x27')][_0x40f8('0x70')]=_0x5a2a59[0x0];if(!_0x36df62[_0x40f8('0x58')]['UserId'])return;return db['User']['find']({'where':{'id':_0x36df62[_0x40f8('0x58')][_0x40f8('0x63')],'role':_0x40f8('0x62')},'attributes':['id',_0x40f8('0x39'),_0x40f8('0x71'),_0x40f8('0x72'),_0x40f8('0x73')],'raw':!![]});}return null;})[_0x40f8('0x34')](function(_0xd3e811){if(!_0xd3e811)return null;_0x3b7ee1[_0x40f8('0x27')][_0x40f8('0x62')]=_0xd3e811;return _0x3b7ee1;})[_0x40f8('0x34')](function(_0x359a5d){if(_0x359a5d){if(_0x36df62[_0x40f8('0x58')]['manual']){_0x3b7ee1[_0x40f8('0x27')][_0x40f8('0x74')]=util[_0x40f8('0x5f')]('SIP/%s',_0x36df62[_0x40f8('0x61')]['name']);_0x3b7ee1[_0x40f8('0x27')][_0x40f8('0x75')]=_0x3b7ee1[_0x40f8('0x75')];_0x3b7ee1['message']['event']=_0x40f8('0x5b');return respondWithRpcPromise(_0x40f8('0x76'),_0x40f8('0x76'),{'event':_0x40f8('0x77'),'message':_0x3b7ee1[_0x40f8('0x27')]},client9002)[_0x40f8('0x34')](function(){return _0x3b7ee1;});}return _0x3b7ee1;}return null;})['then'](respondWithResult(_0x49c5f6,null))[_0x40f8('0x29')](handleError(_0x49c5f6,null));};var interaction_log=require(_0x40f8('0x13'))('sms-interactions');exports[_0x40f8('0x31')]=function(_0x193bc7,_0x9f113b,_0x2d2826){var _0x58efc0={'agent':{},'channel':'sms'};if(_0x193bc7[_0x40f8('0x58')]['id']){delete _0x193bc7[_0x40f8('0x58')]['id'];}_0x193bc7['body'][_0x40f8('0x63')]=_0x193bc7[_0x40f8('0x58')][_0x40f8('0x63')]||_0x193bc7['user']['id'];_0x58efc0[_0x40f8('0x62')]['id']=_0x193bc7[_0x40f8('0x58')][_0x40f8('0x63')];return db[_0x40f8('0x3d')][_0x40f8('0x56')]({'where':{'id':_0x193bc7[_0x40f8('0x53')]['id'],'UserId':null}})['then'](handleEntityNotFound(_0x9f113b,null))[_0x40f8('0x34')](function(_0x43b329){if(_0x43b329){_0x58efc0['message']=_0x43b329[_0x40f8('0x64')]({'plain':!![]});return db['SmsInteraction'][_0x40f8('0x56')]({'where':{'id':_0x43b329[_0x40f8('0x66')]}});}return null;})[_0x40f8('0x34')](handleEntityNotFound(_0x9f113b,null))[_0x40f8('0x34')](function(_0x35d9fc){if(_0x35d9fc){_0x58efc0[_0x40f8('0x68')]=_0x35d9fc[_0x40f8('0x64')]({'plain':!![]});interaction_log[_0x40f8('0x21')](_0x40f8('0x78'),_0x193bc7['user']['id'],_0x193bc7['user'][_0x40f8('0x39')],_0x193bc7[_0x40f8('0x61')][_0x40f8('0x69')],_0x58efc0[_0x40f8('0x68')]['id'],_0x193bc7[_0x40f8('0x58')]?JSON[_0x40f8('0x25')](_0x193bc7[_0x40f8('0x58')]):'null');return respondWithRpcPromise(_0x40f8('0x79'),_0x40f8('0x7a'),_0x58efc0);}return null;})[_0x40f8('0x34')](function(_0x5cf437){var _0x26611a=_0x40f8('0x6b')+_0x5cf437['message'][_0x40f8('0x6c')];return db[_0x40f8('0x7b')]['query'](_0x26611a,{'type':db[_0x40f8('0x6d')][_0x40f8('0x6e')][_0x40f8('0x6f')],'raw':!![]})[_0x40f8('0x34')](function(_0x4301c3){return _0x4301c3;});})[_0x40f8('0x34')](function(_0xbc4e64){if(_0xbc4e64){_0x58efc0[_0x40f8('0x27')][_0x40f8('0x70')]=_0xbc4e64[0x0];if(!_0x193bc7['body'][_0x40f8('0x63')])return;return db['User'][_0x40f8('0x56')]({'where':{'id':_0x193bc7['body'][_0x40f8('0x63')],'role':_0x40f8('0x62')},'attributes':['id',_0x40f8('0x39'),'fullname',_0x40f8('0x72'),_0x40f8('0x73')],'raw':!![]});}return null;})['then'](function(_0x37098f){if(!_0x37098f)return null;_0x58efc0[_0x40f8('0x27')]['agent']=_0x37098f;return _0x58efc0;})[_0x40f8('0x34')](function(_0x8d0c12){if(_0x8d0c12){_0x8d0c12[_0x40f8('0x27')][_0x40f8('0x74')]=util[_0x40f8('0x5f')](_0x40f8('0x7c'),_0x193bc7[_0x40f8('0x61')][_0x40f8('0x39')]);_0x8d0c12[_0x40f8('0x27')]['channel']=_0x58efc0[_0x40f8('0x75')];_0x8d0c12[_0x40f8('0x27')][_0x40f8('0x7d')]='reject';respondWithRpcPromise(_0x40f8('0x76'),_0x40f8('0x76'),{'event':'rejectmessage','message':_0x8d0c12[_0x40f8('0x27')]},client9002);return _0x58efc0;}return null;})['then'](respondWithResult(_0x9f113b,null))[_0x40f8('0x29')](handleError(_0x9f113b,null));};exports[_0x40f8('0x36')]=function(_0x352069,_0x2ee536,_0x2a9438){if(_0x352069[_0x40f8('0x58')]['id']){delete _0x352069[_0x40f8('0x58')]['id'];}var _0x2f0ab4;return db['SmsMessage'][_0x40f8('0x56')]({'where':{'id':_0x352069[_0x40f8('0x53')]['id']}})[_0x40f8('0x34')](handleEntityNotFound(_0x2ee536,null))['then'](function(_0x75c110){if(_0x75c110){_0x2f0ab4=_0x75c110;return db['SmsAccount'][_0x40f8('0x56')]({'where':{'id':_0x75c110[_0x40f8('0x7e')]}});}})[_0x40f8('0x34')](handleEntityNotFound(_0x2ee536,null))[_0x40f8('0x34')](function(_0x1fa3f4){if(_0x1fa3f4){logger[_0x40f8('0x24')](_0x40f8('0x7f'),_0x40f8('0x36'),'received\x20delivery\x20report\x20from',_0x1fa3f4['type'],util[_0x40f8('0x80')](_0x352069[_0x40f8('0x58')],{'showHidden':![],'depth':null}));switch(_0x1fa3f4['type']){case _0x40f8('0x81'):if(_0x352069[_0x40f8('0x58')][_0x40f8('0x82')]&&_0x352069['body'][_0x40f8('0x82')]===_0x2f0ab4[_0x40f8('0x83')]){return _0x2f0ab4[_0x40f8('0x33')]({'read':!![]});}else{logger[_0x40f8('0x26')](_0x40f8('0x84'),_0x40f8('0x36'),'twilio',util[_0x40f8('0x80')](_0x352069[_0x40f8('0x58')],{'showHidden':![],'depth':null}));}break;case _0x40f8('0x85'):if(_0x352069['body'][_0x40f8('0x86')]&&_0x352069[_0x40f8('0x58')][_0x40f8('0x86')]===_0x2f0ab4[_0x40f8('0x83')]&&_['indexOf'](['sent',_0x40f8('0x87')],_0x352069[_0x40f8('0x58')][_0x40f8('0x88')])>=0x0){return _0x2f0ab4[_0x40f8('0x33')]({'read':!![]});}else{logger[_0x40f8('0x26')](_0x40f8('0x84'),_0x40f8('0x36'),_0x40f8('0x89'),util[_0x40f8('0x80')](_0x352069[_0x40f8('0x58')],{'showHidden':![],'depth':null}));}break;case _0x40f8('0x8a'):var _0x405126=_0x352069['body'][_0x40f8('0x8b')][0x0];if(_0x405126[_0x40f8('0x36')][_0x40f8('0x8c')]===_0x40f8('0x8d')){return _0x2f0ab4[_0x40f8('0x33')]({'read':!![]});}else{logger[_0x40f8('0x26')]('SmsAccount,\x20%s,\x20%s,\x20%s',_0x40f8('0x36'),_0x40f8('0x8a'),util[_0x40f8('0x80')](_0x352069[_0x40f8('0x58')],{'showHidden':![],'depth':null}));}break;}return _0x2f0ab4;}})[_0x40f8('0x34')](respondWithResult(_0x2ee536,null))[_0x40f8('0x29')](handleError(_0x2ee536,null));};