122a25c3c8d4cc1627c35ca3cfd2a4e47173ca64
[motion2.git] / server / api / smsAccount / smsAccount.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 _0x8d44=['agent','waitForTheAssignedAgent','Start','startRouting','receiveMessage','entity\x20found','debug','Content-Type','text/xml','send','addApplications','sequelize','transaction','ISOLATION_LEVELS','READ_COMMITTED','SmsApplication','bulkCreate','findAndCountAll','finally','getApplications','Contact','Owner','Tag','Tags','color','tag','List','Messages','dataValues','skebby_dispatch_id','statusInt','message_id','status_code','DELIVERED','intelepeer','redif','inspect','error_code','groupName','DELIVERED_TO_GATEWAY','message-delivered','DELIVRD','ACCEPTD','received\x20delivery\x20report\x20from','message-id','state','addAgents','emit','userSmsAccount:save','removeAgents','isArray','userSmsAccount:remove','getAgents','eml-format','zip-dir','request-promise','bluebird','mustache','util','path','sox','to-csv','lodash','squel','crypto','jsforce','desk.js','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/utils','../../config/environment','../../mysqldb','redis','defaults','socket.io-emitter','./smsAccount.socket','register','jayson/promise','client','http','request','then','info','SmsAccount,\x20%s,\x20%s','request\x20sent','SmsAccount,\x20%s,\x20%s,\x20%s','stringify','error','code','message','result','catch','status','end','json','offset','limit','count','set','Content-Range','apply','reject','save','update','destroy','get','SmsAccounts','sendStatus','stack','name','index','Pause','map','SmsAccount','rawAttributes','type','key','model','query','filters','intersection','fields','attributes','length','hasOwnProperty','nolimit','sort','where','filter','merge','VIRTUAL','options','includeAll','include','findAll','rows','show','params','keys','find','create','body','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','mandatoryDispositionPause','SmsAccountId','Disposition','getDispositions','findOne','order','pick','removeDispositions','ids','addAnswer','getAnswers','CannedAnswer','removeAnswers','notify','sms','Applications','account','orderBy','priority','asc','CmContact','describe','Sequelize','ValidationError','no\x20available\x20attributes','difference','createdAt','updatedAt','CompanyId','ListId','mobile','twilio','from','From','Body','messageId','skebby','sender','text','connectel','clicksend','plivo','Text','infobip','results','csc','originatingAddress','segmentedMessage','clickatell','fromNumber','replyMessageId','bandwidth','refid','isNil','from\x20is\x20mandatory','body\x20is\x20mandatory\x20and\x20not\x20empty','mapKey','mapKey\x20is\x20mandatory,\x20please\x20use\x20one\x20of\x20these:\x20','includes','CmList','Contacts','DESC','list','omit','SmsInteraction','spread','interaction','created','autoclose','applications','push','close','unmanaged','*,*,*,*','SmsMessage','UserId','User','unshift'];(function(_0x4fe5c0,_0xfa2a3a){var _0x2f4af4=function(_0x23e20a){while(--_0x23e20a){_0x4fe5c0['push'](_0x4fe5c0['shift']());}};_0x2f4af4(++_0xfa2a3a);}(_0x8d44,0x11c));var _0x48d4=function(_0x1216c3,_0x1c2b79){_0x1216c3=_0x1216c3-0x0;var _0x48857c=_0x8d44[_0x1216c3];return _0x48857c;};'use strict';var emlformat=require(_0x48d4('0x0'));var rimraf=require('rimraf');var zipdir=require(_0x48d4('0x1'));var jsonpatch=require('fast-json-patch');var rp=require(_0x48d4('0x2'));var moment=require('moment');var BPromise=require(_0x48d4('0x3'));var Mustache=require(_0x48d4('0x4'));var util=require(_0x48d4('0x5'));var path=require(_0x48d4('0x6'));var sox=require(_0x48d4('0x7'));var csv=require(_0x48d4('0x8'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x48d4('0x9'));var squel=require(_0x48d4('0xa'));var crypto=require(_0x48d4('0xb'));var jsforce=require(_0x48d4('0xc'));var deskjs=require(_0x48d4('0xd'));var toCsv=require(_0x48d4('0x8'));var querystring=require('querystring');var Papa=require(_0x48d4('0xe'));var Redis=require(_0x48d4('0xf'));var authService=require(_0x48d4('0x10'));var qs=require(_0x48d4('0x11'));var as=require(_0x48d4('0x12'));var hardwareService=require(_0x48d4('0x13'));var logger=require('../../config/logger')('api');var utils=require(_0x48d4('0x14'));var config=require(_0x48d4('0x15'));var licenseUtil=require('../../config/license/util');var db=require(_0x48d4('0x16'))['db'];config[_0x48d4('0x17')]=_[_0x48d4('0x18')](config[_0x48d4('0x17')],{'host':'localhost','port':0x18eb});var socket=require(_0x48d4('0x19'))(new Redis(config[_0x48d4('0x17')]));require(_0x48d4('0x1a'))[_0x48d4('0x1b')](socket);var jayson=require(_0x48d4('0x1c'));var client=jayson[_0x48d4('0x1d')][_0x48d4('0x1e')]({'port':0x232c});function respondWithRpcPromise(_0x49086a,_0x3a8fdf,_0xe33da9,_0x3f8091){return new BPromise(function(_0x3ea07b,_0x4f5a6d){var _0x13cd68=_0x3f8091||client;return _0x13cd68[_0x48d4('0x1f')](_0x49086a,_0xe33da9)[_0x48d4('0x20')](function(_0x540c94){logger[_0x48d4('0x21')](_0x48d4('0x22'),_0x3a8fdf,_0x48d4('0x23'));logger['debug'](_0x48d4('0x24'),_0x3a8fdf,_0x48d4('0x23'),JSON[_0x48d4('0x25')](_0x540c94));if(_0x540c94['error']){if(_0x540c94[_0x48d4('0x26')][_0x48d4('0x27')]===0x1f4){logger[_0x48d4('0x26')](_0x48d4('0x22'),_0x3a8fdf,_0x540c94[_0x48d4('0x26')]['message']);return _0x4f5a6d(_0x540c94['error']['message']);}logger[_0x48d4('0x26')](_0x48d4('0x22'),_0x3a8fdf,_0x540c94[_0x48d4('0x26')][_0x48d4('0x28')]);return _0x3ea07b(_0x540c94[_0x48d4('0x26')][_0x48d4('0x28')]);}else{logger[_0x48d4('0x21')](_0x48d4('0x22'),_0x3a8fdf,_0x48d4('0x23'));_0x3ea07b(_0x540c94[_0x48d4('0x29')][_0x48d4('0x28')]);}})[_0x48d4('0x2a')](function(_0x4594de){logger[_0x48d4('0x26')]('SmsAccount,\x20%s,\x20%s',_0x3a8fdf,_0x4594de);_0x4f5a6d(_0x4594de);});});}function respondWithStatusCode(_0x339a63,_0x33660d){_0x33660d=_0x33660d||0xcc;return function(_0x3eae53){if(_0x3eae53){return _0x339a63['sendStatus'](_0x33660d);}return _0x339a63[_0x48d4('0x2b')](_0x33660d)[_0x48d4('0x2c')]();};}function respondWithResult(_0x59dc1e,_0x445299){_0x445299=_0x445299||0xc8;return function(_0x254bd3){if(_0x254bd3){return _0x59dc1e['status'](_0x445299)[_0x48d4('0x2d')](_0x254bd3);}};}function respondWithFilteredResult(_0x25f9e0,_0xda08af){return function(_0xe204e3){if(_0xe204e3){var _0x57e5b8=typeof _0xda08af[_0x48d4('0x2e')]==='undefined'&&typeof _0xda08af[_0x48d4('0x2f')]==='undefined';var _0x7e06e3=_0xe204e3[_0x48d4('0x30')];var _0x242b10=_0x57e5b8?0x0:_0xda08af['offset'];var _0x3d2f5e=_0x57e5b8?_0xe204e3['count']:_0xda08af[_0x48d4('0x2e')]+_0xda08af[_0x48d4('0x2f')];var _0x11644e;if(_0x3d2f5e>=_0x7e06e3){_0x3d2f5e=_0x7e06e3;_0x11644e=0xc8;}else{_0x11644e=0xce;}_0x25f9e0[_0x48d4('0x2b')](_0x11644e);return _0x25f9e0[_0x48d4('0x31')](_0x48d4('0x32'),_0x242b10+'-'+_0x3d2f5e+'/'+_0x7e06e3)['json'](_0xe204e3);}return null;};}function patchUpdates(_0x1eaea5){return function(_0x5233a3){try{jsonpatch[_0x48d4('0x33')](_0x5233a3,_0x1eaea5,!![]);}catch(_0x25c8a2){return BPromise[_0x48d4('0x34')](_0x25c8a2);}return _0x5233a3[_0x48d4('0x35')]();};}function saveUpdates(_0x18b655,_0x5b18ef){return function(_0x396a1a){if(_0x396a1a){return _0x396a1a[_0x48d4('0x36')](_0x18b655)[_0x48d4('0x20')](function(_0x2c0514){return _0x2c0514;});}return null;};}function removeEntity(_0x3df49e,_0x103612){return function(_0x1feeb4){if(_0x1feeb4){return _0x1feeb4[_0x48d4('0x37')]()[_0x48d4('0x20')](function(){var _0x42c505=_0x1feeb4[_0x48d4('0x38')]({'plain':!![]});var _0x34684b=_0x48d4('0x39');return db['UserProfileResource']['destroy']({'where':{'type':_0x34684b,'resourceId':_0x42c505['id']}})[_0x48d4('0x20')](function(){return _0x1feeb4;});})[_0x48d4('0x20')](function(){_0x3df49e[_0x48d4('0x2b')](0xcc)[_0x48d4('0x2c')]();});}};}function handleEntityNotFound(_0x25d280,_0x35d407){return function(_0x43a6a1){if(!_0x43a6a1){_0x25d280[_0x48d4('0x3a')](0x194);}return _0x43a6a1;};}function handleError(_0x360ed0,_0x37c5cb){_0x37c5cb=_0x37c5cb||0x1f4;return function(_0x3964b7){logger[_0x48d4('0x26')](_0x3964b7[_0x48d4('0x3b')]);if(_0x3964b7[_0x48d4('0x3c')]){delete _0x3964b7['name'];}_0x360ed0['status'](_0x37c5cb)['send'](_0x3964b7);};}exports[_0x48d4('0x3d')]=function(_0x496694,_0x24dff0){var _0x222415={'include':[{'model':db[_0x48d4('0x3e')],'as':'mandatoryDispositionPause'}]},_0x595c2c={},_0x5f8bad={'count':0x0,'rows':[]};var _0x383ad7=_[_0x48d4('0x3f')](db[_0x48d4('0x40')][_0x48d4('0x41')],function(_0x5bfa6a){return{'name':_0x5bfa6a['fieldName'],'type':_0x5bfa6a[_0x48d4('0x42')][_0x48d4('0x43')]};});_0x595c2c[_0x48d4('0x44')]=_[_0x48d4('0x3f')](_0x383ad7,_0x48d4('0x3c'));_0x595c2c[_0x48d4('0x45')]=_['keys'](_0x496694[_0x48d4('0x45')]);_0x595c2c[_0x48d4('0x46')]=_[_0x48d4('0x47')](_0x595c2c[_0x48d4('0x44')],_0x595c2c[_0x48d4('0x45')]);_0x222415['attributes']=_[_0x48d4('0x47')](_0x595c2c[_0x48d4('0x44')],qs[_0x48d4('0x48')](_0x496694[_0x48d4('0x45')]['fields']));_0x222415[_0x48d4('0x49')]=_0x222415[_0x48d4('0x49')][_0x48d4('0x4a')]?_0x222415[_0x48d4('0x49')]:_0x595c2c[_0x48d4('0x44')];if(!_0x496694[_0x48d4('0x45')][_0x48d4('0x4b')](_0x48d4('0x4c'))){_0x222415[_0x48d4('0x2f')]=qs['limit'](_0x496694[_0x48d4('0x45')][_0x48d4('0x2f')]);_0x222415[_0x48d4('0x2e')]=qs[_0x48d4('0x2e')](_0x496694[_0x48d4('0x45')][_0x48d4('0x2e')]);}_0x222415['order']=qs[_0x48d4('0x4d')](_0x496694[_0x48d4('0x45')][_0x48d4('0x4d')]);_0x222415[_0x48d4('0x4e')]=qs[_0x48d4('0x46')](_['pick'](_0x496694[_0x48d4('0x45')],_0x595c2c[_0x48d4('0x46')]),_0x383ad7);if(_0x496694[_0x48d4('0x45')][_0x48d4('0x4f')]){_0x222415[_0x48d4('0x4e')]=_[_0x48d4('0x50')](_0x222415['where'],{'$or':_[_0x48d4('0x3f')](_0x383ad7,function(_0x49d193){if(_0x49d193[_0x48d4('0x42')]!==_0x48d4('0x51')){var _0x314c65={};_0x314c65[_0x49d193[_0x48d4('0x3c')]]={'$like':'%'+_0x496694[_0x48d4('0x45')][_0x48d4('0x4f')]+'%'};return _0x314c65;}})});}_0x222415=_[_0x48d4('0x50')]({},_0x222415,_0x496694[_0x48d4('0x52')]);var _0x2be367={'where':_0x222415[_0x48d4('0x4e')]};return db[_0x48d4('0x40')][_0x48d4('0x30')](_0x2be367)[_0x48d4('0x20')](function(_0xfa7a23){_0x5f8bad['count']=_0xfa7a23;if(_0x496694[_0x48d4('0x45')][_0x48d4('0x53')]){_0x222415[_0x48d4('0x54')]=[{'all':!![]}];}return db['SmsAccount'][_0x48d4('0x55')](_0x222415);})[_0x48d4('0x20')](function(_0x45eefe){_0x5f8bad[_0x48d4('0x56')]=_0x45eefe;return _0x5f8bad;})['then'](respondWithFilteredResult(_0x24dff0,_0x222415))[_0x48d4('0x2a')](handleError(_0x24dff0,null));};exports[_0x48d4('0x57')]=function(_0x18fe41,_0x527c2b){var _0x316186={'raw':![],'where':{'id':_0x18fe41[_0x48d4('0x58')]['id']},'include':[{'model':db[_0x48d4('0x3e')],'as':'mandatoryDispositionPause'}]},_0x790c19={};_0x790c19[_0x48d4('0x44')]=_[_0x48d4('0x59')](db['SmsAccount'][_0x48d4('0x41')]);_0x790c19[_0x48d4('0x45')]=_[_0x48d4('0x59')](_0x18fe41['query']);_0x790c19[_0x48d4('0x46')]=_['intersection'](_0x790c19[_0x48d4('0x44')],_0x790c19[_0x48d4('0x45')]);_0x316186[_0x48d4('0x49')]=_[_0x48d4('0x47')](_0x790c19[_0x48d4('0x44')],qs['fields'](_0x18fe41[_0x48d4('0x45')][_0x48d4('0x48')]));_0x316186[_0x48d4('0x49')]=_0x316186[_0x48d4('0x49')][_0x48d4('0x4a')]?_0x316186[_0x48d4('0x49')]:_0x790c19[_0x48d4('0x44')];if(_0x18fe41['query'][_0x48d4('0x53')]){_0x316186[_0x48d4('0x54')]=[{'all':!![]}];}_0x316186=_[_0x48d4('0x50')]({},_0x316186,_0x18fe41[_0x48d4('0x52')]);return db[_0x48d4('0x40')][_0x48d4('0x5a')](_0x316186)['then'](handleEntityNotFound(_0x527c2b,null))[_0x48d4('0x20')](respondWithResult(_0x527c2b,null))[_0x48d4('0x2a')](handleError(_0x527c2b,null));};exports[_0x48d4('0x5b')]=function(_0x13ad45,_0x4de0d6){return db[_0x48d4('0x40')][_0x48d4('0x5b')](_0x13ad45[_0x48d4('0x5c')],{})[_0x48d4('0x20')](function(_0x2c4bbf){var _0x335a97=_0x13ad45[_0x48d4('0x5d')][_0x48d4('0x38')]({'plain':!![]});if(!_0x335a97)throw new Error(_0x48d4('0x5e'));if(_0x335a97[_0x48d4('0x5f')]==='user'){var _0x46f34a=_0x2c4bbf[_0x48d4('0x38')]({'plain':!![]});var _0x332f0e='SmsAccounts';return db[_0x48d4('0x60')][_0x48d4('0x5a')]({'where':{'name':_0x332f0e,'userProfileId':_0x335a97[_0x48d4('0x61')]},'raw':!![]})['then'](function(_0x42bc03){if(_0x42bc03&&_0x42bc03[_0x48d4('0x62')]===0x0){return db['UserProfileResource'][_0x48d4('0x5b')]({'name':_0x46f34a[_0x48d4('0x3c')],'resourceId':_0x46f34a['id'],'type':_0x42bc03[_0x48d4('0x3c')],'sectionId':_0x42bc03['id']},{})[_0x48d4('0x20')](function(){return _0x2c4bbf;});}else{return _0x2c4bbf;}})['catch'](function(_0x152f79){logger[_0x48d4('0x26')](_0x48d4('0x63'),_0x152f79);throw _0x152f79;});}return _0x2c4bbf;})[_0x48d4('0x20')](respondWithResult(_0x4de0d6,0xc9))['catch'](handleError(_0x4de0d6,null));};exports[_0x48d4('0x36')]=function(_0x145a24,_0x19e61c){if(_0x145a24['body']['id']){delete _0x145a24[_0x48d4('0x5c')]['id'];}return db['SmsAccount']['find']({'where':{'id':_0x145a24[_0x48d4('0x58')]['id']},'include':[{'model':db[_0x48d4('0x3e')],'as':_0x48d4('0x64')}]})[_0x48d4('0x20')](handleEntityNotFound(_0x19e61c,null))[_0x48d4('0x20')](saveUpdates(_0x145a24[_0x48d4('0x5c')],null))[_0x48d4('0x20')](respondWithResult(_0x19e61c,null))[_0x48d4('0x2a')](handleError(_0x19e61c,null));};exports[_0x48d4('0x37')]=function(_0x47afa7,_0x1125e1){return db['SmsAccount'][_0x48d4('0x5a')]({'where':{'id':_0x47afa7[_0x48d4('0x58')]['id']}})[_0x48d4('0x20')](handleEntityNotFound(_0x1125e1,null))[_0x48d4('0x20')](removeEntity(_0x1125e1,null))[_0x48d4('0x2a')](handleError(_0x1125e1,null));};exports['describe']=function(_0x4eeb33,_0x359786){return db[_0x48d4('0x40')]['describe']()[_0x48d4('0x20')](respondWithResult(_0x359786,null))[_0x48d4('0x2a')](handleError(_0x359786,null));};exports['addDisposition']=function(_0x5ebdeb,_0x19a5fa,_0x5b7903){if(_0x5ebdeb[_0x48d4('0x5c')]['id']){delete _0x5ebdeb[_0x48d4('0x5c')]['id'];}return db[_0x48d4('0x40')][_0x48d4('0x5a')]({'where':{'id':_0x5ebdeb[_0x48d4('0x58')]['id']}})[_0x48d4('0x20')](handleEntityNotFound(_0x19a5fa,null))[_0x48d4('0x20')](function(_0x5e376c){if(_0x5e376c){_0x5ebdeb[_0x48d4('0x5c')][_0x48d4('0x65')]=_0x5e376c['id'];return db[_0x48d4('0x66')][_0x48d4('0x5b')](_0x5ebdeb['body']);}})[_0x48d4('0x20')](respondWithResult(_0x19a5fa,null))[_0x48d4('0x2a')](handleError(_0x19a5fa,null));};exports[_0x48d4('0x67')]=function(_0x1f2365,_0x3b02bc,_0x1059fd){var _0x4b71f7={'raw':![],'where':{}};var _0x107888={};var _0x2a4a4d={'count':0x0,'rows':[]};return db[_0x48d4('0x40')][_0x48d4('0x68')]({'where':{'id':_0x1f2365[_0x48d4('0x58')]['id']}})[_0x48d4('0x20')](handleEntityNotFound(_0x3b02bc,null))['then'](function(_0x2815db){if(_0x2815db){_0x107888[_0x48d4('0x44')]=_[_0x48d4('0x59')](db['Disposition'][_0x48d4('0x41')]);_0x107888[_0x48d4('0x45')]=_[_0x48d4('0x59')](_0x1f2365[_0x48d4('0x45')]);_0x107888[_0x48d4('0x46')]=_[_0x48d4('0x47')](_0x107888[_0x48d4('0x44')],_0x107888[_0x48d4('0x45')]);_0x4b71f7['attributes']=_[_0x48d4('0x47')](_0x107888[_0x48d4('0x44')],qs[_0x48d4('0x48')](_0x1f2365[_0x48d4('0x45')]['fields']));_0x4b71f7[_0x48d4('0x49')]=_0x4b71f7[_0x48d4('0x49')][_0x48d4('0x4a')]?_0x4b71f7[_0x48d4('0x49')]:_0x107888[_0x48d4('0x44')];if(!_0x1f2365[_0x48d4('0x45')][_0x48d4('0x4b')](_0x48d4('0x4c'))){_0x4b71f7[_0x48d4('0x2f')]=qs[_0x48d4('0x2f')](_0x1f2365['query'][_0x48d4('0x2f')]);_0x4b71f7[_0x48d4('0x2e')]=qs[_0x48d4('0x2e')](_0x1f2365[_0x48d4('0x45')][_0x48d4('0x2e')]);}_0x4b71f7[_0x48d4('0x69')]=qs[_0x48d4('0x4d')](_0x1f2365['query'][_0x48d4('0x4d')]);_0x4b71f7[_0x48d4('0x4e')]=qs[_0x48d4('0x46')](_[_0x48d4('0x6a')](_0x1f2365[_0x48d4('0x45')],_0x107888[_0x48d4('0x46')]));_0x4b71f7[_0x48d4('0x4e')]['SmsAccountId']=_0x2815db['id'];if(_0x1f2365[_0x48d4('0x45')][_0x48d4('0x4f')]){_0x4b71f7[_0x48d4('0x4e')]=_['merge'](_0x4b71f7['where'],{'$or':_['map'](_0x4b71f7['attributes'],function(_0x3a0298){var _0x30bead={};_0x30bead[_0x3a0298]={'$like':'%'+_0x1f2365[_0x48d4('0x45')][_0x48d4('0x4f')]+'%'};return _0x30bead;})});}_0x4b71f7=_[_0x48d4('0x50')]({},_0x4b71f7,_0x1f2365['options']);return db[_0x48d4('0x66')]['count']({'where':_0x4b71f7[_0x48d4('0x4e')]})[_0x48d4('0x20')](function(_0x138ff6){_0x2a4a4d[_0x48d4('0x30')]=_0x138ff6;if(_0x1f2365[_0x48d4('0x45')][_0x48d4('0x53')]){_0x4b71f7['include']=[{'all':!![]}];}return db[_0x48d4('0x66')][_0x48d4('0x55')](_0x4b71f7);})[_0x48d4('0x20')](function(_0xd65348){_0x2a4a4d[_0x48d4('0x56')]=_0xd65348;return _0x2a4a4d;});}})[_0x48d4('0x20')](respondWithFilteredResult(_0x3b02bc,_0x4b71f7))[_0x48d4('0x2a')](handleError(_0x3b02bc,null));};exports[_0x48d4('0x6b')]=function(_0x2922bb,_0x270387,_0x4f57ea){return db[_0x48d4('0x40')][_0x48d4('0x5a')]({'where':{'id':_0x2922bb[_0x48d4('0x58')]['id']}})[_0x48d4('0x20')](handleEntityNotFound(_0x270387,null))[_0x48d4('0x20')](function(_0x2cdff6){if(_0x2cdff6){return _0x2cdff6[_0x48d4('0x6b')](_0x2922bb[_0x48d4('0x45')][_0x48d4('0x6c')]);}})[_0x48d4('0x20')](respondWithStatusCode(_0x270387,null))[_0x48d4('0x2a')](handleError(_0x270387,null));};exports[_0x48d4('0x6d')]=function(_0x7bd215,_0x372dea,_0x53a54f){if(_0x7bd215[_0x48d4('0x5c')]['id']){delete _0x7bd215[_0x48d4('0x5c')]['id'];}return db[_0x48d4('0x40')]['find']({'where':{'id':_0x7bd215[_0x48d4('0x58')]['id']}})[_0x48d4('0x20')](handleEntityNotFound(_0x372dea,null))['then'](function(_0x2eb916){if(_0x2eb916){_0x7bd215[_0x48d4('0x5c')][_0x48d4('0x65')]=_0x2eb916['id'];return db['CannedAnswer']['create'](_0x7bd215[_0x48d4('0x5c')]);}})[_0x48d4('0x20')](respondWithResult(_0x372dea,null))[_0x48d4('0x2a')](handleError(_0x372dea,null));};exports[_0x48d4('0x6e')]=function(_0xa0625c,_0x5cf7c9,_0x582051){var _0x164953={'raw':![],'where':{}};var _0x2e6f0d={};var _0x2242b9={'count':0x0,'rows':[]};return db[_0x48d4('0x40')][_0x48d4('0x68')]({'where':{'id':_0xa0625c[_0x48d4('0x58')]['id']}})['then'](handleEntityNotFound(_0x5cf7c9,null))[_0x48d4('0x20')](function(_0x217fa2){if(_0x217fa2){_0x2e6f0d['model']=_[_0x48d4('0x59')](db[_0x48d4('0x6f')][_0x48d4('0x41')]);_0x2e6f0d[_0x48d4('0x45')]=_['keys'](_0xa0625c[_0x48d4('0x45')]);_0x2e6f0d[_0x48d4('0x46')]=_[_0x48d4('0x47')](_0x2e6f0d[_0x48d4('0x44')],_0x2e6f0d[_0x48d4('0x45')]);_0x164953[_0x48d4('0x49')]=_[_0x48d4('0x47')](_0x2e6f0d[_0x48d4('0x44')],qs[_0x48d4('0x48')](_0xa0625c[_0x48d4('0x45')][_0x48d4('0x48')]));_0x164953['attributes']=_0x164953[_0x48d4('0x49')]['length']?_0x164953[_0x48d4('0x49')]:_0x2e6f0d['model'];if(!_0xa0625c[_0x48d4('0x45')][_0x48d4('0x4b')](_0x48d4('0x4c'))){_0x164953['limit']=qs['limit'](_0xa0625c[_0x48d4('0x45')]['limit']);_0x164953[_0x48d4('0x2e')]=qs[_0x48d4('0x2e')](_0xa0625c[_0x48d4('0x45')][_0x48d4('0x2e')]);}_0x164953[_0x48d4('0x69')]=qs['sort'](_0xa0625c['query']['sort']);_0x164953[_0x48d4('0x4e')]=qs[_0x48d4('0x46')](_['pick'](_0xa0625c[_0x48d4('0x45')],_0x2e6f0d['filters']));_0x164953[_0x48d4('0x4e')]['SmsAccountId']=_0x217fa2['id'];if(_0xa0625c[_0x48d4('0x45')][_0x48d4('0x4f')]){_0x164953[_0x48d4('0x4e')]=_[_0x48d4('0x50')](_0x164953['where'],{'$or':_[_0x48d4('0x3f')](_0x164953[_0x48d4('0x49')],function(_0xbfec01){var _0x10c08c={};_0x10c08c[_0xbfec01]={'$like':'%'+_0xa0625c[_0x48d4('0x45')][_0x48d4('0x4f')]+'%'};return _0x10c08c;})});}_0x164953=_['merge']({},_0x164953,_0xa0625c['options']);return db[_0x48d4('0x6f')][_0x48d4('0x30')]({'where':_0x164953[_0x48d4('0x4e')]})[_0x48d4('0x20')](function(_0xa322f7){_0x2242b9['count']=_0xa322f7;if(_0xa0625c[_0x48d4('0x45')][_0x48d4('0x53')]){_0x164953['include']=[{'all':!![]}];}return db['CannedAnswer'][_0x48d4('0x55')](_0x164953);})[_0x48d4('0x20')](function(_0x54af7b){_0x2242b9[_0x48d4('0x56')]=_0x54af7b;return _0x2242b9;});}})[_0x48d4('0x20')](respondWithFilteredResult(_0x5cf7c9,_0x164953))[_0x48d4('0x2a')](handleError(_0x5cf7c9,null));};exports[_0x48d4('0x70')]=function(_0xb8f187,_0x30648c,_0x198cd1){return db[_0x48d4('0x40')][_0x48d4('0x5a')]({'where':{'id':_0xb8f187[_0x48d4('0x58')]['id']}})[_0x48d4('0x20')](handleEntityNotFound(_0x30648c,null))[_0x48d4('0x20')](function(_0x4ca773){if(_0x4ca773){return _0x4ca773['removeAnswers'](_0xb8f187[_0x48d4('0x45')][_0x48d4('0x6c')]);}})[_0x48d4('0x20')](respondWithStatusCode(_0x30648c,null))[_0x48d4('0x2a')](handleError(_0x30648c,null));};exports[_0x48d4('0x71')]=function(_0x1d51f2,_0x1f6203,_0x2e63cb){var _0x1a9730={'channel':_0x48d4('0x72')};var _0x1c5728=[];var _0xf591b2=[];var _0x2d0592={};return db[_0x48d4('0x40')][_0x48d4('0x5a')]({'where':{'id':_0x1d51f2['params']['id']},'include':[{'model':db['SmsApplication'],'as':_0x48d4('0x73')}]})[_0x48d4('0x20')](handleEntityNotFound(_0x1f6203,null))['then'](function(_0x51a618){_0x1a9730[_0x48d4('0x74')]=_0x51a618;_0x1a9730['applications']=_[_0x48d4('0x75')](_0x51a618[_0x48d4('0x73')],[_0x48d4('0x76')],[_0x48d4('0x77')]);if(_0x1a9730[_0x48d4('0x74')][_0x48d4('0x73')]){delete _0x1a9730[_0x48d4('0x74')][_0x48d4('0x73')];}return db[_0x48d4('0x78')][_0x48d4('0x79')]();})[_0x48d4('0x20')](function(_0x1296c1){if(!_0x1296c1){throw new db[(_0x48d4('0x7a'))][(_0x48d4('0x7b'))](_0x48d4('0x7c'));}_0x1c5728=_[_0x48d4('0x7d')](_['keys'](_0x1296c1),[_0x48d4('0x7e'),_0x48d4('0x7f')]);_0xf591b2=_[_0x48d4('0x7d')](_[_0x48d4('0x59')](_0x1296c1),[_0x48d4('0x7e'),_0x48d4('0x7f'),_0x48d4('0x80'),_0x48d4('0x81')]);_0x1a9730[_0x48d4('0x5c')]={'mapKey':_0x48d4('0x82')};if(_0x1a9730[_0x48d4('0x74')][_0x48d4('0x42')]){switch(_0x1a9730['account'][_0x48d4('0x42')]){case _0x48d4('0x83'):_0x1a9730['body'][_0x48d4('0x84')]=_0x1d51f2[_0x48d4('0x5c')][_0x48d4('0x85')];_0x1a9730[_0x48d4('0x5c')][_0x48d4('0x5c')]=_0x1d51f2['body'][_0x48d4('0x86')];_0x1a9730[_0x48d4('0x5c')][_0x48d4('0x87')]=_0x1d51f2[_0x48d4('0x5c')]['MessageSid'];break;case _0x48d4('0x88'):_0x1a9730[_0x48d4('0x5c')][_0x48d4('0x84')]='+'+_0x1d51f2['body'][_0x48d4('0x89')];_0x1a9730['body'][_0x48d4('0x5c')]=_0x1d51f2[_0x48d4('0x5c')][_0x48d4('0x8a')];break;case _0x48d4('0x8b'):_0x1a9730['body'][_0x48d4('0x84')]=_0x1d51f2[_0x48d4('0x5c')]['from'];_0x1a9730[_0x48d4('0x5c')][_0x48d4('0x5c')]=_0x1d51f2[_0x48d4('0x5c')][_0x48d4('0x28')];break;case _0x48d4('0x8c'):_0x1a9730[_0x48d4('0x5c')][_0x48d4('0x84')]=_0x1d51f2[_0x48d4('0x5c')][_0x48d4('0x84')];_0x1a9730['body'][_0x48d4('0x5c')]=_0x1d51f2[_0x48d4('0x5c')][_0x48d4('0x5c')];_0x1a9730['body'][_0x48d4('0x87')]=_0x1d51f2[_0x48d4('0x5c')]['message_id'];break;case _0x48d4('0x8d'):_0x1a9730[_0x48d4('0x5c')][_0x48d4('0x84')]=_0x1d51f2[_0x48d4('0x5c')][_0x48d4('0x85')];_0x1a9730[_0x48d4('0x5c')][_0x48d4('0x5c')]=_0x1d51f2['body'][_0x48d4('0x8e')];_0x1a9730[_0x48d4('0x5c')][_0x48d4('0x87')]=_0x1d51f2[_0x48d4('0x5c')]['MessageUUID'];break;case _0x48d4('0x8f'):_0x1a9730[_0x48d4('0x5c')][_0x48d4('0x84')]='+'+_0x1d51f2['body'][_0x48d4('0x90')][0x0][_0x48d4('0x84')];_0x1a9730['body'][_0x48d4('0x5c')]=_0x1d51f2['body'][_0x48d4('0x90')][0x0][_0x48d4('0x8a')];_0x1a9730[_0x48d4('0x5c')][_0x48d4('0x87')]=_0x1d51f2['body'][_0x48d4('0x90')][0x0][_0x48d4('0x87')];break;case _0x48d4('0x91'):_0x1a9730[_0x48d4('0x5c')][_0x48d4('0x84')]=_0x1d51f2['body'][_0x48d4('0x92')];_0x1a9730[_0x48d4('0x5c')]['body']=_0x1d51f2['body'][_0x48d4('0x93')][_0x48d4('0x28')];break;case _0x48d4('0x94'):_0x1a9730[_0x48d4('0x5c')][_0x48d4('0x84')]=_0x1d51f2[_0x48d4('0x5c')][_0x48d4('0x95')];_0x1a9730[_0x48d4('0x5c')][_0x48d4('0x5c')]=_0x1d51f2[_0x48d4('0x5c')][_0x48d4('0x8a')];_0x1a9730['body'][_0x48d4('0x87')]=_0x1d51f2[_0x48d4('0x5c')][_0x48d4('0x96')];break;case _0x48d4('0x97'):_0x1a9730['body']['messageId']=_0x1d51f2['body'][0x0][_0x48d4('0x28')]['id'];_0x1a9730[_0x48d4('0x5c')]['from']=_0x1d51f2[_0x48d4('0x5c')][0x0][_0x48d4('0x28')][_0x48d4('0x84')];_0x1a9730[_0x48d4('0x5c')][_0x48d4('0x5c')]=_0x1d51f2[_0x48d4('0x5c')][0x0][_0x48d4('0x28')][_0x48d4('0x8a')];break;case'intelepeer':_0x1a9730[_0x48d4('0x5c')][_0x48d4('0x84')]=_0x1d51f2[_0x48d4('0x5c')][_0x48d4('0x84')];_0x1a9730[_0x48d4('0x5c')][_0x48d4('0x5c')]=_0x1d51f2[_0x48d4('0x5c')][_0x48d4('0x28')];_0x1a9730['body'][_0x48d4('0x87')]=_0x1d51f2[_0x48d4('0x5c')][_0x48d4('0x98')];break;}}if(_0x1a9730[_0x48d4('0x5c')]['id']){delete _0x1a9730['body']['id'];}if(_[_0x48d4('0x99')](_0x1a9730[_0x48d4('0x5c')][_0x48d4('0x84')])){throw new db['Sequelize'][(_0x48d4('0x7b'))](_0x48d4('0x9a'));}if(_[_0x48d4('0x99')](_0x1a9730[_0x48d4('0x5c')][_0x48d4('0x5c')])||_0x1a9730[_0x48d4('0x5c')][_0x48d4('0x5c')]===''){throw new db['Sequelize']['ValidationError'](_0x48d4('0x9b'));}if(_[_0x48d4('0x99')](_0x1a9730[_0x48d4('0x5c')][_0x48d4('0x9c')])){throw new db['Sequelize'][(_0x48d4('0x7b'))](_0x48d4('0x9d')+_0xf591b2);}if(!_[_0x48d4('0x9e')](_0xf591b2,_0x1a9730[_0x48d4('0x5c')][_0x48d4('0x9c')])){throw new db[(_0x48d4('0x7a'))][(_0x48d4('0x7b'))]('mapKey\x20invalid,\x20please\x20use\x20one\x20of\x20these:\x20'+_0xf591b2);}_0x2d0592[_0x1a9730[_0x48d4('0x5c')][_0x48d4('0x9c')]]=_0x1a9730[_0x48d4('0x5c')][_0x48d4('0x84')];return db[_0x48d4('0x9f')][_0x48d4('0x5a')]({'where':{'id':_0x1a9730[_0x48d4('0x74')][_0x48d4('0x81')]},'include':[{'model':db[_0x48d4('0x78')],'as':_0x48d4('0xa0'),'where':_0x2d0592,'limit':0x1,'order':[['updatedAt',_0x48d4('0xa1')]]}]});})[_0x48d4('0x20')](handleEntityNotFound(_0x1f6203,null))[_0x48d4('0x20')](function(_0x331ccc){if(_0x331ccc){_0x1a9730[_0x48d4('0xa2')]=_[_0x48d4('0xa3')](_0x331ccc,[_0x48d4('0xa0')]);if(_0x331ccc[_0x48d4('0xa0')][_0x48d4('0x4a')]){return _0x331ccc[_0x48d4('0xa0')][0x0];}var _0x46f1c5=_['defaults'](_0x1a9730[_0x48d4('0x5c')],{'firstName':_0x1a9730[_0x48d4('0x5c')][_0x48d4('0x84')],'ListId':_0x331ccc['id']});_0x46f1c5[_0x1a9730['body']['mapKey']]=_0x1a9730[_0x48d4('0x5c')]['from'];return db[_0x48d4('0x78')][_0x48d4('0x5b')](_0x46f1c5,{'fields':_0x1c5728,'raw':!![]});}})['then'](handleEntityNotFound(_0x1f6203,null))[_0x48d4('0x20')](function(_0x3fcf5e){if(_0x3fcf5e){_0x1a9730['contact']=_0x3fcf5e;var _0x35d18b={'ContactId':_0x3fcf5e['id'],'phone':_0x1a9730[_0x48d4('0x5c')][_0x48d4('0x84')],'SmsAccountId':_0x1d51f2[_0x48d4('0x58')]['id']};var _0x5e4e50={'ContactId':_0x3fcf5e['id'],'SmsAccountId':_0x1d51f2[_0x48d4('0x58')]['id'],'closed':![]};return db[_0x48d4('0xa4')][_0x48d4('0x5a')]({'where':_0x5e4e50})[_0x48d4('0x20')](function(_0x22de15){if(_0x22de15){return[_0x22de15,![]];}return db[_0x48d4('0xa4')][_0x48d4('0x5b')](_0x35d18b)[_0x48d4('0x20')](function(_0x5d2715){return[_0x5d2715,!![]];});});}})[_0x48d4('0xa5')](function(_0x21ecec,_0xd8fc12){_0x1a9730['interaction']=_0x21ecec[_0x48d4('0x38')]({'plain':!![]});_0x1a9730[_0x48d4('0xa6')][_0x48d4('0xa7')]=![];if(_0xd8fc12){if(_0x1a9730[_0x48d4('0x74')][_0x48d4('0xa8')]){_0x1a9730[_0x48d4('0xa9')][_0x48d4('0xaa')]({'id':0x0,'priority':_0x1a9730[_0x48d4('0xa9')][_0x48d4('0x4a')]+0x1,'app':_0x48d4('0xab'),'appdata':_0x48d4('0xac'),'interval':_0x48d4('0xad')});}_0x1a9730[_0x48d4('0xa6')][_0x48d4('0xa7')]=!![];}return db[_0x48d4('0xae')][_0x48d4('0x5b')]({'phone':_0x1a9730[_0x48d4('0x5c')][_0x48d4('0x84')],'messageId':_0x1a9730['body']['messageId'],'body':_0x1a9730[_0x48d4('0x5c')][_0x48d4('0x5c')],'SmsAccountId':_0x1d51f2[_0x48d4('0x58')]['id'],'SmsInteractionId':_0x21ecec['id'],'direction':'in','ContactId':_0x21ecec['ContactId'],'AttachmentId':_0x1a9730[_0x48d4('0x5c')]['AttachmentId']});})[_0x48d4('0x20')](function(_0x88014f){_0x1a9730['message']=_0x88014f;if(_0x1a9730[_0x48d4('0xa6')][_0x48d4('0xaf')]){return db[_0x48d4('0xb0')][_0x48d4('0x5a')]({'attributes':['id',_0x48d4('0x3c')],'where':{'id':_0x1a9730[_0x48d4('0xa6')][_0x48d4('0xaf')]}})[_0x48d4('0x20')](function(_0x31b300){if(_0x31b300){_0x1a9730[_0x48d4('0xa9')][_0x48d4('0xb1')]({'id':0x0,'priority':0x0,'app':_0x48d4('0xb2'),'appdata':_0x31b300[_0x48d4('0x3c')]+','+(_0x1a9730[_0x48d4('0x74')][_0x48d4('0xb3')]||0xa),'interval':_0x48d4('0xad')});}return respondWithRpcPromise(_0x48d4('0xb4'),'startRouting',_0x1a9730);});}return respondWithRpcPromise('Start',_0x48d4('0xb5'),_0x1a9730);})[_0x48d4('0x20')](function(_0x24f067){if(_0x24f067){var _0xe164ce=0xc8;var _0x281ce6=_0x48d4('0xb6');logger['info'](_0x48d4('0x24'),_0x281ce6,_0xe164ce,_0x48d4('0xb7'));logger[_0x48d4('0xb8')]('SmsAccount,\x20%s,\x20%s,\x20%s,\x20%s',_0x281ce6,_0xe164ce,_0x48d4('0xb7'),JSON[_0x48d4('0x25')](_0x24f067));if(_0x1a9730[_0x48d4('0x74')]['type']===_0x48d4('0x83')){return _0x1f6203[_0x48d4('0x2b')](_0xe164ce)[_0x48d4('0x31')](_0x48d4('0xb9'),_0x48d4('0xba'))[_0x48d4('0xbb')]('<?xml\x20version=\x221.0\x22\x20encoding=\x22UTF-8\x22?>\x0a<Response></Response>');}else{return _0x1f6203[_0x48d4('0x2b')](_0xe164ce)[_0x48d4('0x2d')](_0x24f067);}}})[_0x48d4('0x2a')](handleError(_0x1f6203,null));};exports[_0x48d4('0xbc')]=function(_0xec4ae3,_0x402900){var _0x5d3173=_0xec4ae3[_0x48d4('0x58')]['id'];var _0x42d86c=_0xec4ae3[_0x48d4('0x5c')];var _0x2e7503=0xc8;var _0x4dc6b3=null;return db[_0x48d4('0xbd')][_0x48d4('0xbe')]({'isolationLevel':db[_0x48d4('0xbd')]['Transaction'][_0x48d4('0xbf')][_0x48d4('0xc0')]},function(_0xd37bac){return db['SmsAccount'][_0x48d4('0x68')]({'where':{'id':_0x5d3173},'transaction':_0xd37bac})['then'](function(_0x45b7bb){if(_0x45b7bb){return db[_0x48d4('0xc1')]['destroy']({'where':{'SmsAccountId':_0x5d3173},'transaction':_0xd37bac})['then'](function(){var _0x242c3d=_[_0x48d4('0x3f')](_0x42d86c,function(_0x2aeed8){_0x2aeed8[_0x48d4('0x65')]=_0x5d3173;return _0x2aeed8;});return db[_0x48d4('0xc1')][_0x48d4('0xc2')](_0x242c3d,{'transaction':_0xd37bac});});}else{_0x2e7503=0x194;_0x4dc6b3=[];}});})[_0x48d4('0x20')](function(){if(_0x2e7503!==0x194){return db['SmsApplication'][_0x48d4('0xc3')]({'where':{'SmsAccountId':_0x5d3173},'order':'priority'})[_0x48d4('0x20')](function(_0x1d94ff){_0x4dc6b3=_0x1d94ff;});}})[_0x48d4('0x2a')](function(_0x582a88){_0x2e7503=0x1f4;logger['error'](_0x582a88[_0x48d4('0x3b')]);if(_0x582a88[_0x48d4('0x3c')]){delete _0x582a88[_0x48d4('0x3c')];}_0x4dc6b3=_0x582a88;})[_0x48d4('0xc4')](function(){if(_0x4dc6b3===null){_0x402900[_0x48d4('0x3a')](_0x2e7503);}else{if(_0x2e7503===0x1f4){_0x402900[_0x48d4('0x2b')](_0x2e7503)[_0x48d4('0xbb')](_0x4dc6b3);}else{_0x402900[_0x48d4('0x2b')](_0x2e7503)[_0x48d4('0x2d')](_0x4dc6b3);}}});};exports[_0x48d4('0xc5')]=function(_0x9c094c,_0x171e17,_0x46a188){var _0x3b716a={};var _0x314067={};var _0x493ce1;var _0x41da2e;return db['SmsAccount']['findOne']({'where':{'id':_0x9c094c['params']['id']}})[_0x48d4('0x20')](handleEntityNotFound(_0x171e17,null))[_0x48d4('0x20')](function(_0x10f1ca){if(_0x10f1ca){_0x493ce1=_0x10f1ca;_0x314067[_0x48d4('0x44')]=_['keys'](db[_0x48d4('0xc1')]['rawAttributes']);_0x314067[_0x48d4('0x45')]=_[_0x48d4('0x59')](_0x9c094c['query']);_0x314067[_0x48d4('0x46')]=_[_0x48d4('0x47')](_0x314067['model'],_0x314067['query']);_0x3b716a[_0x48d4('0x49')]=_[_0x48d4('0x47')](_0x314067[_0x48d4('0x44')],qs[_0x48d4('0x48')](_0x9c094c['query'][_0x48d4('0x48')]));_0x3b716a[_0x48d4('0x49')]=_0x3b716a['attributes']['length']?_0x3b716a['attributes']:_0x314067[_0x48d4('0x44')];_0x3b716a[_0x48d4('0x69')]=qs[_0x48d4('0x4d')](_0x9c094c[_0x48d4('0x45')][_0x48d4('0x4d')]);_0x3b716a[_0x48d4('0x4e')]=qs[_0x48d4('0x46')](_[_0x48d4('0x6a')](_0x9c094c['query'],_0x314067[_0x48d4('0x46')]));if(_0x9c094c[_0x48d4('0x45')]['filter']){_0x3b716a[_0x48d4('0x4e')]=_['merge'](_0x3b716a[_0x48d4('0x4e')],{'$or':_[_0x48d4('0x3f')](_0x3b716a[_0x48d4('0x49')],function(_0x341ddf){var _0x18fbad={};_0x18fbad[_0x341ddf]={'$like':'%'+_0x9c094c[_0x48d4('0x45')]['filter']+'%'};return _0x18fbad;})});}_0x3b716a=_[_0x48d4('0x50')]({},_0x3b716a,_0x9c094c[_0x48d4('0x52')]);return _0x493ce1[_0x48d4('0xc5')](_0x3b716a);}})['then'](function(_0x878f9d){if(_0x878f9d){_0x41da2e=_0x878f9d[_0x48d4('0x4a')];if(!_0x9c094c['query'][_0x48d4('0x4b')](_0x48d4('0x4c'))){_0x3b716a['limit']=qs[_0x48d4('0x2f')](_0x9c094c[_0x48d4('0x45')][_0x48d4('0x2f')]);_0x3b716a[_0x48d4('0x2e')]=qs[_0x48d4('0x2e')](_0x9c094c['query']['offset']);}return _0x493ce1['getApplications'](_0x3b716a);}})[_0x48d4('0x20')](function(_0x1c845b){if(_0x1c845b){return _0x1c845b?{'count':_0x41da2e,'rows':_0x1c845b}:null;}})[_0x48d4('0x20')](respondWithResult(_0x171e17,null))[_0x48d4('0x2a')](handleError(_0x171e17,null));};exports['getInteractions']=function(_0x20a953,_0x16394b,_0x3a115c){var _0x6984c6={'raw':![],'where':{}};var _0x26000e={};var _0x129e95={'count':0x0,'rows':[]};return db[_0x48d4('0x40')][_0x48d4('0x68')]({'where':{'id':_0x20a953[_0x48d4('0x58')]['id']}})['then'](handleEntityNotFound(_0x16394b,null))[_0x48d4('0x20')](function(_0x38df19){if(_0x38df19){_0x26000e['model']=_[_0x48d4('0x59')](db[_0x48d4('0xa4')][_0x48d4('0x41')]);_0x26000e['query']=_['keys'](_0x20a953[_0x48d4('0x45')]);_0x26000e['filters']=_[_0x48d4('0x47')](_0x26000e['model'],_0x26000e[_0x48d4('0x45')]);_0x6984c6[_0x48d4('0x49')]=_['intersection'](_0x26000e[_0x48d4('0x44')],qs[_0x48d4('0x48')](_0x20a953[_0x48d4('0x45')][_0x48d4('0x48')]));_0x6984c6[_0x48d4('0x49')]=_0x6984c6[_0x48d4('0x49')][_0x48d4('0x4a')]?_0x6984c6[_0x48d4('0x49')]:_0x26000e[_0x48d4('0x44')];if(!_0x20a953[_0x48d4('0x45')]['hasOwnProperty'](_0x48d4('0x4c'))){_0x6984c6[_0x48d4('0x2f')]=qs['limit'](_0x20a953[_0x48d4('0x45')][_0x48d4('0x2f')]);_0x6984c6[_0x48d4('0x2e')]=qs[_0x48d4('0x2e')](_0x20a953[_0x48d4('0x45')]['offset']);}_0x6984c6[_0x48d4('0x69')]=qs[_0x48d4('0x4d')](_0x20a953[_0x48d4('0x45')]['sort']);_0x6984c6[_0x48d4('0x4e')]=qs[_0x48d4('0x46')](_[_0x48d4('0x6a')](_0x20a953[_0x48d4('0x45')],_0x26000e[_0x48d4('0x46')]));_0x6984c6[_0x48d4('0x4e')]['SmsAccountId']=_0x38df19['id'];if(_0x20a953[_0x48d4('0x45')]['filter']){_0x6984c6[_0x48d4('0x4e')]=_['merge'](_0x6984c6[_0x48d4('0x4e')],{'$or':_[_0x48d4('0x3f')](_0x6984c6['attributes'],function(_0x245ae9){var _0x1792f8={};_0x1792f8[_0x245ae9]={'$like':'%'+_0x20a953[_0x48d4('0x45')]['filter']+'%'};return _0x1792f8;})});}_0x6984c6=_['merge']({},_0x6984c6,_0x20a953['options']);return db[_0x48d4('0xa4')][_0x48d4('0x30')]({'where':_0x6984c6[_0x48d4('0x4e')]})[_0x48d4('0x20')](function(_0xf7dcc4){_0x129e95[_0x48d4('0x30')]=_0xf7dcc4;if(_0x20a953[_0x48d4('0x45')]['includeAll']){_0x6984c6[_0x48d4('0x54')]=[{'model':db['CmContact'],'as':_0x48d4('0xc6'),'required':![]},{'model':db[_0x48d4('0xb0')],'as':_0x48d4('0xc7'),'attributes':[_0x48d4('0x3c'),'fullname','internal'],'required':![]},{'model':db[_0x48d4('0xc8')],'as':_0x48d4('0xc9'),'attributes':['id','name',_0x48d4('0xca')],'where':_0x20a953['query'][_0x48d4('0xcb')]?{'id':_0x20a953[_0x48d4('0x45')][_0x48d4('0xcb')]}:undefined,'required':_0x20a953[_0x48d4('0x45')][_0x48d4('0xcb')]?!![]:![]}];}return db[_0x48d4('0xa4')][_0x48d4('0x55')](_0x6984c6);})[_0x48d4('0x20')](function(_0x2cae2a){_0x129e95[_0x48d4('0x56')]=_0x2cae2a;return _0x129e95;});}})[_0x48d4('0x20')](respondWithFilteredResult(_0x16394b,_0x6984c6))[_0x48d4('0x2a')](handleError(_0x16394b,null));};exports['send']=function(_0x145256,_0x3a6902,_0x1e156e){var _0x528d4a,_0x30405a,_0x306f89;if(_[_0x48d4('0x99')](_0x145256[_0x48d4('0x5c')][_0x48d4('0x5c')])||_0x145256[_0x48d4('0x5c')][_0x48d4('0x5c')]===''){throw new db[(_0x48d4('0x7a'))][(_0x48d4('0x7b'))](_0x48d4('0x9b'));}if(_[_0x48d4('0x99')](_0x145256[_0x48d4('0x5c')]['to'])){throw new db[(_0x48d4('0x7a'))][(_0x48d4('0x7b'))]('to\x20is\x20mandatory');}_0x528d4a=_0x145256[_0x48d4('0x5c')]['to'];return db[_0x48d4('0x40')][_0x48d4('0x5a')]({'where':{'id':_0x145256[_0x48d4('0x58')]['id']},'include':[{'model':db[_0x48d4('0x9f')],'as':_0x48d4('0xcc'),'include':[{'model':db['CmContact'],'as':_0x48d4('0xa0'),'where':{'mobile':_0x528d4a},'limit':0x1,'order':[[_0x48d4('0x7f'),'DESC']]}]}]})['then'](handleEntityNotFound(_0x3a6902,null))[_0x48d4('0x20')](function(_0x2a5a01){if(_0x2a5a01&&_0x2a5a01[_0x48d4('0xcc')]){_0x30405a=_0x2a5a01[_0x48d4('0x38')]({'plain':!![]});if(_0x30405a[_0x48d4('0xcc')]&&_0x30405a[_0x48d4('0xcc')]['Contacts']['length']){return _0x30405a['List'][_0x48d4('0xa0')][0x0];}return db[_0x48d4('0x78')][_0x48d4('0x5b')](_[_0x48d4('0x18')](_0x145256['body'],{'firstName':_0x528d4a,'mobile':_0x528d4a,'phone':_0x528d4a,'ListId':_0x30405a[_0x48d4('0x81')]}));}})[_0x48d4('0x20')](handleEntityNotFound(_0x3a6902,null))[_0x48d4('0x20')](function(_0x456e03){if(_0x456e03){_0x306f89=_0x456e03;return db[_0x48d4('0xa4')][_0x48d4('0x5a')]({'where':{'ContactId':_0x306f89['id'],'closed':![],'SmsAccountId':_0x30405a['id']}})[_0x48d4('0x20')](function(_0xf6f55){if(_0xf6f55){return[_0xf6f55,![]];}return db[_0x48d4('0xa4')][_0x48d4('0x5b')]({'UserId':_0x145256['user']['id'],'ContactId':_0x306f89['id'],'SmsAccountId':_0x30405a['id'],'phone':_0x528d4a,'firstMsgDirection':'out','Messages':[_[_0x48d4('0x50')](_0x145256[_0x48d4('0x5c')],{'read':![],'body':_0x145256[_0x48d4('0x5c')][_0x48d4('0x5c')],'phone':_0x528d4a,'SmsAccountId':_0x30405a['id'],'UserId':_0x145256[_0x48d4('0x5d')]['id'],'ContactId':_0x306f89['id']})]},{'include':[{'model':db['SmsMessage'],'as':_0x48d4('0xcd')}]})[_0x48d4('0x20')](function(_0x38a401){return[_0x38a401,!![]];});});}})[_0x48d4('0xa5')](function(_0x552378,_0x5ed02c){if(_0x5ed02c){return _0x552378;}return db[_0x48d4('0xae')]['create'](_['merge'](_0x145256[_0x48d4('0x5c')],{'read':![],'body':_0x145256[_0x48d4('0x5c')][_0x48d4('0x5c')],'phone':_0x528d4a,'SmsAccountId':_0x30405a['id'],'SmsInteractionId':_0x552378['id'],'UserId':_0x145256[_0x48d4('0x5d')]['id'],'ContactId':_0x306f89['id']}))[_0x48d4('0x20')](function(_0x3d3286){_0x552378[_0x48d4('0xce')]['Messages']=[];_0x552378[_0x48d4('0xce')][_0x48d4('0xcd')][_0x48d4('0xaa')](_0x3d3286['dataValues']);return _0x552378;});})[_0x48d4('0x20')](respondWithResult(_0x3a6902,null))[_0x48d4('0x2a')](handleError(_0x3a6902,null));};exports['status']=function(_0x23b8c5,_0x40f63b,_0xc7535e){if(_0x23b8c5[_0x48d4('0x5c')]['id']){delete _0x23b8c5['body']['id'];}var _0x2ab9aa,_0x52dba9,_0x1ae089;return db[_0x48d4('0x40')][_0x48d4('0x5a')]({'where':{'id':_0x23b8c5[_0x48d4('0x58')]['id']}})[_0x48d4('0x20')](handleEntityNotFound(_0x40f63b,null))[_0x48d4('0x20')](function(_0x373d75){if(_0x373d75){_0x1ae089=_0x373d75;logger['debug'](_0x48d4('0x24'),_0x48d4('0x2b'),'received\x20delivery\x20report\x20from',_0x373d75['type'],util['inspect'](_0x23b8c5['body'],{'showHidden':![],'depth':null}));switch(_0x373d75[_0x48d4('0x42')]){case'skebby':if(_0x23b8c5[_0x48d4('0x5c')][_0x48d4('0xcf')]&&_0x23b8c5[_0x48d4('0x5c')][_0x48d4('0x2b')]){_0x52dba9=_0x23b8c5['body'][_0x48d4('0x2b')];return db[_0x48d4('0xae')][_0x48d4('0x5a')]({'where':{'messageId':_0x23b8c5[_0x48d4('0x5c')]['skebby_dispatch_id']}});}break;case _0x48d4('0x8b'):if(_0x23b8c5[_0x48d4('0x5c')]['requestid']&&_0x23b8c5[_0x48d4('0x5c')][_0x48d4('0xd0')]){_0x52dba9=_0x23b8c5['body'][_0x48d4('0xd0')];return db['SmsMessage'][_0x48d4('0x5a')]({'where':{'messageId':_0x23b8c5[_0x48d4('0x5c')]['requestid']}});}break;case _0x48d4('0x8c'):if(_0x23b8c5[_0x48d4('0x5c')][_0x48d4('0xd1')]&&_0x23b8c5[_0x48d4('0x5c')][_0x48d4('0xd2')]){_0x52dba9=_0x23b8c5[_0x48d4('0x5c')][_0x48d4('0xd2')];return db[_0x48d4('0xae')]['find']({'where':{'messageId':_0x23b8c5[_0x48d4('0x5c')]['message_id']}});}break;case _0x48d4('0x8f'):var _0x32ccf7=_0x23b8c5['body'][_0x48d4('0x90')][0x0];if(_0x32ccf7[_0x48d4('0x87')]&&_0x32ccf7['status']['groupName']===_0x48d4('0xd3')){_0x52dba9=_0x32ccf7[_0x48d4('0x2b')]['groupName'];return db[_0x48d4('0xae')][_0x48d4('0x5a')]({'where':{'messageId':_0x32ccf7[_0x48d4('0x87')]}});}break;case _0x48d4('0x94'):if(_0x23b8c5[_0x48d4('0x5c')][_0x48d4('0x87')]&&_0x23b8c5[_0x48d4('0x5c')][_0x48d4('0x2b')]){_0x52dba9=_0x23b8c5[_0x48d4('0x5c')][_0x48d4('0x2b')];return db[_0x48d4('0xae')][_0x48d4('0x5a')]({'where':{'messageId':_0x23b8c5[_0x48d4('0x5c')][_0x48d4('0x87')]}});}break;case _0x48d4('0x97'):if(_0x23b8c5['body'][0x0][_0x48d4('0x28')]['id']){_0x52dba9=_0x23b8c5[_0x48d4('0x5c')][0x0][_0x48d4('0x42')];return db[_0x48d4('0xae')][_0x48d4('0x5a')]({'where':{'messageId':_0x23b8c5[_0x48d4('0x5c')][0x0]['message']['id']}});}break;case _0x48d4('0xd4'):if(_0x23b8c5[_0x48d4('0x5c')][_0x48d4('0xd5')]&&_0x23b8c5['body'][_0x48d4('0x2b')]){_0x52dba9=_0x23b8c5['body'][_0x48d4('0x2b')];return db[_0x48d4('0xae')][_0x48d4('0x5a')]({'where':{'messageId':_0x23b8c5[_0x48d4('0x5c')][_0x48d4('0xd5')]}});}break;}}})['then'](handleEntityNotFound(_0x40f63b,null))[_0x48d4('0x20')](function(_0x8e9076){if(_0x8e9076){_0x2ab9aa=_0x8e9076;switch(_0x1ae089[_0x48d4('0x42')]){case _0x48d4('0x88'):if(_0x52dba9===_0x48d4('0xd3')){return _0x2ab9aa['update']({'read':!![]});}else{logger[_0x48d4('0x26')](_0x48d4('0x24'),_0x48d4('0x2b'),_0x48d4('0x88'),util['inspect'](_0x23b8c5['body'],{'showHidden':![],'depth':null}));}break;case _0x48d4('0x8b'):if(_0x52dba9==='1'){return _0x2ab9aa['update']({'read':!![]});}else{logger[_0x48d4('0x26')](_0x48d4('0x24'),'status',_0x48d4('0x88'),util[_0x48d4('0xd6')](_0x23b8c5[_0x48d4('0x5c')],{'showHidden':![],'depth':null}));}break;case _0x48d4('0x8c'):if(!_0x23b8c5['body'][_0x48d4('0xd7')]&&_0x52dba9>=0xc8&&_0x52dba9<=0xce){return _0x2ab9aa[_0x48d4('0x36')]({'read':!![]});}else{logger[_0x48d4('0x26')]('SmsAccount,\x20%s,\x20%s,\x20%s','status',_0x48d4('0x8c'),util[_0x48d4('0xd6')](_0x23b8c5[_0x48d4('0x5c')],{'showHidden':![],'depth':null}));}break;case _0x48d4('0x8f'):var _0x59fb6c=_0x23b8c5[_0x48d4('0x5c')][_0x48d4('0x90')][0x0];if(_0x59fb6c[_0x48d4('0x2b')][_0x48d4('0xd8')]===_0x48d4('0xd3')){return _0x2ab9aa['update']({'read':!![]});}else{logger[_0x48d4('0x26')](_0x48d4('0x24'),'status','infobip',util['inspect'](_0x23b8c5[_0x48d4('0x5c')],{'showHidden':![],'depth':null}));}break;case _0x48d4('0x94'):if(_0x52dba9==_0x48d4('0xd9')||_0x52dba9=='RECEIVED_BY_RECIPIENT'){return _0x2ab9aa[_0x48d4('0x36')]({'read':!![]});}else{logger[_0x48d4('0x26')](_0x48d4('0x24'),_0x48d4('0x2b'),_0x48d4('0x94'),util['inspect'](_0x23b8c5[_0x48d4('0x5c')],{'showHidden':![],'depth':null}));}break;case'bandwidth':if(_0x52dba9==_0x48d4('0xda')){return _0x2ab9aa[_0x48d4('0x36')]({'read':!![]});}else{logger[_0x48d4('0x26')](_0x48d4('0x24'),'status',_0x48d4('0x97'),util[_0x48d4('0xd6')](_0x23b8c5[_0x48d4('0x5c')],{'showHidden':![],'depth':null}));}break;case _0x48d4('0xd4'):if(_0x52dba9===_0x48d4('0xdb')||_0x52dba9===_0x48d4('0xdc')){return _0x2ab9aa[_0x48d4('0x36')]({'read':!![]});}else{logger['error'](_0x48d4('0x24'),_0x48d4('0x2b'),_0x48d4('0xd4'),util['inspect'](_0x23b8c5[_0x48d4('0x5c')],{'showHidden':![],'depth':null}));}break;}return _0x2ab9aa;}})[_0x48d4('0x20')](respondWithResult(_0x40f63b,null))[_0x48d4('0x2a')](handleError(_0x40f63b,null));};exports['statusGet']=function(_0xfc34fe,_0x30f8cf,_0x2d1078){var _0x3f79b7,_0x2ce135,_0x2ba074;return db[_0x48d4('0x40')][_0x48d4('0x5a')]({'where':{'id':_0xfc34fe['params']['id']}})['then'](handleEntityNotFound(_0x30f8cf,null))['then'](function(_0x3cad43){if(_0x3cad43){_0x2ba074=_0x3cad43;logger['debug']('SmsAccount,\x20%s,\x20%s,\x20%s',_0x48d4('0x2b'),_0x48d4('0xdd'),_0x3cad43['type'],util['inspect'](_0xfc34fe[_0x48d4('0x45')],{'showHidden':![],'depth':null}));switch(_0x3cad43['type']){case _0x48d4('0x91'):if(_0xfc34fe[_0x48d4('0x45')][_0x48d4('0xde')]&&_0xfc34fe[_0x48d4('0x45')][_0x48d4('0xdf')]){_0x2ce135=_0xfc34fe['query'][_0x48d4('0xdf')];return db[_0x48d4('0xae')][_0x48d4('0x5a')]({'where':{'messageId':_0xfc34fe['query']['message-id']}});}break;}}})[_0x48d4('0x20')](handleEntityNotFound(_0x30f8cf,null))[_0x48d4('0x20')](function(_0x51295b){if(_0x51295b){_0x3f79b7=_0x51295b;switch(_0x2ba074['type']){case'csc':if(_0x2ce135==='2'||_0x2ce135==='6'){return _0x3f79b7[_0x48d4('0x36')]({'read':!![]});}else{logger[_0x48d4('0x26')]('SmsAccount,\x20%s,\x20%s,\x20%s','status',_0x48d4('0x91'),util[_0x48d4('0xd6')](_0xfc34fe[_0x48d4('0x45')],{'showHidden':![],'depth':null}));};break;}return _0x3f79b7;}})[_0x48d4('0x20')](respondWithResult(_0x30f8cf,null))[_0x48d4('0x2a')](handleError(_0x30f8cf,null));};exports[_0x48d4('0xe0')]=function(_0x57564a,_0x3cfd92,_0x440fb9){return db['SmsAccount'][_0x48d4('0x5a')]({'where':{'id':_0x57564a[_0x48d4('0x58')]['id']}})[_0x48d4('0x20')](handleEntityNotFound(_0x3cfd92,null))[_0x48d4('0x20')](function(_0x417db2){if(_0x417db2){return _0x417db2[_0x48d4('0xe0')](_0x57564a[_0x48d4('0x5c')][_0x48d4('0x6c')],_[_0x48d4('0xa3')](_0x57564a[_0x48d4('0x5c')],[_0x48d4('0x6c'),'id'])||{})[_0x48d4('0xa5')](function(_0x1c84ff){for(var _0x23bca9=0x0;_0x23bca9<_0x57564a[_0x48d4('0x5c')][_0x48d4('0x6c')][_0x48d4('0x4a')];_0x23bca9+=0x1){socket[_0x48d4('0xe1')](_0x48d4('0xe2'),{'UserId':Number(_0x57564a[_0x48d4('0x5c')][_0x48d4('0x6c')][_0x23bca9]),'SmsAccountId':Number(_0x57564a[_0x48d4('0x58')]['id'])});}return _0x1c84ff;});}})['then'](respondWithResult(_0x3cfd92,null))[_0x48d4('0x2a')](handleError(_0x3cfd92,null));};exports[_0x48d4('0xe3')]=function(_0x4403ce,_0xdae808,_0x4a70b9){return db['SmsAccount']['find']({'where':{'id':_0x4403ce[_0x48d4('0x58')]['id']}})[_0x48d4('0x20')](handleEntityNotFound(_0xdae808,null))[_0x48d4('0x20')](function(_0x4a16ee){if(_0x4a16ee){return _0x4a16ee[_0x48d4('0xe3')](_0x4403ce[_0x48d4('0x45')][_0x48d4('0x6c')])[_0x48d4('0x20')](function(){if(_[_0x48d4('0xe4')](_0x4403ce[_0x48d4('0x45')][_0x48d4('0x6c')])){for(var _0x1445fa=0x0;_0x1445fa<_0x4403ce[_0x48d4('0x45')][_0x48d4('0x6c')][_0x48d4('0x4a')];_0x1445fa+=0x1){socket['emit'](_0x48d4('0xe5'),{'UserId':Number(_0x4403ce[_0x48d4('0x45')][_0x48d4('0x6c')][_0x1445fa]),'SmsAccountId':Number(_0x4403ce['params']['id'])});}}else{socket[_0x48d4('0xe1')](_0x48d4('0xe5'),{'UserId':Number(_0x4403ce[_0x48d4('0x45')][_0x48d4('0x6c')]),'SmsAccountId':Number(_0x4403ce['params']['id'])});}});}})[_0x48d4('0x20')](respondWithStatusCode(_0xdae808,null))[_0x48d4('0x2a')](handleError(_0xdae808,null));};exports['getAgents']=function(_0x6fb1a2,_0x52a6d7,_0x2e84fc){var _0x57edc8={};var _0x259229={};var _0x561bbe;var _0x480f1c;return db[_0x48d4('0x40')]['findOne']({'where':{'id':_0x6fb1a2['params']['id']}})[_0x48d4('0x20')](handleEntityNotFound(_0x52a6d7,null))[_0x48d4('0x20')](function(_0x3f37aa){if(_0x3f37aa){_0x561bbe=_0x3f37aa;_0x259229[_0x48d4('0x44')]=_[_0x48d4('0x59')](db[_0x48d4('0xb0')]['rawAttributes']);_0x259229[_0x48d4('0x45')]=_[_0x48d4('0x59')](_0x6fb1a2[_0x48d4('0x45')]);_0x259229['filters']=_['intersection'](_0x259229[_0x48d4('0x44')],_0x259229[_0x48d4('0x45')]);_0x57edc8['attributes']=_[_0x48d4('0x47')](_0x259229[_0x48d4('0x44')],qs[_0x48d4('0x48')](_0x6fb1a2[_0x48d4('0x45')]['fields']));_0x57edc8[_0x48d4('0x49')]=_0x57edc8[_0x48d4('0x49')][_0x48d4('0x4a')]?_0x57edc8[_0x48d4('0x49')]:_0x259229['model'];_0x57edc8['order']=qs[_0x48d4('0x4d')](_0x6fb1a2[_0x48d4('0x45')]['sort']);_0x57edc8[_0x48d4('0x4e')]=qs[_0x48d4('0x46')](_['pick'](_0x6fb1a2['query'],_0x259229['filters']));if(_0x6fb1a2[_0x48d4('0x45')]['filter']){_0x57edc8['where']=_[_0x48d4('0x50')](_0x57edc8[_0x48d4('0x4e')],{'$or':_['map'](_0x57edc8[_0x48d4('0x49')],function(_0x33bbf0){var _0x86ff72={};_0x86ff72[_0x33bbf0]={'$like':'%'+_0x6fb1a2[_0x48d4('0x45')]['filter']+'%'};return _0x86ff72;})});}_0x57edc8=_[_0x48d4('0x50')]({},_0x57edc8,_0x6fb1a2[_0x48d4('0x52')]);return _0x561bbe[_0x48d4('0xe6')](_0x57edc8);}})[_0x48d4('0x20')](function(_0x564210){if(_0x564210){_0x480f1c=_0x564210['length'];if(!_0x6fb1a2[_0x48d4('0x45')]['hasOwnProperty'](_0x48d4('0x4c'))){_0x57edc8[_0x48d4('0x2f')]=qs[_0x48d4('0x2f')](_0x6fb1a2[_0x48d4('0x45')][_0x48d4('0x2f')]);_0x57edc8['offset']=qs['offset'](_0x6fb1a2['query'][_0x48d4('0x2e')]);}return _0x561bbe['getAgents'](_0x57edc8);}})[_0x48d4('0x20')](function(_0x3b27aa){if(_0x3b27aa){return _0x3b27aa?{'count':_0x480f1c,'rows':_0x3b27aa}:null;}})[_0x48d4('0x20')](respondWithResult(_0x52a6d7,null))[_0x48d4('0x2a')](handleError(_0x52a6d7,null));};