68d8e6cb307c4cf8b81c4f57ab1683de10f34056
[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 _0x138d=['./smsAccount.socket','register','jayson/promise','client','http','request\x20sent','debug','SmsAccount,\x20%s,\x20%s,\x20%s','stringify','code','error','message','SmsAccount,\x20%s,\x20%s','result','catch','status','end','json','count','offset','limit','set','Content-Range','apply','reject','update','destroy','UserProfileResource','then','sendStatus','stack','name','index','Pause','mandatoryDispositionPause','SmsAccount','rawAttributes','fieldName','key','model','keys','query','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','filter','merge','where','map','type','VIRTUAL','options','includeAll','include','findAll','show','params','create','body','user','get','role','SmsAccounts','find','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','describe','addDisposition','SmsAccountId','Disposition','getDispositions','findOne','removeDispositions','ids','addAnswer','CannedAnswer','pick','removeAnswers','notify','sms','Applications','account','applications','orderBy','priority','asc','CmContact','Sequelize','ValidationError','no\x20available\x20attributes','updatedAt','difference','CompanyId','mobile','twilio','from','From','messageId','text','clicksend','message_id','plivo','Text','MessageUUID','infobip','results','csc','originatingAddress','segmentedMessage','clickatell','replyMessageId','intelepeer','isNil','from\x20is\x20mandatory','body\x20is\x20mandatory\x20and\x20not\x20empty','includes','mapKey','mapKey\x20invalid,\x20please\x20use\x20one\x20of\x20these:\x20','CmList','ListId','Contacts','list','omit','contact','spread','interaction','created','autoclose','push','close','*,*,*,*','AttachmentId','UserId','User','unshift','agent','waitForTheAssignedAgent','Start','startRouting','receiveMessage','info','entity\x20found','Content-Type','send','addApplications','sequelize','transaction','SmsApplication','bulkCreate','findAndCountAll','getApplications','getInteractions','SmsInteraction','Contact','Owner','fullname','internal','Tag','Tags','color','tag','rows','to\x20is\x20mandatory','List','DESC','Messages','SmsMessage','dataValues','received\x20delivery\x20report\x20from','inspect','skebby','skebby_dispatch_id','connectel','requestid','statusInt','status_code','groupName','DELIVERED','bandwidth','DELIVERED_TO_GATEWAY','RECEIVED_BY_RECIPIENT','message-delivered','ACCEPTD','state','message-id','addAgents','emit','userSmsAccount:save','removeAgents','getAgents','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','moment','bluebird','path','to-csv','ejs','squel','crypto','jsforce','querystring','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','defaults','redis','localhost','socket.io-emitter'];(function(_0x2b6798,_0x2163e6){var _0x4991ab=function(_0x4bc90a){while(--_0x4bc90a){_0x2b6798['push'](_0x2b6798['shift']());}};_0x4991ab(++_0x2163e6);}(_0x138d,0x1a5));var _0xd138=function(_0x56f7e2,_0x145392){_0x56f7e2=_0x56f7e2-0x0;var _0x36240b=_0x138d[_0x56f7e2];return _0x36240b;};'use strict';var pdf=require(_0xd138('0x0'));var emlformat=require(_0xd138('0x1'));var rimraf=require(_0xd138('0x2'));var zipdir=require(_0xd138('0x3'));var jsonpatch=require(_0xd138('0x4'));var rp=require('request-promise');var moment=require(_0xd138('0x5'));var BPromise=require(_0xd138('0x6'));var Mustache=require('mustache');var util=require('util');var path=require(_0xd138('0x7'));var sox=require('sox');var csv=require(_0xd138('0x8'));var ejs=require(_0xd138('0x9'));var fs=require('fs');var _=require('lodash');var squel=require(_0xd138('0xa'));var crypto=require(_0xd138('0xb'));var jsforce=require(_0xd138('0xc'));var deskjs=require('desk.js');var toCsv=require(_0xd138('0x8'));var querystring=require(_0xd138('0xd'));var Papa=require('papaparse');var Redis=require('ioredis');var authService=require(_0xd138('0xe'));var qs=require(_0xd138('0xf'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0xd138('0x10'));var logger=require(_0xd138('0x11'))(_0xd138('0x12'));var utils=require(_0xd138('0x13'));var config=require(_0xd138('0x14'));var licenseUtil=require(_0xd138('0x15'));var db=require(_0xd138('0x16'))['db'];config['redis']=_[_0xd138('0x17')](config[_0xd138('0x18')],{'host':_0xd138('0x19'),'port':0x18eb});var socket=require(_0xd138('0x1a'))(new Redis(config[_0xd138('0x18')]));require(_0xd138('0x1b'))[_0xd138('0x1c')](socket);var jayson=require(_0xd138('0x1d'));var client=jayson[_0xd138('0x1e')][_0xd138('0x1f')]({'port':0x232c});function respondWithRpcPromise(_0xf89f0f,_0x473079,_0x3a6760,_0x55c7bf){return new BPromise(function(_0x54ff81,_0xc812ab){var _0x253262=_0x55c7bf||client;return _0x253262['request'](_0xf89f0f,_0x3a6760)['then'](function(_0x22976b){logger['info']('SmsAccount,\x20%s,\x20%s',_0x473079,_0xd138('0x20'));logger[_0xd138('0x21')](_0xd138('0x22'),_0x473079,_0xd138('0x20'),JSON[_0xd138('0x23')](_0x22976b));if(_0x22976b['error']){if(_0x22976b['error'][_0xd138('0x24')]===0x1f4){logger[_0xd138('0x25')]('SmsAccount,\x20%s,\x20%s',_0x473079,_0x22976b[_0xd138('0x25')]['message']);return _0xc812ab(_0x22976b[_0xd138('0x25')][_0xd138('0x26')]);}logger[_0xd138('0x25')](_0xd138('0x27'),_0x473079,_0x22976b['error'][_0xd138('0x26')]);return _0x54ff81(_0x22976b['error'][_0xd138('0x26')]);}else{logger['info']('SmsAccount,\x20%s,\x20%s',_0x473079,_0xd138('0x20'));_0x54ff81(_0x22976b[_0xd138('0x28')][_0xd138('0x26')]);}})[_0xd138('0x29')](function(_0x3ec95f){logger[_0xd138('0x25')]('SmsAccount,\x20%s,\x20%s',_0x473079,_0x3ec95f);_0xc812ab(_0x3ec95f);});});}function respondWithStatusCode(_0x54a75e,_0x3a5b19){_0x3a5b19=_0x3a5b19||0xcc;return function(_0x2d82cd){if(_0x2d82cd){return _0x54a75e['sendStatus'](_0x3a5b19);}return _0x54a75e[_0xd138('0x2a')](_0x3a5b19)[_0xd138('0x2b')]();};}function respondWithResult(_0x59e0a4,_0x1a1c65){_0x1a1c65=_0x1a1c65||0xc8;return function(_0xa5b49b){if(_0xa5b49b){return _0x59e0a4[_0xd138('0x2a')](_0x1a1c65)[_0xd138('0x2c')](_0xa5b49b);}};}function respondWithFilteredResult(_0x2f9b6,_0x4427da){return function(_0x4497ed){if(_0x4497ed){var _0x3da0d=_0x4497ed[_0xd138('0x2d')],_0x12856e=_0x4427da['offset'],_0x200c82=_0x4427da[_0xd138('0x2e')]+_0x4427da[_0xd138('0x2f')],_0x177b93;if(_0x200c82>=_0x3da0d){_0x200c82=_0x3da0d;_0x177b93=0xc8;}else{_0x177b93=0xce;}_0x2f9b6[_0xd138('0x2a')](_0x177b93);return _0x2f9b6[_0xd138('0x30')](_0xd138('0x31'),_0x12856e+'-'+_0x200c82+'/'+_0x3da0d)[_0xd138('0x2c')](_0x4497ed);}return null;};}function patchUpdates(_0xfe92fb){return function(_0x28493d){try{jsonpatch[_0xd138('0x32')](_0x28493d,_0xfe92fb,!![]);}catch(_0x384ff3){return BPromise[_0xd138('0x33')](_0x384ff3);}return _0x28493d['save']();};}function saveUpdates(_0x4e99d2,_0x27b4b0){return function(_0x5a4bfc){if(_0x5a4bfc){return _0x5a4bfc[_0xd138('0x34')](_0x4e99d2)['then'](function(_0xc7c622){return _0xc7c622;});}return null;};}function removeEntity(_0x1c15b2,_0x309523){return function(_0x3968d6){if(_0x3968d6){return _0x3968d6[_0xd138('0x35')]()['then'](function(){var _0x3ea9a2=_0x3968d6['get']({'plain':!![]});var _0x28d6bc='SmsAccounts';return db[_0xd138('0x36')][_0xd138('0x35')]({'where':{'type':_0x28d6bc,'resourceId':_0x3ea9a2['id']}})[_0xd138('0x37')](function(){return _0x3968d6;});})[_0xd138('0x37')](function(){_0x1c15b2['status'](0xcc)[_0xd138('0x2b')]();});}};}function handleEntityNotFound(_0x18c6a4,_0x40790c){return function(_0x39f6de){if(!_0x39f6de){_0x18c6a4[_0xd138('0x38')](0x194);}return _0x39f6de;};}function handleError(_0x56cbc9,_0xbca792){_0xbca792=_0xbca792||0x1f4;return function(_0x911737){logger[_0xd138('0x25')](_0x911737[_0xd138('0x39')]);if(_0x911737[_0xd138('0x3a')]){delete _0x911737[_0xd138('0x3a')];}_0x56cbc9[_0xd138('0x2a')](_0xbca792)['send'](_0x911737);};}exports[_0xd138('0x3b')]=function(_0x49cd4f,_0x5ec29b){var _0x24aa4b={'include':[{'model':db[_0xd138('0x3c')],'as':_0xd138('0x3d')}]},_0x415498={},_0xb985b0={'count':0x0,'rows':[]};var _0x450f18=_['map'](db[_0xd138('0x3e')][_0xd138('0x3f')],function(_0x50406d){return{'name':_0x50406d[_0xd138('0x40')],'type':_0x50406d['type'][_0xd138('0x41')]};});_0x415498[_0xd138('0x42')]=_['map'](_0x450f18,_0xd138('0x3a'));_0x415498['query']=_[_0xd138('0x43')](_0x49cd4f[_0xd138('0x44')]);_0x415498[_0xd138('0x45')]=_[_0xd138('0x46')](_0x415498[_0xd138('0x42')],_0x415498[_0xd138('0x44')]);_0x24aa4b[_0xd138('0x47')]=_[_0xd138('0x46')](_0x415498[_0xd138('0x42')],qs[_0xd138('0x48')](_0x49cd4f['query']['fields']));_0x24aa4b['attributes']=_0x24aa4b[_0xd138('0x47')][_0xd138('0x49')]?_0x24aa4b['attributes']:_0x415498['model'];if(!_0x49cd4f[_0xd138('0x44')][_0xd138('0x4a')](_0xd138('0x4b'))){_0x24aa4b[_0xd138('0x2f')]=qs[_0xd138('0x2f')](_0x49cd4f[_0xd138('0x44')][_0xd138('0x2f')]);_0x24aa4b['offset']=qs[_0xd138('0x2e')](_0x49cd4f[_0xd138('0x44')]['offset']);}_0x24aa4b[_0xd138('0x4c')]=qs[_0xd138('0x4d')](_0x49cd4f['query'][_0xd138('0x4d')]);_0x24aa4b['where']=qs[_0xd138('0x45')](_['pick'](_0x49cd4f['query'],_0x415498[_0xd138('0x45')]),_0x450f18);if(_0x49cd4f[_0xd138('0x44')][_0xd138('0x4e')]){_0x24aa4b['where']=_[_0xd138('0x4f')](_0x24aa4b[_0xd138('0x50')],{'$or':_[_0xd138('0x51')](_0x450f18,function(_0x368e8f){if(_0x368e8f[_0xd138('0x52')]!==_0xd138('0x53')){var _0x12908d={};_0x12908d[_0x368e8f['name']]={'$like':'%'+_0x49cd4f['query'][_0xd138('0x4e')]+'%'};return _0x12908d;}})});}_0x24aa4b=_[_0xd138('0x4f')]({},_0x24aa4b,_0x49cd4f[_0xd138('0x54')]);var _0x5b0e39={'where':_0x24aa4b[_0xd138('0x50')]};return db[_0xd138('0x3e')][_0xd138('0x2d')](_0x5b0e39)['then'](function(_0x24b75d){_0xb985b0[_0xd138('0x2d')]=_0x24b75d;if(_0x49cd4f['query'][_0xd138('0x55')]){_0x24aa4b[_0xd138('0x56')]=[{'all':!![]}];}return db[_0xd138('0x3e')][_0xd138('0x57')](_0x24aa4b);})['then'](function(_0x1f4f75){_0xb985b0['rows']=_0x1f4f75;return _0xb985b0;})[_0xd138('0x37')](respondWithFilteredResult(_0x5ec29b,_0x24aa4b))[_0xd138('0x29')](handleError(_0x5ec29b,null));};exports[_0xd138('0x58')]=function(_0x2816ac,_0x756304){var _0x35679d={'raw':![],'where':{'id':_0x2816ac[_0xd138('0x59')]['id']},'include':[{'model':db[_0xd138('0x3c')],'as':_0xd138('0x3d')}]},_0x37b931={};_0x37b931[_0xd138('0x42')]=_[_0xd138('0x43')](db[_0xd138('0x3e')][_0xd138('0x3f')]);_0x37b931[_0xd138('0x44')]=_['keys'](_0x2816ac[_0xd138('0x44')]);_0x37b931['filters']=_[_0xd138('0x46')](_0x37b931['model'],_0x37b931[_0xd138('0x44')]);_0x35679d[_0xd138('0x47')]=_[_0xd138('0x46')](_0x37b931['model'],qs[_0xd138('0x48')](_0x2816ac[_0xd138('0x44')][_0xd138('0x48')]));_0x35679d[_0xd138('0x47')]=_0x35679d[_0xd138('0x47')][_0xd138('0x49')]?_0x35679d[_0xd138('0x47')]:_0x37b931['model'];if(_0x2816ac[_0xd138('0x44')][_0xd138('0x55')]){_0x35679d[_0xd138('0x56')]=[{'all':!![]}];}_0x35679d=_[_0xd138('0x4f')]({},_0x35679d,_0x2816ac[_0xd138('0x54')]);return db[_0xd138('0x3e')]['find'](_0x35679d)[_0xd138('0x37')](handleEntityNotFound(_0x756304,null))[_0xd138('0x37')](respondWithResult(_0x756304,null))['catch'](handleError(_0x756304,null));};exports['create']=function(_0x3c3a3b,_0x35e9e3){return db[_0xd138('0x3e')][_0xd138('0x5a')](_0x3c3a3b[_0xd138('0x5b')],{})[_0xd138('0x37')](function(_0x3ededb){var _0x49f86a=_0x3c3a3b[_0xd138('0x5c')][_0xd138('0x5d')]({'plain':!![]});if(!_0x49f86a)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x49f86a[_0xd138('0x5e')]===_0xd138('0x5c')){var _0x1e16ab=_0x3ededb[_0xd138('0x5d')]({'plain':!![]});var _0x142ab2=_0xd138('0x5f');return db['UserProfileSection'][_0xd138('0x60')]({'where':{'name':_0x142ab2,'userProfileId':_0x49f86a[_0xd138('0x61')]},'raw':!![]})[_0xd138('0x37')](function(_0x15c5ba){if(_0x15c5ba&&_0x15c5ba[_0xd138('0x62')]===0x0){return db['UserProfileResource']['create']({'name':_0x1e16ab[_0xd138('0x3a')],'resourceId':_0x1e16ab['id'],'type':_0x15c5ba[_0xd138('0x3a')],'sectionId':_0x15c5ba['id']},{})[_0xd138('0x37')](function(){return _0x3ededb;});}else{return _0x3ededb;}})[_0xd138('0x29')](function(_0x48e5e1){logger[_0xd138('0x25')](_0xd138('0x63'),_0x48e5e1);throw _0x48e5e1;});}return _0x3ededb;})['then'](respondWithResult(_0x35e9e3,0xc9))['catch'](handleError(_0x35e9e3,null));};exports[_0xd138('0x34')]=function(_0x29fd2a,_0x1718e1){if(_0x29fd2a['body']['id']){delete _0x29fd2a[_0xd138('0x5b')]['id'];}return db[_0xd138('0x3e')][_0xd138('0x60')]({'where':{'id':_0x29fd2a[_0xd138('0x59')]['id']},'include':[{'model':db[_0xd138('0x3c')],'as':_0xd138('0x3d')}]})['then'](handleEntityNotFound(_0x1718e1,null))[_0xd138('0x37')](saveUpdates(_0x29fd2a[_0xd138('0x5b')],null))[_0xd138('0x37')](respondWithResult(_0x1718e1,null))[_0xd138('0x29')](handleError(_0x1718e1,null));};exports[_0xd138('0x35')]=function(_0x22855a,_0x7e15af){return db[_0xd138('0x3e')][_0xd138('0x60')]({'where':{'id':_0x22855a[_0xd138('0x59')]['id']}})[_0xd138('0x37')](handleEntityNotFound(_0x7e15af,null))[_0xd138('0x37')](removeEntity(_0x7e15af,null))[_0xd138('0x29')](handleError(_0x7e15af,null));};exports[_0xd138('0x64')]=function(_0x4dc8a4,_0x4b00fa){return db[_0xd138('0x3e')][_0xd138('0x64')]()['then'](respondWithResult(_0x4b00fa,null))[_0xd138('0x29')](handleError(_0x4b00fa,null));};exports[_0xd138('0x65')]=function(_0x2b5a03,_0x2d50da,_0x3b731b){if(_0x2b5a03[_0xd138('0x5b')]['id']){delete _0x2b5a03[_0xd138('0x5b')]['id'];}return db[_0xd138('0x3e')][_0xd138('0x60')]({'where':{'id':_0x2b5a03[_0xd138('0x59')]['id']}})[_0xd138('0x37')](handleEntityNotFound(_0x2d50da,null))[_0xd138('0x37')](function(_0xc7df72){if(_0xc7df72){_0x2b5a03['body'][_0xd138('0x66')]=_0xc7df72['id'];return db[_0xd138('0x67')][_0xd138('0x5a')](_0x2b5a03[_0xd138('0x5b')]);}})[_0xd138('0x37')](respondWithResult(_0x2d50da,null))[_0xd138('0x29')](handleError(_0x2d50da,null));};exports[_0xd138('0x68')]=function(_0x3bee1d,_0xfe5a10,_0x9489fc){var _0x11a87b={'raw':![],'where':{}};var _0xd4e6c9={};var _0x42ea09={'count':0x0,'rows':[]};return db[_0xd138('0x3e')][_0xd138('0x69')]({'where':{'id':_0x3bee1d[_0xd138('0x59')]['id']}})[_0xd138('0x37')](handleEntityNotFound(_0xfe5a10,null))[_0xd138('0x37')](function(_0x217bc1){if(_0x217bc1){_0xd4e6c9[_0xd138('0x42')]=_[_0xd138('0x43')](db[_0xd138('0x67')][_0xd138('0x3f')]);_0xd4e6c9[_0xd138('0x44')]=_[_0xd138('0x43')](_0x3bee1d[_0xd138('0x44')]);_0xd4e6c9[_0xd138('0x45')]=_[_0xd138('0x46')](_0xd4e6c9[_0xd138('0x42')],_0xd4e6c9[_0xd138('0x44')]);_0x11a87b[_0xd138('0x47')]=_[_0xd138('0x46')](_0xd4e6c9['model'],qs[_0xd138('0x48')](_0x3bee1d[_0xd138('0x44')][_0xd138('0x48')]));_0x11a87b[_0xd138('0x47')]=_0x11a87b[_0xd138('0x47')][_0xd138('0x49')]?_0x11a87b[_0xd138('0x47')]:_0xd4e6c9[_0xd138('0x42')];if(!_0x3bee1d['query']['hasOwnProperty'](_0xd138('0x4b'))){_0x11a87b[_0xd138('0x2f')]=qs[_0xd138('0x2f')](_0x3bee1d[_0xd138('0x44')][_0xd138('0x2f')]);_0x11a87b[_0xd138('0x2e')]=qs[_0xd138('0x2e')](_0x3bee1d['query']['offset']);}_0x11a87b[_0xd138('0x4c')]=qs[_0xd138('0x4d')](_0x3bee1d[_0xd138('0x44')]['sort']);_0x11a87b['where']=qs[_0xd138('0x45')](_['pick'](_0x3bee1d[_0xd138('0x44')],_0xd4e6c9[_0xd138('0x45')]));_0x11a87b[_0xd138('0x50')]['SmsAccountId']=_0x217bc1['id'];if(_0x3bee1d[_0xd138('0x44')]['filter']){_0x11a87b[_0xd138('0x50')]=_[_0xd138('0x4f')](_0x11a87b[_0xd138('0x50')],{'$or':_[_0xd138('0x51')](_0x11a87b[_0xd138('0x47')],function(_0x29b4f8){var _0x281478={};_0x281478[_0x29b4f8]={'$like':'%'+_0x3bee1d[_0xd138('0x44')][_0xd138('0x4e')]+'%'};return _0x281478;})});}_0x11a87b=_[_0xd138('0x4f')]({},_0x11a87b,_0x3bee1d['options']);return db[_0xd138('0x67')][_0xd138('0x2d')]({'where':_0x11a87b[_0xd138('0x50')]})['then'](function(_0x4c2277){_0x42ea09[_0xd138('0x2d')]=_0x4c2277;if(_0x3bee1d[_0xd138('0x44')][_0xd138('0x55')]){_0x11a87b['include']=[{'all':!![]}];}return db[_0xd138('0x67')][_0xd138('0x57')](_0x11a87b);})[_0xd138('0x37')](function(_0x2bd6a2){_0x42ea09['rows']=_0x2bd6a2;return _0x42ea09;});}})[_0xd138('0x37')](respondWithFilteredResult(_0xfe5a10,_0x11a87b))[_0xd138('0x29')](handleError(_0xfe5a10,null));};exports[_0xd138('0x6a')]=function(_0x422e69,_0x7424f4,_0x38a108){return db[_0xd138('0x3e')][_0xd138('0x60')]({'where':{'id':_0x422e69[_0xd138('0x59')]['id']}})[_0xd138('0x37')](handleEntityNotFound(_0x7424f4,null))[_0xd138('0x37')](function(_0x5e4823){if(_0x5e4823){return _0x5e4823[_0xd138('0x6a')](_0x422e69['query'][_0xd138('0x6b')]);}})[_0xd138('0x37')](respondWithStatusCode(_0x7424f4,null))[_0xd138('0x29')](handleError(_0x7424f4,null));};exports[_0xd138('0x6c')]=function(_0x3277fa,_0x4c1407,_0x2bbecd){if(_0x3277fa['body']['id']){delete _0x3277fa['body']['id'];}return db['SmsAccount'][_0xd138('0x60')]({'where':{'id':_0x3277fa[_0xd138('0x59')]['id']}})[_0xd138('0x37')](handleEntityNotFound(_0x4c1407,null))[_0xd138('0x37')](function(_0x9fc03c){if(_0x9fc03c){_0x3277fa['body'][_0xd138('0x66')]=_0x9fc03c['id'];return db['CannedAnswer'][_0xd138('0x5a')](_0x3277fa[_0xd138('0x5b')]);}})['then'](respondWithResult(_0x4c1407,null))[_0xd138('0x29')](handleError(_0x4c1407,null));};exports['getAnswers']=function(_0x4a443f,_0x4e7419,_0x44ffdc){var _0x2b6350={'raw':![],'where':{}};var _0x2870c4={};var _0xbde71d={'count':0x0,'rows':[]};return db[_0xd138('0x3e')][_0xd138('0x69')]({'where':{'id':_0x4a443f[_0xd138('0x59')]['id']}})[_0xd138('0x37')](handleEntityNotFound(_0x4e7419,null))[_0xd138('0x37')](function(_0x19c345){if(_0x19c345){_0x2870c4[_0xd138('0x42')]=_[_0xd138('0x43')](db[_0xd138('0x6d')][_0xd138('0x3f')]);_0x2870c4[_0xd138('0x44')]=_[_0xd138('0x43')](_0x4a443f[_0xd138('0x44')]);_0x2870c4[_0xd138('0x45')]=_[_0xd138('0x46')](_0x2870c4[_0xd138('0x42')],_0x2870c4[_0xd138('0x44')]);_0x2b6350['attributes']=_[_0xd138('0x46')](_0x2870c4['model'],qs['fields'](_0x4a443f['query'][_0xd138('0x48')]));_0x2b6350[_0xd138('0x47')]=_0x2b6350['attributes']['length']?_0x2b6350[_0xd138('0x47')]:_0x2870c4['model'];if(!_0x4a443f[_0xd138('0x44')][_0xd138('0x4a')](_0xd138('0x4b'))){_0x2b6350[_0xd138('0x2f')]=qs['limit'](_0x4a443f[_0xd138('0x44')][_0xd138('0x2f')]);_0x2b6350[_0xd138('0x2e')]=qs['offset'](_0x4a443f[_0xd138('0x44')]['offset']);}_0x2b6350[_0xd138('0x4c')]=qs['sort'](_0x4a443f['query'][_0xd138('0x4d')]);_0x2b6350[_0xd138('0x50')]=qs['filters'](_[_0xd138('0x6e')](_0x4a443f['query'],_0x2870c4[_0xd138('0x45')]));_0x2b6350['where'][_0xd138('0x66')]=_0x19c345['id'];if(_0x4a443f['query'][_0xd138('0x4e')]){_0x2b6350[_0xd138('0x50')]=_[_0xd138('0x4f')](_0x2b6350['where'],{'$or':_[_0xd138('0x51')](_0x2b6350[_0xd138('0x47')],function(_0xf7819){var _0x2e8932={};_0x2e8932[_0xf7819]={'$like':'%'+_0x4a443f[_0xd138('0x44')][_0xd138('0x4e')]+'%'};return _0x2e8932;})});}_0x2b6350=_[_0xd138('0x4f')]({},_0x2b6350,_0x4a443f[_0xd138('0x54')]);return db[_0xd138('0x6d')][_0xd138('0x2d')]({'where':_0x2b6350[_0xd138('0x50')]})[_0xd138('0x37')](function(_0x3692cd){_0xbde71d['count']=_0x3692cd;if(_0x4a443f[_0xd138('0x44')][_0xd138('0x55')]){_0x2b6350[_0xd138('0x56')]=[{'all':!![]}];}return db[_0xd138('0x6d')][_0xd138('0x57')](_0x2b6350);})[_0xd138('0x37')](function(_0x1931cd){_0xbde71d['rows']=_0x1931cd;return _0xbde71d;});}})[_0xd138('0x37')](respondWithFilteredResult(_0x4e7419,_0x2b6350))[_0xd138('0x29')](handleError(_0x4e7419,null));};exports[_0xd138('0x6f')]=function(_0x2be671,_0x4c26f3,_0x585450){return db[_0xd138('0x3e')]['find']({'where':{'id':_0x2be671[_0xd138('0x59')]['id']}})['then'](handleEntityNotFound(_0x4c26f3,null))['then'](function(_0x2152dc){if(_0x2152dc){return _0x2152dc[_0xd138('0x6f')](_0x2be671[_0xd138('0x44')][_0xd138('0x6b')]);}})[_0xd138('0x37')](respondWithStatusCode(_0x4c26f3,null))[_0xd138('0x29')](handleError(_0x4c26f3,null));};exports[_0xd138('0x70')]=function(_0x4c49a3,_0x4c64ce,_0x1739f7){var _0x513c27={'channel':_0xd138('0x71')};var _0x5b8915=[];var _0x4d6423=[];var _0x265036={};return db[_0xd138('0x3e')][_0xd138('0x60')]({'where':{'id':_0x4c49a3['params']['id']},'include':[{'model':db['SmsApplication'],'as':_0xd138('0x72')}]})[_0xd138('0x37')](handleEntityNotFound(_0x4c64ce,null))['then'](function(_0x3e0a4f){_0x513c27[_0xd138('0x73')]=_0x3e0a4f;_0x513c27[_0xd138('0x74')]=_[_0xd138('0x75')](_0x3e0a4f[_0xd138('0x72')],[_0xd138('0x76')],[_0xd138('0x77')]);if(_0x513c27['account'][_0xd138('0x72')]){delete _0x513c27[_0xd138('0x73')][_0xd138('0x72')];}return db[_0xd138('0x78')]['describe']();})[_0xd138('0x37')](function(_0x226516){if(!_0x226516){throw new db[(_0xd138('0x79'))][(_0xd138('0x7a'))](_0xd138('0x7b'));}_0x5b8915=_['difference'](_[_0xd138('0x43')](_0x226516),['createdAt',_0xd138('0x7c')]);_0x4d6423=_[_0xd138('0x7d')](_[_0xd138('0x43')](_0x226516),['createdAt',_0xd138('0x7c'),_0xd138('0x7e'),'ListId']);_0x513c27[_0xd138('0x5b')]={'mapKey':_0xd138('0x7f')};if(_0x513c27[_0xd138('0x73')][_0xd138('0x52')]){switch(_0x513c27['account']['type']){case _0xd138('0x80'):_0x513c27[_0xd138('0x5b')][_0xd138('0x81')]=_0x4c49a3['body'][_0xd138('0x82')];_0x513c27[_0xd138('0x5b')][_0xd138('0x5b')]=_0x4c49a3[_0xd138('0x5b')]['Body'];_0x513c27['body'][_0xd138('0x83')]=_0x4c49a3[_0xd138('0x5b')]['MessageSid'];break;case'skebby':_0x513c27[_0xd138('0x5b')][_0xd138('0x81')]='+'+_0x4c49a3['body']['sender'];_0x513c27['body'][_0xd138('0x5b')]=_0x4c49a3[_0xd138('0x5b')][_0xd138('0x84')];break;case'connectel':_0x513c27['body']['from']=_0x4c49a3[_0xd138('0x5b')]['from'];_0x513c27[_0xd138('0x5b')][_0xd138('0x5b')]=_0x4c49a3[_0xd138('0x5b')][_0xd138('0x26')];break;case _0xd138('0x85'):_0x513c27[_0xd138('0x5b')][_0xd138('0x81')]=_0x4c49a3[_0xd138('0x5b')][_0xd138('0x81')];_0x513c27['body'][_0xd138('0x5b')]=_0x4c49a3['body'][_0xd138('0x5b')];_0x513c27[_0xd138('0x5b')][_0xd138('0x83')]=_0x4c49a3['body'][_0xd138('0x86')];break;case _0xd138('0x87'):_0x513c27[_0xd138('0x5b')][_0xd138('0x81')]=_0x4c49a3[_0xd138('0x5b')][_0xd138('0x82')];_0x513c27[_0xd138('0x5b')][_0xd138('0x5b')]=_0x4c49a3[_0xd138('0x5b')][_0xd138('0x88')];_0x513c27[_0xd138('0x5b')][_0xd138('0x83')]=_0x4c49a3[_0xd138('0x5b')][_0xd138('0x89')];break;case _0xd138('0x8a'):_0x513c27[_0xd138('0x5b')][_0xd138('0x81')]='+'+_0x4c49a3[_0xd138('0x5b')][_0xd138('0x8b')][0x0][_0xd138('0x81')];_0x513c27[_0xd138('0x5b')][_0xd138('0x5b')]=_0x4c49a3['body']['results'][0x0]['text'];_0x513c27[_0xd138('0x5b')][_0xd138('0x83')]=_0x4c49a3[_0xd138('0x5b')][_0xd138('0x8b')][0x0][_0xd138('0x83')];break;case _0xd138('0x8c'):_0x513c27['body'][_0xd138('0x81')]=_0x4c49a3[_0xd138('0x5b')][_0xd138('0x8d')];_0x513c27[_0xd138('0x5b')][_0xd138('0x5b')]=_0x4c49a3[_0xd138('0x5b')][_0xd138('0x8e')]['message'];break;case _0xd138('0x8f'):_0x513c27[_0xd138('0x5b')]['from']=_0x4c49a3[_0xd138('0x5b')]['fromNumber'];_0x513c27[_0xd138('0x5b')][_0xd138('0x5b')]=_0x4c49a3[_0xd138('0x5b')][_0xd138('0x84')];_0x513c27['body'][_0xd138('0x83')]=_0x4c49a3[_0xd138('0x5b')][_0xd138('0x90')];break;case'bandwidth':_0x513c27['body']['messageId']=_0x4c49a3[_0xd138('0x5b')][0x0]['message']['id'];_0x513c27[_0xd138('0x5b')][_0xd138('0x81')]=_0x4c49a3[_0xd138('0x5b')][0x0][_0xd138('0x26')][_0xd138('0x81')];_0x513c27[_0xd138('0x5b')][_0xd138('0x5b')]=_0x4c49a3[_0xd138('0x5b')][0x0][_0xd138('0x26')][_0xd138('0x84')];break;case _0xd138('0x91'):_0x513c27['body'][_0xd138('0x81')]=_0x4c49a3[_0xd138('0x5b')][_0xd138('0x81')];_0x513c27[_0xd138('0x5b')]['body']=_0x4c49a3[_0xd138('0x5b')][_0xd138('0x26')];_0x513c27[_0xd138('0x5b')]['messageId']=_0x4c49a3[_0xd138('0x5b')]['refid'];break;}}if(_0x513c27[_0xd138('0x5b')]['id']){delete _0x513c27[_0xd138('0x5b')]['id'];}if(_[_0xd138('0x92')](_0x513c27[_0xd138('0x5b')][_0xd138('0x81')])){throw new db['Sequelize'][(_0xd138('0x7a'))](_0xd138('0x93'));}if(_[_0xd138('0x92')](_0x513c27['body'][_0xd138('0x5b')])||_0x513c27['body'][_0xd138('0x5b')]===''){throw new db[(_0xd138('0x79'))][(_0xd138('0x7a'))](_0xd138('0x94'));}if(_[_0xd138('0x92')](_0x513c27[_0xd138('0x5b')]['mapKey'])){throw new db['Sequelize'][(_0xd138('0x7a'))]('mapKey\x20is\x20mandatory,\x20please\x20use\x20one\x20of\x20these:\x20'+_0x4d6423);}if(!_[_0xd138('0x95')](_0x4d6423,_0x513c27[_0xd138('0x5b')][_0xd138('0x96')])){throw new db['Sequelize'][(_0xd138('0x7a'))](_0xd138('0x97')+_0x4d6423);}_0x265036[_0x513c27[_0xd138('0x5b')]['mapKey']]=_0x513c27[_0xd138('0x5b')]['from'];return db[_0xd138('0x98')]['find']({'where':{'id':_0x513c27[_0xd138('0x73')][_0xd138('0x99')]},'include':[{'model':db[_0xd138('0x78')],'as':_0xd138('0x9a'),'where':_0x265036,'limit':0x1,'order':[[_0xd138('0x7c'),'DESC']]}]});})[_0xd138('0x37')](handleEntityNotFound(_0x4c64ce,null))['then'](function(_0x17d468){if(_0x17d468){_0x513c27[_0xd138('0x9b')]=_[_0xd138('0x9c')](_0x17d468,[_0xd138('0x9a')]);if(_0x17d468[_0xd138('0x9a')][_0xd138('0x49')]){return _0x17d468['Contacts'][0x0];}var _0x182520=_[_0xd138('0x17')](_0x513c27[_0xd138('0x5b')],{'firstName':_0x513c27[_0xd138('0x5b')][_0xd138('0x81')],'ListId':_0x17d468['id']});_0x182520[_0x513c27[_0xd138('0x5b')][_0xd138('0x96')]]=_0x513c27[_0xd138('0x5b')][_0xd138('0x81')];return db['CmContact'][_0xd138('0x5a')](_0x182520,{'fields':_0x5b8915,'raw':!![]});}})['then'](handleEntityNotFound(_0x4c64ce,null))[_0xd138('0x37')](function(_0x1d9eec){if(_0x1d9eec){_0x513c27[_0xd138('0x9d')]=_0x1d9eec;var _0x4ae830={'ContactId':_0x1d9eec['id'],'phone':_0x513c27[_0xd138('0x5b')][_0xd138('0x81')],'SmsAccountId':_0x4c49a3[_0xd138('0x59')]['id']};var _0x234e50={'ContactId':_0x1d9eec['id'],'SmsAccountId':_0x4c49a3[_0xd138('0x59')]['id'],'closed':![]};return db['SmsInteraction'][_0xd138('0x60')]({'where':_0x234e50})['then'](function(_0x49cf36){if(_0x49cf36){return[_0x49cf36,![]];}return db['SmsInteraction'][_0xd138('0x5a')](_0x4ae830)[_0xd138('0x37')](function(_0x2465a4){return[_0x2465a4,!![]];});});}})[_0xd138('0x9e')](function(_0x32942b,_0x10ac01){_0x513c27['interaction']=_0x32942b[_0xd138('0x5d')]({'plain':!![]});_0x513c27[_0xd138('0x9f')][_0xd138('0xa0')]=![];if(_0x10ac01){if(_0x513c27[_0xd138('0x73')][_0xd138('0xa1')]){_0x513c27[_0xd138('0x74')][_0xd138('0xa2')]({'id':0x0,'priority':_0x513c27[_0xd138('0x74')]['length']+0x1,'app':_0xd138('0xa3'),'appdata':'unmanaged','interval':_0xd138('0xa4')});}_0x513c27['interaction'][_0xd138('0xa0')]=!![];}return db['SmsMessage']['create']({'phone':_0x513c27[_0xd138('0x5b')][_0xd138('0x81')],'messageId':_0x513c27[_0xd138('0x5b')][_0xd138('0x83')],'body':_0x513c27[_0xd138('0x5b')][_0xd138('0x5b')],'SmsAccountId':_0x4c49a3[_0xd138('0x59')]['id'],'SmsInteractionId':_0x32942b['id'],'direction':'in','ContactId':_0x32942b['ContactId'],'AttachmentId':_0x513c27[_0xd138('0x5b')][_0xd138('0xa5')]});})[_0xd138('0x37')](function(_0x125fdf){_0x513c27[_0xd138('0x26')]=_0x125fdf;if(_0x513c27[_0xd138('0x9f')][_0xd138('0xa6')]){return db[_0xd138('0xa7')][_0xd138('0x60')]({'attributes':['id',_0xd138('0x3a')],'where':{'id':_0x513c27[_0xd138('0x9f')][_0xd138('0xa6')]}})['then'](function(_0x12750a){if(_0x12750a){_0x513c27[_0xd138('0x74')][_0xd138('0xa8')]({'id':0x0,'priority':0x0,'app':_0xd138('0xa9'),'appdata':_0x12750a[_0xd138('0x3a')]+','+(_0x513c27[_0xd138('0x73')][_0xd138('0xaa')]||0xa),'interval':_0xd138('0xa4')});}return respondWithRpcPromise(_0xd138('0xab'),_0xd138('0xac'),_0x513c27);});}return respondWithRpcPromise('Start',_0xd138('0xac'),_0x513c27);})[_0xd138('0x37')](function(_0x53969f){if(_0x53969f){var _0x3f1157=0xc8;var _0x507805=_0xd138('0xad');logger[_0xd138('0xae')](_0xd138('0x22'),_0x507805,_0x3f1157,_0xd138('0xaf'));logger['debug']('SmsAccount,\x20%s,\x20%s,\x20%s,\x20%s',_0x507805,_0x3f1157,'entity\x20found',JSON['stringify'](_0x53969f));if(_0x513c27[_0xd138('0x73')][_0xd138('0x52')]==='twilio'){return _0x4c64ce[_0xd138('0x2a')](_0x3f1157)['set'](_0xd138('0xb0'),'text/xml')[_0xd138('0xb1')]('<?xml\x20version=\x221.0\x22\x20encoding=\x22UTF-8\x22?>\x0a<Response></Response>');}else{return _0x4c64ce[_0xd138('0x2a')](_0x3f1157)['json'](_0x53969f);}}})['catch'](handleError(_0x4c64ce,null));};exports[_0xd138('0xb2')]=function(_0x1ffad8,_0xc20f9a,_0xb09410){return db[_0xd138('0x3e')]['findOne']({'where':{'id':_0x1ffad8[_0xd138('0x59')]['id']}})[_0xd138('0x37')](handleEntityNotFound(_0xc20f9a,null))[_0xd138('0x37')](function(_0x343ca1){if(_0x343ca1){return db[_0xd138('0xb3')][_0xd138('0xb4')](function(_0x363e3b){return db[_0xd138('0xb5')][_0xd138('0x35')]({'where':{'SmsAccountId':_0x1ffad8[_0xd138('0x59')]['id']},'transaction':_0x363e3b})[_0xd138('0x37')](function(_0x210045){var _0x15e53a=_[_0xd138('0x51')](_0x1ffad8['body'],function(_0x2c7640){_0x2c7640['SmsAccountId']=_0x1ffad8[_0xd138('0x59')]['id'];return _0x2c7640;});return db[_0xd138('0xb5')][_0xd138('0xb6')](_0x15e53a,{'transaction':_0x363e3b});});})['then'](function(){return db[_0xd138('0xb5')][_0xd138('0xb7')]({'where':{'SmsAccountId':_0x1ffad8[_0xd138('0x59')]['id']},'order':_0xd138('0x76')});});}})[_0xd138('0x37')](respondWithResult(_0xc20f9a,null))[_0xd138('0x29')](handleError(_0xc20f9a,null));};exports[_0xd138('0xb8')]=function(_0x2216d5,_0x2293a0,_0xc15dfa){var _0x3b6bff={};var _0x4c3034={};var _0x4e90d9;var _0x937162;return db[_0xd138('0x3e')]['findOne']({'where':{'id':_0x2216d5[_0xd138('0x59')]['id']}})[_0xd138('0x37')](handleEntityNotFound(_0x2293a0,null))[_0xd138('0x37')](function(_0x548c37){if(_0x548c37){_0x4e90d9=_0x548c37;_0x4c3034[_0xd138('0x42')]=_[_0xd138('0x43')](db[_0xd138('0xb5')][_0xd138('0x3f')]);_0x4c3034[_0xd138('0x44')]=_[_0xd138('0x43')](_0x2216d5[_0xd138('0x44')]);_0x4c3034[_0xd138('0x45')]=_['intersection'](_0x4c3034['model'],_0x4c3034['query']);_0x3b6bff[_0xd138('0x47')]=_[_0xd138('0x46')](_0x4c3034[_0xd138('0x42')],qs['fields'](_0x2216d5['query']['fields']));_0x3b6bff[_0xd138('0x47')]=_0x3b6bff[_0xd138('0x47')][_0xd138('0x49')]?_0x3b6bff[_0xd138('0x47')]:_0x4c3034['model'];_0x3b6bff[_0xd138('0x4c')]=qs['sort'](_0x2216d5[_0xd138('0x44')][_0xd138('0x4d')]);_0x3b6bff['where']=qs['filters'](_[_0xd138('0x6e')](_0x2216d5[_0xd138('0x44')],_0x4c3034[_0xd138('0x45')]));if(_0x2216d5['query']['filter']){_0x3b6bff[_0xd138('0x50')]=_[_0xd138('0x4f')](_0x3b6bff['where'],{'$or':_[_0xd138('0x51')](_0x3b6bff[_0xd138('0x47')],function(_0x1faed8){var _0x2ad511={};_0x2ad511[_0x1faed8]={'$like':'%'+_0x2216d5[_0xd138('0x44')][_0xd138('0x4e')]+'%'};return _0x2ad511;})});}_0x3b6bff=_[_0xd138('0x4f')]({},_0x3b6bff,_0x2216d5[_0xd138('0x54')]);return _0x4e90d9['getApplications'](_0x3b6bff);}})[_0xd138('0x37')](function(_0x4c9118){if(_0x4c9118){_0x937162=_0x4c9118[_0xd138('0x49')];if(!_0x2216d5[_0xd138('0x44')][_0xd138('0x4a')](_0xd138('0x4b'))){_0x3b6bff[_0xd138('0x2f')]=qs['limit'](_0x2216d5[_0xd138('0x44')]['limit']);_0x3b6bff[_0xd138('0x2e')]=qs[_0xd138('0x2e')](_0x2216d5[_0xd138('0x44')]['offset']);}return _0x4e90d9['getApplications'](_0x3b6bff);}})[_0xd138('0x37')](function(_0x50f622){if(_0x50f622){return _0x50f622?{'count':_0x937162,'rows':_0x50f622}:null;}})['then'](respondWithResult(_0x2293a0,null))['catch'](handleError(_0x2293a0,null));};exports[_0xd138('0xb9')]=function(_0x34a561,_0x3b5c9a,_0x164454){var _0x24f5ae={'raw':![],'where':{}};var _0x34ab70={};var _0x1bb2bc={'count':0x0,'rows':[]};return db[_0xd138('0x3e')][_0xd138('0x69')]({'where':{'id':_0x34a561[_0xd138('0x59')]['id']}})[_0xd138('0x37')](handleEntityNotFound(_0x3b5c9a,null))['then'](function(_0x8c4c32){if(_0x8c4c32){_0x34ab70[_0xd138('0x42')]=_[_0xd138('0x43')](db[_0xd138('0xba')][_0xd138('0x3f')]);_0x34ab70[_0xd138('0x44')]=_['keys'](_0x34a561['query']);_0x34ab70[_0xd138('0x45')]=_[_0xd138('0x46')](_0x34ab70[_0xd138('0x42')],_0x34ab70['query']);_0x24f5ae[_0xd138('0x47')]=_[_0xd138('0x46')](_0x34ab70[_0xd138('0x42')],qs[_0xd138('0x48')](_0x34a561[_0xd138('0x44')]['fields']));_0x24f5ae[_0xd138('0x47')]=_0x24f5ae['attributes'][_0xd138('0x49')]?_0x24f5ae[_0xd138('0x47')]:_0x34ab70[_0xd138('0x42')];if(!_0x34a561['query'][_0xd138('0x4a')]('nolimit')){_0x24f5ae[_0xd138('0x2f')]=qs[_0xd138('0x2f')](_0x34a561['query'][_0xd138('0x2f')]);_0x24f5ae['offset']=qs['offset'](_0x34a561['query'][_0xd138('0x2e')]);}_0x24f5ae['order']=qs['sort'](_0x34a561[_0xd138('0x44')]['sort']);_0x24f5ae[_0xd138('0x50')]=qs[_0xd138('0x45')](_[_0xd138('0x6e')](_0x34a561['query'],_0x34ab70[_0xd138('0x45')]));_0x24f5ae['where'][_0xd138('0x66')]=_0x8c4c32['id'];if(_0x34a561['query'][_0xd138('0x4e')]){_0x24f5ae['where']=_[_0xd138('0x4f')](_0x24f5ae[_0xd138('0x50')],{'$or':_['map'](_0x24f5ae['attributes'],function(_0x4324e0){var _0x510f1b={};_0x510f1b[_0x4324e0]={'$like':'%'+_0x34a561['query']['filter']+'%'};return _0x510f1b;})});}_0x24f5ae=_[_0xd138('0x4f')]({},_0x24f5ae,_0x34a561['options']);return db[_0xd138('0xba')][_0xd138('0x2d')]({'where':_0x24f5ae[_0xd138('0x50')]})['then'](function(_0x3faa75){_0x1bb2bc[_0xd138('0x2d')]=_0x3faa75;if(_0x34a561[_0xd138('0x44')][_0xd138('0x55')]){_0x24f5ae[_0xd138('0x56')]=[{'model':db[_0xd138('0x78')],'as':_0xd138('0xbb'),'required':![]},{'model':db[_0xd138('0xa7')],'as':_0xd138('0xbc'),'attributes':[_0xd138('0x3a'),_0xd138('0xbd'),_0xd138('0xbe')],'required':![]},{'model':db[_0xd138('0xbf')],'as':_0xd138('0xc0'),'attributes':['id',_0xd138('0x3a'),_0xd138('0xc1')],'where':_0x34a561[_0xd138('0x44')]['tag']?{'id':_0x34a561[_0xd138('0x44')][_0xd138('0xc2')]}:undefined,'required':_0x34a561[_0xd138('0x44')][_0xd138('0xc2')]?!![]:![]}];}return db[_0xd138('0xba')]['findAll'](_0x24f5ae);})[_0xd138('0x37')](function(_0x2a6784){_0x1bb2bc[_0xd138('0xc3')]=_0x2a6784;return _0x1bb2bc;});}})['then'](respondWithFilteredResult(_0x3b5c9a,_0x24f5ae))[_0xd138('0x29')](handleError(_0x3b5c9a,null));};exports['send']=function(_0x2baa39,_0x3387e1,_0x11ecc8){var _0x5e5cfa,_0x3140b4,_0x1987f6;if(_[_0xd138('0x92')](_0x2baa39[_0xd138('0x5b')][_0xd138('0x5b')])||_0x2baa39['body'][_0xd138('0x5b')]===''){throw new db[(_0xd138('0x79'))][(_0xd138('0x7a'))](_0xd138('0x94'));}if(_[_0xd138('0x92')](_0x2baa39[_0xd138('0x5b')]['to'])){throw new db[(_0xd138('0x79'))][(_0xd138('0x7a'))](_0xd138('0xc4'));}_0x5e5cfa=_0x2baa39[_0xd138('0x5b')]['to'];return db[_0xd138('0x3e')][_0xd138('0x60')]({'where':{'id':_0x2baa39[_0xd138('0x59')]['id']},'include':[{'model':db[_0xd138('0x98')],'as':_0xd138('0xc5'),'include':[{'model':db['CmContact'],'as':_0xd138('0x9a'),'where':{'mobile':_0x5e5cfa},'limit':0x1,'order':[[_0xd138('0x7c'),_0xd138('0xc6')]]}]}]})[_0xd138('0x37')](handleEntityNotFound(_0x3387e1,null))[_0xd138('0x37')](function(_0x46ad8b){if(_0x46ad8b&&_0x46ad8b[_0xd138('0xc5')]){_0x3140b4=_0x46ad8b['get']({'plain':!![]});if(_0x3140b4[_0xd138('0xc5')]&&_0x3140b4['List']['Contacts'][_0xd138('0x49')]){return _0x3140b4['List'][_0xd138('0x9a')][0x0];}return db['CmContact']['create'](_[_0xd138('0x17')](_0x2baa39[_0xd138('0x5b')],{'firstName':_0x5e5cfa,'mobile':_0x5e5cfa,'phone':_0x5e5cfa,'ListId':_0x3140b4[_0xd138('0x99')]}));}})['then'](handleEntityNotFound(_0x3387e1,null))[_0xd138('0x37')](function(_0xc7f21a){if(_0xc7f21a){_0x1987f6=_0xc7f21a;return db['SmsInteraction'][_0xd138('0x60')]({'where':{'ContactId':_0x1987f6['id'],'closed':![],'SmsAccountId':_0x3140b4['id']}})[_0xd138('0x37')](function(_0x515bda){if(_0x515bda){return[_0x515bda,![]];}return db[_0xd138('0xba')][_0xd138('0x5a')]({'UserId':_0x2baa39[_0xd138('0x5c')]['id'],'ContactId':_0x1987f6['id'],'SmsAccountId':_0x3140b4['id'],'phone':_0x5e5cfa,'firstMsgDirection':'out','Messages':[_[_0xd138('0x4f')](_0x2baa39[_0xd138('0x5b')],{'read':![],'body':_0x2baa39[_0xd138('0x5b')][_0xd138('0x5b')],'phone':_0x5e5cfa,'SmsAccountId':_0x3140b4['id'],'UserId':_0x2baa39['user']['id'],'ContactId':_0x1987f6['id']})]},{'include':[{'model':db['SmsMessage'],'as':_0xd138('0xc7')}]})['then'](function(_0x3bded0){return[_0x3bded0,!![]];});});}})[_0xd138('0x9e')](function(_0x5230f8,_0x893f10){if(_0x893f10){return _0x5230f8;}return db[_0xd138('0xc8')][_0xd138('0x5a')](_['merge'](_0x2baa39[_0xd138('0x5b')],{'read':![],'body':_0x2baa39['body'][_0xd138('0x5b')],'phone':_0x5e5cfa,'SmsAccountId':_0x3140b4['id'],'SmsInteractionId':_0x5230f8['id'],'UserId':_0x2baa39[_0xd138('0x5c')]['id'],'ContactId':_0x1987f6['id']}))[_0xd138('0x37')](function(_0x41fb00){_0x5230f8['dataValues'][_0xd138('0xc7')]=[];_0x5230f8[_0xd138('0xc9')]['Messages'][_0xd138('0xa2')](_0x41fb00[_0xd138('0xc9')]);return _0x5230f8;});})[_0xd138('0x37')](respondWithResult(_0x3387e1,null))['catch'](handleError(_0x3387e1,null));};exports[_0xd138('0x2a')]=function(_0x2d7c8f,_0x5f0f50,_0x4ef786){if(_0x2d7c8f[_0xd138('0x5b')]['id']){delete _0x2d7c8f[_0xd138('0x5b')]['id'];}var _0x445e82,_0x508284,_0x2a6fc1;return db[_0xd138('0x3e')][_0xd138('0x60')]({'where':{'id':_0x2d7c8f['params']['id']}})[_0xd138('0x37')](handleEntityNotFound(_0x5f0f50,null))[_0xd138('0x37')](function(_0x5d53bb){if(_0x5d53bb){_0x2a6fc1=_0x5d53bb;logger[_0xd138('0x21')]('SmsAccount,\x20%s,\x20%s,\x20%s',_0xd138('0x2a'),_0xd138('0xca'),_0x5d53bb[_0xd138('0x52')],util[_0xd138('0xcb')](_0x2d7c8f[_0xd138('0x5b')],{'showHidden':![],'depth':null}));switch(_0x5d53bb[_0xd138('0x52')]){case _0xd138('0xcc'):if(_0x2d7c8f[_0xd138('0x5b')][_0xd138('0xcd')]&&_0x2d7c8f[_0xd138('0x5b')][_0xd138('0x2a')]){_0x508284=_0x2d7c8f[_0xd138('0x5b')][_0xd138('0x2a')];return db['SmsMessage'][_0xd138('0x60')]({'where':{'messageId':_0x2d7c8f[_0xd138('0x5b')][_0xd138('0xcd')]}});}break;case _0xd138('0xce'):if(_0x2d7c8f[_0xd138('0x5b')][_0xd138('0xcf')]&&_0x2d7c8f[_0xd138('0x5b')][_0xd138('0xd0')]){_0x508284=_0x2d7c8f[_0xd138('0x5b')][_0xd138('0xd0')];return db[_0xd138('0xc8')][_0xd138('0x60')]({'where':{'messageId':_0x2d7c8f[_0xd138('0x5b')][_0xd138('0xcf')]}});}break;case _0xd138('0x85'):if(_0x2d7c8f[_0xd138('0x5b')][_0xd138('0x86')]&&_0x2d7c8f[_0xd138('0x5b')][_0xd138('0xd1')]){_0x508284=_0x2d7c8f['body'][_0xd138('0xd1')];return db['SmsMessage'][_0xd138('0x60')]({'where':{'messageId':_0x2d7c8f['body'][_0xd138('0x86')]}});}break;case'infobip':var _0x1438bf=_0x2d7c8f[_0xd138('0x5b')][_0xd138('0x8b')][0x0];if(_0x1438bf[_0xd138('0x83')]&&_0x1438bf[_0xd138('0x2a')][_0xd138('0xd2')]===_0xd138('0xd3')){_0x508284=_0x1438bf[_0xd138('0x2a')][_0xd138('0xd2')];return db[_0xd138('0xc8')][_0xd138('0x60')]({'where':{'messageId':_0x1438bf[_0xd138('0x83')]}});}break;case _0xd138('0x8f'):if(_0x2d7c8f[_0xd138('0x5b')]['messageId']&&_0x2d7c8f[_0xd138('0x5b')]['status']){_0x508284=_0x2d7c8f[_0xd138('0x5b')][_0xd138('0x2a')];return db[_0xd138('0xc8')][_0xd138('0x60')]({'where':{'messageId':_0x2d7c8f[_0xd138('0x5b')][_0xd138('0x83')]}});}break;case _0xd138('0xd4'):if(_0x2d7c8f[_0xd138('0x5b')][0x0]['message']['id']){_0x508284=_0x2d7c8f['body'][0x0][_0xd138('0x52')];return db['SmsMessage'][_0xd138('0x60')]({'where':{'messageId':_0x2d7c8f[_0xd138('0x5b')][0x0][_0xd138('0x26')]['id']}});}break;case'intelepeer':if(_0x2d7c8f[_0xd138('0x5b')]['redif']&&_0x2d7c8f[_0xd138('0x5b')]['status']){_0x508284=_0x2d7c8f[_0xd138('0x5b')][_0xd138('0x2a')];return db[_0xd138('0xc8')][_0xd138('0x60')]({'where':{'messageId':_0x2d7c8f[_0xd138('0x5b')]['redif']}});}break;}}})[_0xd138('0x37')](handleEntityNotFound(_0x5f0f50,null))[_0xd138('0x37')](function(_0x720b51){if(_0x720b51){_0x445e82=_0x720b51;switch(_0x2a6fc1[_0xd138('0x52')]){case _0xd138('0xcc'):if(_0x508284===_0xd138('0xd3')){return _0x445e82[_0xd138('0x34')]({'read':!![]});}else{logger[_0xd138('0x25')]('SmsAccount,\x20%s,\x20%s,\x20%s','status',_0xd138('0xcc'),util[_0xd138('0xcb')](_0x2d7c8f['body'],{'showHidden':![],'depth':null}));}break;case _0xd138('0xce'):if(_0x508284==='1'){return _0x445e82[_0xd138('0x34')]({'read':!![]});}else{logger['error'](_0xd138('0x22'),_0xd138('0x2a'),_0xd138('0xcc'),util[_0xd138('0xcb')](_0x2d7c8f[_0xd138('0x5b')],{'showHidden':![],'depth':null}));}break;case _0xd138('0x85'):if(!_0x2d7c8f[_0xd138('0x5b')]['error_code']&&_0x508284>=0xc8&&_0x508284<=0xce){return _0x445e82[_0xd138('0x34')]({'read':!![]});}else{logger[_0xd138('0x25')]('SmsAccount,\x20%s,\x20%s,\x20%s',_0xd138('0x2a'),_0xd138('0x85'),util[_0xd138('0xcb')](_0x2d7c8f[_0xd138('0x5b')],{'showHidden':![],'depth':null}));}break;case _0xd138('0x8a'):var _0x1189d3=_0x2d7c8f[_0xd138('0x5b')][_0xd138('0x8b')][0x0];if(_0x1189d3[_0xd138('0x2a')]['groupName']===_0xd138('0xd3')){return _0x445e82[_0xd138('0x34')]({'read':!![]});}else{logger[_0xd138('0x25')]('SmsAccount,\x20%s,\x20%s,\x20%s',_0xd138('0x2a'),'infobip',util[_0xd138('0xcb')](_0x2d7c8f[_0xd138('0x5b')],{'showHidden':![],'depth':null}));}break;case _0xd138('0x8f'):if(_0x508284==_0xd138('0xd5')||_0x508284==_0xd138('0xd6')){return _0x445e82[_0xd138('0x34')]({'read':!![]});}else{logger[_0xd138('0x25')](_0xd138('0x22'),_0xd138('0x2a'),_0xd138('0x8f'),util[_0xd138('0xcb')](_0x2d7c8f[_0xd138('0x5b')],{'showHidden':![],'depth':null}));}break;case _0xd138('0xd4'):if(_0x508284==_0xd138('0xd7')){return _0x445e82['update']({'read':!![]});}else{logger[_0xd138('0x25')]('SmsAccount,\x20%s,\x20%s,\x20%s','status',_0xd138('0xd4'),util[_0xd138('0xcb')](_0x2d7c8f[_0xd138('0x5b')],{'showHidden':![],'depth':null}));}break;case _0xd138('0x91'):if(_0x508284==='DELIVRD'||_0x508284===_0xd138('0xd8')){return _0x445e82[_0xd138('0x34')]({'read':!![]});}else{logger['error'](_0xd138('0x22'),_0xd138('0x2a'),_0xd138('0x91'),util[_0xd138('0xcb')](_0x2d7c8f[_0xd138('0x5b')],{'showHidden':![],'depth':null}));}break;}return _0x445e82;}})['then'](respondWithResult(_0x5f0f50,null))['catch'](handleError(_0x5f0f50,null));};exports['statusGet']=function(_0x4dba98,_0x53a57e,_0xbb716d){var _0x3b85eb,_0x193eab,_0x5d7e87;return db['SmsAccount'][_0xd138('0x60')]({'where':{'id':_0x4dba98[_0xd138('0x59')]['id']}})[_0xd138('0x37')](handleEntityNotFound(_0x53a57e,null))['then'](function(_0x16e4ab){if(_0x16e4ab){_0x5d7e87=_0x16e4ab;logger[_0xd138('0x21')](_0xd138('0x22'),_0xd138('0x2a'),'received\x20delivery\x20report\x20from',_0x16e4ab[_0xd138('0x52')],util['inspect'](_0x4dba98[_0xd138('0x44')],{'showHidden':![],'depth':null}));switch(_0x16e4ab[_0xd138('0x52')]){case _0xd138('0x8c'):if(_0x4dba98[_0xd138('0x44')]['message-id']&&_0x4dba98[_0xd138('0x44')]['state']){_0x193eab=_0x4dba98[_0xd138('0x44')][_0xd138('0xd9')];return db[_0xd138('0xc8')][_0xd138('0x60')]({'where':{'messageId':_0x4dba98[_0xd138('0x44')][_0xd138('0xda')]}});}break;}}})[_0xd138('0x37')](handleEntityNotFound(_0x53a57e,null))['then'](function(_0x5e8e3f){if(_0x5e8e3f){_0x3b85eb=_0x5e8e3f;switch(_0x5d7e87['type']){case _0xd138('0x8c'):if(_0x193eab==='2'||_0x193eab==='6'){return _0x3b85eb['update']({'read':!![]});}else{logger[_0xd138('0x25')](_0xd138('0x22'),'status',_0xd138('0x8c'),util[_0xd138('0xcb')](_0x4dba98[_0xd138('0x44')],{'showHidden':![],'depth':null}));};break;}return _0x3b85eb;}})[_0xd138('0x37')](respondWithResult(_0x53a57e,null))[_0xd138('0x29')](handleError(_0x53a57e,null));};exports[_0xd138('0xdb')]=function(_0x416076,_0x32322e,_0x5478df){return db[_0xd138('0x3e')]['find']({'where':{'id':_0x416076[_0xd138('0x59')]['id']}})[_0xd138('0x37')](handleEntityNotFound(_0x32322e,null))[_0xd138('0x37')](function(_0x120f60){if(_0x120f60){return _0x120f60['addAgents'](_0x416076[_0xd138('0x5b')]['ids'],_[_0xd138('0x9c')](_0x416076[_0xd138('0x5b')],[_0xd138('0x6b'),'id'])||{})[_0xd138('0x9e')](function(_0x1fc0ed){for(var _0x596aeb=0x0;_0x596aeb<_0x416076[_0xd138('0x5b')]['ids'][_0xd138('0x49')];_0x596aeb+=0x1){socket[_0xd138('0xdc')](_0xd138('0xdd'),{'UserId':_0x416076[_0xd138('0x5b')]['ids'][_0x596aeb],'SmsAccountId':_0x416076['params']['id']});}return _0x1fc0ed;});}})[_0xd138('0x37')](respondWithResult(_0x32322e,null))['catch'](handleError(_0x32322e,null));};exports[_0xd138('0xde')]=function(_0x188917,_0x4bf19f,_0x3047bb){return db[_0xd138('0x3e')][_0xd138('0x60')]({'where':{'id':_0x188917[_0xd138('0x59')]['id']}})['then'](handleEntityNotFound(_0x4bf19f,null))[_0xd138('0x37')](function(_0x22ed64){if(_0x22ed64){return _0x22ed64[_0xd138('0xde')](_0x188917[_0xd138('0x44')][_0xd138('0x6b')])['then'](function(){if(_['isArray'](_0x188917[_0xd138('0x44')][_0xd138('0x6b')])){for(var _0x1973b0=0x0;_0x1973b0<_0x188917[_0xd138('0x44')][_0xd138('0x6b')]['length'];_0x1973b0+=0x1){socket[_0xd138('0xdc')]('userSmsAccount:remove',{'UserId':Number(_0x188917[_0xd138('0x44')]['ids'][_0x1973b0]),'SmsAccountId':Number(_0x188917[_0xd138('0x59')]['id'])});}}else{socket['emit']('userSmsAccount:remove',{'UserId':Number(_0x188917[_0xd138('0x44')]['ids']),'SmsAccountId':Number(_0x188917[_0xd138('0x59')]['id'])});}});}})[_0xd138('0x37')](respondWithStatusCode(_0x4bf19f,null))[_0xd138('0x29')](handleError(_0x4bf19f,null));};exports['getAgents']=function(_0x221a25,_0x3249e3,_0x5ff852){var _0x591746={};var _0x5ae12d={};var _0x10d675;var _0x4d409d;return db[_0xd138('0x3e')][_0xd138('0x69')]({'where':{'id':_0x221a25[_0xd138('0x59')]['id']}})[_0xd138('0x37')](handleEntityNotFound(_0x3249e3,null))[_0xd138('0x37')](function(_0x2beb64){if(_0x2beb64){_0x10d675=_0x2beb64;_0x5ae12d[_0xd138('0x42')]=_[_0xd138('0x43')](db[_0xd138('0xa7')]['rawAttributes']);_0x5ae12d[_0xd138('0x44')]=_[_0xd138('0x43')](_0x221a25[_0xd138('0x44')]);_0x5ae12d[_0xd138('0x45')]=_[_0xd138('0x46')](_0x5ae12d[_0xd138('0x42')],_0x5ae12d[_0xd138('0x44')]);_0x591746[_0xd138('0x47')]=_[_0xd138('0x46')](_0x5ae12d[_0xd138('0x42')],qs[_0xd138('0x48')](_0x221a25['query'][_0xd138('0x48')]));_0x591746[_0xd138('0x47')]=_0x591746['attributes'][_0xd138('0x49')]?_0x591746['attributes']:_0x5ae12d[_0xd138('0x42')];_0x591746[_0xd138('0x4c')]=qs['sort'](_0x221a25[_0xd138('0x44')][_0xd138('0x4d')]);_0x591746['where']=qs[_0xd138('0x45')](_[_0xd138('0x6e')](_0x221a25[_0xd138('0x44')],_0x5ae12d[_0xd138('0x45')]));if(_0x221a25['query'][_0xd138('0x4e')]){_0x591746['where']=_[_0xd138('0x4f')](_0x591746[_0xd138('0x50')],{'$or':_[_0xd138('0x51')](_0x591746[_0xd138('0x47')],function(_0x4362d5){var _0x4e4473={};_0x4e4473[_0x4362d5]={'$like':'%'+_0x221a25[_0xd138('0x44')][_0xd138('0x4e')]+'%'};return _0x4e4473;})});}_0x591746=_['merge']({},_0x591746,_0x221a25[_0xd138('0x54')]);return _0x10d675[_0xd138('0xdf')](_0x591746);}})['then'](function(_0x39e3aa){if(_0x39e3aa){_0x4d409d=_0x39e3aa[_0xd138('0x49')];if(!_0x221a25[_0xd138('0x44')][_0xd138('0x4a')](_0xd138('0x4b'))){_0x591746[_0xd138('0x2f')]=qs[_0xd138('0x2f')](_0x221a25[_0xd138('0x44')][_0xd138('0x2f')]);_0x591746['offset']=qs['offset'](_0x221a25[_0xd138('0x44')]['offset']);}return _0x10d675[_0xd138('0xdf')](_0x591746);}})[_0xd138('0x37')](function(_0x1ef17f){if(_0x1ef17f){return _0x1ef17f?{'count':_0x4d409d,'rows':_0x1ef17f}:null;}})[_0xd138('0x37')](respondWithResult(_0x3249e3,null))[_0xd138('0x29')](handleError(_0x3249e3,null));};