542cd0794e367a3668506df06440d91ee03e5b92
[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 _0xa9e0=['omit','SmsInteraction','spread','interaction','autoclose','close','*,*,*,*','created','ContactId','AttachmentId','User','UserId','unshift','agent','waitForTheAssignedAgent','startRouting','receiveMessage','entity\x20found','twilio','text/xml','<?xml\x20version=\x221.0\x22\x20encoding=\x22UTF-8\x22?>\x0a<Response></Response>','addApplications','transaction','bulkCreate','findAndCountAll','getApplications','Contact','Owner','fullname','internal','Tag','tag','findAll','to\x20is\x20mandatory','List','user','out','SmsMessage','Messages','dataValues','received\x20delivery\x20report\x20from','skebby_dispatch_id','requestid','statusInt','status_code','groupName','DELIVERED','intelepeer','redif','error_code','results','inspect','DELIVERED_TO_GATEWAY','RECEIVED_BY_RECIPIENT','message-delivered','DELIVRD','ACCEPTD','statusGet','message-id','state','addAgents','emit','userSmsAccount:save','removeAgents','isArray','userSmsAccount:remove','getAgents','eml-format','rimraf','zip-dir','moment','mustache','util','path','sox','to-csv','fs-extra','lodash','squel','desk.js','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/license/util','../../mysqldb','redis','defaults','localhost','./smsAccount.socket','register','jayson/promise','client','http','then','info','SmsAccount,\x20%s,\x20%s','request\x20sent','debug','SmsAccount,\x20%s,\x20%s,\x20%s','stringify','error','code','message','result','catch','sendStatus','status','end','count','offset','limit','set','json','apply','reject','save','update','destroy','get','SmsAccounts','UserProfileResource','stack','name','send','Pause','mandatoryDispositionPause','SmsAccount','rawAttributes','key','model','query','keys','intersection','fields','attributes','length','hasOwnProperty','nolimit','order','sort','where','filters','pick','filter','map','type','VIRTUAL','merge','includeAll','include','rows','show','params','options','create','role','UserProfileSection','find','userProfileId','autoAssociation','body','describe','addDisposition','SmsAccountId','Disposition','getDispositions','removeDispositions','ids','addAnswer','CannedAnswer','findOne','removeAnswers','notify','sms','SmsApplication','account','applications','orderBy','Applications','priority','asc','CmContact','ValidationError','no\x20available\x20attributes','createdAt','updatedAt','difference','CompanyId','ListId','mobile','from','From','Body','messageId','MessageSid','skebby','text','connectel','clicksend','message_id','plivo','Text','infobip','csc','originatingAddress','segmentedMessage','clickatell','fromNumber','replyMessageId','bandwidth','refid','isNil','Sequelize','from\x20is\x20mandatory','body\x20is\x20mandatory\x20and\x20not\x20empty','mapKey','includes','mapKey\x20invalid,\x20please\x20use\x20one\x20of\x20these:\x20','CmList','Contacts','DESC'];(function(_0x1a8e76,_0x35e540){var _0x240358=function(_0x3a7efa){while(--_0x3a7efa){_0x1a8e76['push'](_0x1a8e76['shift']());}};_0x240358(++_0x35e540);}(_0xa9e0,0x123));var _0x0a9e=function(_0x2dafbe,_0x5d04de){_0x2dafbe=_0x2dafbe-0x0;var _0x58a45a=_0xa9e0[_0x2dafbe];return _0x58a45a;};'use strict';var emlformat=require(_0x0a9e('0x0'));var rimraf=require(_0x0a9e('0x1'));var zipdir=require(_0x0a9e('0x2'));var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require(_0x0a9e('0x3'));var BPromise=require('bluebird');var Mustache=require(_0x0a9e('0x4'));var util=require(_0x0a9e('0x5'));var path=require(_0x0a9e('0x6'));var sox=require(_0x0a9e('0x7'));var csv=require(_0x0a9e('0x8'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x0a9e('0x9'));var _=require(_0x0a9e('0xa'));var squel=require(_0x0a9e('0xb'));var crypto=require('crypto');var jsforce=require('jsforce');var deskjs=require(_0x0a9e('0xc'));var toCsv=require('to-csv');var querystring=require('querystring');var Papa=require(_0x0a9e('0xd'));var Redis=require(_0x0a9e('0xe'));var authService=require(_0x0a9e('0xf'));var qs=require(_0x0a9e('0x10'));var as=require(_0x0a9e('0x11'));var hardwareService=require(_0x0a9e('0x12'));var logger=require('../../config/logger')('api');var utils=require('../../config/utils');var config=require('../../config/environment');var licenseUtil=require(_0x0a9e('0x13'));var db=require(_0x0a9e('0x14'))['db'];config[_0x0a9e('0x15')]=_[_0x0a9e('0x16')](config[_0x0a9e('0x15')],{'host':_0x0a9e('0x17'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x0a9e('0x15')]));require(_0x0a9e('0x18'))[_0x0a9e('0x19')](socket);var jayson=require(_0x0a9e('0x1a'));var client=jayson[_0x0a9e('0x1b')][_0x0a9e('0x1c')]({'port':0x232c});function respondWithRpcPromise(_0x52a03d,_0x22dccb,_0x5d0880,_0x1985b6){return new BPromise(function(_0x519dfd,_0x16033c){var _0x12066b=_0x1985b6||client;return _0x12066b['request'](_0x52a03d,_0x5d0880)[_0x0a9e('0x1d')](function(_0x5a0a06){logger[_0x0a9e('0x1e')](_0x0a9e('0x1f'),_0x22dccb,_0x0a9e('0x20'));logger[_0x0a9e('0x21')](_0x0a9e('0x22'),_0x22dccb,_0x0a9e('0x20'),JSON[_0x0a9e('0x23')](_0x5a0a06));if(_0x5a0a06[_0x0a9e('0x24')]){if(_0x5a0a06[_0x0a9e('0x24')][_0x0a9e('0x25')]===0x1f4){logger[_0x0a9e('0x24')](_0x0a9e('0x1f'),_0x22dccb,_0x5a0a06['error'][_0x0a9e('0x26')]);return _0x16033c(_0x5a0a06[_0x0a9e('0x24')]['message']);}logger[_0x0a9e('0x24')]('SmsAccount,\x20%s,\x20%s',_0x22dccb,_0x5a0a06['error'][_0x0a9e('0x26')]);return _0x519dfd(_0x5a0a06[_0x0a9e('0x24')][_0x0a9e('0x26')]);}else{logger[_0x0a9e('0x1e')]('SmsAccount,\x20%s,\x20%s',_0x22dccb,_0x0a9e('0x20'));_0x519dfd(_0x5a0a06[_0x0a9e('0x27')][_0x0a9e('0x26')]);}})[_0x0a9e('0x28')](function(_0x370d86){logger[_0x0a9e('0x24')](_0x0a9e('0x1f'),_0x22dccb,_0x370d86);_0x16033c(_0x370d86);});});}function respondWithStatusCode(_0x5ea472,_0x59181e){_0x59181e=_0x59181e||0xcc;return function(_0x197ec0){if(_0x197ec0){return _0x5ea472[_0x0a9e('0x29')](_0x59181e);}return _0x5ea472[_0x0a9e('0x2a')](_0x59181e)[_0x0a9e('0x2b')]();};}function respondWithResult(_0x526cf3,_0x384319){_0x384319=_0x384319||0xc8;return function(_0x479bc4){if(_0x479bc4){return _0x526cf3[_0x0a9e('0x2a')](_0x384319)['json'](_0x479bc4);}};}function respondWithFilteredResult(_0x1dc186,_0x34dc65){return function(_0x25fba9){if(_0x25fba9){var _0x14433c=_0x25fba9[_0x0a9e('0x2c')],_0x140511=_0x34dc65['offset'],_0x1538a4=_0x34dc65[_0x0a9e('0x2d')]+_0x34dc65[_0x0a9e('0x2e')],_0x11c3b6;if(_0x1538a4>=_0x14433c){_0x1538a4=_0x14433c;_0x11c3b6=0xc8;}else{_0x11c3b6=0xce;}_0x1dc186[_0x0a9e('0x2a')](_0x11c3b6);return _0x1dc186[_0x0a9e('0x2f')]('Content-Range',_0x140511+'-'+_0x1538a4+'/'+_0x14433c)[_0x0a9e('0x30')](_0x25fba9);}return null;};}function patchUpdates(_0x40e7a3){return function(_0x1843b2){try{jsonpatch[_0x0a9e('0x31')](_0x1843b2,_0x40e7a3,!![]);}catch(_0x58b06f){return BPromise[_0x0a9e('0x32')](_0x58b06f);}return _0x1843b2[_0x0a9e('0x33')]();};}function saveUpdates(_0x2e8759,_0x1dbde2){return function(_0x540530){if(_0x540530){return _0x540530[_0x0a9e('0x34')](_0x2e8759)['then'](function(_0x2407f9){return _0x2407f9;});}return null;};}function removeEntity(_0x3ae878,_0x1122db){return function(_0x33bdb7){if(_0x33bdb7){return _0x33bdb7[_0x0a9e('0x35')]()['then'](function(){var _0x66c1d2=_0x33bdb7[_0x0a9e('0x36')]({'plain':!![]});var _0x40cb85=_0x0a9e('0x37');return db[_0x0a9e('0x38')][_0x0a9e('0x35')]({'where':{'type':_0x40cb85,'resourceId':_0x66c1d2['id']}})[_0x0a9e('0x1d')](function(){return _0x33bdb7;});})[_0x0a9e('0x1d')](function(){_0x3ae878['status'](0xcc)[_0x0a9e('0x2b')]();});}};}function handleEntityNotFound(_0x5e7238,_0x2cc7a0){return function(_0x14b13f){if(!_0x14b13f){_0x5e7238[_0x0a9e('0x29')](0x194);}return _0x14b13f;};}function handleError(_0x3f3d41,_0x567193){_0x567193=_0x567193||0x1f4;return function(_0x191e91){logger[_0x0a9e('0x24')](_0x191e91[_0x0a9e('0x39')]);if(_0x191e91[_0x0a9e('0x3a')]){delete _0x191e91['name'];}_0x3f3d41['status'](_0x567193)[_0x0a9e('0x3b')](_0x191e91);};}exports['index']=function(_0x24936a,_0x3d9717){var _0x381c37={'include':[{'model':db[_0x0a9e('0x3c')],'as':_0x0a9e('0x3d')}]},_0x1ef87a={},_0x4f41ae={'count':0x0,'rows':[]};var _0x3cae=_['map'](db[_0x0a9e('0x3e')][_0x0a9e('0x3f')],function(_0x289467){return{'name':_0x289467['fieldName'],'type':_0x289467['type'][_0x0a9e('0x40')]};});_0x1ef87a[_0x0a9e('0x41')]=_['map'](_0x3cae,_0x0a9e('0x3a'));_0x1ef87a[_0x0a9e('0x42')]=_[_0x0a9e('0x43')](_0x24936a[_0x0a9e('0x42')]);_0x1ef87a['filters']=_['intersection'](_0x1ef87a[_0x0a9e('0x41')],_0x1ef87a[_0x0a9e('0x42')]);_0x381c37['attributes']=_[_0x0a9e('0x44')](_0x1ef87a[_0x0a9e('0x41')],qs[_0x0a9e('0x45')](_0x24936a['query'][_0x0a9e('0x45')]));_0x381c37[_0x0a9e('0x46')]=_0x381c37[_0x0a9e('0x46')][_0x0a9e('0x47')]?_0x381c37[_0x0a9e('0x46')]:_0x1ef87a[_0x0a9e('0x41')];if(!_0x24936a[_0x0a9e('0x42')][_0x0a9e('0x48')](_0x0a9e('0x49'))){_0x381c37[_0x0a9e('0x2e')]=qs[_0x0a9e('0x2e')](_0x24936a[_0x0a9e('0x42')][_0x0a9e('0x2e')]);_0x381c37[_0x0a9e('0x2d')]=qs[_0x0a9e('0x2d')](_0x24936a['query']['offset']);}_0x381c37[_0x0a9e('0x4a')]=qs[_0x0a9e('0x4b')](_0x24936a[_0x0a9e('0x42')][_0x0a9e('0x4b')]);_0x381c37[_0x0a9e('0x4c')]=qs[_0x0a9e('0x4d')](_[_0x0a9e('0x4e')](_0x24936a[_0x0a9e('0x42')],_0x1ef87a[_0x0a9e('0x4d')]),_0x3cae);if(_0x24936a[_0x0a9e('0x42')][_0x0a9e('0x4f')]){_0x381c37[_0x0a9e('0x4c')]=_['merge'](_0x381c37[_0x0a9e('0x4c')],{'$or':_[_0x0a9e('0x50')](_0x3cae,function(_0xdd268f){if(_0xdd268f[_0x0a9e('0x51')]!==_0x0a9e('0x52')){var _0xbe9d19={};_0xbe9d19[_0xdd268f[_0x0a9e('0x3a')]]={'$like':'%'+_0x24936a[_0x0a9e('0x42')]['filter']+'%'};return _0xbe9d19;}})});}_0x381c37=_[_0x0a9e('0x53')]({},_0x381c37,_0x24936a['options']);var _0x473dc8={'where':_0x381c37[_0x0a9e('0x4c')]};return db[_0x0a9e('0x3e')]['count'](_0x473dc8)[_0x0a9e('0x1d')](function(_0x7f6eb1){_0x4f41ae[_0x0a9e('0x2c')]=_0x7f6eb1;if(_0x24936a[_0x0a9e('0x42')][_0x0a9e('0x54')]){_0x381c37[_0x0a9e('0x55')]=[{'all':!![]}];}return db[_0x0a9e('0x3e')]['findAll'](_0x381c37);})[_0x0a9e('0x1d')](function(_0x1bde3c){_0x4f41ae[_0x0a9e('0x56')]=_0x1bde3c;return _0x4f41ae;})[_0x0a9e('0x1d')](respondWithFilteredResult(_0x3d9717,_0x381c37))[_0x0a9e('0x28')](handleError(_0x3d9717,null));};exports[_0x0a9e('0x57')]=function(_0x6054ee,_0x19383e){var _0x34febd={'raw':![],'where':{'id':_0x6054ee[_0x0a9e('0x58')]['id']},'include':[{'model':db[_0x0a9e('0x3c')],'as':'mandatoryDispositionPause'}]},_0x58a5c2={};_0x58a5c2['model']=_['keys'](db[_0x0a9e('0x3e')][_0x0a9e('0x3f')]);_0x58a5c2[_0x0a9e('0x42')]=_[_0x0a9e('0x43')](_0x6054ee[_0x0a9e('0x42')]);_0x58a5c2[_0x0a9e('0x4d')]=_[_0x0a9e('0x44')](_0x58a5c2[_0x0a9e('0x41')],_0x58a5c2['query']);_0x34febd['attributes']=_['intersection'](_0x58a5c2[_0x0a9e('0x41')],qs[_0x0a9e('0x45')](_0x6054ee[_0x0a9e('0x42')]['fields']));_0x34febd[_0x0a9e('0x46')]=_0x34febd[_0x0a9e('0x46')]['length']?_0x34febd['attributes']:_0x58a5c2[_0x0a9e('0x41')];if(_0x6054ee['query'][_0x0a9e('0x54')]){_0x34febd['include']=[{'all':!![]}];}_0x34febd=_[_0x0a9e('0x53')]({},_0x34febd,_0x6054ee[_0x0a9e('0x59')]);return db[_0x0a9e('0x3e')]['find'](_0x34febd)[_0x0a9e('0x1d')](handleEntityNotFound(_0x19383e,null))[_0x0a9e('0x1d')](respondWithResult(_0x19383e,null))['catch'](handleError(_0x19383e,null));};exports['create']=function(_0x128aa6,_0x3aedd0){return db['SmsAccount'][_0x0a9e('0x5a')](_0x128aa6['body'],{})[_0x0a9e('0x1d')](function(_0x523cd2){var _0xe22ccc=_0x128aa6['user']['get']({'plain':!![]});if(!_0xe22ccc)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0xe22ccc[_0x0a9e('0x5b')]==='user'){var _0x2f7092=_0x523cd2[_0x0a9e('0x36')]({'plain':!![]});var _0x3cfd00=_0x0a9e('0x37');return db[_0x0a9e('0x5c')][_0x0a9e('0x5d')]({'where':{'name':_0x3cfd00,'userProfileId':_0xe22ccc[_0x0a9e('0x5e')]},'raw':!![]})[_0x0a9e('0x1d')](function(_0x4e67ab){if(_0x4e67ab&&_0x4e67ab[_0x0a9e('0x5f')]===0x0){return db[_0x0a9e('0x38')][_0x0a9e('0x5a')]({'name':_0x2f7092[_0x0a9e('0x3a')],'resourceId':_0x2f7092['id'],'type':_0x4e67ab[_0x0a9e('0x3a')],'sectionId':_0x4e67ab['id']},{})[_0x0a9e('0x1d')](function(){return _0x523cd2;});}else{return _0x523cd2;}})['catch'](function(_0x956fbe){logger[_0x0a9e('0x24')]('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0x956fbe);throw _0x956fbe;});}return _0x523cd2;})[_0x0a9e('0x1d')](respondWithResult(_0x3aedd0,0xc9))['catch'](handleError(_0x3aedd0,null));};exports[_0x0a9e('0x34')]=function(_0x5ba1f9,_0x4b3c1a){if(_0x5ba1f9['body']['id']){delete _0x5ba1f9[_0x0a9e('0x60')]['id'];}return db['SmsAccount'][_0x0a9e('0x5d')]({'where':{'id':_0x5ba1f9[_0x0a9e('0x58')]['id']},'include':[{'model':db[_0x0a9e('0x3c')],'as':_0x0a9e('0x3d')}]})[_0x0a9e('0x1d')](handleEntityNotFound(_0x4b3c1a,null))[_0x0a9e('0x1d')](saveUpdates(_0x5ba1f9['body'],null))[_0x0a9e('0x1d')](respondWithResult(_0x4b3c1a,null))['catch'](handleError(_0x4b3c1a,null));};exports[_0x0a9e('0x35')]=function(_0x1f07cb,_0x51aaf7){return db['SmsAccount'][_0x0a9e('0x5d')]({'where':{'id':_0x1f07cb[_0x0a9e('0x58')]['id']}})[_0x0a9e('0x1d')](handleEntityNotFound(_0x51aaf7,null))[_0x0a9e('0x1d')](removeEntity(_0x51aaf7,null))['catch'](handleError(_0x51aaf7,null));};exports[_0x0a9e('0x61')]=function(_0xe05a5a,_0x54327c){return db[_0x0a9e('0x3e')][_0x0a9e('0x61')]()[_0x0a9e('0x1d')](respondWithResult(_0x54327c,null))[_0x0a9e('0x28')](handleError(_0x54327c,null));};exports[_0x0a9e('0x62')]=function(_0x4d4a35,_0x176840,_0x2937e0){if(_0x4d4a35[_0x0a9e('0x60')]['id']){delete _0x4d4a35['body']['id'];}return db[_0x0a9e('0x3e')]['find']({'where':{'id':_0x4d4a35['params']['id']}})[_0x0a9e('0x1d')](handleEntityNotFound(_0x176840,null))[_0x0a9e('0x1d')](function(_0x9375fb){if(_0x9375fb){_0x4d4a35[_0x0a9e('0x60')][_0x0a9e('0x63')]=_0x9375fb['id'];return db[_0x0a9e('0x64')][_0x0a9e('0x5a')](_0x4d4a35[_0x0a9e('0x60')]);}})[_0x0a9e('0x1d')](respondWithResult(_0x176840,null))[_0x0a9e('0x28')](handleError(_0x176840,null));};exports[_0x0a9e('0x65')]=function(_0x19012b,_0x2bbb86,_0x2b8192){var _0x320898={'raw':![],'where':{}};var _0x412a72={};var _0x2a28c0={'count':0x0,'rows':[]};return db[_0x0a9e('0x3e')]['findOne']({'where':{'id':_0x19012b[_0x0a9e('0x58')]['id']}})[_0x0a9e('0x1d')](handleEntityNotFound(_0x2bbb86,null))[_0x0a9e('0x1d')](function(_0x4edbb0){if(_0x4edbb0){_0x412a72[_0x0a9e('0x41')]=_[_0x0a9e('0x43')](db['Disposition'][_0x0a9e('0x3f')]);_0x412a72[_0x0a9e('0x42')]=_[_0x0a9e('0x43')](_0x19012b[_0x0a9e('0x42')]);_0x412a72[_0x0a9e('0x4d')]=_['intersection'](_0x412a72['model'],_0x412a72['query']);_0x320898[_0x0a9e('0x46')]=_[_0x0a9e('0x44')](_0x412a72[_0x0a9e('0x41')],qs[_0x0a9e('0x45')](_0x19012b[_0x0a9e('0x42')][_0x0a9e('0x45')]));_0x320898[_0x0a9e('0x46')]=_0x320898[_0x0a9e('0x46')]['length']?_0x320898[_0x0a9e('0x46')]:_0x412a72[_0x0a9e('0x41')];if(!_0x19012b[_0x0a9e('0x42')]['hasOwnProperty'](_0x0a9e('0x49'))){_0x320898['limit']=qs[_0x0a9e('0x2e')](_0x19012b[_0x0a9e('0x42')]['limit']);_0x320898[_0x0a9e('0x2d')]=qs[_0x0a9e('0x2d')](_0x19012b[_0x0a9e('0x42')][_0x0a9e('0x2d')]);}_0x320898['order']=qs[_0x0a9e('0x4b')](_0x19012b[_0x0a9e('0x42')][_0x0a9e('0x4b')]);_0x320898[_0x0a9e('0x4c')]=qs['filters'](_[_0x0a9e('0x4e')](_0x19012b[_0x0a9e('0x42')],_0x412a72[_0x0a9e('0x4d')]));_0x320898[_0x0a9e('0x4c')]['SmsAccountId']=_0x4edbb0['id'];if(_0x19012b[_0x0a9e('0x42')][_0x0a9e('0x4f')]){_0x320898[_0x0a9e('0x4c')]=_[_0x0a9e('0x53')](_0x320898[_0x0a9e('0x4c')],{'$or':_[_0x0a9e('0x50')](_0x320898[_0x0a9e('0x46')],function(_0x3df0e3){var _0x1a7b03={};_0x1a7b03[_0x3df0e3]={'$like':'%'+_0x19012b[_0x0a9e('0x42')][_0x0a9e('0x4f')]+'%'};return _0x1a7b03;})});}_0x320898=_[_0x0a9e('0x53')]({},_0x320898,_0x19012b[_0x0a9e('0x59')]);return db[_0x0a9e('0x64')]['count']({'where':_0x320898[_0x0a9e('0x4c')]})[_0x0a9e('0x1d')](function(_0xc599b3){_0x2a28c0['count']=_0xc599b3;if(_0x19012b[_0x0a9e('0x42')][_0x0a9e('0x54')]){_0x320898[_0x0a9e('0x55')]=[{'all':!![]}];}return db[_0x0a9e('0x64')]['findAll'](_0x320898);})['then'](function(_0x7ebea8){_0x2a28c0[_0x0a9e('0x56')]=_0x7ebea8;return _0x2a28c0;});}})['then'](respondWithFilteredResult(_0x2bbb86,_0x320898))[_0x0a9e('0x28')](handleError(_0x2bbb86,null));};exports['removeDispositions']=function(_0x260f4b,_0x8ebf02,_0x5637a1){return db[_0x0a9e('0x3e')][_0x0a9e('0x5d')]({'where':{'id':_0x260f4b[_0x0a9e('0x58')]['id']}})[_0x0a9e('0x1d')](handleEntityNotFound(_0x8ebf02,null))[_0x0a9e('0x1d')](function(_0x1f42a0){if(_0x1f42a0){return _0x1f42a0[_0x0a9e('0x66')](_0x260f4b['query'][_0x0a9e('0x67')]);}})[_0x0a9e('0x1d')](respondWithStatusCode(_0x8ebf02,null))[_0x0a9e('0x28')](handleError(_0x8ebf02,null));};exports[_0x0a9e('0x68')]=function(_0x492543,_0xf51744,_0xf0db1){if(_0x492543['body']['id']){delete _0x492543[_0x0a9e('0x60')]['id'];}return db['SmsAccount'][_0x0a9e('0x5d')]({'where':{'id':_0x492543[_0x0a9e('0x58')]['id']}})[_0x0a9e('0x1d')](handleEntityNotFound(_0xf51744,null))[_0x0a9e('0x1d')](function(_0x5af453){if(_0x5af453){_0x492543['body'][_0x0a9e('0x63')]=_0x5af453['id'];return db[_0x0a9e('0x69')][_0x0a9e('0x5a')](_0x492543['body']);}})[_0x0a9e('0x1d')](respondWithResult(_0xf51744,null))[_0x0a9e('0x28')](handleError(_0xf51744,null));};exports['getAnswers']=function(_0x4e46b2,_0xf0a802,_0x56acca){var _0x5ea541={'raw':![],'where':{}};var _0x4dc6b3={};var _0x81d748={'count':0x0,'rows':[]};return db[_0x0a9e('0x3e')][_0x0a9e('0x6a')]({'where':{'id':_0x4e46b2[_0x0a9e('0x58')]['id']}})[_0x0a9e('0x1d')](handleEntityNotFound(_0xf0a802,null))[_0x0a9e('0x1d')](function(_0x5a8854){if(_0x5a8854){_0x4dc6b3[_0x0a9e('0x41')]=_['keys'](db[_0x0a9e('0x69')][_0x0a9e('0x3f')]);_0x4dc6b3[_0x0a9e('0x42')]=_[_0x0a9e('0x43')](_0x4e46b2['query']);_0x4dc6b3[_0x0a9e('0x4d')]=_[_0x0a9e('0x44')](_0x4dc6b3[_0x0a9e('0x41')],_0x4dc6b3['query']);_0x5ea541[_0x0a9e('0x46')]=_[_0x0a9e('0x44')](_0x4dc6b3[_0x0a9e('0x41')],qs[_0x0a9e('0x45')](_0x4e46b2[_0x0a9e('0x42')][_0x0a9e('0x45')]));_0x5ea541[_0x0a9e('0x46')]=_0x5ea541[_0x0a9e('0x46')]['length']?_0x5ea541[_0x0a9e('0x46')]:_0x4dc6b3[_0x0a9e('0x41')];if(!_0x4e46b2['query'][_0x0a9e('0x48')](_0x0a9e('0x49'))){_0x5ea541[_0x0a9e('0x2e')]=qs['limit'](_0x4e46b2[_0x0a9e('0x42')]['limit']);_0x5ea541[_0x0a9e('0x2d')]=qs[_0x0a9e('0x2d')](_0x4e46b2[_0x0a9e('0x42')][_0x0a9e('0x2d')]);}_0x5ea541[_0x0a9e('0x4a')]=qs[_0x0a9e('0x4b')](_0x4e46b2[_0x0a9e('0x42')][_0x0a9e('0x4b')]);_0x5ea541['where']=qs[_0x0a9e('0x4d')](_[_0x0a9e('0x4e')](_0x4e46b2[_0x0a9e('0x42')],_0x4dc6b3[_0x0a9e('0x4d')]));_0x5ea541[_0x0a9e('0x4c')][_0x0a9e('0x63')]=_0x5a8854['id'];if(_0x4e46b2[_0x0a9e('0x42')][_0x0a9e('0x4f')]){_0x5ea541[_0x0a9e('0x4c')]=_[_0x0a9e('0x53')](_0x5ea541[_0x0a9e('0x4c')],{'$or':_[_0x0a9e('0x50')](_0x5ea541[_0x0a9e('0x46')],function(_0x4989f9){var _0xc81b64={};_0xc81b64[_0x4989f9]={'$like':'%'+_0x4e46b2[_0x0a9e('0x42')][_0x0a9e('0x4f')]+'%'};return _0xc81b64;})});}_0x5ea541=_[_0x0a9e('0x53')]({},_0x5ea541,_0x4e46b2[_0x0a9e('0x59')]);return db['CannedAnswer'][_0x0a9e('0x2c')]({'where':_0x5ea541[_0x0a9e('0x4c')]})['then'](function(_0x23b447){_0x81d748['count']=_0x23b447;if(_0x4e46b2[_0x0a9e('0x42')][_0x0a9e('0x54')]){_0x5ea541[_0x0a9e('0x55')]=[{'all':!![]}];}return db[_0x0a9e('0x69')]['findAll'](_0x5ea541);})[_0x0a9e('0x1d')](function(_0x4cf72d){_0x81d748[_0x0a9e('0x56')]=_0x4cf72d;return _0x81d748;});}})[_0x0a9e('0x1d')](respondWithFilteredResult(_0xf0a802,_0x5ea541))['catch'](handleError(_0xf0a802,null));};exports[_0x0a9e('0x6b')]=function(_0x63c9f7,_0x1dd541,_0x4ab276){return db['SmsAccount'][_0x0a9e('0x5d')]({'where':{'id':_0x63c9f7[_0x0a9e('0x58')]['id']}})[_0x0a9e('0x1d')](handleEntityNotFound(_0x1dd541,null))[_0x0a9e('0x1d')](function(_0x3f2f40){if(_0x3f2f40){return _0x3f2f40[_0x0a9e('0x6b')](_0x63c9f7[_0x0a9e('0x42')][_0x0a9e('0x67')]);}})[_0x0a9e('0x1d')](respondWithStatusCode(_0x1dd541,null))['catch'](handleError(_0x1dd541,null));};exports[_0x0a9e('0x6c')]=function(_0x517081,_0x287324,_0x2f7791){var _0x34e745={'channel':_0x0a9e('0x6d')};var _0x1b61d5=[];var _0x4e7273=[];var _0x436313={};return db[_0x0a9e('0x3e')][_0x0a9e('0x5d')]({'where':{'id':_0x517081[_0x0a9e('0x58')]['id']},'include':[{'model':db[_0x0a9e('0x6e')],'as':'Applications'}]})['then'](handleEntityNotFound(_0x287324,null))[_0x0a9e('0x1d')](function(_0x583662){_0x34e745[_0x0a9e('0x6f')]=_0x583662;_0x34e745[_0x0a9e('0x70')]=_[_0x0a9e('0x71')](_0x583662[_0x0a9e('0x72')],[_0x0a9e('0x73')],[_0x0a9e('0x74')]);if(_0x34e745['account']['Applications']){delete _0x34e745[_0x0a9e('0x6f')]['Applications'];}return db[_0x0a9e('0x75')]['describe']();})[_0x0a9e('0x1d')](function(_0x564db2){if(!_0x564db2){throw new db['Sequelize'][(_0x0a9e('0x76'))](_0x0a9e('0x77'));}_0x1b61d5=_['difference'](_[_0x0a9e('0x43')](_0x564db2),[_0x0a9e('0x78'),_0x0a9e('0x79')]);_0x4e7273=_[_0x0a9e('0x7a')](_[_0x0a9e('0x43')](_0x564db2),['createdAt','updatedAt',_0x0a9e('0x7b'),_0x0a9e('0x7c')]);_0x34e745[_0x0a9e('0x60')]={'mapKey':_0x0a9e('0x7d')};if(_0x34e745[_0x0a9e('0x6f')]['type']){switch(_0x34e745[_0x0a9e('0x6f')][_0x0a9e('0x51')]){case'twilio':_0x34e745[_0x0a9e('0x60')][_0x0a9e('0x7e')]=_0x517081[_0x0a9e('0x60')][_0x0a9e('0x7f')];_0x34e745[_0x0a9e('0x60')][_0x0a9e('0x60')]=_0x517081[_0x0a9e('0x60')][_0x0a9e('0x80')];_0x34e745[_0x0a9e('0x60')][_0x0a9e('0x81')]=_0x517081['body'][_0x0a9e('0x82')];break;case _0x0a9e('0x83'):_0x34e745[_0x0a9e('0x60')][_0x0a9e('0x7e')]='+'+_0x517081[_0x0a9e('0x60')]['sender'];_0x34e745['body'][_0x0a9e('0x60')]=_0x517081[_0x0a9e('0x60')][_0x0a9e('0x84')];break;case _0x0a9e('0x85'):_0x34e745[_0x0a9e('0x60')]['from']=_0x517081[_0x0a9e('0x60')][_0x0a9e('0x7e')];_0x34e745[_0x0a9e('0x60')]['body']=_0x517081[_0x0a9e('0x60')]['message'];break;case _0x0a9e('0x86'):_0x34e745['body'][_0x0a9e('0x7e')]=_0x517081[_0x0a9e('0x60')][_0x0a9e('0x7e')];_0x34e745['body'][_0x0a9e('0x60')]=_0x517081['body'][_0x0a9e('0x60')];_0x34e745[_0x0a9e('0x60')][_0x0a9e('0x81')]=_0x517081[_0x0a9e('0x60')][_0x0a9e('0x87')];break;case _0x0a9e('0x88'):_0x34e745[_0x0a9e('0x60')][_0x0a9e('0x7e')]=_0x517081[_0x0a9e('0x60')][_0x0a9e('0x7f')];_0x34e745[_0x0a9e('0x60')][_0x0a9e('0x60')]=_0x517081[_0x0a9e('0x60')][_0x0a9e('0x89')];_0x34e745[_0x0a9e('0x60')][_0x0a9e('0x81')]=_0x517081['body']['MessageUUID'];break;case _0x0a9e('0x8a'):_0x34e745['body'][_0x0a9e('0x7e')]='+'+_0x517081[_0x0a9e('0x60')]['results'][0x0][_0x0a9e('0x7e')];_0x34e745[_0x0a9e('0x60')][_0x0a9e('0x60')]=_0x517081[_0x0a9e('0x60')]['results'][0x0][_0x0a9e('0x84')];_0x34e745[_0x0a9e('0x60')][_0x0a9e('0x81')]=_0x517081[_0x0a9e('0x60')]['results'][0x0][_0x0a9e('0x81')];break;case _0x0a9e('0x8b'):_0x34e745[_0x0a9e('0x60')]['from']=_0x517081[_0x0a9e('0x60')][_0x0a9e('0x8c')];_0x34e745[_0x0a9e('0x60')]['body']=_0x517081[_0x0a9e('0x60')][_0x0a9e('0x8d')][_0x0a9e('0x26')];break;case _0x0a9e('0x8e'):_0x34e745[_0x0a9e('0x60')]['from']=_0x517081[_0x0a9e('0x60')][_0x0a9e('0x8f')];_0x34e745['body'][_0x0a9e('0x60')]=_0x517081[_0x0a9e('0x60')][_0x0a9e('0x84')];_0x34e745['body']['messageId']=_0x517081['body'][_0x0a9e('0x90')];break;case _0x0a9e('0x91'):_0x34e745['body'][_0x0a9e('0x81')]=_0x517081[_0x0a9e('0x60')][0x0][_0x0a9e('0x26')]['id'];_0x34e745['body'][_0x0a9e('0x7e')]=_0x517081[_0x0a9e('0x60')][0x0][_0x0a9e('0x26')][_0x0a9e('0x7e')];_0x34e745[_0x0a9e('0x60')][_0x0a9e('0x60')]=_0x517081[_0x0a9e('0x60')][0x0][_0x0a9e('0x26')][_0x0a9e('0x84')];break;case'intelepeer':_0x34e745[_0x0a9e('0x60')]['from']=_0x517081[_0x0a9e('0x60')][_0x0a9e('0x7e')];_0x34e745[_0x0a9e('0x60')][_0x0a9e('0x60')]=_0x517081[_0x0a9e('0x60')][_0x0a9e('0x26')];_0x34e745['body'][_0x0a9e('0x81')]=_0x517081[_0x0a9e('0x60')][_0x0a9e('0x92')];break;}}if(_0x34e745[_0x0a9e('0x60')]['id']){delete _0x34e745['body']['id'];}if(_[_0x0a9e('0x93')](_0x34e745[_0x0a9e('0x60')][_0x0a9e('0x7e')])){throw new db[(_0x0a9e('0x94'))][(_0x0a9e('0x76'))](_0x0a9e('0x95'));}if(_[_0x0a9e('0x93')](_0x34e745[_0x0a9e('0x60')][_0x0a9e('0x60')])||_0x34e745[_0x0a9e('0x60')]['body']===''){throw new db[(_0x0a9e('0x94'))][(_0x0a9e('0x76'))](_0x0a9e('0x96'));}if(_[_0x0a9e('0x93')](_0x34e745[_0x0a9e('0x60')][_0x0a9e('0x97')])){throw new db[(_0x0a9e('0x94'))][(_0x0a9e('0x76'))]('mapKey\x20is\x20mandatory,\x20please\x20use\x20one\x20of\x20these:\x20'+_0x4e7273);}if(!_[_0x0a9e('0x98')](_0x4e7273,_0x34e745[_0x0a9e('0x60')][_0x0a9e('0x97')])){throw new db['Sequelize'][(_0x0a9e('0x76'))](_0x0a9e('0x99')+_0x4e7273);}_0x436313[_0x34e745[_0x0a9e('0x60')][_0x0a9e('0x97')]]=_0x34e745[_0x0a9e('0x60')][_0x0a9e('0x7e')];return db[_0x0a9e('0x9a')][_0x0a9e('0x5d')]({'where':{'id':_0x34e745[_0x0a9e('0x6f')][_0x0a9e('0x7c')]},'include':[{'model':db['CmContact'],'as':_0x0a9e('0x9b'),'where':_0x436313,'limit':0x1,'order':[[_0x0a9e('0x79'),_0x0a9e('0x9c')]]}]});})[_0x0a9e('0x1d')](handleEntityNotFound(_0x287324,null))[_0x0a9e('0x1d')](function(_0x3942fd){if(_0x3942fd){_0x34e745['list']=_[_0x0a9e('0x9d')](_0x3942fd,['Contacts']);if(_0x3942fd['Contacts']['length']){return _0x3942fd[_0x0a9e('0x9b')][0x0];}var _0x3fa3f2=_[_0x0a9e('0x16')](_0x34e745[_0x0a9e('0x60')],{'firstName':_0x34e745['body'][_0x0a9e('0x7e')],'ListId':_0x3942fd['id']});_0x3fa3f2[_0x34e745[_0x0a9e('0x60')][_0x0a9e('0x97')]]=_0x34e745[_0x0a9e('0x60')][_0x0a9e('0x7e')];return db['CmContact']['create'](_0x3fa3f2,{'fields':_0x1b61d5,'raw':!![]});}})[_0x0a9e('0x1d')](handleEntityNotFound(_0x287324,null))[_0x0a9e('0x1d')](function(_0x2a293f){if(_0x2a293f){_0x34e745['contact']=_0x2a293f;var _0x319752={'ContactId':_0x2a293f['id'],'phone':_0x34e745[_0x0a9e('0x60')][_0x0a9e('0x7e')],'SmsAccountId':_0x517081['params']['id']};var _0x8ad1c0={'ContactId':_0x2a293f['id'],'SmsAccountId':_0x517081[_0x0a9e('0x58')]['id'],'closed':![]};return db[_0x0a9e('0x9e')]['find']({'where':_0x8ad1c0})[_0x0a9e('0x1d')](function(_0x336b30){if(_0x336b30){return[_0x336b30,![]];}return db[_0x0a9e('0x9e')]['create'](_0x319752)['then'](function(_0x53ef46){return[_0x53ef46,!![]];});});}})[_0x0a9e('0x9f')](function(_0x1f50db,_0xcbc73c){_0x34e745[_0x0a9e('0xa0')]=_0x1f50db['get']({'plain':!![]});_0x34e745[_0x0a9e('0xa0')]['created']=![];if(_0xcbc73c){if(_0x34e745[_0x0a9e('0x6f')][_0x0a9e('0xa1')]){_0x34e745[_0x0a9e('0x70')]['push']({'id':0x0,'priority':_0x34e745[_0x0a9e('0x70')][_0x0a9e('0x47')]+0x1,'app':_0x0a9e('0xa2'),'appdata':'unmanaged','interval':_0x0a9e('0xa3')});}_0x34e745['interaction'][_0x0a9e('0xa4')]=!![];}return db['SmsMessage'][_0x0a9e('0x5a')]({'phone':_0x34e745['body'][_0x0a9e('0x7e')],'messageId':_0x34e745[_0x0a9e('0x60')][_0x0a9e('0x81')],'body':_0x34e745[_0x0a9e('0x60')][_0x0a9e('0x60')],'SmsAccountId':_0x517081[_0x0a9e('0x58')]['id'],'SmsInteractionId':_0x1f50db['id'],'direction':'in','ContactId':_0x1f50db[_0x0a9e('0xa5')],'AttachmentId':_0x34e745['body'][_0x0a9e('0xa6')]});})[_0x0a9e('0x1d')](function(_0x567004){_0x34e745[_0x0a9e('0x26')]=_0x567004;if(_0x34e745[_0x0a9e('0xa0')]['UserId']){return db[_0x0a9e('0xa7')][_0x0a9e('0x5d')]({'attributes':['id',_0x0a9e('0x3a')],'where':{'id':_0x34e745['interaction'][_0x0a9e('0xa8')]}})[_0x0a9e('0x1d')](function(_0xdeb5e4){if(_0xdeb5e4){_0x34e745[_0x0a9e('0x70')][_0x0a9e('0xa9')]({'id':0x0,'priority':0x0,'app':_0x0a9e('0xaa'),'appdata':_0xdeb5e4[_0x0a9e('0x3a')]+','+(_0x34e745[_0x0a9e('0x6f')][_0x0a9e('0xab')]||0xa),'interval':_0x0a9e('0xa3')});}return respondWithRpcPromise('Start',_0x0a9e('0xac'),_0x34e745);});}return respondWithRpcPromise('Start',_0x0a9e('0xac'),_0x34e745);})[_0x0a9e('0x1d')](function(_0x5b9c76){if(_0x5b9c76){var _0x315e31=0xc8;var _0x5d577b=_0x0a9e('0xad');logger['info'](_0x0a9e('0x22'),_0x5d577b,_0x315e31,_0x0a9e('0xae'));logger[_0x0a9e('0x21')]('SmsAccount,\x20%s,\x20%s,\x20%s,\x20%s',_0x5d577b,_0x315e31,_0x0a9e('0xae'),JSON[_0x0a9e('0x23')](_0x5b9c76));if(_0x34e745[_0x0a9e('0x6f')][_0x0a9e('0x51')]===_0x0a9e('0xaf')){return _0x287324[_0x0a9e('0x2a')](_0x315e31)[_0x0a9e('0x2f')]('Content-Type',_0x0a9e('0xb0'))[_0x0a9e('0x3b')](_0x0a9e('0xb1'));}else{return _0x287324[_0x0a9e('0x2a')](_0x315e31)[_0x0a9e('0x30')](_0x5b9c76);}}})[_0x0a9e('0x28')](handleError(_0x287324,null));};exports[_0x0a9e('0xb2')]=function(_0x5d6a48,_0x5c8720,_0x10aa22){return db[_0x0a9e('0x3e')][_0x0a9e('0x6a')]({'where':{'id':_0x5d6a48[_0x0a9e('0x58')]['id']}})[_0x0a9e('0x1d')](handleEntityNotFound(_0x5c8720,null))[_0x0a9e('0x1d')](function(_0x609711){if(_0x609711){return db['sequelize'][_0x0a9e('0xb3')](function(_0x1d7fc4){return db[_0x0a9e('0x6e')][_0x0a9e('0x35')]({'where':{'SmsAccountId':_0x5d6a48[_0x0a9e('0x58')]['id']},'transaction':_0x1d7fc4})[_0x0a9e('0x1d')](function(_0x16be7e){var _0x54f0b8=_[_0x0a9e('0x50')](_0x5d6a48[_0x0a9e('0x60')],function(_0x231826){_0x231826['SmsAccountId']=_0x5d6a48[_0x0a9e('0x58')]['id'];return _0x231826;});return db[_0x0a9e('0x6e')][_0x0a9e('0xb4')](_0x54f0b8,{'transaction':_0x1d7fc4});});})[_0x0a9e('0x1d')](function(){return db['SmsApplication'][_0x0a9e('0xb5')]({'where':{'SmsAccountId':_0x5d6a48[_0x0a9e('0x58')]['id']},'order':_0x0a9e('0x73')});});}})[_0x0a9e('0x1d')](respondWithResult(_0x5c8720,null))[_0x0a9e('0x28')](handleError(_0x5c8720,null));};exports[_0x0a9e('0xb6')]=function(_0x3e365c,_0x385e5d,_0x4e5dec){var _0x3ede01={};var _0x266aa1={};var _0x25e41f;var _0x397771;return db['SmsAccount']['findOne']({'where':{'id':_0x3e365c[_0x0a9e('0x58')]['id']}})[_0x0a9e('0x1d')](handleEntityNotFound(_0x385e5d,null))[_0x0a9e('0x1d')](function(_0x596ba3){if(_0x596ba3){_0x25e41f=_0x596ba3;_0x266aa1[_0x0a9e('0x41')]=_[_0x0a9e('0x43')](db['SmsApplication'][_0x0a9e('0x3f')]);_0x266aa1['query']=_[_0x0a9e('0x43')](_0x3e365c['query']);_0x266aa1['filters']=_['intersection'](_0x266aa1[_0x0a9e('0x41')],_0x266aa1[_0x0a9e('0x42')]);_0x3ede01[_0x0a9e('0x46')]=_[_0x0a9e('0x44')](_0x266aa1[_0x0a9e('0x41')],qs[_0x0a9e('0x45')](_0x3e365c['query'][_0x0a9e('0x45')]));_0x3ede01[_0x0a9e('0x46')]=_0x3ede01[_0x0a9e('0x46')][_0x0a9e('0x47')]?_0x3ede01[_0x0a9e('0x46')]:_0x266aa1[_0x0a9e('0x41')];_0x3ede01[_0x0a9e('0x4a')]=qs['sort'](_0x3e365c['query'][_0x0a9e('0x4b')]);_0x3ede01['where']=qs[_0x0a9e('0x4d')](_[_0x0a9e('0x4e')](_0x3e365c[_0x0a9e('0x42')],_0x266aa1[_0x0a9e('0x4d')]));if(_0x3e365c[_0x0a9e('0x42')][_0x0a9e('0x4f')]){_0x3ede01['where']=_[_0x0a9e('0x53')](_0x3ede01['where'],{'$or':_['map'](_0x3ede01[_0x0a9e('0x46')],function(_0x593f9e){var _0x38dceb={};_0x38dceb[_0x593f9e]={'$like':'%'+_0x3e365c['query']['filter']+'%'};return _0x38dceb;})});}_0x3ede01=_[_0x0a9e('0x53')]({},_0x3ede01,_0x3e365c['options']);return _0x25e41f[_0x0a9e('0xb6')](_0x3ede01);}})[_0x0a9e('0x1d')](function(_0xe1ab0d){if(_0xe1ab0d){_0x397771=_0xe1ab0d['length'];if(!_0x3e365c[_0x0a9e('0x42')][_0x0a9e('0x48')](_0x0a9e('0x49'))){_0x3ede01['limit']=qs['limit'](_0x3e365c[_0x0a9e('0x42')][_0x0a9e('0x2e')]);_0x3ede01[_0x0a9e('0x2d')]=qs[_0x0a9e('0x2d')](_0x3e365c[_0x0a9e('0x42')][_0x0a9e('0x2d')]);}return _0x25e41f[_0x0a9e('0xb6')](_0x3ede01);}})[_0x0a9e('0x1d')](function(_0x937b2a){if(_0x937b2a){return _0x937b2a?{'count':_0x397771,'rows':_0x937b2a}:null;}})[_0x0a9e('0x1d')](respondWithResult(_0x385e5d,null))['catch'](handleError(_0x385e5d,null));};exports['getInteractions']=function(_0x558171,_0x5975fa,_0x19dcc2){var _0x2ce30f={'raw':![],'where':{}};var _0x2d21c7={};var _0xb0e231={'count':0x0,'rows':[]};return db[_0x0a9e('0x3e')][_0x0a9e('0x6a')]({'where':{'id':_0x558171[_0x0a9e('0x58')]['id']}})['then'](handleEntityNotFound(_0x5975fa,null))['then'](function(_0x2869cc){if(_0x2869cc){_0x2d21c7[_0x0a9e('0x41')]=_['keys'](db[_0x0a9e('0x9e')][_0x0a9e('0x3f')]);_0x2d21c7[_0x0a9e('0x42')]=_[_0x0a9e('0x43')](_0x558171[_0x0a9e('0x42')]);_0x2d21c7[_0x0a9e('0x4d')]=_[_0x0a9e('0x44')](_0x2d21c7[_0x0a9e('0x41')],_0x2d21c7[_0x0a9e('0x42')]);_0x2ce30f[_0x0a9e('0x46')]=_[_0x0a9e('0x44')](_0x2d21c7[_0x0a9e('0x41')],qs['fields'](_0x558171[_0x0a9e('0x42')][_0x0a9e('0x45')]));_0x2ce30f[_0x0a9e('0x46')]=_0x2ce30f[_0x0a9e('0x46')][_0x0a9e('0x47')]?_0x2ce30f[_0x0a9e('0x46')]:_0x2d21c7[_0x0a9e('0x41')];if(!_0x558171[_0x0a9e('0x42')][_0x0a9e('0x48')](_0x0a9e('0x49'))){_0x2ce30f[_0x0a9e('0x2e')]=qs[_0x0a9e('0x2e')](_0x558171['query']['limit']);_0x2ce30f[_0x0a9e('0x2d')]=qs[_0x0a9e('0x2d')](_0x558171[_0x0a9e('0x42')][_0x0a9e('0x2d')]);}_0x2ce30f[_0x0a9e('0x4a')]=qs[_0x0a9e('0x4b')](_0x558171[_0x0a9e('0x42')]['sort']);_0x2ce30f[_0x0a9e('0x4c')]=qs['filters'](_[_0x0a9e('0x4e')](_0x558171[_0x0a9e('0x42')],_0x2d21c7[_0x0a9e('0x4d')]));_0x2ce30f[_0x0a9e('0x4c')][_0x0a9e('0x63')]=_0x2869cc['id'];if(_0x558171[_0x0a9e('0x42')][_0x0a9e('0x4f')]){_0x2ce30f[_0x0a9e('0x4c')]=_[_0x0a9e('0x53')](_0x2ce30f[_0x0a9e('0x4c')],{'$or':_[_0x0a9e('0x50')](_0x2ce30f[_0x0a9e('0x46')],function(_0x43111e){var _0x3f7cb6={};_0x3f7cb6[_0x43111e]={'$like':'%'+_0x558171[_0x0a9e('0x42')][_0x0a9e('0x4f')]+'%'};return _0x3f7cb6;})});}_0x2ce30f=_['merge']({},_0x2ce30f,_0x558171['options']);return db[_0x0a9e('0x9e')][_0x0a9e('0x2c')]({'where':_0x2ce30f['where']})['then'](function(_0x2cb05c){_0xb0e231[_0x0a9e('0x2c')]=_0x2cb05c;if(_0x558171[_0x0a9e('0x42')]['includeAll']){_0x2ce30f[_0x0a9e('0x55')]=[{'model':db['CmContact'],'as':_0x0a9e('0xb7'),'required':![]},{'model':db['User'],'as':_0x0a9e('0xb8'),'attributes':['name',_0x0a9e('0xb9'),_0x0a9e('0xba')],'required':![]},{'model':db[_0x0a9e('0xbb')],'as':'Tags','attributes':['id',_0x0a9e('0x3a'),'color'],'where':_0x558171['query'][_0x0a9e('0xbc')]?{'id':_0x558171[_0x0a9e('0x42')][_0x0a9e('0xbc')]}:undefined,'required':_0x558171[_0x0a9e('0x42')][_0x0a9e('0xbc')]?!![]:![]}];}return db[_0x0a9e('0x9e')][_0x0a9e('0xbd')](_0x2ce30f);})[_0x0a9e('0x1d')](function(_0x1a3143){_0xb0e231[_0x0a9e('0x56')]=_0x1a3143;return _0xb0e231;});}})[_0x0a9e('0x1d')](respondWithFilteredResult(_0x5975fa,_0x2ce30f))[_0x0a9e('0x28')](handleError(_0x5975fa,null));};exports[_0x0a9e('0x3b')]=function(_0x19487d,_0xdc4b2f,_0x65141c){var _0x310026,_0x643f66,_0x153de1;if(_['isNil'](_0x19487d[_0x0a9e('0x60')][_0x0a9e('0x60')])||_0x19487d[_0x0a9e('0x60')][_0x0a9e('0x60')]===''){throw new db['Sequelize']['ValidationError']('body\x20is\x20mandatory\x20and\x20not\x20empty');}if(_[_0x0a9e('0x93')](_0x19487d['body']['to'])){throw new db[(_0x0a9e('0x94'))][(_0x0a9e('0x76'))](_0x0a9e('0xbe'));}_0x310026=_0x19487d[_0x0a9e('0x60')]['to'];return db[_0x0a9e('0x3e')][_0x0a9e('0x5d')]({'where':{'id':_0x19487d[_0x0a9e('0x58')]['id']},'include':[{'model':db[_0x0a9e('0x9a')],'as':_0x0a9e('0xbf'),'include':[{'model':db[_0x0a9e('0x75')],'as':'Contacts','where':{'mobile':_0x310026},'limit':0x1,'order':[[_0x0a9e('0x79'),'DESC']]}]}]})[_0x0a9e('0x1d')](handleEntityNotFound(_0xdc4b2f,null))['then'](function(_0xf4de86){if(_0xf4de86&&_0xf4de86[_0x0a9e('0xbf')]){_0x643f66=_0xf4de86[_0x0a9e('0x36')]({'plain':!![]});if(_0x643f66['List']&&_0x643f66[_0x0a9e('0xbf')][_0x0a9e('0x9b')]['length']){return _0x643f66['List'][_0x0a9e('0x9b')][0x0];}return db[_0x0a9e('0x75')][_0x0a9e('0x5a')](_['defaults'](_0x19487d['body'],{'firstName':_0x310026,'mobile':_0x310026,'phone':_0x310026,'ListId':_0x643f66['ListId']}));}})[_0x0a9e('0x1d')](handleEntityNotFound(_0xdc4b2f,null))[_0x0a9e('0x1d')](function(_0x2b7ba9){if(_0x2b7ba9){_0x153de1=_0x2b7ba9;return db[_0x0a9e('0x9e')][_0x0a9e('0x5d')]({'where':{'ContactId':_0x153de1['id'],'closed':![],'SmsAccountId':_0x643f66['id']}})[_0x0a9e('0x1d')](function(_0x183b9b){if(_0x183b9b){return[_0x183b9b,![]];}return db[_0x0a9e('0x9e')][_0x0a9e('0x5a')]({'UserId':_0x19487d[_0x0a9e('0xc0')]['id'],'ContactId':_0x153de1['id'],'SmsAccountId':_0x643f66['id'],'phone':_0x310026,'firstMsgDirection':_0x0a9e('0xc1'),'Messages':[_[_0x0a9e('0x53')](_0x19487d[_0x0a9e('0x60')],{'read':![],'body':_0x19487d[_0x0a9e('0x60')][_0x0a9e('0x60')],'phone':_0x310026,'SmsAccountId':_0x643f66['id'],'UserId':_0x19487d[_0x0a9e('0xc0')]['id'],'ContactId':_0x153de1['id']})]},{'include':[{'model':db[_0x0a9e('0xc2')],'as':_0x0a9e('0xc3')}]})['then'](function(_0xb33e27){return[_0xb33e27,!![]];});});}})[_0x0a9e('0x9f')](function(_0xf40862,_0x163c3f){if(_0x163c3f){return _0xf40862;}return db[_0x0a9e('0xc2')][_0x0a9e('0x5a')](_['merge'](_0x19487d[_0x0a9e('0x60')],{'read':![],'body':_0x19487d[_0x0a9e('0x60')][_0x0a9e('0x60')],'phone':_0x310026,'SmsAccountId':_0x643f66['id'],'SmsInteractionId':_0xf40862['id'],'UserId':_0x19487d[_0x0a9e('0xc0')]['id'],'ContactId':_0x153de1['id']}))[_0x0a9e('0x1d')](function(_0x3a7383){_0xf40862[_0x0a9e('0xc4')][_0x0a9e('0xc3')]=[];_0xf40862[_0x0a9e('0xc4')]['Messages']['push'](_0x3a7383[_0x0a9e('0xc4')]);return _0xf40862;});})[_0x0a9e('0x1d')](respondWithResult(_0xdc4b2f,null))['catch'](handleError(_0xdc4b2f,null));};exports[_0x0a9e('0x2a')]=function(_0x306aa5,_0x4c8d75,_0x1ca7c8){if(_0x306aa5['body']['id']){delete _0x306aa5[_0x0a9e('0x60')]['id'];}var _0x279c19,_0x58c53c,_0x27a41c;return db[_0x0a9e('0x3e')]['find']({'where':{'id':_0x306aa5[_0x0a9e('0x58')]['id']}})[_0x0a9e('0x1d')](handleEntityNotFound(_0x4c8d75,null))['then'](function(_0x3259dc){if(_0x3259dc){_0x27a41c=_0x3259dc;logger[_0x0a9e('0x21')](_0x0a9e('0x22'),_0x0a9e('0x2a'),_0x0a9e('0xc5'),_0x3259dc[_0x0a9e('0x51')],util['inspect'](_0x306aa5[_0x0a9e('0x60')],{'showHidden':![],'depth':null}));switch(_0x3259dc[_0x0a9e('0x51')]){case'skebby':if(_0x306aa5[_0x0a9e('0x60')][_0x0a9e('0xc6')]&&_0x306aa5[_0x0a9e('0x60')][_0x0a9e('0x2a')]){_0x58c53c=_0x306aa5[_0x0a9e('0x60')][_0x0a9e('0x2a')];return db[_0x0a9e('0xc2')]['find']({'where':{'messageId':_0x306aa5['body']['skebby_dispatch_id']}});}break;case'connectel':if(_0x306aa5['body'][_0x0a9e('0xc7')]&&_0x306aa5[_0x0a9e('0x60')]['statusInt']){_0x58c53c=_0x306aa5['body'][_0x0a9e('0xc8')];return db['SmsMessage'][_0x0a9e('0x5d')]({'where':{'messageId':_0x306aa5[_0x0a9e('0x60')][_0x0a9e('0xc7')]}});}break;case _0x0a9e('0x86'):if(_0x306aa5[_0x0a9e('0x60')][_0x0a9e('0x87')]&&_0x306aa5['body'][_0x0a9e('0xc9')]){_0x58c53c=_0x306aa5[_0x0a9e('0x60')]['status_code'];return db[_0x0a9e('0xc2')][_0x0a9e('0x5d')]({'where':{'messageId':_0x306aa5[_0x0a9e('0x60')][_0x0a9e('0x87')]}});}break;case _0x0a9e('0x8a'):var _0x2f1cc0=_0x306aa5[_0x0a9e('0x60')]['results'][0x0];if(_0x2f1cc0[_0x0a9e('0x81')]&&_0x2f1cc0['status'][_0x0a9e('0xca')]===_0x0a9e('0xcb')){_0x58c53c=_0x2f1cc0['status'][_0x0a9e('0xca')];return db[_0x0a9e('0xc2')]['find']({'where':{'messageId':_0x2f1cc0[_0x0a9e('0x81')]}});}break;case'clickatell':if(_0x306aa5[_0x0a9e('0x60')][_0x0a9e('0x81')]&&_0x306aa5['body'][_0x0a9e('0x2a')]){_0x58c53c=_0x306aa5['body'][_0x0a9e('0x2a')];return db[_0x0a9e('0xc2')][_0x0a9e('0x5d')]({'where':{'messageId':_0x306aa5[_0x0a9e('0x60')][_0x0a9e('0x81')]}});}break;case _0x0a9e('0x91'):if(_0x306aa5[_0x0a9e('0x60')][0x0]['message']['id']){_0x58c53c=_0x306aa5[_0x0a9e('0x60')][0x0][_0x0a9e('0x51')];return db[_0x0a9e('0xc2')][_0x0a9e('0x5d')]({'where':{'messageId':_0x306aa5[_0x0a9e('0x60')][0x0]['message']['id']}});}break;case _0x0a9e('0xcc'):if(_0x306aa5['body']['redif']&&_0x306aa5[_0x0a9e('0x60')]['status']){_0x58c53c=_0x306aa5[_0x0a9e('0x60')][_0x0a9e('0x2a')];return db['SmsMessage'][_0x0a9e('0x5d')]({'where':{'messageId':_0x306aa5[_0x0a9e('0x60')][_0x0a9e('0xcd')]}});}break;}}})[_0x0a9e('0x1d')](handleEntityNotFound(_0x4c8d75,null))[_0x0a9e('0x1d')](function(_0x25eb44){if(_0x25eb44){_0x279c19=_0x25eb44;switch(_0x27a41c[_0x0a9e('0x51')]){case _0x0a9e('0x83'):if(_0x58c53c===_0x0a9e('0xcb')){return _0x279c19['update']({'read':!![]});}else{logger[_0x0a9e('0x24')](_0x0a9e('0x22'),_0x0a9e('0x2a'),_0x0a9e('0x83'),util['inspect'](_0x306aa5[_0x0a9e('0x60')],{'showHidden':![],'depth':null}));}break;case _0x0a9e('0x85'):if(_0x58c53c==='1'){return _0x279c19[_0x0a9e('0x34')]({'read':!![]});}else{logger['error'](_0x0a9e('0x22'),_0x0a9e('0x2a'),_0x0a9e('0x83'),util['inspect'](_0x306aa5[_0x0a9e('0x60')],{'showHidden':![],'depth':null}));}break;case'clicksend':if(!_0x306aa5[_0x0a9e('0x60')][_0x0a9e('0xce')]&&_0x58c53c>=0xc8&&_0x58c53c<=0xce){return _0x279c19[_0x0a9e('0x34')]({'read':!![]});}else{logger[_0x0a9e('0x24')](_0x0a9e('0x22'),_0x0a9e('0x2a'),_0x0a9e('0x86'),util['inspect'](_0x306aa5[_0x0a9e('0x60')],{'showHidden':![],'depth':null}));}break;case _0x0a9e('0x8a'):var _0x7c4db6=_0x306aa5[_0x0a9e('0x60')][_0x0a9e('0xcf')][0x0];if(_0x7c4db6[_0x0a9e('0x2a')][_0x0a9e('0xca')]===_0x0a9e('0xcb')){return _0x279c19[_0x0a9e('0x34')]({'read':!![]});}else{logger[_0x0a9e('0x24')](_0x0a9e('0x22'),_0x0a9e('0x2a'),_0x0a9e('0x8a'),util[_0x0a9e('0xd0')](_0x306aa5[_0x0a9e('0x60')],{'showHidden':![],'depth':null}));}break;case _0x0a9e('0x8e'):if(_0x58c53c==_0x0a9e('0xd1')||_0x58c53c==_0x0a9e('0xd2')){return _0x279c19[_0x0a9e('0x34')]({'read':!![]});}else{logger[_0x0a9e('0x24')](_0x0a9e('0x22'),_0x0a9e('0x2a'),_0x0a9e('0x8e'),util['inspect'](_0x306aa5[_0x0a9e('0x60')],{'showHidden':![],'depth':null}));}break;case _0x0a9e('0x91'):if(_0x58c53c==_0x0a9e('0xd3')){return _0x279c19['update']({'read':!![]});}else{logger[_0x0a9e('0x24')]('SmsAccount,\x20%s,\x20%s,\x20%s',_0x0a9e('0x2a'),_0x0a9e('0x91'),util[_0x0a9e('0xd0')](_0x306aa5[_0x0a9e('0x60')],{'showHidden':![],'depth':null}));}break;case _0x0a9e('0xcc'):if(_0x58c53c===_0x0a9e('0xd4')||_0x58c53c===_0x0a9e('0xd5')){return _0x279c19[_0x0a9e('0x34')]({'read':!![]});}else{logger['error'](_0x0a9e('0x22'),_0x0a9e('0x2a'),'intelepeer',util[_0x0a9e('0xd0')](_0x306aa5[_0x0a9e('0x60')],{'showHidden':![],'depth':null}));}break;}return _0x279c19;}})[_0x0a9e('0x1d')](respondWithResult(_0x4c8d75,null))['catch'](handleError(_0x4c8d75,null));};exports[_0x0a9e('0xd6')]=function(_0x4b7211,_0x315299,_0x1bf053){var _0x4803ce,_0x443208,_0x31648e;return db[_0x0a9e('0x3e')][_0x0a9e('0x5d')]({'where':{'id':_0x4b7211[_0x0a9e('0x58')]['id']}})['then'](handleEntityNotFound(_0x315299,null))[_0x0a9e('0x1d')](function(_0x3fc431){if(_0x3fc431){_0x31648e=_0x3fc431;logger['debug'](_0x0a9e('0x22'),_0x0a9e('0x2a'),_0x0a9e('0xc5'),_0x3fc431['type'],util['inspect'](_0x4b7211[_0x0a9e('0x42')],{'showHidden':![],'depth':null}));switch(_0x3fc431[_0x0a9e('0x51')]){case _0x0a9e('0x8b'):if(_0x4b7211[_0x0a9e('0x42')][_0x0a9e('0xd7')]&&_0x4b7211[_0x0a9e('0x42')][_0x0a9e('0xd8')]){_0x443208=_0x4b7211[_0x0a9e('0x42')]['state'];return db['SmsMessage'][_0x0a9e('0x5d')]({'where':{'messageId':_0x4b7211['query'][_0x0a9e('0xd7')]}});}break;}}})[_0x0a9e('0x1d')](handleEntityNotFound(_0x315299,null))[_0x0a9e('0x1d')](function(_0x413f0f){if(_0x413f0f){_0x4803ce=_0x413f0f;switch(_0x31648e['type']){case _0x0a9e('0x8b'):if(_0x443208==='2'||_0x443208==='6'){return _0x4803ce[_0x0a9e('0x34')]({'read':!![]});}else{logger['error'](_0x0a9e('0x22'),'status',_0x0a9e('0x8b'),util[_0x0a9e('0xd0')](_0x4b7211[_0x0a9e('0x42')],{'showHidden':![],'depth':null}));};break;}return _0x4803ce;}})[_0x0a9e('0x1d')](respondWithResult(_0x315299,null))[_0x0a9e('0x28')](handleError(_0x315299,null));};exports[_0x0a9e('0xd9')]=function(_0x595efc,_0x16d50b,_0x580dd2){return db[_0x0a9e('0x3e')][_0x0a9e('0x5d')]({'where':{'id':_0x595efc[_0x0a9e('0x58')]['id']}})[_0x0a9e('0x1d')](handleEntityNotFound(_0x16d50b,null))[_0x0a9e('0x1d')](function(_0x393e9c){if(_0x393e9c){return _0x393e9c[_0x0a9e('0xd9')](_0x595efc['body'][_0x0a9e('0x67')],_[_0x0a9e('0x9d')](_0x595efc[_0x0a9e('0x60')],[_0x0a9e('0x67'),'id'])||{})[_0x0a9e('0x9f')](function(_0x534f61){for(var _0x3cd588=0x0;_0x3cd588<_0x595efc[_0x0a9e('0x60')]['ids']['length'];_0x3cd588+=0x1){socket[_0x0a9e('0xda')](_0x0a9e('0xdb'),{'UserId':_0x595efc[_0x0a9e('0x60')][_0x0a9e('0x67')][_0x3cd588],'SmsAccountId':_0x595efc[_0x0a9e('0x58')]['id']});}return _0x534f61;});}})[_0x0a9e('0x1d')](respondWithResult(_0x16d50b,null))['catch'](handleError(_0x16d50b,null));};exports[_0x0a9e('0xdc')]=function(_0x13782b,_0x2a9f6e,_0x4bf3c7){return db[_0x0a9e('0x3e')][_0x0a9e('0x5d')]({'where':{'id':_0x13782b[_0x0a9e('0x58')]['id']}})[_0x0a9e('0x1d')](handleEntityNotFound(_0x2a9f6e,null))['then'](function(_0x5d4935){if(_0x5d4935){return _0x5d4935[_0x0a9e('0xdc')](_0x13782b[_0x0a9e('0x42')][_0x0a9e('0x67')])[_0x0a9e('0x1d')](function(){if(_[_0x0a9e('0xdd')](_0x13782b[_0x0a9e('0x42')][_0x0a9e('0x67')])){for(var _0x23dd12=0x0;_0x23dd12<_0x13782b['query'][_0x0a9e('0x67')]['length'];_0x23dd12+=0x1){socket[_0x0a9e('0xda')](_0x0a9e('0xde'),{'UserId':Number(_0x13782b[_0x0a9e('0x42')]['ids'][_0x23dd12]),'SmsAccountId':Number(_0x13782b['params']['id'])});}}else{socket[_0x0a9e('0xda')]('userSmsAccount:remove',{'UserId':Number(_0x13782b[_0x0a9e('0x42')]['ids']),'SmsAccountId':Number(_0x13782b['params']['id'])});}});}})[_0x0a9e('0x1d')](respondWithStatusCode(_0x2a9f6e,null))[_0x0a9e('0x28')](handleError(_0x2a9f6e,null));};exports[_0x0a9e('0xdf')]=function(_0x2e6482,_0x1f0776,_0x2ac3dc){var _0x2f64ef={};var _0x36287b={};var _0x106e04;var _0x3b3e30;return db[_0x0a9e('0x3e')][_0x0a9e('0x6a')]({'where':{'id':_0x2e6482[_0x0a9e('0x58')]['id']}})['then'](handleEntityNotFound(_0x1f0776,null))['then'](function(_0x3bde76){if(_0x3bde76){_0x106e04=_0x3bde76;_0x36287b['model']=_[_0x0a9e('0x43')](db[_0x0a9e('0xa7')][_0x0a9e('0x3f')]);_0x36287b['query']=_['keys'](_0x2e6482[_0x0a9e('0x42')]);_0x36287b[_0x0a9e('0x4d')]=_[_0x0a9e('0x44')](_0x36287b[_0x0a9e('0x41')],_0x36287b[_0x0a9e('0x42')]);_0x2f64ef[_0x0a9e('0x46')]=_[_0x0a9e('0x44')](_0x36287b['model'],qs[_0x0a9e('0x45')](_0x2e6482['query'][_0x0a9e('0x45')]));_0x2f64ef[_0x0a9e('0x46')]=_0x2f64ef['attributes'][_0x0a9e('0x47')]?_0x2f64ef[_0x0a9e('0x46')]:_0x36287b[_0x0a9e('0x41')];_0x2f64ef[_0x0a9e('0x4a')]=qs[_0x0a9e('0x4b')](_0x2e6482[_0x0a9e('0x42')]['sort']);_0x2f64ef[_0x0a9e('0x4c')]=qs[_0x0a9e('0x4d')](_[_0x0a9e('0x4e')](_0x2e6482['query'],_0x36287b[_0x0a9e('0x4d')]));if(_0x2e6482[_0x0a9e('0x42')][_0x0a9e('0x4f')]){_0x2f64ef['where']=_[_0x0a9e('0x53')](_0x2f64ef[_0x0a9e('0x4c')],{'$or':_[_0x0a9e('0x50')](_0x2f64ef[_0x0a9e('0x46')],function(_0x1d39bd){var _0x20a792={};_0x20a792[_0x1d39bd]={'$like':'%'+_0x2e6482['query']['filter']+'%'};return _0x20a792;})});}_0x2f64ef=_[_0x0a9e('0x53')]({},_0x2f64ef,_0x2e6482[_0x0a9e('0x59')]);return _0x106e04['getAgents'](_0x2f64ef);}})[_0x0a9e('0x1d')](function(_0x356370){if(_0x356370){_0x3b3e30=_0x356370[_0x0a9e('0x47')];if(!_0x2e6482[_0x0a9e('0x42')][_0x0a9e('0x48')](_0x0a9e('0x49'))){_0x2f64ef['limit']=qs[_0x0a9e('0x2e')](_0x2e6482[_0x0a9e('0x42')][_0x0a9e('0x2e')]);_0x2f64ef['offset']=qs[_0x0a9e('0x2d')](_0x2e6482[_0x0a9e('0x42')][_0x0a9e('0x2d')]);}return _0x106e04[_0x0a9e('0xdf')](_0x2f64ef);}})['then'](function(_0x49bb4f){if(_0x49bb4f){return _0x49bb4f?{'count':_0x3b3e30,'rows':_0x49bb4f}:null;}})[_0x0a9e('0x1d')](respondWithResult(_0x1f0776,null))[_0x0a9e('0x28')](handleError(_0x1f0776,null));};