Built motion from commit 9d1906d1.|2.5.40
[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 _0x2b29=['AttachmentId','UserId','User','waitForTheAssignedAgent','*,*,*,*','Start','startRouting','SmsAccount,\x20%s,\x20%s,\x20%s,\x20%s','entity\x20found','twilio','send','<?xml\x20version=\x221.0\x22\x20encoding=\x22UTF-8\x22?>\x0a<Response></Response>','json','sequelize','transaction','Transaction','ISOLATION_LEVELS','READ_COMMITTED','SmsApplication','findAndCountAll','finally','getInteractions','CmContact','Contact','Owner','fullname','Tag','Tags','color','tag','to\x20is\x20mandatory','List','user','out','spread','dataValues','Messages','received\x20delivery\x20report\x20from','skebby_dispatch_id','statusInt','requestid','status_code','groupName','DELIVERED','redif','inspect','message-delivered','DELIVRD','ACCEPTD','statusGet','csc','message-id','state','addAgents','omit','emit','userSmsAccount:save','removeAgents','isArray','userSmsAccount:remove','getAgents','eml-format','rimraf','zip-dir','fast-json-patch','bluebird','util','path','sox','to-csv','fs-extra','lodash','squel','crypto','desk.js','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','redis','defaults','localhost','socket.io-emitter','./smsAccount.socket','register','jayson/promise','then','SmsAccount,\x20%s,\x20%s','debug','SmsAccount,\x20%s,\x20%s,\x20%s','request\x20sent','stringify','error','code','message','info','result','catch','sendStatus','status','offset','undefined','limit','count','set','apply','reject','update','get','UserProfileResource','destroy','end','stack','index','Pause','map','SmsAccount','rawAttributes','type','model','name','query','keys','attributes','intersection','fields','length','hasOwnProperty','nolimit','order','sort','where','filters','filter','VIRTUAL','options','includeAll','include','findAll','rows','params','mandatoryDispositionPause','merge','find','create','body','role','UserProfileSection','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','describe','addDisposition','Disposition','SmsAccountId','removeDispositions','ids','addAnswer','CannedAnswer','findOne','pick','removeAnswers','notify','sms','Applications','applications','orderBy','priority','asc','account','Sequelize','ValidationError','no\x20available\x20attributes','difference','createdAt','updatedAt','CompanyId','ListId','mobile','from','From','messageId','MessageSid','skebby','sender','text','connectel','clicksend','message_id','plivo','Text','MessageUUID','infobip','results','originatingAddress','segmentedMessage','clickatell','fromNumber','bandwidth','intelepeer','refid','isNil','from\x20is\x20mandatory','body\x20is\x20mandatory\x20and\x20not\x20empty','mapKey','mapKey\x20is\x20mandatory,\x20please\x20use\x20one\x20of\x20these:\x20','includes','mapKey\x20invalid,\x20please\x20use\x20one\x20of\x20these:\x20','CmList','Contacts','DESC','list','contact','SmsInteraction','interaction','created','push','close','unmanaged','SmsMessage','ContactId'];(function(_0x2ae2ad,_0xac5b0c){var _0x26dbd7=function(_0x5e685b){while(--_0x5e685b){_0x2ae2ad['push'](_0x2ae2ad['shift']());}};_0x26dbd7(++_0xac5b0c);}(_0x2b29,0x121));var _0x92b2=function(_0x54cbd6,_0x6a3041){_0x54cbd6=_0x54cbd6-0x0;var _0x4e0a14=_0x2b29[_0x54cbd6];return _0x4e0a14;};'use strict';var emlformat=require(_0x92b2('0x0'));var rimraf=require(_0x92b2('0x1'));var zipdir=require(_0x92b2('0x2'));var jsonpatch=require(_0x92b2('0x3'));var rp=require('request-promise');var moment=require('moment');var BPromise=require(_0x92b2('0x4'));var Mustache=require('mustache');var util=require(_0x92b2('0x5'));var path=require(_0x92b2('0x6'));var sox=require(_0x92b2('0x7'));var csv=require(_0x92b2('0x8'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x92b2('0x9'));var _=require(_0x92b2('0xa'));var squel=require(_0x92b2('0xb'));var crypto=require(_0x92b2('0xc'));var jsforce=require('jsforce');var deskjs=require(_0x92b2('0xd'));var toCsv=require(_0x92b2('0x8'));var querystring=require(_0x92b2('0xe'));var Papa=require('papaparse');var Redis=require(_0x92b2('0xf'));var authService=require(_0x92b2('0x10'));var qs=require(_0x92b2('0x11'));var as=require(_0x92b2('0x12'));var hardwareService=require(_0x92b2('0x13'));var logger=require(_0x92b2('0x14'))(_0x92b2('0x15'));var utils=require(_0x92b2('0x16'));var config=require(_0x92b2('0x17'));var licenseUtil=require(_0x92b2('0x18'));var db=require('../../mysqldb')['db'];config[_0x92b2('0x19')]=_[_0x92b2('0x1a')](config[_0x92b2('0x19')],{'host':_0x92b2('0x1b'),'port':0x18eb});var socket=require(_0x92b2('0x1c'))(new Redis(config['redis']));require(_0x92b2('0x1d'))[_0x92b2('0x1e')](socket);var jayson=require(_0x92b2('0x1f'));var client=jayson['client']['http']({'port':0x232c});function respondWithRpcPromise(_0x50d502,_0x137394,_0x1f4ec5,_0x2015ac){return new BPromise(function(_0x5adb94,_0x48996a){var _0x295977=_0x2015ac||client;return _0x295977['request'](_0x50d502,_0x1f4ec5)[_0x92b2('0x20')](function(_0x119bdd){logger['info'](_0x92b2('0x21'),_0x137394,'request\x20sent');logger[_0x92b2('0x22')](_0x92b2('0x23'),_0x137394,_0x92b2('0x24'),JSON[_0x92b2('0x25')](_0x119bdd));if(_0x119bdd[_0x92b2('0x26')]){if(_0x119bdd['error'][_0x92b2('0x27')]===0x1f4){logger[_0x92b2('0x26')]('SmsAccount,\x20%s,\x20%s',_0x137394,_0x119bdd[_0x92b2('0x26')][_0x92b2('0x28')]);return _0x48996a(_0x119bdd['error']['message']);}logger[_0x92b2('0x26')](_0x92b2('0x21'),_0x137394,_0x119bdd[_0x92b2('0x26')][_0x92b2('0x28')]);return _0x5adb94(_0x119bdd[_0x92b2('0x26')]['message']);}else{logger[_0x92b2('0x29')](_0x92b2('0x21'),_0x137394,'request\x20sent');_0x5adb94(_0x119bdd[_0x92b2('0x2a')][_0x92b2('0x28')]);}})[_0x92b2('0x2b')](function(_0x616ace){logger[_0x92b2('0x26')](_0x92b2('0x21'),_0x137394,_0x616ace);_0x48996a(_0x616ace);});});}function respondWithStatusCode(_0x9f08b9,_0x2c5279){_0x2c5279=_0x2c5279||0xcc;return function(_0x4d322b){if(_0x4d322b){return _0x9f08b9[_0x92b2('0x2c')](_0x2c5279);}return _0x9f08b9['status'](_0x2c5279)['end']();};}function respondWithResult(_0x34c774,_0x575329){_0x575329=_0x575329||0xc8;return function(_0x1206ef){if(_0x1206ef){return _0x34c774[_0x92b2('0x2d')](_0x575329)['json'](_0x1206ef);}};}function respondWithFilteredResult(_0x1a88d1,_0x3d7817){return function(_0x3647f7){if(_0x3647f7){var _0x581a79=typeof _0x3d7817[_0x92b2('0x2e')]===_0x92b2('0x2f')&&typeof _0x3d7817[_0x92b2('0x30')]===_0x92b2('0x2f');var _0x3bcb4d=_0x3647f7[_0x92b2('0x31')];var _0x30e397=_0x581a79?0x0:_0x3d7817['offset'];var _0x50732e=_0x581a79?_0x3647f7[_0x92b2('0x31')]:_0x3d7817[_0x92b2('0x2e')]+_0x3d7817[_0x92b2('0x30')];var _0x34fb89;if(_0x50732e>=_0x3bcb4d){_0x50732e=_0x3bcb4d;_0x34fb89=0xc8;}else{_0x34fb89=0xce;}_0x1a88d1[_0x92b2('0x2d')](_0x34fb89);return _0x1a88d1[_0x92b2('0x32')]('Content-Range',_0x30e397+'-'+_0x50732e+'/'+_0x3bcb4d)['json'](_0x3647f7);}return null;};}function patchUpdates(_0x1afac0){return function(_0x438246){try{jsonpatch[_0x92b2('0x33')](_0x438246,_0x1afac0,!![]);}catch(_0xea8ce2){return BPromise[_0x92b2('0x34')](_0xea8ce2);}return _0x438246['save']();};}function saveUpdates(_0x5e2c29,_0x511771){return function(_0x1e022e){if(_0x1e022e){return _0x1e022e[_0x92b2('0x35')](_0x5e2c29)[_0x92b2('0x20')](function(_0x2bca07){return _0x2bca07;});}return null;};}function removeEntity(_0x2c7005,_0x2e7cd4){return function(_0x1251fe){if(_0x1251fe){return _0x1251fe['destroy']()[_0x92b2('0x20')](function(){var _0x9ddde3=_0x1251fe[_0x92b2('0x36')]({'plain':!![]});var _0x4fd086='SmsAccounts';return db[_0x92b2('0x37')][_0x92b2('0x38')]({'where':{'type':_0x4fd086,'resourceId':_0x9ddde3['id']}})[_0x92b2('0x20')](function(){return _0x1251fe;});})['then'](function(){_0x2c7005['status'](0xcc)[_0x92b2('0x39')]();});}};}function handleEntityNotFound(_0x3ace87,_0x6dfec){return function(_0x507636){if(!_0x507636){_0x3ace87['sendStatus'](0x194);}return _0x507636;};}function handleError(_0x64e342,_0x3f811c){_0x3f811c=_0x3f811c||0x1f4;return function(_0x1d7da3){logger['error'](_0x1d7da3[_0x92b2('0x3a')]);if(_0x1d7da3['name']){delete _0x1d7da3['name'];}_0x64e342[_0x92b2('0x2d')](_0x3f811c)['send'](_0x1d7da3);};}exports[_0x92b2('0x3b')]=function(_0xd025cf,_0x420d7b){var _0xfaf811={'include':[{'model':db[_0x92b2('0x3c')],'as':'mandatoryDispositionPause'}]},_0x5ed50d={},_0x17b62f={'count':0x0,'rows':[]};var _0x1a4003=_[_0x92b2('0x3d')](db[_0x92b2('0x3e')][_0x92b2('0x3f')],function(_0x4b1ada){return{'name':_0x4b1ada['fieldName'],'type':_0x4b1ada[_0x92b2('0x40')]['key']};});_0x5ed50d[_0x92b2('0x41')]=_[_0x92b2('0x3d')](_0x1a4003,_0x92b2('0x42'));_0x5ed50d[_0x92b2('0x43')]=_[_0x92b2('0x44')](_0xd025cf['query']);_0x5ed50d['filters']=_['intersection'](_0x5ed50d[_0x92b2('0x41')],_0x5ed50d[_0x92b2('0x43')]);_0xfaf811[_0x92b2('0x45')]=_[_0x92b2('0x46')](_0x5ed50d['model'],qs[_0x92b2('0x47')](_0xd025cf[_0x92b2('0x43')]['fields']));_0xfaf811['attributes']=_0xfaf811['attributes'][_0x92b2('0x48')]?_0xfaf811[_0x92b2('0x45')]:_0x5ed50d[_0x92b2('0x41')];if(!_0xd025cf[_0x92b2('0x43')][_0x92b2('0x49')](_0x92b2('0x4a'))){_0xfaf811[_0x92b2('0x30')]=qs['limit'](_0xd025cf['query'][_0x92b2('0x30')]);_0xfaf811[_0x92b2('0x2e')]=qs[_0x92b2('0x2e')](_0xd025cf[_0x92b2('0x43')][_0x92b2('0x2e')]);}_0xfaf811[_0x92b2('0x4b')]=qs['sort'](_0xd025cf[_0x92b2('0x43')][_0x92b2('0x4c')]);_0xfaf811[_0x92b2('0x4d')]=qs[_0x92b2('0x4e')](_['pick'](_0xd025cf['query'],_0x5ed50d['filters']),_0x1a4003);if(_0xd025cf[_0x92b2('0x43')][_0x92b2('0x4f')]){_0xfaf811[_0x92b2('0x4d')]=_['merge'](_0xfaf811[_0x92b2('0x4d')],{'$or':_['map'](_0x1a4003,function(_0x1b06f3){if(_0x1b06f3['type']!==_0x92b2('0x50')){var _0x59d991={};_0x59d991[_0x1b06f3[_0x92b2('0x42')]]={'$like':'%'+_0xd025cf[_0x92b2('0x43')][_0x92b2('0x4f')]+'%'};return _0x59d991;}})});}_0xfaf811=_['merge']({},_0xfaf811,_0xd025cf[_0x92b2('0x51')]);var _0xc77035={'where':_0xfaf811[_0x92b2('0x4d')]};return db[_0x92b2('0x3e')]['count'](_0xc77035)['then'](function(_0x4f44bd){_0x17b62f[_0x92b2('0x31')]=_0x4f44bd;if(_0xd025cf[_0x92b2('0x43')][_0x92b2('0x52')]){_0xfaf811[_0x92b2('0x53')]=[{'all':!![]}];}return db[_0x92b2('0x3e')][_0x92b2('0x54')](_0xfaf811);})[_0x92b2('0x20')](function(_0x163f6d){_0x17b62f[_0x92b2('0x55')]=_0x163f6d;return _0x17b62f;})[_0x92b2('0x20')](respondWithFilteredResult(_0x420d7b,_0xfaf811))[_0x92b2('0x2b')](handleError(_0x420d7b,null));};exports['show']=function(_0x3fa415,_0x47cdfa){var _0x28353a={'raw':![],'where':{'id':_0x3fa415[_0x92b2('0x56')]['id']},'include':[{'model':db[_0x92b2('0x3c')],'as':_0x92b2('0x57')}]},_0x53668c={};_0x53668c[_0x92b2('0x41')]=_[_0x92b2('0x44')](db[_0x92b2('0x3e')][_0x92b2('0x3f')]);_0x53668c[_0x92b2('0x43')]=_['keys'](_0x3fa415[_0x92b2('0x43')]);_0x53668c[_0x92b2('0x4e')]=_[_0x92b2('0x46')](_0x53668c[_0x92b2('0x41')],_0x53668c['query']);_0x28353a['attributes']=_[_0x92b2('0x46')](_0x53668c[_0x92b2('0x41')],qs[_0x92b2('0x47')](_0x3fa415[_0x92b2('0x43')][_0x92b2('0x47')]));_0x28353a[_0x92b2('0x45')]=_0x28353a[_0x92b2('0x45')][_0x92b2('0x48')]?_0x28353a[_0x92b2('0x45')]:_0x53668c[_0x92b2('0x41')];if(_0x3fa415['query'][_0x92b2('0x52')]){_0x28353a[_0x92b2('0x53')]=[{'all':!![]}];}_0x28353a=_[_0x92b2('0x58')]({},_0x28353a,_0x3fa415[_0x92b2('0x51')]);return db[_0x92b2('0x3e')][_0x92b2('0x59')](_0x28353a)[_0x92b2('0x20')](handleEntityNotFound(_0x47cdfa,null))[_0x92b2('0x20')](respondWithResult(_0x47cdfa,null))[_0x92b2('0x2b')](handleError(_0x47cdfa,null));};exports[_0x92b2('0x5a')]=function(_0x3c98e0,_0x2ba021){return db[_0x92b2('0x3e')]['create'](_0x3c98e0[_0x92b2('0x5b')],{})[_0x92b2('0x20')](function(_0x10ade9){var _0x27ee2c=_0x3c98e0['user'][_0x92b2('0x36')]({'plain':!![]});if(!_0x27ee2c)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x27ee2c[_0x92b2('0x5c')]==='user'){var _0x1c170c=_0x10ade9[_0x92b2('0x36')]({'plain':!![]});var _0x4de582='SmsAccounts';return db[_0x92b2('0x5d')][_0x92b2('0x59')]({'where':{'name':_0x4de582,'userProfileId':_0x27ee2c[_0x92b2('0x5e')]},'raw':!![]})[_0x92b2('0x20')](function(_0x5cf466){if(_0x5cf466&&_0x5cf466[_0x92b2('0x5f')]===0x0){return db['UserProfileResource'][_0x92b2('0x5a')]({'name':_0x1c170c[_0x92b2('0x42')],'resourceId':_0x1c170c['id'],'type':_0x5cf466[_0x92b2('0x42')],'sectionId':_0x5cf466['id']},{})['then'](function(){return _0x10ade9;});}else{return _0x10ade9;}})['catch'](function(_0x2af3d6){logger[_0x92b2('0x26')](_0x92b2('0x60'),_0x2af3d6);throw _0x2af3d6;});}return _0x10ade9;})[_0x92b2('0x20')](respondWithResult(_0x2ba021,0xc9))['catch'](handleError(_0x2ba021,null));};exports[_0x92b2('0x35')]=function(_0x287184,_0x2c6c66){if(_0x287184[_0x92b2('0x5b')]['id']){delete _0x287184[_0x92b2('0x5b')]['id'];}return db[_0x92b2('0x3e')][_0x92b2('0x59')]({'where':{'id':_0x287184[_0x92b2('0x56')]['id']},'include':[{'model':db['Pause'],'as':'mandatoryDispositionPause'}]})[_0x92b2('0x20')](handleEntityNotFound(_0x2c6c66,null))[_0x92b2('0x20')](saveUpdates(_0x287184[_0x92b2('0x5b')],null))[_0x92b2('0x20')](respondWithResult(_0x2c6c66,null))['catch'](handleError(_0x2c6c66,null));};exports[_0x92b2('0x38')]=function(_0x53c9da,_0x5defa2){return db[_0x92b2('0x3e')][_0x92b2('0x59')]({'where':{'id':_0x53c9da[_0x92b2('0x56')]['id']}})[_0x92b2('0x20')](handleEntityNotFound(_0x5defa2,null))[_0x92b2('0x20')](removeEntity(_0x5defa2,null))[_0x92b2('0x2b')](handleError(_0x5defa2,null));};exports[_0x92b2('0x61')]=function(_0x29da24,_0x357c9a){return db[_0x92b2('0x3e')][_0x92b2('0x61')]()[_0x92b2('0x20')](respondWithResult(_0x357c9a,null))[_0x92b2('0x2b')](handleError(_0x357c9a,null));};exports[_0x92b2('0x62')]=function(_0xfb972d,_0x5738d1,_0x57129e){if(_0xfb972d[_0x92b2('0x5b')]['id']){delete _0xfb972d[_0x92b2('0x5b')]['id'];}return db[_0x92b2('0x3e')][_0x92b2('0x59')]({'where':{'id':_0xfb972d['params']['id']}})[_0x92b2('0x20')](handleEntityNotFound(_0x5738d1,null))[_0x92b2('0x20')](function(_0x389d13){if(_0x389d13){_0xfb972d['body']['SmsAccountId']=_0x389d13['id'];return db[_0x92b2('0x63')][_0x92b2('0x5a')](_0xfb972d[_0x92b2('0x5b')]);}})[_0x92b2('0x20')](respondWithResult(_0x5738d1,null))[_0x92b2('0x2b')](handleError(_0x5738d1,null));};exports['getDispositions']=function(_0x3bafe0,_0x4632a6,_0x14e3d9){var _0x3719a3={'raw':![],'where':{}};var _0x3002a1={};var _0x2cbe66={'count':0x0,'rows':[]};return db[_0x92b2('0x3e')]['findOne']({'where':{'id':_0x3bafe0[_0x92b2('0x56')]['id']}})[_0x92b2('0x20')](handleEntityNotFound(_0x4632a6,null))[_0x92b2('0x20')](function(_0x1fb3a5){if(_0x1fb3a5){_0x3002a1[_0x92b2('0x41')]=_[_0x92b2('0x44')](db[_0x92b2('0x63')][_0x92b2('0x3f')]);_0x3002a1['query']=_[_0x92b2('0x44')](_0x3bafe0[_0x92b2('0x43')]);_0x3002a1['filters']=_['intersection'](_0x3002a1[_0x92b2('0x41')],_0x3002a1[_0x92b2('0x43')]);_0x3719a3[_0x92b2('0x45')]=_[_0x92b2('0x46')](_0x3002a1[_0x92b2('0x41')],qs[_0x92b2('0x47')](_0x3bafe0['query'][_0x92b2('0x47')]));_0x3719a3['attributes']=_0x3719a3[_0x92b2('0x45')][_0x92b2('0x48')]?_0x3719a3['attributes']:_0x3002a1[_0x92b2('0x41')];if(!_0x3bafe0[_0x92b2('0x43')]['hasOwnProperty']('nolimit')){_0x3719a3[_0x92b2('0x30')]=qs[_0x92b2('0x30')](_0x3bafe0[_0x92b2('0x43')][_0x92b2('0x30')]);_0x3719a3[_0x92b2('0x2e')]=qs[_0x92b2('0x2e')](_0x3bafe0[_0x92b2('0x43')]['offset']);}_0x3719a3[_0x92b2('0x4b')]=qs['sort'](_0x3bafe0['query']['sort']);_0x3719a3['where']=qs[_0x92b2('0x4e')](_['pick'](_0x3bafe0[_0x92b2('0x43')],_0x3002a1['filters']));_0x3719a3[_0x92b2('0x4d')][_0x92b2('0x64')]=_0x1fb3a5['id'];if(_0x3bafe0[_0x92b2('0x43')][_0x92b2('0x4f')]){_0x3719a3['where']=_['merge'](_0x3719a3[_0x92b2('0x4d')],{'$or':_['map'](_0x3719a3[_0x92b2('0x45')],function(_0x1f97c4){var _0x18b041={};_0x18b041[_0x1f97c4]={'$like':'%'+_0x3bafe0[_0x92b2('0x43')][_0x92b2('0x4f')]+'%'};return _0x18b041;})});}_0x3719a3=_[_0x92b2('0x58')]({},_0x3719a3,_0x3bafe0[_0x92b2('0x51')]);return db[_0x92b2('0x63')][_0x92b2('0x31')]({'where':_0x3719a3[_0x92b2('0x4d')]})[_0x92b2('0x20')](function(_0x5d9af0){_0x2cbe66[_0x92b2('0x31')]=_0x5d9af0;if(_0x3bafe0['query']['includeAll']){_0x3719a3[_0x92b2('0x53')]=[{'all':!![]}];}return db['Disposition'][_0x92b2('0x54')](_0x3719a3);})[_0x92b2('0x20')](function(_0x3c614e){_0x2cbe66[_0x92b2('0x55')]=_0x3c614e;return _0x2cbe66;});}})[_0x92b2('0x20')](respondWithFilteredResult(_0x4632a6,_0x3719a3))[_0x92b2('0x2b')](handleError(_0x4632a6,null));};exports['removeDispositions']=function(_0x22ce75,_0x28a5ed,_0x5cae04){return db[_0x92b2('0x3e')][_0x92b2('0x59')]({'where':{'id':_0x22ce75[_0x92b2('0x56')]['id']}})[_0x92b2('0x20')](handleEntityNotFound(_0x28a5ed,null))[_0x92b2('0x20')](function(_0x8fd87b){if(_0x8fd87b){return _0x8fd87b[_0x92b2('0x65')](_0x22ce75[_0x92b2('0x43')][_0x92b2('0x66')]);}})[_0x92b2('0x20')](respondWithStatusCode(_0x28a5ed,null))[_0x92b2('0x2b')](handleError(_0x28a5ed,null));};exports[_0x92b2('0x67')]=function(_0x3cba14,_0x57c543,_0x3b0760){if(_0x3cba14['body']['id']){delete _0x3cba14[_0x92b2('0x5b')]['id'];}return db[_0x92b2('0x3e')][_0x92b2('0x59')]({'where':{'id':_0x3cba14[_0x92b2('0x56')]['id']}})['then'](handleEntityNotFound(_0x57c543,null))[_0x92b2('0x20')](function(_0x4e7a82){if(_0x4e7a82){_0x3cba14[_0x92b2('0x5b')]['SmsAccountId']=_0x4e7a82['id'];return db[_0x92b2('0x68')][_0x92b2('0x5a')](_0x3cba14[_0x92b2('0x5b')]);}})[_0x92b2('0x20')](respondWithResult(_0x57c543,null))[_0x92b2('0x2b')](handleError(_0x57c543,null));};exports['getAnswers']=function(_0x1df71f,_0x4a49ba,_0x1a2a84){var _0x7c98f7={'raw':![],'where':{}};var _0x48f7f7={};var _0x1a961c={'count':0x0,'rows':[]};return db[_0x92b2('0x3e')][_0x92b2('0x69')]({'where':{'id':_0x1df71f[_0x92b2('0x56')]['id']}})[_0x92b2('0x20')](handleEntityNotFound(_0x4a49ba,null))[_0x92b2('0x20')](function(_0x527866){if(_0x527866){_0x48f7f7[_0x92b2('0x41')]=_[_0x92b2('0x44')](db[_0x92b2('0x68')][_0x92b2('0x3f')]);_0x48f7f7[_0x92b2('0x43')]=_[_0x92b2('0x44')](_0x1df71f[_0x92b2('0x43')]);_0x48f7f7[_0x92b2('0x4e')]=_[_0x92b2('0x46')](_0x48f7f7['model'],_0x48f7f7[_0x92b2('0x43')]);_0x7c98f7[_0x92b2('0x45')]=_['intersection'](_0x48f7f7[_0x92b2('0x41')],qs[_0x92b2('0x47')](_0x1df71f[_0x92b2('0x43')]['fields']));_0x7c98f7[_0x92b2('0x45')]=_0x7c98f7['attributes']['length']?_0x7c98f7['attributes']:_0x48f7f7[_0x92b2('0x41')];if(!_0x1df71f[_0x92b2('0x43')]['hasOwnProperty'](_0x92b2('0x4a'))){_0x7c98f7['limit']=qs[_0x92b2('0x30')](_0x1df71f['query'][_0x92b2('0x30')]);_0x7c98f7[_0x92b2('0x2e')]=qs[_0x92b2('0x2e')](_0x1df71f[_0x92b2('0x43')][_0x92b2('0x2e')]);}_0x7c98f7[_0x92b2('0x4b')]=qs['sort'](_0x1df71f[_0x92b2('0x43')][_0x92b2('0x4c')]);_0x7c98f7[_0x92b2('0x4d')]=qs[_0x92b2('0x4e')](_[_0x92b2('0x6a')](_0x1df71f['query'],_0x48f7f7[_0x92b2('0x4e')]));_0x7c98f7[_0x92b2('0x4d')][_0x92b2('0x64')]=_0x527866['id'];if(_0x1df71f[_0x92b2('0x43')][_0x92b2('0x4f')]){_0x7c98f7[_0x92b2('0x4d')]=_[_0x92b2('0x58')](_0x7c98f7['where'],{'$or':_[_0x92b2('0x3d')](_0x7c98f7[_0x92b2('0x45')],function(_0x20aa34){var _0x68bab5={};_0x68bab5[_0x20aa34]={'$like':'%'+_0x1df71f[_0x92b2('0x43')][_0x92b2('0x4f')]+'%'};return _0x68bab5;})});}_0x7c98f7=_[_0x92b2('0x58')]({},_0x7c98f7,_0x1df71f[_0x92b2('0x51')]);return db[_0x92b2('0x68')][_0x92b2('0x31')]({'where':_0x7c98f7[_0x92b2('0x4d')]})[_0x92b2('0x20')](function(_0x538770){_0x1a961c['count']=_0x538770;if(_0x1df71f[_0x92b2('0x43')][_0x92b2('0x52')]){_0x7c98f7['include']=[{'all':!![]}];}return db[_0x92b2('0x68')][_0x92b2('0x54')](_0x7c98f7);})[_0x92b2('0x20')](function(_0x126e20){_0x1a961c[_0x92b2('0x55')]=_0x126e20;return _0x1a961c;});}})[_0x92b2('0x20')](respondWithFilteredResult(_0x4a49ba,_0x7c98f7))[_0x92b2('0x2b')](handleError(_0x4a49ba,null));};exports['removeAnswers']=function(_0x13adee,_0x50c752,_0x445df9){return db[_0x92b2('0x3e')]['find']({'where':{'id':_0x13adee[_0x92b2('0x56')]['id']}})[_0x92b2('0x20')](handleEntityNotFound(_0x50c752,null))[_0x92b2('0x20')](function(_0x25fbfe){if(_0x25fbfe){return _0x25fbfe[_0x92b2('0x6b')](_0x13adee[_0x92b2('0x43')][_0x92b2('0x66')]);}})[_0x92b2('0x20')](respondWithStatusCode(_0x50c752,null))['catch'](handleError(_0x50c752,null));};exports[_0x92b2('0x6c')]=function(_0x97cd2f,_0x113b45,_0x2dba2c){var _0x16fe20={'channel':_0x92b2('0x6d')};var _0x5150c7=[];var _0x6f755b=[];var _0x3e598e={};return db[_0x92b2('0x3e')][_0x92b2('0x59')]({'where':{'id':_0x97cd2f[_0x92b2('0x56')]['id']},'include':[{'model':db['SmsApplication'],'as':_0x92b2('0x6e')}]})[_0x92b2('0x20')](handleEntityNotFound(_0x113b45,null))['then'](function(_0x44b8e8){_0x16fe20['account']=_0x44b8e8;_0x16fe20[_0x92b2('0x6f')]=_[_0x92b2('0x70')](_0x44b8e8[_0x92b2('0x6e')],[_0x92b2('0x71')],[_0x92b2('0x72')]);if(_0x16fe20[_0x92b2('0x73')]['Applications']){delete _0x16fe20[_0x92b2('0x73')]['Applications'];}return db['CmContact'][_0x92b2('0x61')]();})['then'](function(_0x2585a8){if(!_0x2585a8){throw new db[(_0x92b2('0x74'))][(_0x92b2('0x75'))](_0x92b2('0x76'));}_0x5150c7=_[_0x92b2('0x77')](_[_0x92b2('0x44')](_0x2585a8),[_0x92b2('0x78'),_0x92b2('0x79')]);_0x6f755b=_['difference'](_['keys'](_0x2585a8),[_0x92b2('0x78'),_0x92b2('0x79'),_0x92b2('0x7a'),_0x92b2('0x7b')]);_0x16fe20[_0x92b2('0x5b')]={'mapKey':_0x92b2('0x7c')};if(_0x16fe20[_0x92b2('0x73')][_0x92b2('0x40')]){switch(_0x16fe20[_0x92b2('0x73')][_0x92b2('0x40')]){case'twilio':_0x16fe20[_0x92b2('0x5b')][_0x92b2('0x7d')]=_0x97cd2f['body'][_0x92b2('0x7e')];_0x16fe20[_0x92b2('0x5b')]['body']=_0x97cd2f[_0x92b2('0x5b')]['Body'];_0x16fe20[_0x92b2('0x5b')][_0x92b2('0x7f')]=_0x97cd2f[_0x92b2('0x5b')][_0x92b2('0x80')];break;case _0x92b2('0x81'):_0x16fe20[_0x92b2('0x5b')]['from']='+'+_0x97cd2f[_0x92b2('0x5b')][_0x92b2('0x82')];_0x16fe20[_0x92b2('0x5b')][_0x92b2('0x5b')]=_0x97cd2f[_0x92b2('0x5b')][_0x92b2('0x83')];break;case _0x92b2('0x84'):_0x16fe20[_0x92b2('0x5b')][_0x92b2('0x7d')]=_0x97cd2f[_0x92b2('0x5b')][_0x92b2('0x7d')];_0x16fe20[_0x92b2('0x5b')][_0x92b2('0x5b')]=_0x97cd2f[_0x92b2('0x5b')][_0x92b2('0x28')];break;case _0x92b2('0x85'):_0x16fe20['body'][_0x92b2('0x7d')]=_0x97cd2f[_0x92b2('0x5b')]['from'];_0x16fe20[_0x92b2('0x5b')][_0x92b2('0x5b')]=_0x97cd2f[_0x92b2('0x5b')][_0x92b2('0x5b')];_0x16fe20[_0x92b2('0x5b')][_0x92b2('0x7f')]=_0x97cd2f[_0x92b2('0x5b')][_0x92b2('0x86')];break;case _0x92b2('0x87'):_0x16fe20[_0x92b2('0x5b')]['from']=_0x97cd2f[_0x92b2('0x5b')][_0x92b2('0x7e')];_0x16fe20[_0x92b2('0x5b')]['body']=_0x97cd2f[_0x92b2('0x5b')][_0x92b2('0x88')];_0x16fe20[_0x92b2('0x5b')][_0x92b2('0x7f')]=_0x97cd2f['body'][_0x92b2('0x89')];break;case _0x92b2('0x8a'):_0x16fe20[_0x92b2('0x5b')][_0x92b2('0x7d')]='+'+_0x97cd2f[_0x92b2('0x5b')][_0x92b2('0x8b')][0x0]['from'];_0x16fe20[_0x92b2('0x5b')][_0x92b2('0x5b')]=_0x97cd2f['body'][_0x92b2('0x8b')][0x0][_0x92b2('0x83')];_0x16fe20[_0x92b2('0x5b')]['messageId']=_0x97cd2f[_0x92b2('0x5b')][_0x92b2('0x8b')][0x0][_0x92b2('0x7f')];break;case'csc':_0x16fe20[_0x92b2('0x5b')][_0x92b2('0x7d')]=_0x97cd2f[_0x92b2('0x5b')][_0x92b2('0x8c')];_0x16fe20['body'][_0x92b2('0x5b')]=_0x97cd2f[_0x92b2('0x5b')][_0x92b2('0x8d')][_0x92b2('0x28')];break;case _0x92b2('0x8e'):_0x16fe20[_0x92b2('0x5b')][_0x92b2('0x7d')]=_0x97cd2f[_0x92b2('0x5b')][_0x92b2('0x8f')];_0x16fe20[_0x92b2('0x5b')]['body']=_0x97cd2f['body']['text'];_0x16fe20['body']['messageId']=_0x97cd2f[_0x92b2('0x5b')]['replyMessageId'];break;case _0x92b2('0x90'):_0x16fe20['body']['messageId']=_0x97cd2f['body'][0x0]['message']['id'];_0x16fe20[_0x92b2('0x5b')][_0x92b2('0x7d')]=_0x97cd2f[_0x92b2('0x5b')][0x0][_0x92b2('0x28')][_0x92b2('0x7d')];_0x16fe20[_0x92b2('0x5b')]['body']=_0x97cd2f[_0x92b2('0x5b')][0x0]['message'][_0x92b2('0x83')];break;case _0x92b2('0x91'):_0x16fe20['body'][_0x92b2('0x7d')]=_0x97cd2f[_0x92b2('0x5b')]['from'];_0x16fe20['body'][_0x92b2('0x5b')]=_0x97cd2f[_0x92b2('0x5b')][_0x92b2('0x28')];_0x16fe20[_0x92b2('0x5b')][_0x92b2('0x7f')]=_0x97cd2f[_0x92b2('0x5b')][_0x92b2('0x92')];break;}}if(_0x16fe20[_0x92b2('0x5b')]['id']){delete _0x16fe20[_0x92b2('0x5b')]['id'];}if(_[_0x92b2('0x93')](_0x16fe20[_0x92b2('0x5b')]['from'])){throw new db[(_0x92b2('0x74'))][(_0x92b2('0x75'))](_0x92b2('0x94'));}if(_[_0x92b2('0x93')](_0x16fe20[_0x92b2('0x5b')][_0x92b2('0x5b')])||_0x16fe20[_0x92b2('0x5b')][_0x92b2('0x5b')]===''){throw new db['Sequelize'][(_0x92b2('0x75'))](_0x92b2('0x95'));}if(_['isNil'](_0x16fe20['body'][_0x92b2('0x96')])){throw new db['Sequelize'][(_0x92b2('0x75'))](_0x92b2('0x97')+_0x6f755b);}if(!_[_0x92b2('0x98')](_0x6f755b,_0x16fe20['body'][_0x92b2('0x96')])){throw new db[(_0x92b2('0x74'))][(_0x92b2('0x75'))](_0x92b2('0x99')+_0x6f755b);}_0x3e598e[_0x16fe20['body'][_0x92b2('0x96')]]=_0x16fe20['body'][_0x92b2('0x7d')];return db[_0x92b2('0x9a')][_0x92b2('0x59')]({'where':{'id':_0x16fe20['account'][_0x92b2('0x7b')]},'include':[{'model':db['CmContact'],'as':_0x92b2('0x9b'),'where':_0x3e598e,'limit':0x1,'order':[[_0x92b2('0x79'),_0x92b2('0x9c')]]}]});})[_0x92b2('0x20')](handleEntityNotFound(_0x113b45,null))['then'](function(_0x415d1d){if(_0x415d1d){_0x16fe20[_0x92b2('0x9d')]=_['omit'](_0x415d1d,[_0x92b2('0x9b')]);if(_0x415d1d[_0x92b2('0x9b')][_0x92b2('0x48')]){return _0x415d1d[_0x92b2('0x9b')][0x0];}var _0x1d986e=_[_0x92b2('0x1a')](_0x16fe20[_0x92b2('0x5b')],{'firstName':_0x16fe20[_0x92b2('0x5b')][_0x92b2('0x7d')],'ListId':_0x415d1d['id']});_0x1d986e[_0x16fe20[_0x92b2('0x5b')][_0x92b2('0x96')]]=_0x16fe20[_0x92b2('0x5b')]['from'];return db['CmContact'][_0x92b2('0x5a')](_0x1d986e,{'fields':_0x5150c7,'raw':!![]});}})[_0x92b2('0x20')](handleEntityNotFound(_0x113b45,null))['then'](function(_0x40d7e8){if(_0x40d7e8){_0x16fe20[_0x92b2('0x9e')]=_0x40d7e8;var _0x4bbe6d={'ContactId':_0x40d7e8['id'],'phone':_0x16fe20[_0x92b2('0x5b')]['from'],'SmsAccountId':_0x97cd2f[_0x92b2('0x56')]['id']};var _0x762696={'ContactId':_0x40d7e8['id'],'SmsAccountId':_0x97cd2f['params']['id'],'closed':![]};return db[_0x92b2('0x9f')][_0x92b2('0x59')]({'where':_0x762696})[_0x92b2('0x20')](function(_0x41f331){if(_0x41f331){return[_0x41f331,![]];}return db[_0x92b2('0x9f')][_0x92b2('0x5a')](_0x4bbe6d)[_0x92b2('0x20')](function(_0x22406e){return[_0x22406e,!![]];});});}})['spread'](function(_0x3082e2,_0x4945e9){_0x16fe20[_0x92b2('0xa0')]=_0x3082e2['get']({'plain':!![]});_0x16fe20['interaction'][_0x92b2('0xa1')]=![];if(_0x4945e9){if(_0x16fe20[_0x92b2('0x73')]['autoclose']){_0x16fe20[_0x92b2('0x6f')][_0x92b2('0xa2')]({'id':0x0,'priority':_0x16fe20[_0x92b2('0x6f')][_0x92b2('0x48')]+0x1,'app':_0x92b2('0xa3'),'appdata':_0x92b2('0xa4'),'interval':'*,*,*,*'});}_0x16fe20[_0x92b2('0xa0')][_0x92b2('0xa1')]=!![];}return db[_0x92b2('0xa5')][_0x92b2('0x5a')]({'phone':_0x16fe20[_0x92b2('0x5b')][_0x92b2('0x7d')],'messageId':_0x16fe20[_0x92b2('0x5b')][_0x92b2('0x7f')],'body':_0x16fe20['body']['body'],'SmsAccountId':_0x97cd2f[_0x92b2('0x56')]['id'],'SmsInteractionId':_0x3082e2['id'],'direction':'in','ContactId':_0x3082e2[_0x92b2('0xa6')],'AttachmentId':_0x16fe20[_0x92b2('0x5b')][_0x92b2('0xa7')]});})['then'](function(_0x16268c){_0x16fe20[_0x92b2('0x28')]=_0x16268c;if(_0x16fe20[_0x92b2('0xa0')][_0x92b2('0xa8')]){return db[_0x92b2('0xa9')][_0x92b2('0x59')]({'attributes':['id',_0x92b2('0x42')],'where':{'id':_0x16fe20[_0x92b2('0xa0')][_0x92b2('0xa8')]}})[_0x92b2('0x20')](function(_0x4ab698){if(_0x4ab698){_0x16fe20[_0x92b2('0x6f')]['unshift']({'id':0x0,'priority':0x0,'app':'agent','appdata':_0x4ab698['name']+','+(_0x16fe20['account'][_0x92b2('0xaa')]||0xa),'interval':_0x92b2('0xab')});}return respondWithRpcPromise(_0x92b2('0xac'),_0x92b2('0xad'),_0x16fe20);});}return respondWithRpcPromise('Start','startRouting',_0x16fe20);})[_0x92b2('0x20')](function(_0x2aa9d4){if(_0x2aa9d4){var _0x263418=0xc8;var _0x24c582='receiveMessage';logger[_0x92b2('0x29')](_0x92b2('0x23'),_0x24c582,_0x263418,'entity\x20found');logger['debug'](_0x92b2('0xae'),_0x24c582,_0x263418,_0x92b2('0xaf'),JSON[_0x92b2('0x25')](_0x2aa9d4));if(_0x16fe20['account'][_0x92b2('0x40')]===_0x92b2('0xb0')){return _0x113b45[_0x92b2('0x2d')](_0x263418)[_0x92b2('0x32')]('Content-Type','text/xml')[_0x92b2('0xb1')](_0x92b2('0xb2'));}else{return _0x113b45[_0x92b2('0x2d')](_0x263418)[_0x92b2('0xb3')](_0x2aa9d4);}}})[_0x92b2('0x2b')](handleError(_0x113b45,null));};exports['addApplications']=function(_0xb2cb05,_0x4a14c0){var _0x5c039f=_0xb2cb05[_0x92b2('0x56')]['id'];var _0x1ae655=_0xb2cb05[_0x92b2('0x5b')];var _0x3ab516=0xc8;var _0x128f9d=null;return db[_0x92b2('0xb4')][_0x92b2('0xb5')]({'isolationLevel':db['sequelize'][_0x92b2('0xb6')][_0x92b2('0xb7')][_0x92b2('0xb8')]},function(_0x5a2728){return db[_0x92b2('0x3e')][_0x92b2('0x69')]({'where':{'id':_0x5c039f},'transaction':_0x5a2728})['then'](function(_0x1dcab6){if(_0x1dcab6){return db[_0x92b2('0xb9')][_0x92b2('0x38')]({'where':{'SmsAccountId':_0x5c039f},'transaction':_0x5a2728})['then'](function(){var _0x184db4=_[_0x92b2('0x3d')](_0x1ae655,function(_0x5c53d5){_0x5c53d5[_0x92b2('0x64')]=_0x5c039f;return _0x5c53d5;});return db[_0x92b2('0xb9')]['bulkCreate'](_0x184db4,{'transaction':_0x5a2728});});}else{_0x3ab516=0x194;_0x128f9d=[];}});})['then'](function(){if(_0x3ab516!==0x194){return db[_0x92b2('0xb9')][_0x92b2('0xba')]({'where':{'SmsAccountId':_0x5c039f},'order':_0x92b2('0x71')})['then'](function(_0x3709ba){_0x128f9d=_0x3709ba;});}})['catch'](function(_0x1238a3){_0x3ab516=0x1f4;logger[_0x92b2('0x26')](_0x1238a3[_0x92b2('0x3a')]);if(_0x1238a3[_0x92b2('0x42')]){delete _0x1238a3[_0x92b2('0x42')];}_0x128f9d=_0x1238a3;})[_0x92b2('0xbb')](function(){if(_0x128f9d===null){_0x4a14c0[_0x92b2('0x2c')](_0x3ab516);}else{if(_0x3ab516===0x1f4){_0x4a14c0[_0x92b2('0x2d')](_0x3ab516)[_0x92b2('0xb1')](_0x128f9d);}else{_0x4a14c0[_0x92b2('0x2d')](_0x3ab516)[_0x92b2('0xb3')](_0x128f9d);}}});};exports['getApplications']=function(_0x4ed4a4,_0x325c03,_0x603c22){var _0x2af697={};var _0x810ab5={};var _0x527107;var _0x187bca;return db['SmsAccount']['findOne']({'where':{'id':_0x4ed4a4[_0x92b2('0x56')]['id']}})[_0x92b2('0x20')](handleEntityNotFound(_0x325c03,null))[_0x92b2('0x20')](function(_0x5a9a6d){if(_0x5a9a6d){_0x527107=_0x5a9a6d;_0x810ab5[_0x92b2('0x41')]=_[_0x92b2('0x44')](db[_0x92b2('0xb9')][_0x92b2('0x3f')]);_0x810ab5['query']=_[_0x92b2('0x44')](_0x4ed4a4['query']);_0x810ab5[_0x92b2('0x4e')]=_[_0x92b2('0x46')](_0x810ab5['model'],_0x810ab5[_0x92b2('0x43')]);_0x2af697[_0x92b2('0x45')]=_[_0x92b2('0x46')](_0x810ab5['model'],qs[_0x92b2('0x47')](_0x4ed4a4[_0x92b2('0x43')][_0x92b2('0x47')]));_0x2af697[_0x92b2('0x45')]=_0x2af697[_0x92b2('0x45')][_0x92b2('0x48')]?_0x2af697[_0x92b2('0x45')]:_0x810ab5['model'];_0x2af697[_0x92b2('0x4b')]=qs['sort'](_0x4ed4a4['query']['sort']);_0x2af697[_0x92b2('0x4d')]=qs[_0x92b2('0x4e')](_['pick'](_0x4ed4a4[_0x92b2('0x43')],_0x810ab5[_0x92b2('0x4e')]));if(_0x4ed4a4['query'][_0x92b2('0x4f')]){_0x2af697['where']=_['merge'](_0x2af697['where'],{'$or':_['map'](_0x2af697[_0x92b2('0x45')],function(_0x210bac){var _0x4576d1={};_0x4576d1[_0x210bac]={'$like':'%'+_0x4ed4a4[_0x92b2('0x43')]['filter']+'%'};return _0x4576d1;})});}_0x2af697=_[_0x92b2('0x58')]({},_0x2af697,_0x4ed4a4[_0x92b2('0x51')]);return _0x527107['getApplications'](_0x2af697);}})['then'](function(_0xd3e3f8){if(_0xd3e3f8){_0x187bca=_0xd3e3f8[_0x92b2('0x48')];if(!_0x4ed4a4['query']['hasOwnProperty'](_0x92b2('0x4a'))){_0x2af697[_0x92b2('0x30')]=qs[_0x92b2('0x30')](_0x4ed4a4['query'][_0x92b2('0x30')]);_0x2af697[_0x92b2('0x2e')]=qs[_0x92b2('0x2e')](_0x4ed4a4[_0x92b2('0x43')][_0x92b2('0x2e')]);}return _0x527107['getApplications'](_0x2af697);}})[_0x92b2('0x20')](function(_0x2feef6){if(_0x2feef6){return _0x2feef6?{'count':_0x187bca,'rows':_0x2feef6}:null;}})[_0x92b2('0x20')](respondWithResult(_0x325c03,null))[_0x92b2('0x2b')](handleError(_0x325c03,null));};exports[_0x92b2('0xbc')]=function(_0x375fec,_0x385672,_0x558fd8){var _0xa95068={'raw':![],'where':{}};var _0x7978b5={};var _0x1943ba={'count':0x0,'rows':[]};return db[_0x92b2('0x3e')][_0x92b2('0x69')]({'where':{'id':_0x375fec[_0x92b2('0x56')]['id']}})[_0x92b2('0x20')](handleEntityNotFound(_0x385672,null))[_0x92b2('0x20')](function(_0x23678d){if(_0x23678d){_0x7978b5['model']=_[_0x92b2('0x44')](db[_0x92b2('0x9f')][_0x92b2('0x3f')]);_0x7978b5[_0x92b2('0x43')]=_[_0x92b2('0x44')](_0x375fec[_0x92b2('0x43')]);_0x7978b5['filters']=_[_0x92b2('0x46')](_0x7978b5['model'],_0x7978b5[_0x92b2('0x43')]);_0xa95068[_0x92b2('0x45')]=_['intersection'](_0x7978b5[_0x92b2('0x41')],qs[_0x92b2('0x47')](_0x375fec['query'][_0x92b2('0x47')]));_0xa95068[_0x92b2('0x45')]=_0xa95068[_0x92b2('0x45')][_0x92b2('0x48')]?_0xa95068[_0x92b2('0x45')]:_0x7978b5[_0x92b2('0x41')];if(!_0x375fec[_0x92b2('0x43')]['hasOwnProperty'](_0x92b2('0x4a'))){_0xa95068[_0x92b2('0x30')]=qs[_0x92b2('0x30')](_0x375fec['query'][_0x92b2('0x30')]);_0xa95068[_0x92b2('0x2e')]=qs[_0x92b2('0x2e')](_0x375fec[_0x92b2('0x43')][_0x92b2('0x2e')]);}_0xa95068[_0x92b2('0x4b')]=qs[_0x92b2('0x4c')](_0x375fec[_0x92b2('0x43')][_0x92b2('0x4c')]);_0xa95068[_0x92b2('0x4d')]=qs['filters'](_[_0x92b2('0x6a')](_0x375fec[_0x92b2('0x43')],_0x7978b5[_0x92b2('0x4e')]));_0xa95068[_0x92b2('0x4d')]['SmsAccountId']=_0x23678d['id'];if(_0x375fec[_0x92b2('0x43')][_0x92b2('0x4f')]){_0xa95068[_0x92b2('0x4d')]=_[_0x92b2('0x58')](_0xa95068['where'],{'$or':_[_0x92b2('0x3d')](_0xa95068[_0x92b2('0x45')],function(_0x4bd1b6){var _0x19916b={};_0x19916b[_0x4bd1b6]={'$like':'%'+_0x375fec[_0x92b2('0x43')][_0x92b2('0x4f')]+'%'};return _0x19916b;})});}_0xa95068=_['merge']({},_0xa95068,_0x375fec['options']);return db[_0x92b2('0x9f')][_0x92b2('0x31')]({'where':_0xa95068[_0x92b2('0x4d')]})[_0x92b2('0x20')](function(_0x1ed783){_0x1943ba[_0x92b2('0x31')]=_0x1ed783;if(_0x375fec[_0x92b2('0x43')][_0x92b2('0x52')]){_0xa95068[_0x92b2('0x53')]=[{'model':db[_0x92b2('0xbd')],'as':_0x92b2('0xbe'),'required':![]},{'model':db[_0x92b2('0xa9')],'as':_0x92b2('0xbf'),'attributes':[_0x92b2('0x42'),_0x92b2('0xc0'),'internal'],'required':![]},{'model':db[_0x92b2('0xc1')],'as':_0x92b2('0xc2'),'attributes':['id',_0x92b2('0x42'),_0x92b2('0xc3')],'where':_0x375fec['query']['tag']?{'id':_0x375fec[_0x92b2('0x43')][_0x92b2('0xc4')]}:undefined,'required':_0x375fec[_0x92b2('0x43')][_0x92b2('0xc4')]?!![]:![]}];}return db['SmsInteraction'][_0x92b2('0x54')](_0xa95068);})[_0x92b2('0x20')](function(_0x1dbf3f){_0x1943ba[_0x92b2('0x55')]=_0x1dbf3f;return _0x1943ba;});}})['then'](respondWithFilteredResult(_0x385672,_0xa95068))[_0x92b2('0x2b')](handleError(_0x385672,null));};exports[_0x92b2('0xb1')]=function(_0x33cf05,_0x186ee2,_0x5c093b){var _0x25ccad,_0x220e29,_0x486e5f;if(_['isNil'](_0x33cf05[_0x92b2('0x5b')]['body'])||_0x33cf05[_0x92b2('0x5b')][_0x92b2('0x5b')]===''){throw new db[(_0x92b2('0x74'))][(_0x92b2('0x75'))](_0x92b2('0x95'));}if(_['isNil'](_0x33cf05[_0x92b2('0x5b')]['to'])){throw new db[(_0x92b2('0x74'))][(_0x92b2('0x75'))](_0x92b2('0xc5'));}_0x25ccad=_0x33cf05[_0x92b2('0x5b')]['to'];return db['SmsAccount'][_0x92b2('0x59')]({'where':{'id':_0x33cf05[_0x92b2('0x56')]['id']},'include':[{'model':db['CmList'],'as':_0x92b2('0xc6'),'include':[{'model':db[_0x92b2('0xbd')],'as':_0x92b2('0x9b'),'where':{'mobile':_0x25ccad},'limit':0x1,'order':[[_0x92b2('0x79'),_0x92b2('0x9c')]]}]}]})['then'](handleEntityNotFound(_0x186ee2,null))[_0x92b2('0x20')](function(_0x1e867f){if(_0x1e867f&&_0x1e867f[_0x92b2('0xc6')]){_0x220e29=_0x1e867f[_0x92b2('0x36')]({'plain':!![]});if(_0x220e29[_0x92b2('0xc6')]&&_0x220e29[_0x92b2('0xc6')]['Contacts'][_0x92b2('0x48')]){return _0x220e29[_0x92b2('0xc6')][_0x92b2('0x9b')][0x0];}return db[_0x92b2('0xbd')]['create'](_[_0x92b2('0x1a')](_0x33cf05[_0x92b2('0x5b')],{'firstName':_0x25ccad,'mobile':_0x25ccad,'phone':_0x25ccad,'ListId':_0x220e29[_0x92b2('0x7b')]}));}})['then'](handleEntityNotFound(_0x186ee2,null))[_0x92b2('0x20')](function(_0x28e2e9){if(_0x28e2e9){_0x486e5f=_0x28e2e9;return db['SmsInteraction'][_0x92b2('0x59')]({'where':{'ContactId':_0x486e5f['id'],'closed':![],'SmsAccountId':_0x220e29['id']}})[_0x92b2('0x20')](function(_0x426600){if(_0x426600){return[_0x426600,![]];}return db['SmsInteraction'][_0x92b2('0x5a')]({'UserId':_0x33cf05[_0x92b2('0xc7')]['id'],'ContactId':_0x486e5f['id'],'SmsAccountId':_0x220e29['id'],'phone':_0x25ccad,'firstMsgDirection':_0x92b2('0xc8'),'Messages':[_['merge'](_0x33cf05[_0x92b2('0x5b')],{'read':![],'body':_0x33cf05[_0x92b2('0x5b')][_0x92b2('0x5b')],'phone':_0x25ccad,'SmsAccountId':_0x220e29['id'],'UserId':_0x33cf05[_0x92b2('0xc7')]['id'],'ContactId':_0x486e5f['id']})]},{'include':[{'model':db[_0x92b2('0xa5')],'as':'Messages'}]})['then'](function(_0x199fff){return[_0x199fff,!![]];});});}})[_0x92b2('0xc9')](function(_0x59679d,_0x5057c3){if(_0x5057c3){return _0x59679d;}return db[_0x92b2('0xa5')][_0x92b2('0x5a')](_[_0x92b2('0x58')](_0x33cf05[_0x92b2('0x5b')],{'read':![],'body':_0x33cf05[_0x92b2('0x5b')][_0x92b2('0x5b')],'phone':_0x25ccad,'SmsAccountId':_0x220e29['id'],'SmsInteractionId':_0x59679d['id'],'UserId':_0x33cf05['user']['id'],'ContactId':_0x486e5f['id']}))['then'](function(_0x22b327){_0x59679d[_0x92b2('0xca')]['Messages']=[];_0x59679d[_0x92b2('0xca')][_0x92b2('0xcb')][_0x92b2('0xa2')](_0x22b327[_0x92b2('0xca')]);return _0x59679d;});})[_0x92b2('0x20')](respondWithResult(_0x186ee2,null))[_0x92b2('0x2b')](handleError(_0x186ee2,null));};exports[_0x92b2('0x2d')]=function(_0x591080,_0x340019,_0xfe360e){if(_0x591080[_0x92b2('0x5b')]['id']){delete _0x591080[_0x92b2('0x5b')]['id'];}var _0x165957,_0x15b27b,_0x279f8a;return db['SmsAccount'][_0x92b2('0x59')]({'where':{'id':_0x591080[_0x92b2('0x56')]['id']}})['then'](handleEntityNotFound(_0x340019,null))[_0x92b2('0x20')](function(_0x128712){if(_0x128712){_0x279f8a=_0x128712;logger[_0x92b2('0x22')](_0x92b2('0x23'),_0x92b2('0x2d'),_0x92b2('0xcc'),_0x128712[_0x92b2('0x40')],util['inspect'](_0x591080['body'],{'showHidden':![],'depth':null}));switch(_0x128712[_0x92b2('0x40')]){case _0x92b2('0x81'):if(_0x591080['body']['skebby_dispatch_id']&&_0x591080['body'][_0x92b2('0x2d')]){_0x15b27b=_0x591080[_0x92b2('0x5b')][_0x92b2('0x2d')];return db[_0x92b2('0xa5')]['find']({'where':{'messageId':_0x591080[_0x92b2('0x5b')][_0x92b2('0xcd')]}});}break;case _0x92b2('0x84'):if(_0x591080[_0x92b2('0x5b')]['requestid']&&_0x591080[_0x92b2('0x5b')][_0x92b2('0xce')]){_0x15b27b=_0x591080[_0x92b2('0x5b')][_0x92b2('0xce')];return db[_0x92b2('0xa5')][_0x92b2('0x59')]({'where':{'messageId':_0x591080[_0x92b2('0x5b')][_0x92b2('0xcf')]}});}break;case _0x92b2('0x85'):if(_0x591080['body']['message_id']&&_0x591080[_0x92b2('0x5b')][_0x92b2('0xd0')]){_0x15b27b=_0x591080[_0x92b2('0x5b')]['status_code'];return db[_0x92b2('0xa5')]['find']({'where':{'messageId':_0x591080[_0x92b2('0x5b')]['message_id']}});}break;case'infobip':var _0x275982=_0x591080[_0x92b2('0x5b')][_0x92b2('0x8b')][0x0];if(_0x275982[_0x92b2('0x7f')]&&_0x275982['status'][_0x92b2('0xd1')]===_0x92b2('0xd2')){_0x15b27b=_0x275982[_0x92b2('0x2d')][_0x92b2('0xd1')];return db['SmsMessage'][_0x92b2('0x59')]({'where':{'messageId':_0x275982[_0x92b2('0x7f')]}});}break;case _0x92b2('0x8e'):if(_0x591080[_0x92b2('0x5b')][_0x92b2('0x7f')]&&_0x591080[_0x92b2('0x5b')][_0x92b2('0x2d')]){_0x15b27b=_0x591080['body'][_0x92b2('0x2d')];return db[_0x92b2('0xa5')]['find']({'where':{'messageId':_0x591080[_0x92b2('0x5b')][_0x92b2('0x7f')]}});}break;case _0x92b2('0x90'):if(_0x591080[_0x92b2('0x5b')][0x0][_0x92b2('0x28')]['id']){_0x15b27b=_0x591080[_0x92b2('0x5b')][0x0][_0x92b2('0x40')];return db[_0x92b2('0xa5')][_0x92b2('0x59')]({'where':{'messageId':_0x591080[_0x92b2('0x5b')][0x0]['message']['id']}});}break;case _0x92b2('0x91'):if(_0x591080[_0x92b2('0x5b')][_0x92b2('0xd3')]&&_0x591080['body'][_0x92b2('0x2d')]){_0x15b27b=_0x591080[_0x92b2('0x5b')]['status'];return db[_0x92b2('0xa5')]['find']({'where':{'messageId':_0x591080['body']['redif']}});}break;}}})[_0x92b2('0x20')](handleEntityNotFound(_0x340019,null))[_0x92b2('0x20')](function(_0x1162f6){if(_0x1162f6){_0x165957=_0x1162f6;switch(_0x279f8a[_0x92b2('0x40')]){case'skebby':if(_0x15b27b===_0x92b2('0xd2')){return _0x165957['update']({'read':!![]});}else{logger[_0x92b2('0x26')](_0x92b2('0x23'),'status','skebby',util[_0x92b2('0xd4')](_0x591080['body'],{'showHidden':![],'depth':null}));}break;case _0x92b2('0x84'):if(_0x15b27b==='1'){return _0x165957[_0x92b2('0x35')]({'read':!![]});}else{logger['error']('SmsAccount,\x20%s,\x20%s,\x20%s',_0x92b2('0x2d'),'skebby',util[_0x92b2('0xd4')](_0x591080[_0x92b2('0x5b')],{'showHidden':![],'depth':null}));}break;case _0x92b2('0x85'):if(!_0x591080[_0x92b2('0x5b')]['error_code']&&_0x15b27b>=0xc8&&_0x15b27b<=0xce){return _0x165957[_0x92b2('0x35')]({'read':!![]});}else{logger[_0x92b2('0x26')]('SmsAccount,\x20%s,\x20%s,\x20%s','status',_0x92b2('0x85'),util[_0x92b2('0xd4')](_0x591080[_0x92b2('0x5b')],{'showHidden':![],'depth':null}));}break;case _0x92b2('0x8a'):var _0x3285d0=_0x591080[_0x92b2('0x5b')][_0x92b2('0x8b')][0x0];if(_0x3285d0['status'][_0x92b2('0xd1')]===_0x92b2('0xd2')){return _0x165957[_0x92b2('0x35')]({'read':!![]});}else{logger['error'](_0x92b2('0x23'),_0x92b2('0x2d'),_0x92b2('0x8a'),util[_0x92b2('0xd4')](_0x591080[_0x92b2('0x5b')],{'showHidden':![],'depth':null}));}break;case _0x92b2('0x8e'):if(_0x15b27b=='DELIVERED_TO_GATEWAY'||_0x15b27b=='RECEIVED_BY_RECIPIENT'){return _0x165957[_0x92b2('0x35')]({'read':!![]});}else{logger[_0x92b2('0x26')]('SmsAccount,\x20%s,\x20%s,\x20%s','status',_0x92b2('0x8e'),util[_0x92b2('0xd4')](_0x591080[_0x92b2('0x5b')],{'showHidden':![],'depth':null}));}break;case _0x92b2('0x90'):if(_0x15b27b==_0x92b2('0xd5')){return _0x165957[_0x92b2('0x35')]({'read':!![]});}else{logger[_0x92b2('0x26')](_0x92b2('0x23'),_0x92b2('0x2d'),_0x92b2('0x90'),util[_0x92b2('0xd4')](_0x591080[_0x92b2('0x5b')],{'showHidden':![],'depth':null}));}break;case _0x92b2('0x91'):if(_0x15b27b===_0x92b2('0xd6')||_0x15b27b===_0x92b2('0xd7')){return _0x165957[_0x92b2('0x35')]({'read':!![]});}else{logger[_0x92b2('0x26')]('SmsAccount,\x20%s,\x20%s,\x20%s','status','intelepeer',util['inspect'](_0x591080[_0x92b2('0x5b')],{'showHidden':![],'depth':null}));}break;}return _0x165957;}})[_0x92b2('0x20')](respondWithResult(_0x340019,null))['catch'](handleError(_0x340019,null));};exports[_0x92b2('0xd8')]=function(_0x229ea5,_0x611f7e,_0x31b504){var _0x47bb3e,_0x1db859,_0x4c22fa;return db[_0x92b2('0x3e')][_0x92b2('0x59')]({'where':{'id':_0x229ea5[_0x92b2('0x56')]['id']}})[_0x92b2('0x20')](handleEntityNotFound(_0x611f7e,null))['then'](function(_0xc67481){if(_0xc67481){_0x4c22fa=_0xc67481;logger['debug'](_0x92b2('0x23'),_0x92b2('0x2d'),_0x92b2('0xcc'),_0xc67481[_0x92b2('0x40')],util['inspect'](_0x229ea5['query'],{'showHidden':![],'depth':null}));switch(_0xc67481[_0x92b2('0x40')]){case _0x92b2('0xd9'):if(_0x229ea5['query'][_0x92b2('0xda')]&&_0x229ea5[_0x92b2('0x43')][_0x92b2('0xdb')]){_0x1db859=_0x229ea5[_0x92b2('0x43')][_0x92b2('0xdb')];return db[_0x92b2('0xa5')][_0x92b2('0x59')]({'where':{'messageId':_0x229ea5['query'][_0x92b2('0xda')]}});}break;}}})['then'](handleEntityNotFound(_0x611f7e,null))[_0x92b2('0x20')](function(_0xe8edbf){if(_0xe8edbf){_0x47bb3e=_0xe8edbf;switch(_0x4c22fa['type']){case _0x92b2('0xd9'):if(_0x1db859==='2'||_0x1db859==='6'){return _0x47bb3e[_0x92b2('0x35')]({'read':!![]});}else{logger[_0x92b2('0x26')](_0x92b2('0x23'),_0x92b2('0x2d'),_0x92b2('0xd9'),util['inspect'](_0x229ea5[_0x92b2('0x43')],{'showHidden':![],'depth':null}));};break;}return _0x47bb3e;}})[_0x92b2('0x20')](respondWithResult(_0x611f7e,null))['catch'](handleError(_0x611f7e,null));};exports[_0x92b2('0xdc')]=function(_0x2fef03,_0x192f32,_0xc307cb){return db['SmsAccount'][_0x92b2('0x59')]({'where':{'id':_0x2fef03[_0x92b2('0x56')]['id']}})[_0x92b2('0x20')](handleEntityNotFound(_0x192f32,null))[_0x92b2('0x20')](function(_0x465f27){if(_0x465f27){return _0x465f27[_0x92b2('0xdc')](_0x2fef03[_0x92b2('0x5b')][_0x92b2('0x66')],_[_0x92b2('0xdd')](_0x2fef03[_0x92b2('0x5b')],[_0x92b2('0x66'),'id'])||{})[_0x92b2('0xc9')](function(_0xa7271){for(var _0x4589d6=0x0;_0x4589d6<_0x2fef03[_0x92b2('0x5b')][_0x92b2('0x66')][_0x92b2('0x48')];_0x4589d6+=0x1){socket[_0x92b2('0xde')](_0x92b2('0xdf'),{'UserId':Number(_0x2fef03[_0x92b2('0x5b')]['ids'][_0x4589d6]),'SmsAccountId':Number(_0x2fef03['params']['id'])});}return _0xa7271;});}})[_0x92b2('0x20')](respondWithResult(_0x192f32,null))[_0x92b2('0x2b')](handleError(_0x192f32,null));};exports['removeAgents']=function(_0x5ae02c,_0x1a3d0d,_0x3e13f1){return db[_0x92b2('0x3e')][_0x92b2('0x59')]({'where':{'id':_0x5ae02c[_0x92b2('0x56')]['id']}})[_0x92b2('0x20')](handleEntityNotFound(_0x1a3d0d,null))[_0x92b2('0x20')](function(_0x2795fd){if(_0x2795fd){return _0x2795fd[_0x92b2('0xe0')](_0x5ae02c[_0x92b2('0x43')][_0x92b2('0x66')])[_0x92b2('0x20')](function(){if(_[_0x92b2('0xe1')](_0x5ae02c[_0x92b2('0x43')][_0x92b2('0x66')])){for(var _0x33adb5=0x0;_0x33adb5<_0x5ae02c['query']['ids'][_0x92b2('0x48')];_0x33adb5+=0x1){socket['emit'](_0x92b2('0xe2'),{'UserId':Number(_0x5ae02c['query'][_0x92b2('0x66')][_0x33adb5]),'SmsAccountId':Number(_0x5ae02c[_0x92b2('0x56')]['id'])});}}else{socket[_0x92b2('0xde')](_0x92b2('0xe2'),{'UserId':Number(_0x5ae02c['query'][_0x92b2('0x66')]),'SmsAccountId':Number(_0x5ae02c[_0x92b2('0x56')]['id'])});}});}})['then'](respondWithStatusCode(_0x1a3d0d,null))[_0x92b2('0x2b')](handleError(_0x1a3d0d,null));};exports[_0x92b2('0xe3')]=function(_0x18f9ae,_0x51ca09,_0x1ba17a){var _0x4216be={};var _0x3bb3d8={};var _0x4528b3;var _0x537edf;return db[_0x92b2('0x3e')]['findOne']({'where':{'id':_0x18f9ae[_0x92b2('0x56')]['id']}})[_0x92b2('0x20')](handleEntityNotFound(_0x51ca09,null))[_0x92b2('0x20')](function(_0xa814b3){if(_0xa814b3){_0x4528b3=_0xa814b3;_0x3bb3d8[_0x92b2('0x41')]=_[_0x92b2('0x44')](db[_0x92b2('0xa9')][_0x92b2('0x3f')]);_0x3bb3d8[_0x92b2('0x43')]=_[_0x92b2('0x44')](_0x18f9ae[_0x92b2('0x43')]);_0x3bb3d8[_0x92b2('0x4e')]=_['intersection'](_0x3bb3d8['model'],_0x3bb3d8[_0x92b2('0x43')]);_0x4216be[_0x92b2('0x45')]=_[_0x92b2('0x46')](_0x3bb3d8[_0x92b2('0x41')],qs[_0x92b2('0x47')](_0x18f9ae[_0x92b2('0x43')]['fields']));_0x4216be[_0x92b2('0x45')]=_0x4216be[_0x92b2('0x45')]['length']?_0x4216be[_0x92b2('0x45')]:_0x3bb3d8[_0x92b2('0x41')];_0x4216be[_0x92b2('0x4b')]=qs[_0x92b2('0x4c')](_0x18f9ae[_0x92b2('0x43')][_0x92b2('0x4c')]);_0x4216be[_0x92b2('0x4d')]=qs[_0x92b2('0x4e')](_['pick'](_0x18f9ae[_0x92b2('0x43')],_0x3bb3d8[_0x92b2('0x4e')]));if(_0x18f9ae[_0x92b2('0x43')][_0x92b2('0x4f')]){_0x4216be[_0x92b2('0x4d')]=_[_0x92b2('0x58')](_0x4216be[_0x92b2('0x4d')],{'$or':_['map'](_0x4216be['attributes'],function(_0x49ad1d){var _0x3f15e8={};_0x3f15e8[_0x49ad1d]={'$like':'%'+_0x18f9ae[_0x92b2('0x43')][_0x92b2('0x4f')]+'%'};return _0x3f15e8;})});}_0x4216be=_[_0x92b2('0x58')]({},_0x4216be,_0x18f9ae[_0x92b2('0x51')]);return _0x4528b3[_0x92b2('0xe3')](_0x4216be);}})[_0x92b2('0x20')](function(_0x113e82){if(_0x113e82){_0x537edf=_0x113e82[_0x92b2('0x48')];if(!_0x18f9ae[_0x92b2('0x43')][_0x92b2('0x49')](_0x92b2('0x4a'))){_0x4216be[_0x92b2('0x30')]=qs[_0x92b2('0x30')](_0x18f9ae[_0x92b2('0x43')][_0x92b2('0x30')]);_0x4216be[_0x92b2('0x2e')]=qs['offset'](_0x18f9ae[_0x92b2('0x43')][_0x92b2('0x2e')]);}return _0x4528b3[_0x92b2('0xe3')](_0x4216be);}})[_0x92b2('0x20')](function(_0x13e963){if(_0x13e963){return _0x13e963?{'count':_0x537edf,'rows':_0x13e963}:null;}})['then'](respondWithResult(_0x51ca09,null))[_0x92b2('0x2b')](handleError(_0x51ca09,null));};