3be7faae2b1fd9cae29a905a9b1847018273c945
[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 _0xc025=['findAll','rows','show','params','include','find','create','body','describe','../../config/logger','sms-interactions','accept','sms','read','readAt','YYYY-MM-DD\x20HH:mm:ss','UserId','agent','get','SmsInteraction','SmsInteractionId','read1stAt','format','[SMSMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','user','role','null','AcceptMessage','acceptMessage','SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20','ContactId','sequelize','Sequelize','QueryTypes','SELECT','contact','User','fullname','email','internal','manual','interface','SIP/%s','channel','motionChannel','event','EventManager','info','interaction','RejectMessage','rejectMessage','rejectmessage','SmsAccount','SmsAccountId','received\x20delivery\x20report\x20from','inspect','twilio','MessageSid','messageId','SmsAccount,\x20%s,\x20%s,\x20%s','MessageUUID','indexOf','sent','Status','plivio','results','infobip','eml-format','zip-dir','request-promise','moment','bluebird','path','sox','ejs','fs-extra','lodash','squel','crypto','jsforce','to-csv','querystring','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/util','../../mysqldb','redis','localhost','socket.io-emitter','./smsMessage.socket','register','client','http','request','SmsMessage,\x20%s,\x20%s','request\x20sent','debug','SmsMessage,\x20%s,\x20%s,\x20%s','stringify','error','code','message','result','catch','sendStatus','status','end','offset','undefined','count','Content-Range','json','apply','reject','save','update','then','destroy','stack','name','send','index','map','SmsMessage','rawAttributes','fieldName','type','key','model','keys','intersection','query','attributes','fields','length','hasOwnProperty','limit','order','sort','where','filters','filter','merge','VIRTUAL','options','includeAll'];(function(_0x393779,_0x205abe){var _0x19aecf=function(_0x20f5ad){while(--_0x20f5ad){_0x393779['push'](_0x393779['shift']());}};_0x19aecf(++_0x205abe);}(_0xc025,0x169));var _0x5c02=function(_0x24fdd7,_0xe598bf){_0x24fdd7=_0x24fdd7-0x0;var _0x38931b=_0xc025[_0x24fdd7];return _0x38931b;};'use strict';var emlformat=require(_0x5c02('0x0'));var rimraf=require('rimraf');var zipdir=require(_0x5c02('0x1'));var jsonpatch=require('fast-json-patch');var rp=require(_0x5c02('0x2'));var moment=require(_0x5c02('0x3'));var BPromise=require(_0x5c02('0x4'));var Mustache=require('mustache');var util=require('util');var path=require(_0x5c02('0x5'));var sox=require(_0x5c02('0x6'));var csv=require('to-csv');var ejs=require(_0x5c02('0x7'));var fs=require('fs');var fs_extra=require(_0x5c02('0x8'));var _=require(_0x5c02('0x9'));var squel=require(_0x5c02('0xa'));var crypto=require(_0x5c02('0xb'));var jsforce=require(_0x5c02('0xc'));var deskjs=require('desk.js');var toCsv=require(_0x5c02('0xd'));var querystring=require(_0x5c02('0xe'));var Papa=require('papaparse');var Redis=require(_0x5c02('0xf'));var authService=require(_0x5c02('0x10'));var qs=require('../../components/parsers/qs');var as=require(_0x5c02('0x11'));var hardwareService=require('../../config/license/hardware');var logger=require('../../config/logger')('api');var utils=require('../../config/utils');var config=require('../../config/environment');var licenseUtil=require(_0x5c02('0x12'));var db=require(_0x5c02('0x13'))['db'];config['redis']=_['defaults'](config[_0x5c02('0x14')],{'host':_0x5c02('0x15'),'port':0x18eb});var socket=require(_0x5c02('0x16'))(new Redis(config[_0x5c02('0x14')]));require(_0x5c02('0x17'))[_0x5c02('0x18')](socket);var jayson=require('jayson/promise');var client=jayson[_0x5c02('0x19')][_0x5c02('0x1a')]({'port':0x232c});var client9002=jayson[_0x5c02('0x19')][_0x5c02('0x1a')]({'port':0x232a});function respondWithRpcPromise(_0x17888d,_0x1c6bfc,_0x15d3d8,_0x7d38e8){return new BPromise(function(_0xfd3cf4,_0x5f21bd){var _0xf9532d=_0x7d38e8||client;return _0xf9532d[_0x5c02('0x1b')](_0x17888d,_0x15d3d8)['then'](function(_0x96958e){logger['info'](_0x5c02('0x1c'),_0x1c6bfc,_0x5c02('0x1d'));logger[_0x5c02('0x1e')](_0x5c02('0x1f'),_0x1c6bfc,'request\x20sent',JSON[_0x5c02('0x20')](_0x96958e));if(_0x96958e[_0x5c02('0x21')]){if(_0x96958e[_0x5c02('0x21')][_0x5c02('0x22')]===0x1f4){logger[_0x5c02('0x21')](_0x5c02('0x1c'),_0x1c6bfc,_0x96958e[_0x5c02('0x21')][_0x5c02('0x23')]);return _0x5f21bd(_0x96958e[_0x5c02('0x21')]['message']);}logger[_0x5c02('0x21')](_0x5c02('0x1c'),_0x1c6bfc,_0x96958e[_0x5c02('0x21')][_0x5c02('0x23')]);return _0xfd3cf4(_0x96958e['error']['message']);}else{logger['info']('SmsMessage,\x20%s,\x20%s',_0x1c6bfc,_0x5c02('0x1d'));_0xfd3cf4(_0x96958e[_0x5c02('0x24')]['message']);}})[_0x5c02('0x25')](function(_0x24b8b6){logger[_0x5c02('0x21')](_0x5c02('0x1c'),_0x1c6bfc,_0x24b8b6);_0x5f21bd(_0x24b8b6);});});}function respondWithStatusCode(_0x3f8d28,_0x54c18c){_0x54c18c=_0x54c18c||0xcc;return function(_0x2a9ea9){if(_0x2a9ea9){return _0x3f8d28[_0x5c02('0x26')](_0x54c18c);}return _0x3f8d28[_0x5c02('0x27')](_0x54c18c)[_0x5c02('0x28')]();};}function respondWithResult(_0x20eb2c,_0x5909b7){_0x5909b7=_0x5909b7||0xc8;return function(_0x54f67c){if(_0x54f67c){return _0x20eb2c[_0x5c02('0x27')](_0x5909b7)['json'](_0x54f67c);}};}function respondWithFilteredResult(_0x2f8b5c,_0x5467d8){return function(_0x2a0dde){if(_0x2a0dde){var _0x1c891f=typeof _0x5467d8[_0x5c02('0x29')]===_0x5c02('0x2a')&&typeof _0x5467d8['limit']===_0x5c02('0x2a');var _0x3322f8=_0x2a0dde[_0x5c02('0x2b')];var _0x3bae01=_0x1c891f?0x0:_0x5467d8[_0x5c02('0x29')];var _0x3a9d9d=_0x1c891f?_0x2a0dde[_0x5c02('0x2b')]:_0x5467d8[_0x5c02('0x29')]+_0x5467d8['limit'];var _0xe4943a;if(_0x3a9d9d>=_0x3322f8){_0x3a9d9d=_0x3322f8;_0xe4943a=0xc8;}else{_0xe4943a=0xce;}_0x2f8b5c[_0x5c02('0x27')](_0xe4943a);return _0x2f8b5c['set'](_0x5c02('0x2c'),_0x3bae01+'-'+_0x3a9d9d+'/'+_0x3322f8)[_0x5c02('0x2d')](_0x2a0dde);}return null;};}function patchUpdates(_0x1dc3dd){return function(_0x755f6e){try{jsonpatch[_0x5c02('0x2e')](_0x755f6e,_0x1dc3dd,!![]);}catch(_0x4b9db3){return BPromise[_0x5c02('0x2f')](_0x4b9db3);}return _0x755f6e[_0x5c02('0x30')]();};}function saveUpdates(_0x16ee35,_0x58eb5f){return function(_0x5e6d9e){if(_0x5e6d9e){return _0x5e6d9e[_0x5c02('0x31')](_0x16ee35)[_0x5c02('0x32')](function(_0x82ad1f){return _0x82ad1f;});}return null;};}function removeEntity(_0x3e2eaa,_0xb21af8){return function(_0x43b75b){if(_0x43b75b){return _0x43b75b[_0x5c02('0x33')]()['then'](function(){_0x3e2eaa[_0x5c02('0x27')](0xcc)[_0x5c02('0x28')]();});}};}function handleEntityNotFound(_0x5da0a3,_0x1e2f42){return function(_0x75bcb7){if(!_0x75bcb7){_0x5da0a3['sendStatus'](0x194);}return _0x75bcb7;};}function handleError(_0x1f9c5b,_0xb4c19f){_0xb4c19f=_0xb4c19f||0x1f4;return function(_0x210a2f){logger[_0x5c02('0x21')](_0x210a2f[_0x5c02('0x34')]);if(_0x210a2f[_0x5c02('0x35')]){delete _0x210a2f['name'];}_0x1f9c5b['status'](_0xb4c19f)[_0x5c02('0x36')](_0x210a2f);};}exports[_0x5c02('0x37')]=function(_0x26f3c9,_0x5cf424){var _0x16c5b9={},_0x2af5cc={},_0x511b1e={'count':0x0,'rows':[]};var _0x3d0dc6=_[_0x5c02('0x38')](db[_0x5c02('0x39')][_0x5c02('0x3a')],function(_0xbd0419){return{'name':_0xbd0419[_0x5c02('0x3b')],'type':_0xbd0419[_0x5c02('0x3c')][_0x5c02('0x3d')]};});_0x2af5cc[_0x5c02('0x3e')]=_[_0x5c02('0x38')](_0x3d0dc6,_0x5c02('0x35'));_0x2af5cc['query']=_[_0x5c02('0x3f')](_0x26f3c9['query']);_0x2af5cc['filters']=_[_0x5c02('0x40')](_0x2af5cc[_0x5c02('0x3e')],_0x2af5cc[_0x5c02('0x41')]);_0x16c5b9[_0x5c02('0x42')]=_[_0x5c02('0x40')](_0x2af5cc[_0x5c02('0x3e')],qs[_0x5c02('0x43')](_0x26f3c9[_0x5c02('0x41')][_0x5c02('0x43')]));_0x16c5b9[_0x5c02('0x42')]=_0x16c5b9['attributes'][_0x5c02('0x44')]?_0x16c5b9['attributes']:_0x2af5cc[_0x5c02('0x3e')];if(!_0x26f3c9['query'][_0x5c02('0x45')]('nolimit')){_0x16c5b9[_0x5c02('0x46')]=qs[_0x5c02('0x46')](_0x26f3c9[_0x5c02('0x41')]['limit']);_0x16c5b9['offset']=qs[_0x5c02('0x29')](_0x26f3c9[_0x5c02('0x41')][_0x5c02('0x29')]);}_0x16c5b9[_0x5c02('0x47')]=qs[_0x5c02('0x48')](_0x26f3c9[_0x5c02('0x41')][_0x5c02('0x48')]);_0x16c5b9[_0x5c02('0x49')]=qs['filters'](_['pick'](_0x26f3c9[_0x5c02('0x41')],_0x2af5cc[_0x5c02('0x4a')]),_0x3d0dc6);if(_0x26f3c9[_0x5c02('0x41')][_0x5c02('0x4b')]){_0x16c5b9[_0x5c02('0x49')]=_[_0x5c02('0x4c')](_0x16c5b9['where'],{'$or':_[_0x5c02('0x38')](_0x3d0dc6,function(_0x3acf2d){if(_0x3acf2d[_0x5c02('0x3c')]!==_0x5c02('0x4d')){var _0x101482={};_0x101482[_0x3acf2d[_0x5c02('0x35')]]={'$like':'%'+_0x26f3c9['query'][_0x5c02('0x4b')]+'%'};return _0x101482;}})});}_0x16c5b9=_[_0x5c02('0x4c')]({},_0x16c5b9,_0x26f3c9[_0x5c02('0x4e')]);var _0x4fa3c3={'where':_0x16c5b9['where']};return db['SmsMessage'][_0x5c02('0x2b')](_0x4fa3c3)[_0x5c02('0x32')](function(_0x5d25c2){_0x511b1e[_0x5c02('0x2b')]=_0x5d25c2;if(_0x26f3c9[_0x5c02('0x41')][_0x5c02('0x4f')]){_0x16c5b9['include']=[{'all':!![]}];}return db[_0x5c02('0x39')][_0x5c02('0x50')](_0x16c5b9);})[_0x5c02('0x32')](function(_0x545852){_0x511b1e[_0x5c02('0x51')]=_0x545852;return _0x511b1e;})[_0x5c02('0x32')](respondWithFilteredResult(_0x5cf424,_0x16c5b9))[_0x5c02('0x25')](handleError(_0x5cf424,null));};exports[_0x5c02('0x52')]=function(_0xee7fba,_0x3fe3ff){var _0x5eec7a={'raw':!![],'where':{'id':_0xee7fba[_0x5c02('0x53')]['id']}},_0x29028f={};_0x29028f[_0x5c02('0x3e')]=_[_0x5c02('0x3f')](db[_0x5c02('0x39')][_0x5c02('0x3a')]);_0x29028f[_0x5c02('0x41')]=_[_0x5c02('0x3f')](_0xee7fba[_0x5c02('0x41')]);_0x29028f[_0x5c02('0x4a')]=_[_0x5c02('0x40')](_0x29028f['model'],_0x29028f[_0x5c02('0x41')]);_0x5eec7a[_0x5c02('0x42')]=_['intersection'](_0x29028f[_0x5c02('0x3e')],qs[_0x5c02('0x43')](_0xee7fba[_0x5c02('0x41')][_0x5c02('0x43')]));_0x5eec7a[_0x5c02('0x42')]=_0x5eec7a['attributes'][_0x5c02('0x44')]?_0x5eec7a[_0x5c02('0x42')]:_0x29028f[_0x5c02('0x3e')];if(_0xee7fba[_0x5c02('0x41')]['includeAll']){_0x5eec7a[_0x5c02('0x54')]=[{'all':!![]}];}_0x5eec7a=_['merge']({},_0x5eec7a,_0xee7fba[_0x5c02('0x4e')]);return db['SmsMessage'][_0x5c02('0x55')](_0x5eec7a)[_0x5c02('0x32')](handleEntityNotFound(_0x3fe3ff,null))[_0x5c02('0x32')](respondWithResult(_0x3fe3ff,null))[_0x5c02('0x25')](handleError(_0x3fe3ff,null));};exports[_0x5c02('0x56')]=function(_0x18a2c8,_0x5c8666){return db['SmsMessage'][_0x5c02('0x56')](_0x18a2c8[_0x5c02('0x57')],{})[_0x5c02('0x32')](respondWithResult(_0x5c8666,0xc9))[_0x5c02('0x25')](handleError(_0x5c8666,null));};exports[_0x5c02('0x31')]=function(_0x10ae58,_0x502770){if(_0x10ae58[_0x5c02('0x57')]['id']){delete _0x10ae58[_0x5c02('0x57')]['id'];}return db[_0x5c02('0x39')][_0x5c02('0x55')]({'where':{'id':_0x10ae58[_0x5c02('0x53')]['id']}})['then'](handleEntityNotFound(_0x502770,null))[_0x5c02('0x32')](saveUpdates(_0x10ae58[_0x5c02('0x57')],null))[_0x5c02('0x32')](respondWithResult(_0x502770,null))[_0x5c02('0x25')](handleError(_0x502770,null));};exports['destroy']=function(_0x176747,_0x24674c){return db[_0x5c02('0x39')]['find']({'where':{'id':_0x176747[_0x5c02('0x53')]['id']}})[_0x5c02('0x32')](handleEntityNotFound(_0x24674c,null))[_0x5c02('0x32')](removeEntity(_0x24674c,null))['catch'](handleError(_0x24674c,null));};exports['describe']=function(_0x802a8f,_0xc2d419){return db[_0x5c02('0x39')][_0x5c02('0x58')]()[_0x5c02('0x32')](respondWithResult(_0xc2d419,null))[_0x5c02('0x25')](handleError(_0xc2d419,null));};var interaction_log=require(_0x5c02('0x59'))(_0x5c02('0x5a'));exports[_0x5c02('0x5b')]=function(_0xcf6892,_0x138e7f,_0x3de3f2){var _0x548a55={'agent':{},'channel':_0x5c02('0x5c')};if(_0xcf6892[_0x5c02('0x57')]['id']){delete _0xcf6892[_0x5c02('0x57')]['id'];}_0xcf6892['body'][_0x5c02('0x5d')]=!![];_0xcf6892[_0x5c02('0x57')][_0x5c02('0x5e')]=moment()['format'](_0x5c02('0x5f'));_0xcf6892[_0x5c02('0x57')][_0x5c02('0x60')]=_0xcf6892[_0x5c02('0x57')][_0x5c02('0x60')]||_0xcf6892['user']['id'];_0x548a55[_0x5c02('0x61')]['id']=_0xcf6892[_0x5c02('0x57')][_0x5c02('0x60')];return db[_0x5c02('0x39')][_0x5c02('0x55')]({'where':{'id':_0xcf6892[_0x5c02('0x53')]['id'],'UserId':null}})[_0x5c02('0x32')](handleEntityNotFound(_0x138e7f,null))[_0x5c02('0x32')](saveUpdates(_0xcf6892[_0x5c02('0x57')],null))['then'](function(_0x2b1422){if(_0x2b1422){_0x548a55[_0x5c02('0x23')]=_0x2b1422[_0x5c02('0x62')]({'plain':!![]});return db[_0x5c02('0x63')][_0x5c02('0x55')]({'where':{'id':_0x2b1422[_0x5c02('0x64')]}});}return null;})[_0x5c02('0x32')](handleEntityNotFound(_0x138e7f,null))[_0x5c02('0x32')](function(_0x3d8393){if(_0x3d8393){return _0x3d8393[_0x5c02('0x31')]({'UserId':_0xcf6892['body'][_0x5c02('0x60')],'read1stAt':_['isNil'](_0x3d8393[_0x5c02('0x65')])?moment()[_0x5c02('0x66')](_0x5c02('0x5f')):undefined});}return null;})[_0x5c02('0x32')](function(_0x1fabc7){if(_0x1fabc7){_0x548a55['interaction']=_0x1fabc7['get']({'plain':!![]});interaction_log['info'](_0x5c02('0x67'),_0xcf6892[_0x5c02('0x68')]['id'],_0xcf6892[_0x5c02('0x68')][_0x5c02('0x35')],_0xcf6892[_0x5c02('0x68')][_0x5c02('0x69')],_0x548a55['interaction']['id'],_0xcf6892[_0x5c02('0x57')]?JSON['stringify'](_0xcf6892[_0x5c02('0x57')]):_0x5c02('0x6a'));return respondWithRpcPromise(_0x5c02('0x6b'),_0x5c02('0x6c'),_0x548a55);}return null;})[_0x5c02('0x32')](function(_0x140a26){var _0x4a903e=_0x5c02('0x6d')+_0x140a26[_0x5c02('0x23')][_0x5c02('0x6e')];return db[_0x5c02('0x6f')]['query'](_0x4a903e,{'type':db[_0x5c02('0x70')][_0x5c02('0x71')][_0x5c02('0x72')],'raw':!![]})[_0x5c02('0x32')](function(_0x570a59){return _0x570a59;});})[_0x5c02('0x32')](function(_0x37a3bd){if(_0x37a3bd){_0x548a55['message'][_0x5c02('0x73')]=_0x37a3bd[0x0];if(!_0xcf6892['body'][_0x5c02('0x60')])return;return db[_0x5c02('0x74')]['find']({'where':{'id':_0xcf6892[_0x5c02('0x57')]['UserId'],'role':_0x5c02('0x61')},'attributes':['id',_0x5c02('0x35'),_0x5c02('0x75'),_0x5c02('0x76'),_0x5c02('0x77')],'raw':!![]});}return null;})[_0x5c02('0x32')](function(_0x3e82a0){if(!_0x3e82a0)return null;_0x548a55[_0x5c02('0x23')][_0x5c02('0x61')]=_0x3e82a0;return _0x548a55;})[_0x5c02('0x32')](function(_0xf7d783){if(_0xf7d783){if(_0xcf6892[_0x5c02('0x57')][_0x5c02('0x78')]){_0x548a55['message'][_0x5c02('0x79')]=util[_0x5c02('0x66')](_0x5c02('0x7a'),_0xcf6892['user'][_0x5c02('0x35')]);_0x548a55[_0x5c02('0x23')][_0x5c02('0x7b')]=_0x548a55[_0x5c02('0x7b')];_0x548a55[_0x5c02('0x23')][_0x5c02('0x7c')]=_0x548a55[_0x5c02('0x7b')];_0x548a55[_0x5c02('0x23')][_0x5c02('0x7d')]=_0x5c02('0x5b');return respondWithRpcPromise('EventManager',_0x5c02('0x7e'),{'event':'acceptmessage','message':_0x548a55[_0x5c02('0x23')]},client9002)[_0x5c02('0x32')](function(){return _0x548a55;});}return _0x548a55;}return null;})[_0x5c02('0x32')](respondWithResult(_0x138e7f,null))[_0x5c02('0x25')](handleError(_0x138e7f,null));};var interaction_log=require(_0x5c02('0x59'))(_0x5c02('0x5a'));exports[_0x5c02('0x2f')]=function(_0x186650,_0x2d746d,_0x5009f6){var _0x3cd6d9={'agent':{},'channel':'sms'};if(_0x186650['body']['id']){delete _0x186650[_0x5c02('0x57')]['id'];}_0x186650[_0x5c02('0x57')][_0x5c02('0x60')]=_0x186650[_0x5c02('0x57')]['UserId']||_0x186650['user']['id'];_0x3cd6d9['agent']['id']=_0x186650[_0x5c02('0x57')]['UserId'];return db[_0x5c02('0x39')]['find']({'where':{'id':_0x186650[_0x5c02('0x53')]['id'],'UserId':null}})[_0x5c02('0x32')](handleEntityNotFound(_0x2d746d,null))[_0x5c02('0x32')](function(_0x2452d5){if(_0x2452d5){_0x3cd6d9['message']=_0x2452d5[_0x5c02('0x62')]({'plain':!![]});return db[_0x5c02('0x63')][_0x5c02('0x55')]({'where':{'id':_0x2452d5[_0x5c02('0x64')]}});}return null;})['then'](handleEntityNotFound(_0x2d746d,null))[_0x5c02('0x32')](function(_0x563897){if(_0x563897){_0x3cd6d9['interaction']=_0x563897['get']({'plain':!![]});interaction_log[_0x5c02('0x7f')]('[SMSMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s',_0x186650[_0x5c02('0x68')]['id'],_0x186650[_0x5c02('0x68')][_0x5c02('0x35')],_0x186650[_0x5c02('0x68')][_0x5c02('0x69')],_0x3cd6d9[_0x5c02('0x80')]['id'],_0x186650['body']?JSON['stringify'](_0x186650[_0x5c02('0x57')]):_0x5c02('0x6a'));return respondWithRpcPromise(_0x5c02('0x81'),_0x5c02('0x82'),_0x3cd6d9);}return null;})['then'](function(_0x4e7213){var _0x27887c=_0x5c02('0x6d')+_0x4e7213[_0x5c02('0x23')][_0x5c02('0x6e')];return db['sequelize'][_0x5c02('0x41')](_0x27887c,{'type':db[_0x5c02('0x70')]['QueryTypes']['SELECT'],'raw':!![]})[_0x5c02('0x32')](function(_0x5bae1){return _0x5bae1;});})[_0x5c02('0x32')](function(_0x14d3bc){if(_0x14d3bc){_0x3cd6d9['message'][_0x5c02('0x73')]=_0x14d3bc[0x0];if(!_0x186650[_0x5c02('0x57')]['UserId'])return;return db[_0x5c02('0x74')][_0x5c02('0x55')]({'where':{'id':_0x186650[_0x5c02('0x57')][_0x5c02('0x60')],'role':_0x5c02('0x61')},'attributes':['id',_0x5c02('0x35'),_0x5c02('0x75'),_0x5c02('0x76'),_0x5c02('0x77')],'raw':!![]});}return null;})[_0x5c02('0x32')](function(_0x5a392b){if(!_0x5a392b)return null;_0x3cd6d9[_0x5c02('0x23')][_0x5c02('0x61')]=_0x5a392b;return _0x3cd6d9;})['then'](function(_0x50e92b){if(_0x50e92b){_0x50e92b[_0x5c02('0x23')][_0x5c02('0x79')]=util['format'](_0x5c02('0x7a'),_0x186650[_0x5c02('0x68')][_0x5c02('0x35')]);_0x50e92b[_0x5c02('0x23')][_0x5c02('0x7b')]=_0x3cd6d9['channel'];_0x50e92b[_0x5c02('0x23')]['motionChannel']=_0x3cd6d9[_0x5c02('0x7b')];_0x50e92b[_0x5c02('0x23')][_0x5c02('0x7d')]=_0x5c02('0x2f');respondWithRpcPromise(_0x5c02('0x7e'),_0x5c02('0x7e'),{'event':_0x5c02('0x83'),'message':_0x50e92b[_0x5c02('0x23')]},client9002);return _0x3cd6d9;}return null;})[_0x5c02('0x32')](respondWithResult(_0x2d746d,null))['catch'](handleError(_0x2d746d,null));};exports['status']=function(_0x5bd534,_0x4e92aa,_0x45d966){if(_0x5bd534[_0x5c02('0x57')]['id']){delete _0x5bd534[_0x5c02('0x57')]['id'];}var _0x2dad48;return db['SmsMessage'][_0x5c02('0x55')]({'where':{'id':_0x5bd534[_0x5c02('0x53')]['id']}})[_0x5c02('0x32')](handleEntityNotFound(_0x4e92aa,null))[_0x5c02('0x32')](function(_0x293b64){if(_0x293b64){_0x2dad48=_0x293b64;return db[_0x5c02('0x84')][_0x5c02('0x55')]({'where':{'id':_0x293b64[_0x5c02('0x85')]}});}})['then'](handleEntityNotFound(_0x4e92aa,null))[_0x5c02('0x32')](function(_0x3142e2){if(_0x3142e2){logger['debug'](_0x5c02('0x1f'),_0x5c02('0x27'),_0x5c02('0x86'),_0x3142e2['type'],util[_0x5c02('0x87')](_0x5bd534[_0x5c02('0x57')],{'showHidden':![],'depth':null}));switch(_0x3142e2[_0x5c02('0x3c')]){case _0x5c02('0x88'):if(_0x5bd534['body']['MessageSid']&&_0x5bd534[_0x5c02('0x57')][_0x5c02('0x89')]===_0x2dad48[_0x5c02('0x8a')]){return _0x2dad48[_0x5c02('0x31')]({'read':!![]});}else{logger[_0x5c02('0x21')](_0x5c02('0x8b'),_0x5c02('0x27'),_0x5c02('0x88'),util[_0x5c02('0x87')](_0x5bd534[_0x5c02('0x57')],{'showHidden':![],'depth':null}));}break;case'plivo':if(_0x5bd534['body'][_0x5c02('0x8c')]&&_0x5bd534[_0x5c02('0x57')]['MessageUUID']===_0x2dad48[_0x5c02('0x8a')]&&_[_0x5c02('0x8d')]([_0x5c02('0x8e'),'delivered'],_0x5bd534['body'][_0x5c02('0x8f')])>=0x0){return _0x2dad48[_0x5c02('0x31')]({'read':!![]});}else{logger[_0x5c02('0x21')]('SmsAccount,\x20%s,\x20%s,\x20%s',_0x5c02('0x27'),_0x5c02('0x90'),util[_0x5c02('0x87')](_0x5bd534['body'],{'showHidden':![],'depth':null}));}break;case'infobip':var _0x2951e6=_0x5bd534[_0x5c02('0x57')][_0x5c02('0x91')][0x0];if(_0x2951e6['status']['groupName']==='DELIVERED'){return _0x2dad48['update']({'read':!![]});}else{logger[_0x5c02('0x21')](_0x5c02('0x8b'),_0x5c02('0x27'),_0x5c02('0x92'),util[_0x5c02('0x87')](_0x5bd534['body'],{'showHidden':![],'depth':null}));}break;}return _0x2dad48;}})['then'](respondWithResult(_0x4e92aa,null))[_0x5c02('0x25')](handleError(_0x4e92aa,null));};