851da87597746540c2cc9a9880be1f408cd9b773
[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 _0x629e=['describe','SmsAccountId','Disposition','findOne','filter','removeDispositions','ids','CannedAnswer','rows','removeAnswers','sms','SmsApplication','Applications','account','applications','orderBy','priority','asc','CmContact','Sequelize','ValidationError','difference','updatedAt','createdAt','CompanyId','mobile','twilio','from','From','Body','MessageSid','skebby','text','connectel','clicksend','message_id','plivo','Text','messageId','MessageUUID','infobip','results','csc','segmentedMessage','clickatell','replyMessageId','intelepeer','refid','isNil','from\x20is\x20mandatory','body\x20is\x20mandatory\x20and\x20not\x20empty','mapKey','includes','mapKey\x20invalid,\x20please\x20use\x20one\x20of\x20these:\x20','CmList','ListId','Contacts','list','contact','SmsInteraction','spread','interaction','autoclose','push','close','SmsMessage','AttachmentId','UserId','waitForTheAssignedAgent','*,*,*,*','queueId','SmsQueue','unshift','queue','Start','startRouting','entity\x20found','Content-Type','text/xml','<?xml\x20version=\x221.0\x22\x20encoding=\x22UTF-8\x22?>\x0a<Response></Response>','addApplications','sequelize','Transaction','ISOLATION_LEVELS','bulkCreate','findAndCountAll','finally','getApplications','getInteractions','Contact','User','fullname','Tag','Tags','color','tag','to\x20is\x20mandatory','DESC','List','Messages','dataValues','received\x20delivery\x20report\x20from','inspect','skebby_dispatch_id','requestid','statusInt','status_code','groupName','DELIVERED','redif','error_code','DELIVERED_TO_GATEWAY','RECEIVED_BY_RECIPIENT','bandwidth','message-delivered','DELIVRD','statusGet','state','message-id','addAgents','omit','userSmsAccount:save','removeAgents','isArray','emit','userSmsAccount:remove','getAgents','eml-format','rimraf','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','to-csv','ejs','fs-extra','lodash','squel','crypto','jsforce','querystring','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','defaults','redis','localhost','socket.io-emitter','register','client','http','request','then','info','SmsAccount,\x20%s,\x20%s','request\x20sent','debug','SmsAccount,\x20%s,\x20%s,\x20%s','stringify','code','error','message','result','catch','status','end','json','offset','undefined','count','limit','set','Content-Range','apply','reject','save','update','get','SmsAccounts','destroy','sendStatus','stack','name','send','index','mandatoryDispositionPause','map','rawAttributes','fieldName','key','model','keys','query','filters','intersection','attributes','fields','hasOwnProperty','nolimit','order','sort','pick','where','type','VIRTUAL','merge','options','SmsAccount','findAll','show','Pause','length','includeAll','include','find','create','body','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','UserProfileSection','autoAssociation','UserProfileResource','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','params'];(function(_0x3cecba,_0x5fbf1){var _0x214221=function(_0x38dbe3){while(--_0x38dbe3){_0x3cecba['push'](_0x3cecba['shift']());}};_0x214221(++_0x5fbf1);}(_0x629e,0x7f));var _0xe629=function(_0x3947c9,_0x4d6c97){_0x3947c9=_0x3947c9-0x0;var _0x2e7871=_0x629e[_0x3947c9];return _0x2e7871;};'use strict';var emlformat=require(_0xe629('0x0'));var rimraf=require(_0xe629('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0xe629('0x2'));var rp=require(_0xe629('0x3'));var moment=require(_0xe629('0x4'));var BPromise=require(_0xe629('0x5'));var Mustache=require(_0xe629('0x6'));var util=require(_0xe629('0x7'));var path=require(_0xe629('0x8'));var sox=require('sox');var csv=require(_0xe629('0x9'));var ejs=require(_0xe629('0xa'));var fs=require('fs');var fs_extra=require(_0xe629('0xb'));var _=require(_0xe629('0xc'));var squel=require(_0xe629('0xd'));var crypto=require(_0xe629('0xe'));var jsforce=require(_0xe629('0xf'));var deskjs=require('desk.js');var toCsv=require('to-csv');var querystring=require(_0xe629('0x10'));var Papa=require('papaparse');var Redis=require(_0xe629('0x11'));var authService=require('../../components/auth/service');var qs=require(_0xe629('0x12'));var as=require(_0xe629('0x13'));var hardwareService=require(_0xe629('0x14'));var logger=require(_0xe629('0x15'))(_0xe629('0x16'));var utils=require(_0xe629('0x17'));var config=require(_0xe629('0x18'));var licenseUtil=require('../../config/license/util');var db=require(_0xe629('0x19'))['db'];config['redis']=_[_0xe629('0x1a')](config[_0xe629('0x1b')],{'host':_0xe629('0x1c'),'port':0x18eb});var socket=require(_0xe629('0x1d'))(new Redis(config[_0xe629('0x1b')]));require('./smsAccount.socket')[_0xe629('0x1e')](socket);var jayson=require('jayson/promise');var client=jayson[_0xe629('0x1f')][_0xe629('0x20')]({'port':0x232c});function respondWithRpcPromise(_0x17af53,_0x461ebf,_0x14f21b,_0x430241){return new BPromise(function(_0x221335,_0x1290aa){var _0x462f1f=_0x430241||client;return _0x462f1f[_0xe629('0x21')](_0x17af53,_0x14f21b)[_0xe629('0x22')](function(_0x53bcf1){logger[_0xe629('0x23')](_0xe629('0x24'),_0x461ebf,_0xe629('0x25'));logger[_0xe629('0x26')](_0xe629('0x27'),_0x461ebf,'request\x20sent',JSON[_0xe629('0x28')](_0x53bcf1));if(_0x53bcf1['error']){if(_0x53bcf1['error'][_0xe629('0x29')]===0x1f4){logger['error'](_0xe629('0x24'),_0x461ebf,_0x53bcf1[_0xe629('0x2a')][_0xe629('0x2b')]);return _0x1290aa(_0x53bcf1['error'][_0xe629('0x2b')]);}logger[_0xe629('0x2a')](_0xe629('0x24'),_0x461ebf,_0x53bcf1[_0xe629('0x2a')][_0xe629('0x2b')]);return _0x221335(_0x53bcf1[_0xe629('0x2a')][_0xe629('0x2b')]);}else{logger[_0xe629('0x23')](_0xe629('0x24'),_0x461ebf,'request\x20sent');_0x221335(_0x53bcf1[_0xe629('0x2c')][_0xe629('0x2b')]);}})[_0xe629('0x2d')](function(_0x2ae90d){logger[_0xe629('0x2a')](_0xe629('0x24'),_0x461ebf,_0x2ae90d);_0x1290aa(_0x2ae90d);});});}function respondWithStatusCode(_0xfd8a88,_0x37836b){_0x37836b=_0x37836b||0xcc;return function(_0x2ca713){if(_0x2ca713){return _0xfd8a88['sendStatus'](_0x37836b);}return _0xfd8a88[_0xe629('0x2e')](_0x37836b)[_0xe629('0x2f')]();};}function respondWithResult(_0x202c7c,_0x3497b8){_0x3497b8=_0x3497b8||0xc8;return function(_0x18c374){if(_0x18c374){return _0x202c7c[_0xe629('0x2e')](_0x3497b8)[_0xe629('0x30')](_0x18c374);}};}function respondWithFilteredResult(_0x16aa00,_0x7e973f){return function(_0x5942e2){if(_0x5942e2){var _0x25e9b5=typeof _0x7e973f[_0xe629('0x31')]===_0xe629('0x32')&&typeof _0x7e973f['limit']==='undefined';var _0x28ebfc=_0x5942e2[_0xe629('0x33')];var _0x45175f=_0x25e9b5?0x0:_0x7e973f[_0xe629('0x31')];var _0x4c3f03=_0x25e9b5?_0x5942e2['count']:_0x7e973f[_0xe629('0x31')]+_0x7e973f[_0xe629('0x34')];var _0x2a3f8d;if(_0x4c3f03>=_0x28ebfc){_0x4c3f03=_0x28ebfc;_0x2a3f8d=0xc8;}else{_0x2a3f8d=0xce;}_0x16aa00[_0xe629('0x2e')](_0x2a3f8d);return _0x16aa00[_0xe629('0x35')](_0xe629('0x36'),_0x45175f+'-'+_0x4c3f03+'/'+_0x28ebfc)[_0xe629('0x30')](_0x5942e2);}return null;};}function patchUpdates(_0x15d374){return function(_0x2c6666){try{jsonpatch[_0xe629('0x37')](_0x2c6666,_0x15d374,!![]);}catch(_0x3d0cb4){return BPromise[_0xe629('0x38')](_0x3d0cb4);}return _0x2c6666[_0xe629('0x39')]();};}function saveUpdates(_0x213493,_0x164f9e){return function(_0x2eacbf){if(_0x2eacbf){return _0x2eacbf[_0xe629('0x3a')](_0x213493)[_0xe629('0x22')](function(_0x21b4f4){return _0x21b4f4;});}return null;};}function removeEntity(_0x567305,_0x43e9fb){return function(_0x272e18){if(_0x272e18){return _0x272e18['destroy']()['then'](function(){var _0x3e9dbc=_0x272e18[_0xe629('0x3b')]({'plain':!![]});var _0x53ffb1=_0xe629('0x3c');return db['UserProfileResource'][_0xe629('0x3d')]({'where':{'type':_0x53ffb1,'resourceId':_0x3e9dbc['id']}})[_0xe629('0x22')](function(){return _0x272e18;});})[_0xe629('0x22')](function(){_0x567305[_0xe629('0x2e')](0xcc)[_0xe629('0x2f')]();});}};}function handleEntityNotFound(_0x81206e,_0x51d1ea){return function(_0x5a3375){if(!_0x5a3375){_0x81206e[_0xe629('0x3e')](0x194);}return _0x5a3375;};}function handleError(_0x101f94,_0x4edef6){_0x4edef6=_0x4edef6||0x1f4;return function(_0x26f1e3){logger['error'](_0x26f1e3[_0xe629('0x3f')]);if(_0x26f1e3['name']){delete _0x26f1e3[_0xe629('0x40')];}_0x101f94[_0xe629('0x2e')](_0x4edef6)[_0xe629('0x41')](_0x26f1e3);};}exports[_0xe629('0x42')]=function(_0x1a9a27,_0x68d1d3){var _0x24907c={'include':[{'model':db['Pause'],'as':_0xe629('0x43')}]},_0x3c206a={},_0x8ca035={'count':0x0,'rows':[]};var _0x2b6b82=_[_0xe629('0x44')](db['SmsAccount'][_0xe629('0x45')],function(_0x3787e0){return{'name':_0x3787e0[_0xe629('0x46')],'type':_0x3787e0['type'][_0xe629('0x47')]};});_0x3c206a[_0xe629('0x48')]=_[_0xe629('0x44')](_0x2b6b82,_0xe629('0x40'));_0x3c206a['query']=_[_0xe629('0x49')](_0x1a9a27[_0xe629('0x4a')]);_0x3c206a[_0xe629('0x4b')]=_[_0xe629('0x4c')](_0x3c206a[_0xe629('0x48')],_0x3c206a[_0xe629('0x4a')]);_0x24907c[_0xe629('0x4d')]=_[_0xe629('0x4c')](_0x3c206a[_0xe629('0x48')],qs[_0xe629('0x4e')](_0x1a9a27[_0xe629('0x4a')][_0xe629('0x4e')]));_0x24907c['attributes']=_0x24907c[_0xe629('0x4d')]['length']?_0x24907c[_0xe629('0x4d')]:_0x3c206a[_0xe629('0x48')];if(!_0x1a9a27[_0xe629('0x4a')][_0xe629('0x4f')](_0xe629('0x50'))){_0x24907c[_0xe629('0x34')]=qs['limit'](_0x1a9a27[_0xe629('0x4a')][_0xe629('0x34')]);_0x24907c['offset']=qs[_0xe629('0x31')](_0x1a9a27[_0xe629('0x4a')]['offset']);}_0x24907c[_0xe629('0x51')]=qs[_0xe629('0x52')](_0x1a9a27[_0xe629('0x4a')][_0xe629('0x52')]);_0x24907c['where']=qs[_0xe629('0x4b')](_[_0xe629('0x53')](_0x1a9a27[_0xe629('0x4a')],_0x3c206a[_0xe629('0x4b')]),_0x2b6b82);if(_0x1a9a27[_0xe629('0x4a')]['filter']){_0x24907c[_0xe629('0x54')]=_['merge'](_0x24907c[_0xe629('0x54')],{'$or':_[_0xe629('0x44')](_0x2b6b82,function(_0x322450){if(_0x322450[_0xe629('0x55')]!==_0xe629('0x56')){var _0xe44be5={};_0xe44be5[_0x322450[_0xe629('0x40')]]={'$like':'%'+_0x1a9a27[_0xe629('0x4a')]['filter']+'%'};return _0xe44be5;}})});}_0x24907c=_[_0xe629('0x57')]({},_0x24907c,_0x1a9a27[_0xe629('0x58')]);var _0xae482d={'where':_0x24907c[_0xe629('0x54')]};return db['SmsAccount'][_0xe629('0x33')](_0xae482d)[_0xe629('0x22')](function(_0x2a7b0a){_0x8ca035[_0xe629('0x33')]=_0x2a7b0a;if(_0x1a9a27[_0xe629('0x4a')]['includeAll']){_0x24907c['include']=[{'all':!![]}];}return db[_0xe629('0x59')][_0xe629('0x5a')](_0x24907c);})[_0xe629('0x22')](function(_0x29a7ca){_0x8ca035['rows']=_0x29a7ca;return _0x8ca035;})['then'](respondWithFilteredResult(_0x68d1d3,_0x24907c))[_0xe629('0x2d')](handleError(_0x68d1d3,null));};exports[_0xe629('0x5b')]=function(_0x2f9bb8,_0x5a5081){var _0x38f83c={'raw':![],'where':{'id':_0x2f9bb8['params']['id']},'include':[{'model':db[_0xe629('0x5c')],'as':_0xe629('0x43')}]},_0xbcb6a6={};_0xbcb6a6[_0xe629('0x48')]=_[_0xe629('0x49')](db[_0xe629('0x59')][_0xe629('0x45')]);_0xbcb6a6[_0xe629('0x4a')]=_[_0xe629('0x49')](_0x2f9bb8[_0xe629('0x4a')]);_0xbcb6a6[_0xe629('0x4b')]=_[_0xe629('0x4c')](_0xbcb6a6[_0xe629('0x48')],_0xbcb6a6[_0xe629('0x4a')]);_0x38f83c[_0xe629('0x4d')]=_[_0xe629('0x4c')](_0xbcb6a6[_0xe629('0x48')],qs['fields'](_0x2f9bb8[_0xe629('0x4a')][_0xe629('0x4e')]));_0x38f83c[_0xe629('0x4d')]=_0x38f83c[_0xe629('0x4d')][_0xe629('0x5d')]?_0x38f83c[_0xe629('0x4d')]:_0xbcb6a6['model'];if(_0x2f9bb8[_0xe629('0x4a')][_0xe629('0x5e')]){_0x38f83c[_0xe629('0x5f')]=[{'all':!![]}];}_0x38f83c=_[_0xe629('0x57')]({},_0x38f83c,_0x2f9bb8[_0xe629('0x58')]);return db[_0xe629('0x59')][_0xe629('0x60')](_0x38f83c)[_0xe629('0x22')](handleEntityNotFound(_0x5a5081,null))[_0xe629('0x22')](respondWithResult(_0x5a5081,null))[_0xe629('0x2d')](handleError(_0x5a5081,null));};exports[_0xe629('0x61')]=function(_0x5df1ae,_0x5f08d5){return db['SmsAccount'][_0xe629('0x61')](_0x5df1ae[_0xe629('0x62')],{})[_0xe629('0x22')](function(_0x577db0){var _0x38f74b=_0x5df1ae[_0xe629('0x63')][_0xe629('0x3b')]({'plain':!![]});if(!_0x38f74b)throw new Error(_0xe629('0x64'));if(_0x38f74b['role']===_0xe629('0x63')){var _0x340e81=_0x577db0[_0xe629('0x3b')]({'plain':!![]});var _0x3f0e36=_0xe629('0x3c');return db[_0xe629('0x65')]['find']({'where':{'name':_0x3f0e36,'userProfileId':_0x38f74b['userProfileId']},'raw':!![]})[_0xe629('0x22')](function(_0x1bf972){if(_0x1bf972&&_0x1bf972[_0xe629('0x66')]===0x0){return db[_0xe629('0x67')]['create']({'name':_0x340e81[_0xe629('0x40')],'resourceId':_0x340e81['id'],'type':_0x1bf972[_0xe629('0x40')],'sectionId':_0x1bf972['id']},{})[_0xe629('0x22')](function(){return _0x577db0;});}else{return _0x577db0;}})[_0xe629('0x2d')](function(_0x591d99){logger[_0xe629('0x2a')](_0xe629('0x68'),_0x591d99);throw _0x591d99;});}return _0x577db0;})[_0xe629('0x22')](respondWithResult(_0x5f08d5,0xc9))['catch'](handleError(_0x5f08d5,null));};exports[_0xe629('0x3a')]=function(_0x1fc6f5,_0x6c0f84){if(_0x1fc6f5[_0xe629('0x62')]['id']){delete _0x1fc6f5[_0xe629('0x62')]['id'];}return db[_0xe629('0x59')][_0xe629('0x60')]({'where':{'id':_0x1fc6f5[_0xe629('0x69')]['id']},'include':[{'model':db[_0xe629('0x5c')],'as':_0xe629('0x43')}]})[_0xe629('0x22')](handleEntityNotFound(_0x6c0f84,null))[_0xe629('0x22')](saveUpdates(_0x1fc6f5[_0xe629('0x62')],null))[_0xe629('0x22')](respondWithResult(_0x6c0f84,null))[_0xe629('0x2d')](handleError(_0x6c0f84,null));};exports[_0xe629('0x3d')]=function(_0x276f42,_0x2e8ccc){return db[_0xe629('0x59')][_0xe629('0x60')]({'where':{'id':_0x276f42[_0xe629('0x69')]['id']}})[_0xe629('0x22')](handleEntityNotFound(_0x2e8ccc,null))['then'](removeEntity(_0x2e8ccc,null))[_0xe629('0x2d')](handleError(_0x2e8ccc,null));};exports[_0xe629('0x6a')]=function(_0x121cf1,_0x39304c){return db[_0xe629('0x59')][_0xe629('0x6a')]()[_0xe629('0x22')](respondWithResult(_0x39304c,null))[_0xe629('0x2d')](handleError(_0x39304c,null));};exports['addDisposition']=function(_0x4d6bb4,_0x387392,_0x23d1f9){if(_0x4d6bb4[_0xe629('0x62')]['id']){delete _0x4d6bb4[_0xe629('0x62')]['id'];}return db[_0xe629('0x59')][_0xe629('0x60')]({'where':{'id':_0x4d6bb4[_0xe629('0x69')]['id']}})['then'](handleEntityNotFound(_0x387392,null))[_0xe629('0x22')](function(_0x4219dc){if(_0x4219dc){_0x4d6bb4[_0xe629('0x62')][_0xe629('0x6b')]=_0x4219dc['id'];return db[_0xe629('0x6c')][_0xe629('0x61')](_0x4d6bb4[_0xe629('0x62')]);}})['then'](respondWithResult(_0x387392,null))[_0xe629('0x2d')](handleError(_0x387392,null));};exports['getDispositions']=function(_0x51fc23,_0x3646d2,_0x1c0437){var _0x39546b={'raw':![],'where':{}};var _0x120259={};var _0x43c9bf={'count':0x0,'rows':[]};return db[_0xe629('0x59')][_0xe629('0x6d')]({'where':{'id':_0x51fc23['params']['id']}})[_0xe629('0x22')](handleEntityNotFound(_0x3646d2,null))[_0xe629('0x22')](function(_0x3d114f){if(_0x3d114f){_0x120259[_0xe629('0x48')]=_[_0xe629('0x49')](db['Disposition'][_0xe629('0x45')]);_0x120259[_0xe629('0x4a')]=_['keys'](_0x51fc23[_0xe629('0x4a')]);_0x120259[_0xe629('0x4b')]=_[_0xe629('0x4c')](_0x120259[_0xe629('0x48')],_0x120259[_0xe629('0x4a')]);_0x39546b[_0xe629('0x4d')]=_[_0xe629('0x4c')](_0x120259[_0xe629('0x48')],qs[_0xe629('0x4e')](_0x51fc23[_0xe629('0x4a')][_0xe629('0x4e')]));_0x39546b['attributes']=_0x39546b[_0xe629('0x4d')]['length']?_0x39546b[_0xe629('0x4d')]:_0x120259[_0xe629('0x48')];if(!_0x51fc23[_0xe629('0x4a')][_0xe629('0x4f')](_0xe629('0x50'))){_0x39546b[_0xe629('0x34')]=qs[_0xe629('0x34')](_0x51fc23[_0xe629('0x4a')][_0xe629('0x34')]);_0x39546b[_0xe629('0x31')]=qs[_0xe629('0x31')](_0x51fc23[_0xe629('0x4a')][_0xe629('0x31')]);}_0x39546b[_0xe629('0x51')]=qs[_0xe629('0x52')](_0x51fc23[_0xe629('0x4a')][_0xe629('0x52')]);_0x39546b[_0xe629('0x54')]=qs[_0xe629('0x4b')](_['pick'](_0x51fc23[_0xe629('0x4a')],_0x120259['filters']));_0x39546b[_0xe629('0x54')][_0xe629('0x6b')]=_0x3d114f['id'];if(_0x51fc23[_0xe629('0x4a')][_0xe629('0x6e')]){_0x39546b['where']=_[_0xe629('0x57')](_0x39546b[_0xe629('0x54')],{'$or':_[_0xe629('0x44')](_0x39546b['attributes'],function(_0x5d0971){var _0x5452f0={};_0x5452f0[_0x5d0971]={'$like':'%'+_0x51fc23[_0xe629('0x4a')][_0xe629('0x6e')]+'%'};return _0x5452f0;})});}_0x39546b=_[_0xe629('0x57')]({},_0x39546b,_0x51fc23['options']);return db[_0xe629('0x6c')][_0xe629('0x33')]({'where':_0x39546b[_0xe629('0x54')]})[_0xe629('0x22')](function(_0xf138e7){_0x43c9bf[_0xe629('0x33')]=_0xf138e7;if(_0x51fc23[_0xe629('0x4a')]['includeAll']){_0x39546b[_0xe629('0x5f')]=[{'all':!![]}];}return db[_0xe629('0x6c')]['findAll'](_0x39546b);})[_0xe629('0x22')](function(_0x558472){_0x43c9bf['rows']=_0x558472;return _0x43c9bf;});}})['then'](respondWithFilteredResult(_0x3646d2,_0x39546b))[_0xe629('0x2d')](handleError(_0x3646d2,null));};exports[_0xe629('0x6f')]=function(_0x4082b8,_0x2ca523,_0x2c36de){return db[_0xe629('0x59')][_0xe629('0x60')]({'where':{'id':_0x4082b8[_0xe629('0x69')]['id']}})[_0xe629('0x22')](handleEntityNotFound(_0x2ca523,null))[_0xe629('0x22')](function(_0x35350f){if(_0x35350f){return _0x35350f['removeDispositions'](_0x4082b8[_0xe629('0x4a')][_0xe629('0x70')]);}})['then'](respondWithStatusCode(_0x2ca523,null))[_0xe629('0x2d')](handleError(_0x2ca523,null));};exports['addAnswer']=function(_0x3996cd,_0x45cd2a,_0x2de0e0){if(_0x3996cd[_0xe629('0x62')]['id']){delete _0x3996cd[_0xe629('0x62')]['id'];}return db['SmsAccount'][_0xe629('0x60')]({'where':{'id':_0x3996cd[_0xe629('0x69')]['id']}})[_0xe629('0x22')](handleEntityNotFound(_0x45cd2a,null))['then'](function(_0x2dafda){if(_0x2dafda){_0x3996cd[_0xe629('0x62')]['SmsAccountId']=_0x2dafda['id'];return db[_0xe629('0x71')][_0xe629('0x61')](_0x3996cd['body']);}})[_0xe629('0x22')](respondWithResult(_0x45cd2a,null))['catch'](handleError(_0x45cd2a,null));};exports['getAnswers']=function(_0x2434a1,_0x586987,_0xac3792){var _0x13c747={'raw':![],'where':{}};var _0x550e49={};var _0x53b713={'count':0x0,'rows':[]};return db['SmsAccount']['findOne']({'where':{'id':_0x2434a1[_0xe629('0x69')]['id']}})[_0xe629('0x22')](handleEntityNotFound(_0x586987,null))[_0xe629('0x22')](function(_0x4ee754){if(_0x4ee754){_0x550e49[_0xe629('0x48')]=_[_0xe629('0x49')](db['CannedAnswer']['rawAttributes']);_0x550e49[_0xe629('0x4a')]=_[_0xe629('0x49')](_0x2434a1[_0xe629('0x4a')]);_0x550e49[_0xe629('0x4b')]=_[_0xe629('0x4c')](_0x550e49[_0xe629('0x48')],_0x550e49[_0xe629('0x4a')]);_0x13c747[_0xe629('0x4d')]=_['intersection'](_0x550e49[_0xe629('0x48')],qs[_0xe629('0x4e')](_0x2434a1['query'][_0xe629('0x4e')]));_0x13c747[_0xe629('0x4d')]=_0x13c747[_0xe629('0x4d')][_0xe629('0x5d')]?_0x13c747[_0xe629('0x4d')]:_0x550e49['model'];if(!_0x2434a1['query'][_0xe629('0x4f')](_0xe629('0x50'))){_0x13c747['limit']=qs[_0xe629('0x34')](_0x2434a1[_0xe629('0x4a')][_0xe629('0x34')]);_0x13c747['offset']=qs[_0xe629('0x31')](_0x2434a1[_0xe629('0x4a')][_0xe629('0x31')]);}_0x13c747[_0xe629('0x51')]=qs['sort'](_0x2434a1['query'][_0xe629('0x52')]);_0x13c747['where']=qs[_0xe629('0x4b')](_['pick'](_0x2434a1['query'],_0x550e49[_0xe629('0x4b')]));_0x13c747[_0xe629('0x54')][_0xe629('0x6b')]=_0x4ee754['id'];if(_0x2434a1[_0xe629('0x4a')][_0xe629('0x6e')]){_0x13c747[_0xe629('0x54')]=_[_0xe629('0x57')](_0x13c747[_0xe629('0x54')],{'$or':_[_0xe629('0x44')](_0x13c747['attributes'],function(_0x2db56c){var _0x29bbaa={};_0x29bbaa[_0x2db56c]={'$like':'%'+_0x2434a1['query'][_0xe629('0x6e')]+'%'};return _0x29bbaa;})});}_0x13c747=_[_0xe629('0x57')]({},_0x13c747,_0x2434a1[_0xe629('0x58')]);return db[_0xe629('0x71')]['count']({'where':_0x13c747[_0xe629('0x54')]})['then'](function(_0x5aa958){_0x53b713['count']=_0x5aa958;if(_0x2434a1[_0xe629('0x4a')][_0xe629('0x5e')]){_0x13c747[_0xe629('0x5f')]=[{'all':!![]}];}return db[_0xe629('0x71')][_0xe629('0x5a')](_0x13c747);})[_0xe629('0x22')](function(_0x393a18){_0x53b713[_0xe629('0x72')]=_0x393a18;return _0x53b713;});}})[_0xe629('0x22')](respondWithFilteredResult(_0x586987,_0x13c747))[_0xe629('0x2d')](handleError(_0x586987,null));};exports[_0xe629('0x73')]=function(_0x42a67f,_0x5102dc,_0x381ad3){return db[_0xe629('0x59')][_0xe629('0x60')]({'where':{'id':_0x42a67f[_0xe629('0x69')]['id']}})[_0xe629('0x22')](handleEntityNotFound(_0x5102dc,null))[_0xe629('0x22')](function(_0x563444){if(_0x563444){return _0x563444[_0xe629('0x73')](_0x42a67f[_0xe629('0x4a')]['ids']);}})[_0xe629('0x22')](respondWithStatusCode(_0x5102dc,null))[_0xe629('0x2d')](handleError(_0x5102dc,null));};exports['notify']=function(_0x43400e,_0x242e29,_0xcab5fa){var _0x1c942c={'channel':_0xe629('0x74')};var _0xe7c8d5=[];var _0x28bfef=[];var _0x580e10={};return db[_0xe629('0x59')][_0xe629('0x60')]({'where':{'id':_0x43400e['params']['id']},'include':[{'model':db[_0xe629('0x75')],'as':_0xe629('0x76')}]})['then'](handleEntityNotFound(_0x242e29,null))[_0xe629('0x22')](function(_0x458ad9){_0x1c942c[_0xe629('0x77')]=_0x458ad9;_0x1c942c[_0xe629('0x78')]=_[_0xe629('0x79')](_0x458ad9['Applications'],[_0xe629('0x7a')],[_0xe629('0x7b')]);if(_0x1c942c['account']['Applications']){delete _0x1c942c[_0xe629('0x77')][_0xe629('0x76')];}return db[_0xe629('0x7c')][_0xe629('0x6a')]();})[_0xe629('0x22')](function(_0x8cba2b){if(!_0x8cba2b){throw new db[(_0xe629('0x7d'))][(_0xe629('0x7e'))]('no\x20available\x20attributes');}_0xe7c8d5=_[_0xe629('0x7f')](_['keys'](_0x8cba2b),['createdAt',_0xe629('0x80')]);_0x28bfef=_['difference'](_[_0xe629('0x49')](_0x8cba2b),[_0xe629('0x81'),_0xe629('0x80'),_0xe629('0x82'),'ListId']);_0x1c942c[_0xe629('0x62')]={'mapKey':_0xe629('0x83')};if(_0x1c942c['account'][_0xe629('0x55')]){switch(_0x1c942c[_0xe629('0x77')]['type']){case _0xe629('0x84'):_0x1c942c[_0xe629('0x62')][_0xe629('0x85')]=_0x43400e[_0xe629('0x62')][_0xe629('0x86')];_0x1c942c['body'][_0xe629('0x62')]=_0x43400e[_0xe629('0x62')][_0xe629('0x87')];_0x1c942c[_0xe629('0x62')]['messageId']=_0x43400e['body'][_0xe629('0x88')];break;case _0xe629('0x89'):_0x1c942c[_0xe629('0x62')]['from']='+'+_0x43400e[_0xe629('0x62')]['sender'];_0x1c942c[_0xe629('0x62')][_0xe629('0x62')]=_0x43400e[_0xe629('0x62')][_0xe629('0x8a')];break;case _0xe629('0x8b'):_0x1c942c[_0xe629('0x62')][_0xe629('0x85')]=_0x43400e[_0xe629('0x62')]['from'];_0x1c942c[_0xe629('0x62')][_0xe629('0x62')]=_0x43400e[_0xe629('0x62')]['message'];break;case _0xe629('0x8c'):_0x1c942c[_0xe629('0x62')][_0xe629('0x85')]=_0x43400e[_0xe629('0x62')][_0xe629('0x85')];_0x1c942c['body'][_0xe629('0x62')]=_0x43400e[_0xe629('0x62')]['body'];_0x1c942c['body']['messageId']=_0x43400e[_0xe629('0x62')][_0xe629('0x8d')];break;case _0xe629('0x8e'):_0x1c942c['body'][_0xe629('0x85')]=_0x43400e['body'][_0xe629('0x86')];_0x1c942c[_0xe629('0x62')][_0xe629('0x62')]=_0x43400e[_0xe629('0x62')][_0xe629('0x8f')];_0x1c942c[_0xe629('0x62')][_0xe629('0x90')]=_0x43400e[_0xe629('0x62')][_0xe629('0x91')];break;case _0xe629('0x92'):_0x1c942c[_0xe629('0x62')][_0xe629('0x85')]='+'+_0x43400e[_0xe629('0x62')]['results'][0x0]['from'];_0x1c942c['body'][_0xe629('0x62')]=_0x43400e[_0xe629('0x62')][_0xe629('0x93')][0x0][_0xe629('0x8a')];_0x1c942c[_0xe629('0x62')][_0xe629('0x90')]=_0x43400e['body'][_0xe629('0x93')][0x0][_0xe629('0x90')];break;case _0xe629('0x94'):_0x1c942c['body'][_0xe629('0x85')]=_0x43400e[_0xe629('0x62')]['originatingAddress'];_0x1c942c[_0xe629('0x62')][_0xe629('0x62')]=_0x43400e[_0xe629('0x62')][_0xe629('0x95')]['message'];break;case _0xe629('0x96'):_0x1c942c['body'][_0xe629('0x85')]=_0x43400e[_0xe629('0x62')]['fromNumber'];_0x1c942c['body'][_0xe629('0x62')]=_0x43400e[_0xe629('0x62')][_0xe629('0x8a')];_0x1c942c[_0xe629('0x62')][_0xe629('0x90')]=_0x43400e[_0xe629('0x62')][_0xe629('0x97')];break;case'bandwidth':_0x1c942c[_0xe629('0x62')]['messageId']=_0x43400e[_0xe629('0x62')][0x0][_0xe629('0x2b')]['id'];_0x1c942c[_0xe629('0x62')][_0xe629('0x85')]=_0x43400e[_0xe629('0x62')][0x0][_0xe629('0x2b')]['from'];_0x1c942c['body'][_0xe629('0x62')]=_0x43400e[_0xe629('0x62')][0x0]['message'][_0xe629('0x8a')];break;case _0xe629('0x98'):_0x1c942c[_0xe629('0x62')][_0xe629('0x85')]=_0x43400e[_0xe629('0x62')]['from'];_0x1c942c[_0xe629('0x62')]['body']=_0x43400e[_0xe629('0x62')][_0xe629('0x2b')];_0x1c942c['body'][_0xe629('0x90')]=_0x43400e[_0xe629('0x62')][_0xe629('0x99')];break;}}if(_0x1c942c[_0xe629('0x62')]['id']){delete _0x1c942c[_0xe629('0x62')]['id'];}if(_[_0xe629('0x9a')](_0x1c942c[_0xe629('0x62')]['from'])){throw new db[(_0xe629('0x7d'))][(_0xe629('0x7e'))](_0xe629('0x9b'));}if(_[_0xe629('0x9a')](_0x1c942c['body'][_0xe629('0x62')])||_0x1c942c[_0xe629('0x62')][_0xe629('0x62')]===''){throw new db['Sequelize']['ValidationError'](_0xe629('0x9c'));}if(_['isNil'](_0x1c942c['body'][_0xe629('0x9d')])){throw new db[(_0xe629('0x7d'))][(_0xe629('0x7e'))]('mapKey\x20is\x20mandatory,\x20please\x20use\x20one\x20of\x20these:\x20'+_0x28bfef);}if(!_[_0xe629('0x9e')](_0x28bfef,_0x1c942c[_0xe629('0x62')][_0xe629('0x9d')])){throw new db[(_0xe629('0x7d'))][(_0xe629('0x7e'))](_0xe629('0x9f')+_0x28bfef);}_0x580e10[_0x1c942c[_0xe629('0x62')][_0xe629('0x9d')]]=_0x1c942c[_0xe629('0x62')][_0xe629('0x85')];return db[_0xe629('0xa0')][_0xe629('0x60')]({'where':{'id':_0x1c942c[_0xe629('0x77')][_0xe629('0xa1')]},'include':[{'model':db['CmContact'],'as':_0xe629('0xa2'),'where':_0x580e10,'limit':0x1,'order':[[_0xe629('0x80'),'DESC']]}]});})['then'](handleEntityNotFound(_0x242e29,null))['then'](function(_0x577084){if(_0x577084){_0x1c942c[_0xe629('0xa3')]=_['omit'](_0x577084,[_0xe629('0xa2')]);if(_0x577084[_0xe629('0xa2')][_0xe629('0x5d')]){return _0x577084[_0xe629('0xa2')][0x0];}var _0x24a77d=_[_0xe629('0x1a')](_0x1c942c[_0xe629('0x62')],{'firstName':_0x1c942c[_0xe629('0x62')][_0xe629('0x85')],'ListId':_0x577084['id']});_0x24a77d[_0x1c942c[_0xe629('0x62')][_0xe629('0x9d')]]=_0x1c942c[_0xe629('0x62')]['from'];return db['CmContact']['create'](_0x24a77d,{'fields':_0xe7c8d5,'raw':!![]});}})[_0xe629('0x22')](handleEntityNotFound(_0x242e29,null))[_0xe629('0x22')](function(_0x5640d0){if(_0x5640d0){_0x1c942c[_0xe629('0xa4')]=_0x5640d0;var _0x185f9d={'ContactId':_0x5640d0['id'],'phone':_0x1c942c[_0xe629('0x62')][_0xe629('0x85')],'SmsAccountId':_0x43400e['params']['id']};var _0x2db946={'ContactId':_0x5640d0['id'],'SmsAccountId':_0x43400e['params']['id'],'closed':![]};return db[_0xe629('0xa5')][_0xe629('0x60')]({'where':_0x2db946})['then'](function(_0xada8de){if(_0xada8de){return[_0xada8de,![]];}return db['SmsInteraction'][_0xe629('0x61')](_0x185f9d)[_0xe629('0x22')](function(_0x45a8be){return[_0x45a8be,!![]];});});}})[_0xe629('0xa6')](function(_0x4daaaf,_0x2342a5){_0x1c942c[_0xe629('0xa7')]=_0x4daaaf[_0xe629('0x3b')]({'plain':!![]});_0x1c942c[_0xe629('0xa7')]['created']=![];if(_0x2342a5){if(_0x1c942c[_0xe629('0x77')][_0xe629('0xa8')]){_0x1c942c[_0xe629('0x78')][_0xe629('0xa9')]({'id':0x0,'priority':_0x1c942c[_0xe629('0x78')][_0xe629('0x5d')]+0x1,'app':_0xe629('0xaa'),'appdata':'unmanaged','interval':'*,*,*,*'});}_0x1c942c[_0xe629('0xa7')]['created']=!![];}return db[_0xe629('0xab')][_0xe629('0x61')]({'phone':_0x1c942c['body'][_0xe629('0x85')],'messageId':_0x1c942c['body'][_0xe629('0x90')],'body':_0x1c942c[_0xe629('0x62')][_0xe629('0x62')],'SmsAccountId':_0x43400e[_0xe629('0x69')]['id'],'SmsInteractionId':_0x4daaaf['id'],'direction':'in','ContactId':_0x4daaaf['ContactId'],'AttachmentId':_0x1c942c[_0xe629('0x62')][_0xe629('0xac')]});})[_0xe629('0x22')](function(_0x202164){_0x1c942c[_0xe629('0x2b')]=_0x202164;if(!_0x1c942c['interaction'][_0xe629('0xad')])return;return db['User'][_0xe629('0x60')]({'attributes':['id',_0xe629('0x40')],'where':{'id':_0x1c942c[_0xe629('0xa7')][_0xe629('0xad')]}});})['then'](function(_0x522061){if(_0x522061){_0x1c942c[_0xe629('0x78')]['unshift']({'id':0x0,'priority':0x0,'app':'agent','appdata':_0x522061['name']+','+(_0x1c942c[_0xe629('0x77')][_0xe629('0xae')]||0xa),'interval':_0xe629('0xaf')});}if(!_0x1c942c['interaction'][_0xe629('0xb0')])return;return db[_0xe629('0xb1')][_0xe629('0x60')]({'attributes':['id',_0xe629('0x40')],'where':{'id':_0x1c942c[_0xe629('0xa7')]['queueId']}});})[_0xe629('0x22')](function(_0x267f9c){if(_0x267f9c){_0x1c942c[_0xe629('0x78')][_0xe629('0xb2')]({'id':0x0,'priority':0x1,'app':_0xe629('0xb3'),'appdata':_0x267f9c[_0xe629('0x40')]+','+(_0x1c942c[_0xe629('0x77')]['waitForTheAssignedQueue']||0x12c),'interval':_0xe629('0xaf')});}return respondWithRpcPromise(_0xe629('0xb4'),_0xe629('0xb5'),_0x1c942c);})['then'](function(_0x4546e3){if(_0x4546e3){var _0x31c656=0xc8;var _0xc744f0='receiveMessage';logger[_0xe629('0x23')](_0xe629('0x27'),_0xc744f0,_0x31c656,_0xe629('0xb6'));logger['debug']('SmsAccount,\x20%s,\x20%s,\x20%s,\x20%s',_0xc744f0,_0x31c656,_0xe629('0xb6'),JSON[_0xe629('0x28')](_0x4546e3));if(_0x1c942c[_0xe629('0x77')][_0xe629('0x55')]===_0xe629('0x84')){return _0x242e29[_0xe629('0x2e')](_0x31c656)[_0xe629('0x35')](_0xe629('0xb7'),_0xe629('0xb8'))[_0xe629('0x41')](_0xe629('0xb9'));}else{return _0x242e29['status'](_0x31c656)[_0xe629('0x30')](_0x4546e3);}}})[_0xe629('0x2d')](handleError(_0x242e29,null));};exports[_0xe629('0xba')]=function(_0x35c9f0,_0x3c48d1){var _0x20e048=_0x35c9f0[_0xe629('0x69')]['id'];var _0x335107=_0x35c9f0[_0xe629('0x62')];var _0x5d0af8=0xc8;var _0x2fe944=null;return db[_0xe629('0xbb')]['transaction']({'isolationLevel':db[_0xe629('0xbb')][_0xe629('0xbc')][_0xe629('0xbd')]['READ_COMMITTED']},function(_0x29e09e){return db['SmsAccount']['findOne']({'where':{'id':_0x20e048},'transaction':_0x29e09e})['then'](function(_0x379d7a){if(_0x379d7a){return db[_0xe629('0x75')]['destroy']({'where':{'SmsAccountId':_0x20e048},'transaction':_0x29e09e})[_0xe629('0x22')](function(){var _0x4eb5c4=_[_0xe629('0x44')](_0x335107,function(_0x5e008a){_0x5e008a['SmsAccountId']=_0x20e048;return _0x5e008a;});return db[_0xe629('0x75')][_0xe629('0xbe')](_0x4eb5c4,{'transaction':_0x29e09e});});}else{_0x5d0af8=0x194;_0x2fe944=[];}});})[_0xe629('0x22')](function(){if(_0x5d0af8!==0x194){return db[_0xe629('0x75')][_0xe629('0xbf')]({'where':{'SmsAccountId':_0x20e048},'order':_0xe629('0x7a')})[_0xe629('0x22')](function(_0xd16f6c){_0x2fe944=_0xd16f6c;});}})['catch'](function(_0x1f3162){_0x5d0af8=0x1f4;logger[_0xe629('0x2a')](_0x1f3162[_0xe629('0x3f')]);if(_0x1f3162[_0xe629('0x40')]){delete _0x1f3162[_0xe629('0x40')];}_0x2fe944=_0x1f3162;})[_0xe629('0xc0')](function(){if(_0x2fe944===null){_0x3c48d1[_0xe629('0x3e')](_0x5d0af8);}else{if(_0x5d0af8===0x1f4){_0x3c48d1[_0xe629('0x2e')](_0x5d0af8)[_0xe629('0x41')](_0x2fe944);}else{_0x3c48d1[_0xe629('0x2e')](_0x5d0af8)[_0xe629('0x30')](_0x2fe944);}}});};exports[_0xe629('0xc1')]=function(_0x408d5d,_0x17bc2a,_0x31333e){var _0x41dda5={};var _0x47e9bd={};var _0x363717;var _0xeae208;return db[_0xe629('0x59')][_0xe629('0x6d')]({'where':{'id':_0x408d5d[_0xe629('0x69')]['id']}})[_0xe629('0x22')](handleEntityNotFound(_0x17bc2a,null))[_0xe629('0x22')](function(_0x247b89){if(_0x247b89){_0x363717=_0x247b89;_0x47e9bd[_0xe629('0x48')]=_[_0xe629('0x49')](db[_0xe629('0x75')]['rawAttributes']);_0x47e9bd[_0xe629('0x4a')]=_[_0xe629('0x49')](_0x408d5d[_0xe629('0x4a')]);_0x47e9bd[_0xe629('0x4b')]=_[_0xe629('0x4c')](_0x47e9bd[_0xe629('0x48')],_0x47e9bd['query']);_0x41dda5[_0xe629('0x4d')]=_[_0xe629('0x4c')](_0x47e9bd[_0xe629('0x48')],qs[_0xe629('0x4e')](_0x408d5d[_0xe629('0x4a')][_0xe629('0x4e')]));_0x41dda5['attributes']=_0x41dda5[_0xe629('0x4d')]['length']?_0x41dda5[_0xe629('0x4d')]:_0x47e9bd['model'];_0x41dda5['order']=qs[_0xe629('0x52')](_0x408d5d[_0xe629('0x4a')][_0xe629('0x52')]);_0x41dda5[_0xe629('0x54')]=qs[_0xe629('0x4b')](_[_0xe629('0x53')](_0x408d5d[_0xe629('0x4a')],_0x47e9bd['filters']));if(_0x408d5d[_0xe629('0x4a')][_0xe629('0x6e')]){_0x41dda5[_0xe629('0x54')]=_['merge'](_0x41dda5['where'],{'$or':_[_0xe629('0x44')](_0x41dda5[_0xe629('0x4d')],function(_0x552776){var _0x163b1d={};_0x163b1d[_0x552776]={'$like':'%'+_0x408d5d['query'][_0xe629('0x6e')]+'%'};return _0x163b1d;})});}_0x41dda5=_[_0xe629('0x57')]({},_0x41dda5,_0x408d5d[_0xe629('0x58')]);return _0x363717[_0xe629('0xc1')](_0x41dda5);}})[_0xe629('0x22')](function(_0xc303b9){if(_0xc303b9){_0xeae208=_0xc303b9[_0xe629('0x5d')];if(!_0x408d5d[_0xe629('0x4a')][_0xe629('0x4f')]('nolimit')){_0x41dda5[_0xe629('0x34')]=qs['limit'](_0x408d5d[_0xe629('0x4a')][_0xe629('0x34')]);_0x41dda5['offset']=qs['offset'](_0x408d5d[_0xe629('0x4a')]['offset']);}return _0x363717[_0xe629('0xc1')](_0x41dda5);}})[_0xe629('0x22')](function(_0x166691){if(_0x166691){return _0x166691?{'count':_0xeae208,'rows':_0x166691}:null;}})['then'](respondWithResult(_0x17bc2a,null))[_0xe629('0x2d')](handleError(_0x17bc2a,null));};exports[_0xe629('0xc2')]=function(_0x16e5f0,_0x4fe788,_0x1a0a55){var _0x739c73={'raw':![],'where':{}};var _0x3700ff={};var _0x32e776={'count':0x0,'rows':[]};return db[_0xe629('0x59')][_0xe629('0x6d')]({'where':{'id':_0x16e5f0[_0xe629('0x69')]['id']}})[_0xe629('0x22')](handleEntityNotFound(_0x4fe788,null))[_0xe629('0x22')](function(_0x2fd1c8){if(_0x2fd1c8){_0x3700ff[_0xe629('0x48')]=_['keys'](db[_0xe629('0xa5')][_0xe629('0x45')]);_0x3700ff[_0xe629('0x4a')]=_[_0xe629('0x49')](_0x16e5f0['query']);_0x3700ff[_0xe629('0x4b')]=_[_0xe629('0x4c')](_0x3700ff[_0xe629('0x48')],_0x3700ff['query']);_0x739c73['attributes']=_['intersection'](_0x3700ff[_0xe629('0x48')],qs[_0xe629('0x4e')](_0x16e5f0['query'][_0xe629('0x4e')]));_0x739c73[_0xe629('0x4d')]=_0x739c73[_0xe629('0x4d')][_0xe629('0x5d')]?_0x739c73[_0xe629('0x4d')]:_0x3700ff['model'];if(!_0x16e5f0[_0xe629('0x4a')][_0xe629('0x4f')](_0xe629('0x50'))){_0x739c73[_0xe629('0x34')]=qs[_0xe629('0x34')](_0x16e5f0[_0xe629('0x4a')]['limit']);_0x739c73['offset']=qs[_0xe629('0x31')](_0x16e5f0[_0xe629('0x4a')][_0xe629('0x31')]);}_0x739c73[_0xe629('0x51')]=qs[_0xe629('0x52')](_0x16e5f0[_0xe629('0x4a')][_0xe629('0x52')]);_0x739c73[_0xe629('0x54')]=qs[_0xe629('0x4b')](_[_0xe629('0x53')](_0x16e5f0[_0xe629('0x4a')],_0x3700ff[_0xe629('0x4b')]));_0x739c73['where'][_0xe629('0x6b')]=_0x2fd1c8['id'];if(_0x16e5f0[_0xe629('0x4a')]['filter']){_0x739c73[_0xe629('0x54')]=_['merge'](_0x739c73[_0xe629('0x54')],{'$or':_[_0xe629('0x44')](_0x739c73[_0xe629('0x4d')],function(_0x3d08e1){var _0x50e1f8={};_0x50e1f8[_0x3d08e1]={'$like':'%'+_0x16e5f0['query'][_0xe629('0x6e')]+'%'};return _0x50e1f8;})});}_0x739c73=_[_0xe629('0x57')]({},_0x739c73,_0x16e5f0['options']);return db[_0xe629('0xa5')]['count']({'where':_0x739c73[_0xe629('0x54')]})[_0xe629('0x22')](function(_0x4cdb3b){_0x32e776[_0xe629('0x33')]=_0x4cdb3b;if(_0x16e5f0[_0xe629('0x4a')][_0xe629('0x5e')]){_0x739c73['include']=[{'model':db[_0xe629('0x7c')],'as':_0xe629('0xc3'),'required':![]},{'model':db[_0xe629('0xc4')],'as':'Owner','attributes':['name',_0xe629('0xc5'),'internal'],'required':![]},{'model':db[_0xe629('0xc6')],'as':_0xe629('0xc7'),'attributes':['id',_0xe629('0x40'),_0xe629('0xc8')],'where':_0x16e5f0[_0xe629('0x4a')][_0xe629('0xc9')]?{'id':_0x16e5f0[_0xe629('0x4a')][_0xe629('0xc9')]}:undefined,'required':_0x16e5f0[_0xe629('0x4a')][_0xe629('0xc9')]?!![]:![]}];}return db[_0xe629('0xa5')][_0xe629('0x5a')](_0x739c73);})[_0xe629('0x22')](function(_0x47e5f3){_0x32e776['rows']=_0x47e5f3;return _0x32e776;});}})[_0xe629('0x22')](respondWithFilteredResult(_0x4fe788,_0x739c73))[_0xe629('0x2d')](handleError(_0x4fe788,null));};exports[_0xe629('0x41')]=function(_0x24abae,_0x23f8fe,_0x43644e){var _0x11b6aa,_0x5ba20c,_0x29d155;if(_[_0xe629('0x9a')](_0x24abae['body'][_0xe629('0x62')])||_0x24abae['body'][_0xe629('0x62')]===''){throw new db[(_0xe629('0x7d'))]['ValidationError'](_0xe629('0x9c'));}if(_[_0xe629('0x9a')](_0x24abae['body']['to'])){throw new db['Sequelize'][(_0xe629('0x7e'))](_0xe629('0xca'));}_0x11b6aa=_0x24abae[_0xe629('0x62')]['to'];return db[_0xe629('0x59')][_0xe629('0x60')]({'where':{'id':_0x24abae[_0xe629('0x69')]['id']},'include':[{'model':db[_0xe629('0xa0')],'as':'List','include':[{'model':db[_0xe629('0x7c')],'as':_0xe629('0xa2'),'where':{'mobile':_0x11b6aa},'limit':0x1,'order':[[_0xe629('0x80'),_0xe629('0xcb')]]}]}]})[_0xe629('0x22')](handleEntityNotFound(_0x23f8fe,null))[_0xe629('0x22')](function(_0x52ad44){if(_0x52ad44&&_0x52ad44['List']){_0x5ba20c=_0x52ad44[_0xe629('0x3b')]({'plain':!![]});if(_0x5ba20c[_0xe629('0xcc')]&&_0x5ba20c[_0xe629('0xcc')]['Contacts'][_0xe629('0x5d')]){return _0x5ba20c[_0xe629('0xcc')][_0xe629('0xa2')][0x0];}return db[_0xe629('0x7c')][_0xe629('0x61')](_[_0xe629('0x1a')](_0x24abae[_0xe629('0x62')],{'firstName':_0x11b6aa,'mobile':_0x11b6aa,'phone':_0x11b6aa,'ListId':_0x5ba20c[_0xe629('0xa1')]}));}})['then'](handleEntityNotFound(_0x23f8fe,null))['then'](function(_0x31bba8){if(_0x31bba8){_0x29d155=_0x31bba8;return db[_0xe629('0xa5')]['find']({'where':{'ContactId':_0x29d155['id'],'closed':![],'SmsAccountId':_0x5ba20c['id']}})[_0xe629('0x22')](function(_0x215e82){if(_0x215e82){return[_0x215e82,![]];}return db[_0xe629('0xa5')]['create']({'UserId':_0x24abae[_0xe629('0x63')]['id'],'ContactId':_0x29d155['id'],'SmsAccountId':_0x5ba20c['id'],'phone':_0x11b6aa,'firstMsgDirection':'out','Messages':[_[_0xe629('0x57')](_0x24abae[_0xe629('0x62')],{'read':![],'body':_0x24abae[_0xe629('0x62')][_0xe629('0x62')],'phone':_0x11b6aa,'SmsAccountId':_0x5ba20c['id'],'UserId':_0x24abae[_0xe629('0x63')]['id'],'ContactId':_0x29d155['id']})]},{'include':[{'model':db['SmsMessage'],'as':_0xe629('0xcd')}]})[_0xe629('0x22')](function(_0x2372a1){return[_0x2372a1,!![]];});});}})[_0xe629('0xa6')](function(_0x306db5,_0x6971a4){if(_0x6971a4){return _0x306db5;}return db['SmsMessage'][_0xe629('0x61')](_['merge'](_0x24abae[_0xe629('0x62')],{'read':![],'body':_0x24abae[_0xe629('0x62')][_0xe629('0x62')],'phone':_0x11b6aa,'SmsAccountId':_0x5ba20c['id'],'SmsInteractionId':_0x306db5['id'],'UserId':_0x24abae['user']['id'],'ContactId':_0x29d155['id']}))[_0xe629('0x22')](function(_0x3c70b5){_0x306db5[_0xe629('0xce')][_0xe629('0xcd')]=[];_0x306db5['dataValues'][_0xe629('0xcd')][_0xe629('0xa9')](_0x3c70b5['dataValues']);return _0x306db5;});})[_0xe629('0x22')](respondWithResult(_0x23f8fe,null))[_0xe629('0x2d')](handleError(_0x23f8fe,null));};exports[_0xe629('0x2e')]=function(_0x3506e3,_0x1aee23,_0x361575){if(_0x3506e3['body']['id']){delete _0x3506e3[_0xe629('0x62')]['id'];}var _0x56a950,_0x487988,_0x2c6c23;return db[_0xe629('0x59')]['find']({'where':{'id':_0x3506e3[_0xe629('0x69')]['id']}})['then'](handleEntityNotFound(_0x1aee23,null))[_0xe629('0x22')](function(_0x475fd5){if(_0x475fd5){_0x2c6c23=_0x475fd5;logger['debug'](_0xe629('0x27'),'status',_0xe629('0xcf'),_0x475fd5[_0xe629('0x55')],util[_0xe629('0xd0')](_0x3506e3[_0xe629('0x62')],{'showHidden':![],'depth':null}));switch(_0x475fd5[_0xe629('0x55')]){case _0xe629('0x89'):if(_0x3506e3[_0xe629('0x62')][_0xe629('0xd1')]&&_0x3506e3[_0xe629('0x62')]['status']){_0x487988=_0x3506e3['body'][_0xe629('0x2e')];return db[_0xe629('0xab')][_0xe629('0x60')]({'where':{'messageId':_0x3506e3[_0xe629('0x62')][_0xe629('0xd1')]}});}break;case _0xe629('0x8b'):if(_0x3506e3[_0xe629('0x62')][_0xe629('0xd2')]&&_0x3506e3[_0xe629('0x62')][_0xe629('0xd3')]){_0x487988=_0x3506e3[_0xe629('0x62')][_0xe629('0xd3')];return db['SmsMessage'][_0xe629('0x60')]({'where':{'messageId':_0x3506e3['body'][_0xe629('0xd2')]}});}break;case _0xe629('0x8c'):if(_0x3506e3[_0xe629('0x62')]['message_id']&&_0x3506e3['body'][_0xe629('0xd4')]){_0x487988=_0x3506e3['body']['status_code'];return db[_0xe629('0xab')][_0xe629('0x60')]({'where':{'messageId':_0x3506e3[_0xe629('0x62')]['message_id']}});}break;case'infobip':var _0x420a2f=_0x3506e3[_0xe629('0x62')]['results'][0x0];if(_0x420a2f[_0xe629('0x90')]&&_0x420a2f[_0xe629('0x2e')][_0xe629('0xd5')]===_0xe629('0xd6')){_0x487988=_0x420a2f[_0xe629('0x2e')][_0xe629('0xd5')];return db[_0xe629('0xab')]['find']({'where':{'messageId':_0x420a2f['messageId']}});}break;case _0xe629('0x96'):if(_0x3506e3[_0xe629('0x62')][_0xe629('0x90')]&&_0x3506e3['body'][_0xe629('0x2e')]){_0x487988=_0x3506e3['body'][_0xe629('0x2e')];return db[_0xe629('0xab')][_0xe629('0x60')]({'where':{'messageId':_0x3506e3[_0xe629('0x62')][_0xe629('0x90')]}});}break;case'bandwidth':if(_0x3506e3[_0xe629('0x62')][0x0][_0xe629('0x2b')]['id']){_0x487988=_0x3506e3[_0xe629('0x62')][0x0][_0xe629('0x55')];return db[_0xe629('0xab')][_0xe629('0x60')]({'where':{'messageId':_0x3506e3['body'][0x0][_0xe629('0x2b')]['id']}});}break;case'intelepeer':if(_0x3506e3[_0xe629('0x62')][_0xe629('0xd7')]&&_0x3506e3['body'][_0xe629('0x2e')]){_0x487988=_0x3506e3[_0xe629('0x62')]['status'];return db['SmsMessage'][_0xe629('0x60')]({'where':{'messageId':_0x3506e3[_0xe629('0x62')]['redif']}});}break;}}})[_0xe629('0x22')](handleEntityNotFound(_0x1aee23,null))[_0xe629('0x22')](function(_0x4b90aa){if(_0x4b90aa){_0x56a950=_0x4b90aa;switch(_0x2c6c23[_0xe629('0x55')]){case'skebby':if(_0x487988===_0xe629('0xd6')){return _0x56a950[_0xe629('0x3a')]({'read':!![]});}else{logger[_0xe629('0x2a')](_0xe629('0x27'),'status',_0xe629('0x89'),util[_0xe629('0xd0')](_0x3506e3[_0xe629('0x62')],{'showHidden':![],'depth':null}));}break;case _0xe629('0x8b'):if(_0x487988==='1'){return _0x56a950[_0xe629('0x3a')]({'read':!![]});}else{logger[_0xe629('0x2a')](_0xe629('0x27'),'status',_0xe629('0x89'),util['inspect'](_0x3506e3['body'],{'showHidden':![],'depth':null}));}break;case'clicksend':if(!_0x3506e3[_0xe629('0x62')][_0xe629('0xd8')]&&_0x487988>=0xc8&&_0x487988<=0xce){return _0x56a950[_0xe629('0x3a')]({'read':!![]});}else{logger[_0xe629('0x2a')]('SmsAccount,\x20%s,\x20%s,\x20%s',_0xe629('0x2e'),_0xe629('0x8c'),util[_0xe629('0xd0')](_0x3506e3[_0xe629('0x62')],{'showHidden':![],'depth':null}));}break;case _0xe629('0x92'):var _0x1f379a=_0x3506e3['body'][_0xe629('0x93')][0x0];if(_0x1f379a['status']['groupName']===_0xe629('0xd6')){return _0x56a950['update']({'read':!![]});}else{logger[_0xe629('0x2a')](_0xe629('0x27'),_0xe629('0x2e'),'infobip',util[_0xe629('0xd0')](_0x3506e3[_0xe629('0x62')],{'showHidden':![],'depth':null}));}break;case _0xe629('0x96'):if(_0x487988==_0xe629('0xd9')||_0x487988==_0xe629('0xda')){return _0x56a950[_0xe629('0x3a')]({'read':!![]});}else{logger['error']('SmsAccount,\x20%s,\x20%s,\x20%s',_0xe629('0x2e'),_0xe629('0x96'),util[_0xe629('0xd0')](_0x3506e3[_0xe629('0x62')],{'showHidden':![],'depth':null}));}break;case _0xe629('0xdb'):if(_0x487988==_0xe629('0xdc')){return _0x56a950['update']({'read':!![]});}else{logger['error'](_0xe629('0x27'),'status',_0xe629('0xdb'),util[_0xe629('0xd0')](_0x3506e3[_0xe629('0x62')],{'showHidden':![],'depth':null}));}break;case'intelepeer':if(_0x487988===_0xe629('0xdd')||_0x487988==='ACCEPTD'){return _0x56a950[_0xe629('0x3a')]({'read':!![]});}else{logger['error']('SmsAccount,\x20%s,\x20%s,\x20%s',_0xe629('0x2e'),_0xe629('0x98'),util[_0xe629('0xd0')](_0x3506e3[_0xe629('0x62')],{'showHidden':![],'depth':null}));}break;}return _0x56a950;}})[_0xe629('0x22')](respondWithResult(_0x1aee23,null))[_0xe629('0x2d')](handleError(_0x1aee23,null));};exports[_0xe629('0xde')]=function(_0x16560f,_0x2caaa3,_0x588c02){var _0x5dd7d3,_0xf4e67f,_0x425c8d;return db['SmsAccount'][_0xe629('0x60')]({'where':{'id':_0x16560f[_0xe629('0x69')]['id']}})[_0xe629('0x22')](handleEntityNotFound(_0x2caaa3,null))['then'](function(_0x7f1a9d){if(_0x7f1a9d){_0x425c8d=_0x7f1a9d;logger['debug'](_0xe629('0x27'),'status','received\x20delivery\x20report\x20from',_0x7f1a9d[_0xe629('0x55')],util[_0xe629('0xd0')](_0x16560f['query'],{'showHidden':![],'depth':null}));switch(_0x7f1a9d['type']){case _0xe629('0x94'):if(_0x16560f[_0xe629('0x4a')]['message-id']&&_0x16560f[_0xe629('0x4a')]['state']){_0xf4e67f=_0x16560f[_0xe629('0x4a')][_0xe629('0xdf')];return db[_0xe629('0xab')]['find']({'where':{'messageId':_0x16560f[_0xe629('0x4a')][_0xe629('0xe0')]}});}break;}}})[_0xe629('0x22')](handleEntityNotFound(_0x2caaa3,null))[_0xe629('0x22')](function(_0x52b531){if(_0x52b531){_0x5dd7d3=_0x52b531;switch(_0x425c8d[_0xe629('0x55')]){case _0xe629('0x94'):if(_0xf4e67f==='2'||_0xf4e67f==='6'){return _0x5dd7d3['update']({'read':!![]});}else{logger[_0xe629('0x2a')](_0xe629('0x27'),_0xe629('0x2e'),_0xe629('0x94'),util['inspect'](_0x16560f[_0xe629('0x4a')],{'showHidden':![],'depth':null}));};break;}return _0x5dd7d3;}})[_0xe629('0x22')](respondWithResult(_0x2caaa3,null))[_0xe629('0x2d')](handleError(_0x2caaa3,null));};exports[_0xe629('0xe1')]=function(_0x50417b,_0x31eecb,_0x443a51){return db['SmsAccount']['find']({'where':{'id':_0x50417b[_0xe629('0x69')]['id']}})[_0xe629('0x22')](handleEntityNotFound(_0x31eecb,null))[_0xe629('0x22')](function(_0x18bb03){if(_0x18bb03){return _0x18bb03[_0xe629('0xe1')](_0x50417b[_0xe629('0x62')][_0xe629('0x70')],_[_0xe629('0xe2')](_0x50417b[_0xe629('0x62')],[_0xe629('0x70'),'id'])||{})['spread'](function(_0x1ed81e){for(var _0x318c27=0x0;_0x318c27<_0x50417b[_0xe629('0x62')]['ids'][_0xe629('0x5d')];_0x318c27+=0x1){socket['emit'](_0xe629('0xe3'),{'UserId':Number(_0x50417b['body']['ids'][_0x318c27]),'SmsAccountId':Number(_0x50417b[_0xe629('0x69')]['id'])});}return _0x1ed81e;});}})[_0xe629('0x22')](respondWithResult(_0x31eecb,null))['catch'](handleError(_0x31eecb,null));};exports[_0xe629('0xe4')]=function(_0x43eaf5,_0x417d2b,_0x1332c3){return db[_0xe629('0x59')][_0xe629('0x60')]({'where':{'id':_0x43eaf5[_0xe629('0x69')]['id']}})['then'](handleEntityNotFound(_0x417d2b,null))[_0xe629('0x22')](function(_0xf12169){if(_0xf12169){return _0xf12169['removeAgents'](_0x43eaf5['query']['ids'])['then'](function(){if(_[_0xe629('0xe5')](_0x43eaf5[_0xe629('0x4a')][_0xe629('0x70')])){for(var _0x53660f=0x0;_0x53660f<_0x43eaf5[_0xe629('0x4a')][_0xe629('0x70')][_0xe629('0x5d')];_0x53660f+=0x1){socket[_0xe629('0xe6')]('userSmsAccount:remove',{'UserId':Number(_0x43eaf5[_0xe629('0x4a')]['ids'][_0x53660f]),'SmsAccountId':Number(_0x43eaf5[_0xe629('0x69')]['id'])});}}else{socket[_0xe629('0xe6')](_0xe629('0xe7'),{'UserId':Number(_0x43eaf5[_0xe629('0x4a')][_0xe629('0x70')]),'SmsAccountId':Number(_0x43eaf5[_0xe629('0x69')]['id'])});}});}})[_0xe629('0x22')](respondWithStatusCode(_0x417d2b,null))[_0xe629('0x2d')](handleError(_0x417d2b,null));};exports[_0xe629('0xe8')]=function(_0x5027de,_0xa71153,_0x10ccb5){var _0x250e92={};var _0xa3f0fe={};var _0x62bdcc;var _0x172d7b;return db[_0xe629('0x59')][_0xe629('0x6d')]({'where':{'id':_0x5027de[_0xe629('0x69')]['id']}})['then'](handleEntityNotFound(_0xa71153,null))['then'](function(_0x468ba0){if(_0x468ba0){_0x62bdcc=_0x468ba0;_0xa3f0fe[_0xe629('0x48')]=_[_0xe629('0x49')](db[_0xe629('0xc4')][_0xe629('0x45')]);_0xa3f0fe[_0xe629('0x4a')]=_[_0xe629('0x49')](_0x5027de[_0xe629('0x4a')]);_0xa3f0fe[_0xe629('0x4b')]=_[_0xe629('0x4c')](_0xa3f0fe[_0xe629('0x48')],_0xa3f0fe[_0xe629('0x4a')]);_0x250e92['attributes']=_[_0xe629('0x4c')](_0xa3f0fe[_0xe629('0x48')],qs[_0xe629('0x4e')](_0x5027de[_0xe629('0x4a')]['fields']));_0x250e92[_0xe629('0x4d')]=_0x250e92['attributes'][_0xe629('0x5d')]?_0x250e92['attributes']:_0xa3f0fe['model'];_0x250e92[_0xe629('0x51')]=qs[_0xe629('0x52')](_0x5027de[_0xe629('0x4a')]['sort']);_0x250e92[_0xe629('0x54')]=qs['filters'](_[_0xe629('0x53')](_0x5027de['query'],_0xa3f0fe['filters']));if(_0x5027de[_0xe629('0x4a')][_0xe629('0x6e')]){_0x250e92[_0xe629('0x54')]=_[_0xe629('0x57')](_0x250e92[_0xe629('0x54')],{'$or':_[_0xe629('0x44')](_0x250e92[_0xe629('0x4d')],function(_0x425df2){var _0x3981ff={};_0x3981ff[_0x425df2]={'$like':'%'+_0x5027de[_0xe629('0x4a')][_0xe629('0x6e')]+'%'};return _0x3981ff;})});}_0x250e92=_[_0xe629('0x57')]({},_0x250e92,_0x5027de[_0xe629('0x58')]);return _0x62bdcc['getAgents'](_0x250e92);}})[_0xe629('0x22')](function(_0x16daaf){if(_0x16daaf){_0x172d7b=_0x16daaf[_0xe629('0x5d')];if(!_0x5027de['query']['hasOwnProperty'](_0xe629('0x50'))){_0x250e92['limit']=qs[_0xe629('0x34')](_0x5027de['query']['limit']);_0x250e92['offset']=qs['offset'](_0x5027de[_0xe629('0x4a')]['offset']);}return _0x62bdcc[_0xe629('0xe8')](_0x250e92);}})[_0xe629('0x22')](function(_0x333f0c){if(_0x333f0c){return _0x333f0c?{'count':_0x172d7b,'rows':_0x333f0c}:null;}})[_0xe629('0x22')](respondWithResult(_0xa71153,null))[_0xe629('0x2d')](handleError(_0xa71153,null));};