Built motion from commit 85328c08.|2.5.50
[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 _0xa5c9=['contact','User','motionChannel','event','rejectmessage','SmsAccount','SmsAccountId','received\x20delivery\x20report\x20from','inspect','twilio','MessageSid','messageId','SmsAccount,\x20%s,\x20%s,\x20%s','plivo','MessageUUID','indexOf','sent','Status','results','DELIVERED','infobip','eml-format','rimraf','zip-dir','fast-json-patch','bluebird','mustache','to-csv','ejs','fs-extra','lodash','crypto','desk.js','papaparse','ioredis','../../components/auth/service','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','redis','defaults','localhost','socket.io-emitter','./smsMessage.socket','register','jayson/promise','http','client','request','then','SmsMessage,\x20%s,\x20%s','request\x20sent','debug','stringify','error','code','message','info','result','catch','status','end','json','undefined','count','offset','limit','set','Content-Range','apply','reject','update','destroy','sendStatus','stack','name','map','SmsMessage','rawAttributes','fieldName','type','key','query','keys','filters','intersection','attributes','model','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','VIRTUAL','options','includeAll','include','findAll','rows','show','merge','find','create','body','params','describe','sms-interactions','accept','sms','read','readAt','YYYY-MM-DD\x20HH:mm:ss','user','UserId','get','SmsInteraction','SmsInteractionId','isNil','read1stAt','format','interaction','[SMSMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','role','null','AcceptMessage','acceptMessage','ContactId','sequelize','Sequelize','SELECT','agent','fullname','email','internal','interface','SIP/%s','channel','EventManager','acceptmessage','[SMSMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','RejectMessage','rejectMessage','SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20','QueryTypes'];(function(_0x20a584,_0xe384a5){var _0x4b41a8=function(_0x2127c6){while(--_0x2127c6){_0x20a584['push'](_0x20a584['shift']());}};_0x4b41a8(++_0xe384a5);}(_0xa5c9,0x143));var _0x9a5c=function(_0x20589d,_0x55d5bf){_0x20589d=_0x20589d-0x0;var _0x422de9=_0xa5c9[_0x20589d];return _0x422de9;};'use strict';var emlformat=require(_0x9a5c('0x0'));var rimraf=require(_0x9a5c('0x1'));var zipdir=require(_0x9a5c('0x2'));var jsonpatch=require(_0x9a5c('0x3'));var rp=require('request-promise');var moment=require('moment');var BPromise=require(_0x9a5c('0x4'));var Mustache=require(_0x9a5c('0x5'));var util=require('util');var path=require('path');var sox=require('sox');var csv=require(_0x9a5c('0x6'));var ejs=require(_0x9a5c('0x7'));var fs=require('fs');var fs_extra=require(_0x9a5c('0x8'));var _=require(_0x9a5c('0x9'));var squel=require('squel');var crypto=require(_0x9a5c('0xa'));var jsforce=require('jsforce');var deskjs=require(_0x9a5c('0xb'));var toCsv=require(_0x9a5c('0x6'));var querystring=require('querystring');var Papa=require(_0x9a5c('0xc'));var Redis=require(_0x9a5c('0xd'));var authService=require(_0x9a5c('0xe'));var qs=require('../../components/parsers/qs');var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x9a5c('0xf'));var logger=require(_0x9a5c('0x10'))(_0x9a5c('0x11'));var utils=require(_0x9a5c('0x12'));var config=require(_0x9a5c('0x13'));var licenseUtil=require(_0x9a5c('0x14'));var db=require(_0x9a5c('0x15'))['db'];config[_0x9a5c('0x16')]=_[_0x9a5c('0x17')](config[_0x9a5c('0x16')],{'host':_0x9a5c('0x18'),'port':0x18eb});var socket=require(_0x9a5c('0x19'))(new Redis(config['redis']));require(_0x9a5c('0x1a'))[_0x9a5c('0x1b')](socket);var jayson=require(_0x9a5c('0x1c'));var client=jayson['client'][_0x9a5c('0x1d')]({'port':0x232c});var client9002=jayson[_0x9a5c('0x1e')]['http']({'port':0x232a});function respondWithRpcPromise(_0x16422d,_0x5ef98e,_0x350bd5,_0x507a12){return new BPromise(function(_0x29d3cd,_0x1e0c41){var _0x59e410=_0x507a12||client;return _0x59e410[_0x9a5c('0x1f')](_0x16422d,_0x350bd5)[_0x9a5c('0x20')](function(_0x39fbea){logger['info'](_0x9a5c('0x21'),_0x5ef98e,_0x9a5c('0x22'));logger[_0x9a5c('0x23')]('SmsMessage,\x20%s,\x20%s,\x20%s',_0x5ef98e,_0x9a5c('0x22'),JSON[_0x9a5c('0x24')](_0x39fbea));if(_0x39fbea['error']){if(_0x39fbea[_0x9a5c('0x25')][_0x9a5c('0x26')]===0x1f4){logger[_0x9a5c('0x25')]('SmsMessage,\x20%s,\x20%s',_0x5ef98e,_0x39fbea[_0x9a5c('0x25')][_0x9a5c('0x27')]);return _0x1e0c41(_0x39fbea['error'][_0x9a5c('0x27')]);}logger[_0x9a5c('0x25')]('SmsMessage,\x20%s,\x20%s',_0x5ef98e,_0x39fbea[_0x9a5c('0x25')][_0x9a5c('0x27')]);return _0x29d3cd(_0x39fbea[_0x9a5c('0x25')]['message']);}else{logger[_0x9a5c('0x28')](_0x9a5c('0x21'),_0x5ef98e,_0x9a5c('0x22'));_0x29d3cd(_0x39fbea[_0x9a5c('0x29')][_0x9a5c('0x27')]);}})[_0x9a5c('0x2a')](function(_0x47a13a){logger['error'](_0x9a5c('0x21'),_0x5ef98e,_0x47a13a);_0x1e0c41(_0x47a13a);});});}function respondWithStatusCode(_0x263a19,_0x10db7a){_0x10db7a=_0x10db7a||0xcc;return function(_0x3713fd){if(_0x3713fd){return _0x263a19['sendStatus'](_0x10db7a);}return _0x263a19[_0x9a5c('0x2b')](_0x10db7a)[_0x9a5c('0x2c')]();};}function respondWithResult(_0x3b5d9c,_0x4119f7){_0x4119f7=_0x4119f7||0xc8;return function(_0x439e6b){if(_0x439e6b){return _0x3b5d9c[_0x9a5c('0x2b')](_0x4119f7)[_0x9a5c('0x2d')](_0x439e6b);}};}function respondWithFilteredResult(_0x4146c9,_0x3d3356){return function(_0x4e6cee){if(_0x4e6cee){var _0x2bdb5b=typeof _0x3d3356['offset']==='undefined'&&typeof _0x3d3356['limit']===_0x9a5c('0x2e');var _0x190943=_0x4e6cee[_0x9a5c('0x2f')];var _0xb966ad=_0x2bdb5b?0x0:_0x3d3356[_0x9a5c('0x30')];var _0x35d472=_0x2bdb5b?_0x4e6cee['count']:_0x3d3356[_0x9a5c('0x30')]+_0x3d3356[_0x9a5c('0x31')];var _0x39344c;if(_0x35d472>=_0x190943){_0x35d472=_0x190943;_0x39344c=0xc8;}else{_0x39344c=0xce;}_0x4146c9['status'](_0x39344c);return _0x4146c9[_0x9a5c('0x32')](_0x9a5c('0x33'),_0xb966ad+'-'+_0x35d472+'/'+_0x190943)[_0x9a5c('0x2d')](_0x4e6cee);}return null;};}function patchUpdates(_0x29bb2b){return function(_0x47db46){try{jsonpatch[_0x9a5c('0x34')](_0x47db46,_0x29bb2b,!![]);}catch(_0x582754){return BPromise[_0x9a5c('0x35')](_0x582754);}return _0x47db46['save']();};}function saveUpdates(_0x234c32,_0x14dd33){return function(_0x2c9f35){if(_0x2c9f35){return _0x2c9f35[_0x9a5c('0x36')](_0x234c32)[_0x9a5c('0x20')](function(_0x3792eb){return _0x3792eb;});}return null;};}function removeEntity(_0x5695a5,_0x472fa3){return function(_0x350bd4){if(_0x350bd4){return _0x350bd4[_0x9a5c('0x37')]()[_0x9a5c('0x20')](function(){_0x5695a5['status'](0xcc)[_0x9a5c('0x2c')]();});}};}function handleEntityNotFound(_0xe3feef,_0x5f545c){return function(_0x2329ba){if(!_0x2329ba){_0xe3feef[_0x9a5c('0x38')](0x194);}return _0x2329ba;};}function handleError(_0x574dd1,_0x37146a){_0x37146a=_0x37146a||0x1f4;return function(_0x510262){logger[_0x9a5c('0x25')](_0x510262[_0x9a5c('0x39')]);if(_0x510262[_0x9a5c('0x3a')]){delete _0x510262[_0x9a5c('0x3a')];}_0x574dd1[_0x9a5c('0x2b')](_0x37146a)['send'](_0x510262);};}exports['index']=function(_0x5c4b29,_0x5e8935){var _0x350026={},_0x3523eb={},_0x28cfd2={'count':0x0,'rows':[]};var _0x2918d9=_[_0x9a5c('0x3b')](db[_0x9a5c('0x3c')][_0x9a5c('0x3d')],function(_0x24879e){return{'name':_0x24879e[_0x9a5c('0x3e')],'type':_0x24879e[_0x9a5c('0x3f')][_0x9a5c('0x40')]};});_0x3523eb['model']=_[_0x9a5c('0x3b')](_0x2918d9,_0x9a5c('0x3a'));_0x3523eb[_0x9a5c('0x41')]=_[_0x9a5c('0x42')](_0x5c4b29['query']);_0x3523eb[_0x9a5c('0x43')]=_[_0x9a5c('0x44')](_0x3523eb['model'],_0x3523eb[_0x9a5c('0x41')]);_0x350026[_0x9a5c('0x45')]=_[_0x9a5c('0x44')](_0x3523eb[_0x9a5c('0x46')],qs[_0x9a5c('0x47')](_0x5c4b29[_0x9a5c('0x41')][_0x9a5c('0x47')]));_0x350026[_0x9a5c('0x45')]=_0x350026[_0x9a5c('0x45')][_0x9a5c('0x48')]?_0x350026['attributes']:_0x3523eb['model'];if(!_0x5c4b29[_0x9a5c('0x41')][_0x9a5c('0x49')](_0x9a5c('0x4a'))){_0x350026[_0x9a5c('0x31')]=qs[_0x9a5c('0x31')](_0x5c4b29[_0x9a5c('0x41')][_0x9a5c('0x31')]);_0x350026[_0x9a5c('0x30')]=qs[_0x9a5c('0x30')](_0x5c4b29[_0x9a5c('0x41')][_0x9a5c('0x30')]);}_0x350026[_0x9a5c('0x4b')]=qs['sort'](_0x5c4b29['query'][_0x9a5c('0x4c')]);_0x350026[_0x9a5c('0x4d')]=qs['filters'](_[_0x9a5c('0x4e')](_0x5c4b29[_0x9a5c('0x41')],_0x3523eb['filters']),_0x2918d9);if(_0x5c4b29['query']['filter']){_0x350026[_0x9a5c('0x4d')]=_['merge'](_0x350026[_0x9a5c('0x4d')],{'$or':_[_0x9a5c('0x3b')](_0x2918d9,function(_0x57864e){if(_0x57864e[_0x9a5c('0x3f')]!==_0x9a5c('0x4f')){var _0x56ede0={};_0x56ede0[_0x57864e[_0x9a5c('0x3a')]]={'$like':'%'+_0x5c4b29[_0x9a5c('0x41')]['filter']+'%'};return _0x56ede0;}})});}_0x350026=_['merge']({},_0x350026,_0x5c4b29[_0x9a5c('0x50')]);var _0x27f89f={'where':_0x350026[_0x9a5c('0x4d')]};return db['SmsMessage'][_0x9a5c('0x2f')](_0x27f89f)[_0x9a5c('0x20')](function(_0x2733db){_0x28cfd2[_0x9a5c('0x2f')]=_0x2733db;if(_0x5c4b29['query'][_0x9a5c('0x51')]){_0x350026[_0x9a5c('0x52')]=[{'all':!![]}];}return db['SmsMessage'][_0x9a5c('0x53')](_0x350026);})[_0x9a5c('0x20')](function(_0x2831dc){_0x28cfd2[_0x9a5c('0x54')]=_0x2831dc;return _0x28cfd2;})[_0x9a5c('0x20')](respondWithFilteredResult(_0x5e8935,_0x350026))[_0x9a5c('0x2a')](handleError(_0x5e8935,null));};exports[_0x9a5c('0x55')]=function(_0x5e0297,_0x2782c4){var _0x57f53a={'raw':!![],'where':{'id':_0x5e0297['params']['id']}},_0x199ee1={};_0x199ee1[_0x9a5c('0x46')]=_[_0x9a5c('0x42')](db['SmsMessage'][_0x9a5c('0x3d')]);_0x199ee1['query']=_['keys'](_0x5e0297[_0x9a5c('0x41')]);_0x199ee1[_0x9a5c('0x43')]=_[_0x9a5c('0x44')](_0x199ee1['model'],_0x199ee1[_0x9a5c('0x41')]);_0x57f53a[_0x9a5c('0x45')]=_[_0x9a5c('0x44')](_0x199ee1[_0x9a5c('0x46')],qs[_0x9a5c('0x47')](_0x5e0297[_0x9a5c('0x41')][_0x9a5c('0x47')]));_0x57f53a[_0x9a5c('0x45')]=_0x57f53a[_0x9a5c('0x45')][_0x9a5c('0x48')]?_0x57f53a['attributes']:_0x199ee1['model'];if(_0x5e0297[_0x9a5c('0x41')][_0x9a5c('0x51')]){_0x57f53a[_0x9a5c('0x52')]=[{'all':!![]}];}_0x57f53a=_[_0x9a5c('0x56')]({},_0x57f53a,_0x5e0297['options']);return db['SmsMessage'][_0x9a5c('0x57')](_0x57f53a)[_0x9a5c('0x20')](handleEntityNotFound(_0x2782c4,null))[_0x9a5c('0x20')](respondWithResult(_0x2782c4,null))[_0x9a5c('0x2a')](handleError(_0x2782c4,null));};exports['create']=function(_0x35ba8c,_0x22f70b){return db['SmsMessage'][_0x9a5c('0x58')](_0x35ba8c[_0x9a5c('0x59')],{})[_0x9a5c('0x20')](respondWithResult(_0x22f70b,0xc9))[_0x9a5c('0x2a')](handleError(_0x22f70b,null));};exports['update']=function(_0x539c49,_0x5176c3){if(_0x539c49[_0x9a5c('0x59')]['id']){delete _0x539c49[_0x9a5c('0x59')]['id'];}return db['SmsMessage'][_0x9a5c('0x57')]({'where':{'id':_0x539c49[_0x9a5c('0x5a')]['id']}})[_0x9a5c('0x20')](handleEntityNotFound(_0x5176c3,null))['then'](saveUpdates(_0x539c49[_0x9a5c('0x59')],null))[_0x9a5c('0x20')](respondWithResult(_0x5176c3,null))[_0x9a5c('0x2a')](handleError(_0x5176c3,null));};exports[_0x9a5c('0x37')]=function(_0x530706,_0x1f9873){return db['SmsMessage'][_0x9a5c('0x57')]({'where':{'id':_0x530706[_0x9a5c('0x5a')]['id']}})[_0x9a5c('0x20')](handleEntityNotFound(_0x1f9873,null))[_0x9a5c('0x20')](removeEntity(_0x1f9873,null))[_0x9a5c('0x2a')](handleError(_0x1f9873,null));};exports[_0x9a5c('0x5b')]=function(_0x54e7ec,_0x757886){return db[_0x9a5c('0x3c')][_0x9a5c('0x5b')]()[_0x9a5c('0x20')](respondWithResult(_0x757886,null))['catch'](handleError(_0x757886,null));};var interaction_log=require(_0x9a5c('0x10'))(_0x9a5c('0x5c'));exports[_0x9a5c('0x5d')]=function(_0x1dce3a,_0x2ff03f,_0x5d9cd2){var _0x80e8c4={'agent':{},'channel':_0x9a5c('0x5e')};if(_0x1dce3a[_0x9a5c('0x59')]['id']){delete _0x1dce3a[_0x9a5c('0x59')]['id'];}_0x1dce3a[_0x9a5c('0x59')][_0x9a5c('0x5f')]=!![];_0x1dce3a[_0x9a5c('0x59')][_0x9a5c('0x60')]=moment()['format'](_0x9a5c('0x61'));_0x1dce3a[_0x9a5c('0x59')]['UserId']=_0x1dce3a[_0x9a5c('0x59')]['UserId']||_0x1dce3a[_0x9a5c('0x62')]['id'];_0x80e8c4['agent']['id']=_0x1dce3a[_0x9a5c('0x59')][_0x9a5c('0x63')];return db['SmsMessage'][_0x9a5c('0x57')]({'where':{'id':_0x1dce3a[_0x9a5c('0x5a')]['id'],'UserId':null}})[_0x9a5c('0x20')](handleEntityNotFound(_0x2ff03f,null))[_0x9a5c('0x20')](saveUpdates(_0x1dce3a[_0x9a5c('0x59')],null))[_0x9a5c('0x20')](function(_0xfca83b){if(_0xfca83b){_0x80e8c4[_0x9a5c('0x27')]=_0xfca83b[_0x9a5c('0x64')]({'plain':!![]});return db[_0x9a5c('0x65')][_0x9a5c('0x57')]({'where':{'id':_0xfca83b[_0x9a5c('0x66')]}});}return null;})['then'](handleEntityNotFound(_0x2ff03f,null))[_0x9a5c('0x20')](function(_0x476ec2){if(_0x476ec2){return _0x476ec2[_0x9a5c('0x36')]({'UserId':_0x1dce3a[_0x9a5c('0x59')][_0x9a5c('0x63')],'read1stAt':_[_0x9a5c('0x67')](_0x476ec2[_0x9a5c('0x68')])?moment()[_0x9a5c('0x69')](_0x9a5c('0x61')):undefined});}return null;})[_0x9a5c('0x20')](function(_0x2d4d5c){if(_0x2d4d5c){_0x80e8c4[_0x9a5c('0x6a')]=_0x2d4d5c['get']({'plain':!![]});interaction_log[_0x9a5c('0x28')](_0x9a5c('0x6b'),_0x1dce3a['user']['id'],_0x1dce3a[_0x9a5c('0x62')]['name'],_0x1dce3a[_0x9a5c('0x62')][_0x9a5c('0x6c')],_0x80e8c4[_0x9a5c('0x6a')]['id'],_0x1dce3a[_0x9a5c('0x59')]?JSON[_0x9a5c('0x24')](_0x1dce3a['body']):_0x9a5c('0x6d'));return respondWithRpcPromise(_0x9a5c('0x6e'),_0x9a5c('0x6f'),_0x80e8c4);}return null;})[_0x9a5c('0x20')](function(_0x299c01){var _0x35892a='SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20'+_0x299c01[_0x9a5c('0x27')][_0x9a5c('0x70')];return db[_0x9a5c('0x71')]['query'](_0x35892a,{'type':db[_0x9a5c('0x72')]['QueryTypes'][_0x9a5c('0x73')],'raw':!![]})['then'](function(_0x6d5edd){return _0x6d5edd;});})['then'](function(_0x423b93){if(_0x423b93){_0x80e8c4[_0x9a5c('0x27')]['contact']=_0x423b93[0x0];if(!_0x1dce3a[_0x9a5c('0x59')][_0x9a5c('0x63')])return;return db['User'][_0x9a5c('0x57')]({'where':{'id':_0x1dce3a[_0x9a5c('0x59')]['UserId'],'role':_0x9a5c('0x74')},'attributes':['id',_0x9a5c('0x3a'),_0x9a5c('0x75'),_0x9a5c('0x76'),_0x9a5c('0x77')],'raw':!![]});}return null;})[_0x9a5c('0x20')](function(_0x35f68c){if(!_0x35f68c)return null;_0x80e8c4[_0x9a5c('0x27')][_0x9a5c('0x74')]=_0x35f68c;return _0x80e8c4;})[_0x9a5c('0x20')](function(_0x25331f){if(_0x25331f){if(_0x1dce3a[_0x9a5c('0x59')]['manual']){_0x80e8c4[_0x9a5c('0x27')][_0x9a5c('0x78')]=util[_0x9a5c('0x69')](_0x9a5c('0x79'),_0x1dce3a[_0x9a5c('0x62')][_0x9a5c('0x3a')]);_0x80e8c4[_0x9a5c('0x27')][_0x9a5c('0x7a')]=_0x80e8c4[_0x9a5c('0x7a')];_0x80e8c4['message']['motionChannel']=_0x80e8c4[_0x9a5c('0x7a')];_0x80e8c4['message']['event']=_0x9a5c('0x5d');return respondWithRpcPromise(_0x9a5c('0x7b'),_0x9a5c('0x7b'),{'event':_0x9a5c('0x7c'),'message':_0x80e8c4[_0x9a5c('0x27')]},client9002)[_0x9a5c('0x20')](function(){return _0x80e8c4;});}return _0x80e8c4;}return null;})[_0x9a5c('0x20')](respondWithResult(_0x2ff03f,null))[_0x9a5c('0x2a')](handleError(_0x2ff03f,null));};var interaction_log=require(_0x9a5c('0x10'))(_0x9a5c('0x5c'));exports['reject']=function(_0x5dac8d,_0x1fb3ff,_0x10dfa3){var _0x289e2c={'agent':{},'channel':'sms'};if(_0x5dac8d[_0x9a5c('0x59')]['id']){delete _0x5dac8d[_0x9a5c('0x59')]['id'];}_0x5dac8d['body'][_0x9a5c('0x63')]=_0x5dac8d['body'][_0x9a5c('0x63')]||_0x5dac8d[_0x9a5c('0x62')]['id'];_0x289e2c['agent']['id']=_0x5dac8d[_0x9a5c('0x59')][_0x9a5c('0x63')];return db[_0x9a5c('0x3c')][_0x9a5c('0x57')]({'where':{'id':_0x5dac8d['params']['id'],'UserId':null}})[_0x9a5c('0x20')](handleEntityNotFound(_0x1fb3ff,null))[_0x9a5c('0x20')](function(_0x46e438){if(_0x46e438){_0x289e2c['message']=_0x46e438['get']({'plain':!![]});return db[_0x9a5c('0x65')]['find']({'where':{'id':_0x46e438['SmsInteractionId']}});}return null;})['then'](handleEntityNotFound(_0x1fb3ff,null))[_0x9a5c('0x20')](function(_0x293c43){if(_0x293c43){_0x289e2c[_0x9a5c('0x6a')]=_0x293c43[_0x9a5c('0x64')]({'plain':!![]});interaction_log[_0x9a5c('0x28')](_0x9a5c('0x7d'),_0x5dac8d[_0x9a5c('0x62')]['id'],_0x5dac8d[_0x9a5c('0x62')][_0x9a5c('0x3a')],_0x5dac8d[_0x9a5c('0x62')]['role'],_0x289e2c[_0x9a5c('0x6a')]['id'],_0x5dac8d[_0x9a5c('0x59')]?JSON[_0x9a5c('0x24')](_0x5dac8d['body']):'null');return respondWithRpcPromise(_0x9a5c('0x7e'),_0x9a5c('0x7f'),_0x289e2c);}return null;})[_0x9a5c('0x20')](function(_0x3eaa00){var _0x40c136=_0x9a5c('0x80')+_0x3eaa00[_0x9a5c('0x27')][_0x9a5c('0x70')];return db[_0x9a5c('0x71')]['query'](_0x40c136,{'type':db[_0x9a5c('0x72')][_0x9a5c('0x81')]['SELECT'],'raw':!![]})[_0x9a5c('0x20')](function(_0x2c2535){return _0x2c2535;});})[_0x9a5c('0x20')](function(_0x56b3e5){if(_0x56b3e5){_0x289e2c['message'][_0x9a5c('0x82')]=_0x56b3e5[0x0];if(!_0x5dac8d['body'][_0x9a5c('0x63')])return;return db[_0x9a5c('0x83')]['find']({'where':{'id':_0x5dac8d[_0x9a5c('0x59')][_0x9a5c('0x63')],'role':_0x9a5c('0x74')},'attributes':['id',_0x9a5c('0x3a'),_0x9a5c('0x75'),_0x9a5c('0x76'),'internal'],'raw':!![]});}return null;})['then'](function(_0x433f8a){if(!_0x433f8a)return null;_0x289e2c[_0x9a5c('0x27')]['agent']=_0x433f8a;return _0x289e2c;})[_0x9a5c('0x20')](function(_0x2ff2d0){if(_0x2ff2d0){_0x2ff2d0[_0x9a5c('0x27')][_0x9a5c('0x78')]=util[_0x9a5c('0x69')](_0x9a5c('0x79'),_0x5dac8d['user']['name']);_0x2ff2d0['message'][_0x9a5c('0x7a')]=_0x289e2c['channel'];_0x2ff2d0[_0x9a5c('0x27')][_0x9a5c('0x84')]=_0x289e2c[_0x9a5c('0x7a')];_0x2ff2d0[_0x9a5c('0x27')][_0x9a5c('0x85')]=_0x9a5c('0x35');respondWithRpcPromise(_0x9a5c('0x7b'),_0x9a5c('0x7b'),{'event':_0x9a5c('0x86'),'message':_0x2ff2d0[_0x9a5c('0x27')]},client9002);return _0x289e2c;}return null;})[_0x9a5c('0x20')](respondWithResult(_0x1fb3ff,null))[_0x9a5c('0x2a')](handleError(_0x1fb3ff,null));};exports[_0x9a5c('0x2b')]=function(_0x5a9cc3,_0x1776b3,_0x5909af){if(_0x5a9cc3[_0x9a5c('0x59')]['id']){delete _0x5a9cc3['body']['id'];}var _0x4ed020;return db[_0x9a5c('0x3c')][_0x9a5c('0x57')]({'where':{'id':_0x5a9cc3[_0x9a5c('0x5a')]['id']}})[_0x9a5c('0x20')](handleEntityNotFound(_0x1776b3,null))[_0x9a5c('0x20')](function(_0x46848a){if(_0x46848a){_0x4ed020=_0x46848a;return db[_0x9a5c('0x87')][_0x9a5c('0x57')]({'where':{'id':_0x46848a[_0x9a5c('0x88')]}});}})[_0x9a5c('0x20')](handleEntityNotFound(_0x1776b3,null))[_0x9a5c('0x20')](function(_0x5b260c){if(_0x5b260c){logger[_0x9a5c('0x23')]('SmsMessage,\x20%s,\x20%s,\x20%s','status',_0x9a5c('0x89'),_0x5b260c[_0x9a5c('0x3f')],util[_0x9a5c('0x8a')](_0x5a9cc3[_0x9a5c('0x59')],{'showHidden':![],'depth':null}));switch(_0x5b260c['type']){case _0x9a5c('0x8b'):if(_0x5a9cc3[_0x9a5c('0x59')][_0x9a5c('0x8c')]&&_0x5a9cc3[_0x9a5c('0x59')]['MessageSid']===_0x4ed020[_0x9a5c('0x8d')]){return _0x4ed020[_0x9a5c('0x36')]({'read':!![]});}else{logger[_0x9a5c('0x25')](_0x9a5c('0x8e'),_0x9a5c('0x2b'),_0x9a5c('0x8b'),util['inspect'](_0x5a9cc3[_0x9a5c('0x59')],{'showHidden':![],'depth':null}));}break;case _0x9a5c('0x8f'):if(_0x5a9cc3[_0x9a5c('0x59')][_0x9a5c('0x90')]&&_0x5a9cc3[_0x9a5c('0x59')][_0x9a5c('0x90')]===_0x4ed020[_0x9a5c('0x8d')]&&_[_0x9a5c('0x91')]([_0x9a5c('0x92'),'delivered'],_0x5a9cc3[_0x9a5c('0x59')][_0x9a5c('0x93')])>=0x0){return _0x4ed020[_0x9a5c('0x36')]({'read':!![]});}else{logger[_0x9a5c('0x25')](_0x9a5c('0x8e'),'status','plivio',util[_0x9a5c('0x8a')](_0x5a9cc3[_0x9a5c('0x59')],{'showHidden':![],'depth':null}));}break;case'infobip':var _0x4235d4=_0x5a9cc3[_0x9a5c('0x59')][_0x9a5c('0x94')][0x0];if(_0x4235d4[_0x9a5c('0x2b')]['groupName']===_0x9a5c('0x95')){return _0x4ed020[_0x9a5c('0x36')]({'read':!![]});}else{logger['error'](_0x9a5c('0x8e'),_0x9a5c('0x2b'),_0x9a5c('0x96'),util['inspect'](_0x5a9cc3[_0x9a5c('0x59')],{'showHidden':![],'depth':null}));}break;}return _0x4ed020;}})[_0x9a5c('0x20')](respondWithResult(_0x1776b3,null))[_0x9a5c('0x2a')](handleError(_0x1776b3,null));};