Built motion from commit 3e059bc2.|2.5.32
[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 _0x693e=['ejs','lodash','crypto','jsforce','papaparse','ioredis','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','defaults','redis','localhost','socket.io-emitter','register','jayson/promise','client','request','then','info','SmsAccount,\x20%s,\x20%s','request\x20sent','SmsAccount,\x20%s,\x20%s,\x20%s','error','code','message','result','status','end','offset','undefined','limit','count','Content-Range','json','apply','reject','save','update','destroy','get','SmsAccounts','UserProfileResource','sendStatus','stack','name','send','SmsAccount','rawAttributes','type','key','map','query','keys','intersection','model','attributes','fields','length','hasOwnProperty','order','sort','where','filters','pick','merge','VIRTUAL','filter','options','includeAll','include','findAll','rows','Pause','mandatoryDispositionPause','catch','create','body','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','find','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','params','describe','Disposition','getDispositions','findOne','nolimit','SmsAccountId','removeDispositions','ids','addAnswer','CannedAnswer','getAnswers','removeAnswers','notify','SmsApplication','Applications','account','applications','priority','asc','CmContact','Sequelize','ValidationError','no\x20available\x20attributes','difference','createdAt','updatedAt','CompanyId','ListId','mobile','from','From','Body','messageId','MessageSid','skebby','sender','text','connectel','message_id','plivo','Text','MessageUUID','infobip','results','csc','originatingAddress','clickatell','fromNumber','replyMessageId','intelepeer','refid','from\x20is\x20mandatory','isNil','body\x20is\x20mandatory\x20and\x20not\x20empty','includes','mapKey','DESC','list','Contacts','contact','SmsInteraction','spread','interaction','created','autoclose','push','close','SmsMessage','ContactId','AttachmentId','UserId','User','unshift','agent','waitForTheAssignedAgent','*,*,*,*','startRouting','Start','entity\x20found','debug','SmsAccount,\x20%s,\x20%s,\x20%s,\x20%s','stringify','twilio','text/xml','<?xml\x20version=\x221.0\x22\x20encoding=\x22UTF-8\x22?>\x0a<Response></Response>','addApplications','sequelize','transaction','findAndCountAll','getApplications','getInteractions','Contact','Owner','fullname','internal','Tag','color','tag','to\x20is\x20mandatory','CmList','List','out','Messages','dataValues','received\x20delivery\x20report\x20from','inspect','skebby_dispatch_id','requestid','statusInt','clicksend','status_code','DELIVERED','bandwidth','redif','error_code','RECEIVED_BY_RECIPIENT','message-delivered','ACCEPTD','statusGet','state','message-id','addAgents','omit','emit','userSmsAccount:save','removeAgents','userSmsAccount:remove','getAgents','eml-format','request-promise','moment','util','path','sox','to-csv'];(function(_0x2641f9,_0x26715f){var _0x585741=function(_0x2d1462){while(--_0x2d1462){_0x2641f9['push'](_0x2641f9['shift']());}};_0x585741(++_0x26715f);}(_0x693e,0xda));var _0xe693=function(_0xfae23b,_0x2be4ba){_0xfae23b=_0xfae23b-0x0;var _0x200640=_0x693e[_0xfae23b];return _0x200640;};'use strict';var emlformat=require(_0xe693('0x0'));var rimraf=require('rimraf');var zipdir=require('zip-dir');var jsonpatch=require('fast-json-patch');var rp=require(_0xe693('0x1'));var moment=require(_0xe693('0x2'));var BPromise=require('bluebird');var Mustache=require('mustache');var util=require(_0xe693('0x3'));var path=require(_0xe693('0x4'));var sox=require(_0xe693('0x5'));var csv=require(_0xe693('0x6'));var ejs=require(_0xe693('0x7'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0xe693('0x8'));var squel=require('squel');var crypto=require(_0xe693('0x9'));var jsforce=require(_0xe693('0xa'));var deskjs=require('desk.js');var toCsv=require(_0xe693('0x6'));var querystring=require('querystring');var Papa=require(_0xe693('0xb'));var Redis=require(_0xe693('0xc'));var authService=require('../../components/auth/service');var qs=require(_0xe693('0xd'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0xe693('0xe'));var logger=require(_0xe693('0xf'))(_0xe693('0x10'));var utils=require(_0xe693('0x11'));var config=require(_0xe693('0x12'));var licenseUtil=require('../../config/license/util');var db=require(_0xe693('0x13'))['db'];config['redis']=_[_0xe693('0x14')](config[_0xe693('0x15')],{'host':_0xe693('0x16'),'port':0x18eb});var socket=require(_0xe693('0x17'))(new Redis(config[_0xe693('0x15')]));require('./smsAccount.socket')[_0xe693('0x18')](socket);var jayson=require(_0xe693('0x19'));var client=jayson[_0xe693('0x1a')]['http']({'port':0x232c});function respondWithRpcPromise(_0x29f5a3,_0xf6db4,_0x7d1e2e,_0x1eadc6){return new BPromise(function(_0x2fe683,_0x4f19e7){var _0x5a0325=_0x1eadc6||client;return _0x5a0325[_0xe693('0x1b')](_0x29f5a3,_0x7d1e2e)[_0xe693('0x1c')](function(_0x1112cd){logger[_0xe693('0x1d')](_0xe693('0x1e'),_0xf6db4,_0xe693('0x1f'));logger['debug'](_0xe693('0x20'),_0xf6db4,_0xe693('0x1f'),JSON['stringify'](_0x1112cd));if(_0x1112cd['error']){if(_0x1112cd[_0xe693('0x21')][_0xe693('0x22')]===0x1f4){logger[_0xe693('0x21')]('SmsAccount,\x20%s,\x20%s',_0xf6db4,_0x1112cd['error'][_0xe693('0x23')]);return _0x4f19e7(_0x1112cd['error'][_0xe693('0x23')]);}logger['error'](_0xe693('0x1e'),_0xf6db4,_0x1112cd['error'][_0xe693('0x23')]);return _0x2fe683(_0x1112cd[_0xe693('0x21')]['message']);}else{logger[_0xe693('0x1d')](_0xe693('0x1e'),_0xf6db4,_0xe693('0x1f'));_0x2fe683(_0x1112cd[_0xe693('0x24')][_0xe693('0x23')]);}})['catch'](function(_0x397532){logger['error'](_0xe693('0x1e'),_0xf6db4,_0x397532);_0x4f19e7(_0x397532);});});}function respondWithStatusCode(_0x49790a,_0x464a28){_0x464a28=_0x464a28||0xcc;return function(_0x3aad10){if(_0x3aad10){return _0x49790a['sendStatus'](_0x464a28);}return _0x49790a[_0xe693('0x25')](_0x464a28)[_0xe693('0x26')]();};}function respondWithResult(_0x303f89,_0x440694){_0x440694=_0x440694||0xc8;return function(_0x59472d){if(_0x59472d){return _0x303f89[_0xe693('0x25')](_0x440694)['json'](_0x59472d);}};}function respondWithFilteredResult(_0x48b5b7,_0x348b0c){return function(_0x346c78){if(_0x346c78){var _0x2329bc=typeof _0x348b0c[_0xe693('0x27')]===_0xe693('0x28')&&typeof _0x348b0c[_0xe693('0x29')]===_0xe693('0x28');var _0x6aa98a=_0x346c78[_0xe693('0x2a')];var _0x2f50c0=_0x2329bc?0x0:_0x348b0c[_0xe693('0x27')];var _0x1c4e86=_0x2329bc?_0x346c78[_0xe693('0x2a')]:_0x348b0c['offset']+_0x348b0c[_0xe693('0x29')];var _0x218856;if(_0x1c4e86>=_0x6aa98a){_0x1c4e86=_0x6aa98a;_0x218856=0xc8;}else{_0x218856=0xce;}_0x48b5b7[_0xe693('0x25')](_0x218856);return _0x48b5b7['set'](_0xe693('0x2b'),_0x2f50c0+'-'+_0x1c4e86+'/'+_0x6aa98a)[_0xe693('0x2c')](_0x346c78);}return null;};}function patchUpdates(_0x5222eb){return function(_0x5dc555){try{jsonpatch[_0xe693('0x2d')](_0x5dc555,_0x5222eb,!![]);}catch(_0x1e99c1){return BPromise[_0xe693('0x2e')](_0x1e99c1);}return _0x5dc555[_0xe693('0x2f')]();};}function saveUpdates(_0x1963a1,_0x186c03){return function(_0xea7e0){if(_0xea7e0){return _0xea7e0[_0xe693('0x30')](_0x1963a1)[_0xe693('0x1c')](function(_0x1eaf7c){return _0x1eaf7c;});}return null;};}function removeEntity(_0x4b8623,_0x1a3f44){return function(_0x37cb93){if(_0x37cb93){return _0x37cb93[_0xe693('0x31')]()[_0xe693('0x1c')](function(){var _0x2ef8ec=_0x37cb93[_0xe693('0x32')]({'plain':!![]});var _0x4bd453=_0xe693('0x33');return db[_0xe693('0x34')]['destroy']({'where':{'type':_0x4bd453,'resourceId':_0x2ef8ec['id']}})[_0xe693('0x1c')](function(){return _0x37cb93;});})['then'](function(){_0x4b8623[_0xe693('0x25')](0xcc)[_0xe693('0x26')]();});}};}function handleEntityNotFound(_0x47cac8,_0x3c706d){return function(_0x2cf58f){if(!_0x2cf58f){_0x47cac8[_0xe693('0x35')](0x194);}return _0x2cf58f;};}function handleError(_0x220617,_0x317988){_0x317988=_0x317988||0x1f4;return function(_0x5d5f4e){logger['error'](_0x5d5f4e[_0xe693('0x36')]);if(_0x5d5f4e['name']){delete _0x5d5f4e[_0xe693('0x37')];}_0x220617['status'](_0x317988)[_0xe693('0x38')](_0x5d5f4e);};}exports['index']=function(_0x5a4164,_0x29d4b4){var _0x51333b={'include':[{'model':db['Pause'],'as':'mandatoryDispositionPause'}]},_0x34a5ca={},_0x53b78b={'count':0x0,'rows':[]};var _0x3ed70a=_['map'](db[_0xe693('0x39')][_0xe693('0x3a')],function(_0x20117e){return{'name':_0x20117e['fieldName'],'type':_0x20117e[_0xe693('0x3b')][_0xe693('0x3c')]};});_0x34a5ca['model']=_[_0xe693('0x3d')](_0x3ed70a,_0xe693('0x37'));_0x34a5ca[_0xe693('0x3e')]=_[_0xe693('0x3f')](_0x5a4164[_0xe693('0x3e')]);_0x34a5ca['filters']=_[_0xe693('0x40')](_0x34a5ca[_0xe693('0x41')],_0x34a5ca[_0xe693('0x3e')]);_0x51333b[_0xe693('0x42')]=_[_0xe693('0x40')](_0x34a5ca['model'],qs[_0xe693('0x43')](_0x5a4164[_0xe693('0x3e')][_0xe693('0x43')]));_0x51333b['attributes']=_0x51333b[_0xe693('0x42')][_0xe693('0x44')]?_0x51333b[_0xe693('0x42')]:_0x34a5ca['model'];if(!_0x5a4164[_0xe693('0x3e')][_0xe693('0x45')]('nolimit')){_0x51333b[_0xe693('0x29')]=qs[_0xe693('0x29')](_0x5a4164[_0xe693('0x3e')][_0xe693('0x29')]);_0x51333b[_0xe693('0x27')]=qs[_0xe693('0x27')](_0x5a4164['query'][_0xe693('0x27')]);}_0x51333b[_0xe693('0x46')]=qs[_0xe693('0x47')](_0x5a4164['query']['sort']);_0x51333b[_0xe693('0x48')]=qs[_0xe693('0x49')](_[_0xe693('0x4a')](_0x5a4164[_0xe693('0x3e')],_0x34a5ca['filters']),_0x3ed70a);if(_0x5a4164[_0xe693('0x3e')]['filter']){_0x51333b[_0xe693('0x48')]=_[_0xe693('0x4b')](_0x51333b[_0xe693('0x48')],{'$or':_['map'](_0x3ed70a,function(_0x21d7e2){if(_0x21d7e2[_0xe693('0x3b')]!==_0xe693('0x4c')){var _0x491a42={};_0x491a42[_0x21d7e2['name']]={'$like':'%'+_0x5a4164['query'][_0xe693('0x4d')]+'%'};return _0x491a42;}})});}_0x51333b=_[_0xe693('0x4b')]({},_0x51333b,_0x5a4164[_0xe693('0x4e')]);var _0x1bfdf0={'where':_0x51333b['where']};return db[_0xe693('0x39')][_0xe693('0x2a')](_0x1bfdf0)[_0xe693('0x1c')](function(_0x5ca198){_0x53b78b[_0xe693('0x2a')]=_0x5ca198;if(_0x5a4164[_0xe693('0x3e')][_0xe693('0x4f')]){_0x51333b[_0xe693('0x50')]=[{'all':!![]}];}return db[_0xe693('0x39')][_0xe693('0x51')](_0x51333b);})[_0xe693('0x1c')](function(_0x5c41a3){_0x53b78b[_0xe693('0x52')]=_0x5c41a3;return _0x53b78b;})[_0xe693('0x1c')](respondWithFilteredResult(_0x29d4b4,_0x51333b))['catch'](handleError(_0x29d4b4,null));};exports['show']=function(_0x541ec2,_0xea7e09){var _0x26c7c0={'raw':![],'where':{'id':_0x541ec2['params']['id']},'include':[{'model':db[_0xe693('0x53')],'as':_0xe693('0x54')}]},_0x3a438d={};_0x3a438d['model']=_[_0xe693('0x3f')](db[_0xe693('0x39')][_0xe693('0x3a')]);_0x3a438d[_0xe693('0x3e')]=_['keys'](_0x541ec2[_0xe693('0x3e')]);_0x3a438d['filters']=_[_0xe693('0x40')](_0x3a438d[_0xe693('0x41')],_0x3a438d['query']);_0x26c7c0[_0xe693('0x42')]=_[_0xe693('0x40')](_0x3a438d['model'],qs[_0xe693('0x43')](_0x541ec2[_0xe693('0x3e')][_0xe693('0x43')]));_0x26c7c0['attributes']=_0x26c7c0[_0xe693('0x42')][_0xe693('0x44')]?_0x26c7c0[_0xe693('0x42')]:_0x3a438d[_0xe693('0x41')];if(_0x541ec2[_0xe693('0x3e')][_0xe693('0x4f')]){_0x26c7c0['include']=[{'all':!![]}];}_0x26c7c0=_[_0xe693('0x4b')]({},_0x26c7c0,_0x541ec2[_0xe693('0x4e')]);return db[_0xe693('0x39')]['find'](_0x26c7c0)[_0xe693('0x1c')](handleEntityNotFound(_0xea7e09,null))[_0xe693('0x1c')](respondWithResult(_0xea7e09,null))[_0xe693('0x55')](handleError(_0xea7e09,null));};exports[_0xe693('0x56')]=function(_0x2b7c66,_0x5bcaf1){return db[_0xe693('0x39')][_0xe693('0x56')](_0x2b7c66[_0xe693('0x57')],{})[_0xe693('0x1c')](function(_0x3a944e){var _0x517178=_0x2b7c66[_0xe693('0x58')][_0xe693('0x32')]({'plain':!![]});if(!_0x517178)throw new Error(_0xe693('0x59'));if(_0x517178[_0xe693('0x5a')]===_0xe693('0x58')){var _0x406fe5=_0x3a944e['get']({'plain':!![]});var _0x22e498='SmsAccounts';return db[_0xe693('0x5b')][_0xe693('0x5c')]({'where':{'name':_0x22e498,'userProfileId':_0x517178[_0xe693('0x5d')]},'raw':!![]})[_0xe693('0x1c')](function(_0x3dda88){if(_0x3dda88&&_0x3dda88[_0xe693('0x5e')]===0x0){return db[_0xe693('0x34')]['create']({'name':_0x406fe5[_0xe693('0x37')],'resourceId':_0x406fe5['id'],'type':_0x3dda88['name'],'sectionId':_0x3dda88['id']},{})[_0xe693('0x1c')](function(){return _0x3a944e;});}else{return _0x3a944e;}})[_0xe693('0x55')](function(_0x505e87){logger[_0xe693('0x21')](_0xe693('0x5f'),_0x505e87);throw _0x505e87;});}return _0x3a944e;})[_0xe693('0x1c')](respondWithResult(_0x5bcaf1,0xc9))[_0xe693('0x55')](handleError(_0x5bcaf1,null));};exports[_0xe693('0x30')]=function(_0x5a9e82,_0x1ca5df){if(_0x5a9e82[_0xe693('0x57')]['id']){delete _0x5a9e82[_0xe693('0x57')]['id'];}return db['SmsAccount'][_0xe693('0x5c')]({'where':{'id':_0x5a9e82[_0xe693('0x60')]['id']},'include':[{'model':db['Pause'],'as':_0xe693('0x54')}]})[_0xe693('0x1c')](handleEntityNotFound(_0x1ca5df,null))[_0xe693('0x1c')](saveUpdates(_0x5a9e82[_0xe693('0x57')],null))[_0xe693('0x1c')](respondWithResult(_0x1ca5df,null))[_0xe693('0x55')](handleError(_0x1ca5df,null));};exports[_0xe693('0x31')]=function(_0x55c0d7,_0x419de5){return db[_0xe693('0x39')]['find']({'where':{'id':_0x55c0d7['params']['id']}})[_0xe693('0x1c')](handleEntityNotFound(_0x419de5,null))[_0xe693('0x1c')](removeEntity(_0x419de5,null))[_0xe693('0x55')](handleError(_0x419de5,null));};exports['describe']=function(_0x4154ba,_0x4eb3f3){return db[_0xe693('0x39')][_0xe693('0x61')]()[_0xe693('0x1c')](respondWithResult(_0x4eb3f3,null))['catch'](handleError(_0x4eb3f3,null));};exports['addDisposition']=function(_0x4b9134,_0x490d80,_0x1b52c6){if(_0x4b9134[_0xe693('0x57')]['id']){delete _0x4b9134[_0xe693('0x57')]['id'];}return db[_0xe693('0x39')][_0xe693('0x5c')]({'where':{'id':_0x4b9134['params']['id']}})[_0xe693('0x1c')](handleEntityNotFound(_0x490d80,null))[_0xe693('0x1c')](function(_0x2614c8){if(_0x2614c8){_0x4b9134['body']['SmsAccountId']=_0x2614c8['id'];return db[_0xe693('0x62')]['create'](_0x4b9134[_0xe693('0x57')]);}})[_0xe693('0x1c')](respondWithResult(_0x490d80,null))[_0xe693('0x55')](handleError(_0x490d80,null));};exports[_0xe693('0x63')]=function(_0x578d4f,_0x44bfc4,_0x97b32f){var _0x5d4f8d={'raw':![],'where':{}};var _0x28852f={};var _0x2b854c={'count':0x0,'rows':[]};return db[_0xe693('0x39')][_0xe693('0x64')]({'where':{'id':_0x578d4f[_0xe693('0x60')]['id']}})[_0xe693('0x1c')](handleEntityNotFound(_0x44bfc4,null))['then'](function(_0xf09894){if(_0xf09894){_0x28852f[_0xe693('0x41')]=_[_0xe693('0x3f')](db[_0xe693('0x62')]['rawAttributes']);_0x28852f[_0xe693('0x3e')]=_['keys'](_0x578d4f[_0xe693('0x3e')]);_0x28852f[_0xe693('0x49')]=_[_0xe693('0x40')](_0x28852f[_0xe693('0x41')],_0x28852f[_0xe693('0x3e')]);_0x5d4f8d[_0xe693('0x42')]=_['intersection'](_0x28852f['model'],qs[_0xe693('0x43')](_0x578d4f[_0xe693('0x3e')][_0xe693('0x43')]));_0x5d4f8d[_0xe693('0x42')]=_0x5d4f8d[_0xe693('0x42')][_0xe693('0x44')]?_0x5d4f8d[_0xe693('0x42')]:_0x28852f[_0xe693('0x41')];if(!_0x578d4f[_0xe693('0x3e')][_0xe693('0x45')](_0xe693('0x65'))){_0x5d4f8d[_0xe693('0x29')]=qs[_0xe693('0x29')](_0x578d4f['query'][_0xe693('0x29')]);_0x5d4f8d[_0xe693('0x27')]=qs['offset'](_0x578d4f['query'][_0xe693('0x27')]);}_0x5d4f8d[_0xe693('0x46')]=qs[_0xe693('0x47')](_0x578d4f['query'][_0xe693('0x47')]);_0x5d4f8d[_0xe693('0x48')]=qs['filters'](_[_0xe693('0x4a')](_0x578d4f[_0xe693('0x3e')],_0x28852f[_0xe693('0x49')]));_0x5d4f8d[_0xe693('0x48')][_0xe693('0x66')]=_0xf09894['id'];if(_0x578d4f['query'][_0xe693('0x4d')]){_0x5d4f8d['where']=_['merge'](_0x5d4f8d[_0xe693('0x48')],{'$or':_['map'](_0x5d4f8d['attributes'],function(_0x132cbd){var _0x3093a8={};_0x3093a8[_0x132cbd]={'$like':'%'+_0x578d4f[_0xe693('0x3e')]['filter']+'%'};return _0x3093a8;})});}_0x5d4f8d=_['merge']({},_0x5d4f8d,_0x578d4f[_0xe693('0x4e')]);return db[_0xe693('0x62')][_0xe693('0x2a')]({'where':_0x5d4f8d[_0xe693('0x48')]})[_0xe693('0x1c')](function(_0x5a5c71){_0x2b854c[_0xe693('0x2a')]=_0x5a5c71;if(_0x578d4f[_0xe693('0x3e')][_0xe693('0x4f')]){_0x5d4f8d[_0xe693('0x50')]=[{'all':!![]}];}return db[_0xe693('0x62')][_0xe693('0x51')](_0x5d4f8d);})['then'](function(_0x2a0025){_0x2b854c['rows']=_0x2a0025;return _0x2b854c;});}})[_0xe693('0x1c')](respondWithFilteredResult(_0x44bfc4,_0x5d4f8d))[_0xe693('0x55')](handleError(_0x44bfc4,null));};exports['removeDispositions']=function(_0xc24db7,_0x3761ee,_0x4a9459){return db[_0xe693('0x39')][_0xe693('0x5c')]({'where':{'id':_0xc24db7['params']['id']}})[_0xe693('0x1c')](handleEntityNotFound(_0x3761ee,null))[_0xe693('0x1c')](function(_0x235e57){if(_0x235e57){return _0x235e57[_0xe693('0x67')](_0xc24db7[_0xe693('0x3e')][_0xe693('0x68')]);}})['then'](respondWithStatusCode(_0x3761ee,null))[_0xe693('0x55')](handleError(_0x3761ee,null));};exports[_0xe693('0x69')]=function(_0x260a3d,_0x1edfa4,_0x55a43){if(_0x260a3d[_0xe693('0x57')]['id']){delete _0x260a3d[_0xe693('0x57')]['id'];}return db['SmsAccount'][_0xe693('0x5c')]({'where':{'id':_0x260a3d['params']['id']}})[_0xe693('0x1c')](handleEntityNotFound(_0x1edfa4,null))[_0xe693('0x1c')](function(_0x1667ca){if(_0x1667ca){_0x260a3d[_0xe693('0x57')][_0xe693('0x66')]=_0x1667ca['id'];return db[_0xe693('0x6a')]['create'](_0x260a3d[_0xe693('0x57')]);}})[_0xe693('0x1c')](respondWithResult(_0x1edfa4,null))[_0xe693('0x55')](handleError(_0x1edfa4,null));};exports[_0xe693('0x6b')]=function(_0x419899,_0x3ff4fb,_0x25f34e){var _0x23be42={'raw':![],'where':{}};var _0x3fb26e={};var _0x45987b={'count':0x0,'rows':[]};return db['SmsAccount'][_0xe693('0x64')]({'where':{'id':_0x419899['params']['id']}})[_0xe693('0x1c')](handleEntityNotFound(_0x3ff4fb,null))['then'](function(_0x8f88bb){if(_0x8f88bb){_0x3fb26e[_0xe693('0x41')]=_[_0xe693('0x3f')](db[_0xe693('0x6a')][_0xe693('0x3a')]);_0x3fb26e[_0xe693('0x3e')]=_[_0xe693('0x3f')](_0x419899[_0xe693('0x3e')]);_0x3fb26e['filters']=_[_0xe693('0x40')](_0x3fb26e[_0xe693('0x41')],_0x3fb26e['query']);_0x23be42['attributes']=_[_0xe693('0x40')](_0x3fb26e[_0xe693('0x41')],qs[_0xe693('0x43')](_0x419899[_0xe693('0x3e')]['fields']));_0x23be42[_0xe693('0x42')]=_0x23be42[_0xe693('0x42')][_0xe693('0x44')]?_0x23be42[_0xe693('0x42')]:_0x3fb26e[_0xe693('0x41')];if(!_0x419899[_0xe693('0x3e')][_0xe693('0x45')](_0xe693('0x65'))){_0x23be42[_0xe693('0x29')]=qs['limit'](_0x419899[_0xe693('0x3e')][_0xe693('0x29')]);_0x23be42[_0xe693('0x27')]=qs[_0xe693('0x27')](_0x419899[_0xe693('0x3e')][_0xe693('0x27')]);}_0x23be42['order']=qs[_0xe693('0x47')](_0x419899['query'][_0xe693('0x47')]);_0x23be42['where']=qs[_0xe693('0x49')](_[_0xe693('0x4a')](_0x419899[_0xe693('0x3e')],_0x3fb26e['filters']));_0x23be42['where'][_0xe693('0x66')]=_0x8f88bb['id'];if(_0x419899['query'][_0xe693('0x4d')]){_0x23be42[_0xe693('0x48')]=_[_0xe693('0x4b')](_0x23be42[_0xe693('0x48')],{'$or':_[_0xe693('0x3d')](_0x23be42[_0xe693('0x42')],function(_0x15f417){var _0xc0a313={};_0xc0a313[_0x15f417]={'$like':'%'+_0x419899['query'][_0xe693('0x4d')]+'%'};return _0xc0a313;})});}_0x23be42=_['merge']({},_0x23be42,_0x419899['options']);return db[_0xe693('0x6a')][_0xe693('0x2a')]({'where':_0x23be42['where']})[_0xe693('0x1c')](function(_0x376a78){_0x45987b[_0xe693('0x2a')]=_0x376a78;if(_0x419899[_0xe693('0x3e')][_0xe693('0x4f')]){_0x23be42[_0xe693('0x50')]=[{'all':!![]}];}return db[_0xe693('0x6a')][_0xe693('0x51')](_0x23be42);})[_0xe693('0x1c')](function(_0x550fd2){_0x45987b[_0xe693('0x52')]=_0x550fd2;return _0x45987b;});}})[_0xe693('0x1c')](respondWithFilteredResult(_0x3ff4fb,_0x23be42))['catch'](handleError(_0x3ff4fb,null));};exports[_0xe693('0x6c')]=function(_0x3b3a14,_0x3b7a56,_0x28669a){return db['SmsAccount'][_0xe693('0x5c')]({'where':{'id':_0x3b3a14[_0xe693('0x60')]['id']}})[_0xe693('0x1c')](handleEntityNotFound(_0x3b7a56,null))[_0xe693('0x1c')](function(_0x1b98d3){if(_0x1b98d3){return _0x1b98d3[_0xe693('0x6c')](_0x3b3a14[_0xe693('0x3e')][_0xe693('0x68')]);}})['then'](respondWithStatusCode(_0x3b7a56,null))[_0xe693('0x55')](handleError(_0x3b7a56,null));};exports[_0xe693('0x6d')]=function(_0x2f64c0,_0x2e7b8f,_0x18ded0){var _0x450fd5={'channel':'sms'};var _0x8ca8f2=[];var _0x677d45=[];var _0x5cfbf4={};return db[_0xe693('0x39')][_0xe693('0x5c')]({'where':{'id':_0x2f64c0[_0xe693('0x60')]['id']},'include':[{'model':db[_0xe693('0x6e')],'as':_0xe693('0x6f')}]})[_0xe693('0x1c')](handleEntityNotFound(_0x2e7b8f,null))['then'](function(_0x2d46a5){_0x450fd5[_0xe693('0x70')]=_0x2d46a5;_0x450fd5[_0xe693('0x71')]=_['orderBy'](_0x2d46a5[_0xe693('0x6f')],[_0xe693('0x72')],[_0xe693('0x73')]);if(_0x450fd5[_0xe693('0x70')][_0xe693('0x6f')]){delete _0x450fd5[_0xe693('0x70')][_0xe693('0x6f')];}return db[_0xe693('0x74')][_0xe693('0x61')]();})['then'](function(_0x188121){if(!_0x188121){throw new db[(_0xe693('0x75'))][(_0xe693('0x76'))](_0xe693('0x77'));}_0x8ca8f2=_[_0xe693('0x78')](_['keys'](_0x188121),[_0xe693('0x79'),_0xe693('0x7a')]);_0x677d45=_[_0xe693('0x78')](_['keys'](_0x188121),['createdAt','updatedAt',_0xe693('0x7b'),_0xe693('0x7c')]);_0x450fd5['body']={'mapKey':_0xe693('0x7d')};if(_0x450fd5['account']['type']){switch(_0x450fd5[_0xe693('0x70')][_0xe693('0x3b')]){case'twilio':_0x450fd5[_0xe693('0x57')][_0xe693('0x7e')]=_0x2f64c0[_0xe693('0x57')][_0xe693('0x7f')];_0x450fd5[_0xe693('0x57')]['body']=_0x2f64c0['body'][_0xe693('0x80')];_0x450fd5['body'][_0xe693('0x81')]=_0x2f64c0['body'][_0xe693('0x82')];break;case _0xe693('0x83'):_0x450fd5[_0xe693('0x57')][_0xe693('0x7e')]='+'+_0x2f64c0[_0xe693('0x57')][_0xe693('0x84')];_0x450fd5[_0xe693('0x57')][_0xe693('0x57')]=_0x2f64c0[_0xe693('0x57')][_0xe693('0x85')];break;case _0xe693('0x86'):_0x450fd5[_0xe693('0x57')]['from']=_0x2f64c0[_0xe693('0x57')]['from'];_0x450fd5['body']['body']=_0x2f64c0[_0xe693('0x57')][_0xe693('0x23')];break;case'clicksend':_0x450fd5[_0xe693('0x57')][_0xe693('0x7e')]=_0x2f64c0[_0xe693('0x57')][_0xe693('0x7e')];_0x450fd5[_0xe693('0x57')]['body']=_0x2f64c0[_0xe693('0x57')][_0xe693('0x57')];_0x450fd5[_0xe693('0x57')][_0xe693('0x81')]=_0x2f64c0[_0xe693('0x57')][_0xe693('0x87')];break;case _0xe693('0x88'):_0x450fd5[_0xe693('0x57')][_0xe693('0x7e')]=_0x2f64c0[_0xe693('0x57')]['From'];_0x450fd5['body'][_0xe693('0x57')]=_0x2f64c0[_0xe693('0x57')][_0xe693('0x89')];_0x450fd5[_0xe693('0x57')][_0xe693('0x81')]=_0x2f64c0[_0xe693('0x57')][_0xe693('0x8a')];break;case _0xe693('0x8b'):_0x450fd5[_0xe693('0x57')][_0xe693('0x7e')]='+'+_0x2f64c0[_0xe693('0x57')][_0xe693('0x8c')][0x0][_0xe693('0x7e')];_0x450fd5[_0xe693('0x57')]['body']=_0x2f64c0[_0xe693('0x57')][_0xe693('0x8c')][0x0][_0xe693('0x85')];_0x450fd5[_0xe693('0x57')]['messageId']=_0x2f64c0[_0xe693('0x57')][_0xe693('0x8c')][0x0][_0xe693('0x81')];break;case _0xe693('0x8d'):_0x450fd5[_0xe693('0x57')][_0xe693('0x7e')]=_0x2f64c0[_0xe693('0x57')][_0xe693('0x8e')];_0x450fd5[_0xe693('0x57')][_0xe693('0x57')]=_0x2f64c0['body']['segmentedMessage']['message'];break;case _0xe693('0x8f'):_0x450fd5[_0xe693('0x57')]['from']=_0x2f64c0['body'][_0xe693('0x90')];_0x450fd5[_0xe693('0x57')]['body']=_0x2f64c0[_0xe693('0x57')][_0xe693('0x85')];_0x450fd5['body']['messageId']=_0x2f64c0['body'][_0xe693('0x91')];break;case'bandwidth':_0x450fd5['body'][_0xe693('0x81')]=_0x2f64c0[_0xe693('0x57')][0x0][_0xe693('0x23')]['id'];_0x450fd5[_0xe693('0x57')][_0xe693('0x7e')]=_0x2f64c0['body'][0x0][_0xe693('0x23')]['from'];_0x450fd5[_0xe693('0x57')][_0xe693('0x57')]=_0x2f64c0[_0xe693('0x57')][0x0][_0xe693('0x23')]['text'];break;case _0xe693('0x92'):_0x450fd5['body'][_0xe693('0x7e')]=_0x2f64c0[_0xe693('0x57')][_0xe693('0x7e')];_0x450fd5[_0xe693('0x57')]['body']=_0x2f64c0['body'][_0xe693('0x23')];_0x450fd5[_0xe693('0x57')][_0xe693('0x81')]=_0x2f64c0[_0xe693('0x57')][_0xe693('0x93')];break;}}if(_0x450fd5[_0xe693('0x57')]['id']){delete _0x450fd5[_0xe693('0x57')]['id'];}if(_['isNil'](_0x450fd5[_0xe693('0x57')][_0xe693('0x7e')])){throw new db[(_0xe693('0x75'))][(_0xe693('0x76'))](_0xe693('0x94'));}if(_[_0xe693('0x95')](_0x450fd5['body'][_0xe693('0x57')])||_0x450fd5[_0xe693('0x57')]['body']===''){throw new db[(_0xe693('0x75'))][(_0xe693('0x76'))](_0xe693('0x96'));}if(_[_0xe693('0x95')](_0x450fd5[_0xe693('0x57')]['mapKey'])){throw new db[(_0xe693('0x75'))][(_0xe693('0x76'))]('mapKey\x20is\x20mandatory,\x20please\x20use\x20one\x20of\x20these:\x20'+_0x677d45);}if(!_[_0xe693('0x97')](_0x677d45,_0x450fd5[_0xe693('0x57')][_0xe693('0x98')])){throw new db['Sequelize'][(_0xe693('0x76'))]('mapKey\x20invalid,\x20please\x20use\x20one\x20of\x20these:\x20'+_0x677d45);}_0x5cfbf4[_0x450fd5[_0xe693('0x57')][_0xe693('0x98')]]=_0x450fd5[_0xe693('0x57')][_0xe693('0x7e')];return db['CmList'][_0xe693('0x5c')]({'where':{'id':_0x450fd5[_0xe693('0x70')][_0xe693('0x7c')]},'include':[{'model':db[_0xe693('0x74')],'as':'Contacts','where':_0x5cfbf4,'limit':0x1,'order':[[_0xe693('0x7a'),_0xe693('0x99')]]}]});})[_0xe693('0x1c')](handleEntityNotFound(_0x2e7b8f,null))[_0xe693('0x1c')](function(_0x542283){if(_0x542283){_0x450fd5[_0xe693('0x9a')]=_['omit'](_0x542283,[_0xe693('0x9b')]);if(_0x542283[_0xe693('0x9b')][_0xe693('0x44')]){return _0x542283['Contacts'][0x0];}var _0x19a9d6=_[_0xe693('0x14')](_0x450fd5[_0xe693('0x57')],{'firstName':_0x450fd5[_0xe693('0x57')][_0xe693('0x7e')],'ListId':_0x542283['id']});_0x19a9d6[_0x450fd5['body']['mapKey']]=_0x450fd5[_0xe693('0x57')]['from'];return db[_0xe693('0x74')][_0xe693('0x56')](_0x19a9d6,{'fields':_0x8ca8f2,'raw':!![]});}})[_0xe693('0x1c')](handleEntityNotFound(_0x2e7b8f,null))['then'](function(_0x4bfaa8){if(_0x4bfaa8){_0x450fd5[_0xe693('0x9c')]=_0x4bfaa8;var _0x118ac6={'ContactId':_0x4bfaa8['id'],'phone':_0x450fd5['body'][_0xe693('0x7e')],'SmsAccountId':_0x2f64c0[_0xe693('0x60')]['id']};var _0x59ed4e={'ContactId':_0x4bfaa8['id'],'SmsAccountId':_0x2f64c0[_0xe693('0x60')]['id'],'closed':![]};return db[_0xe693('0x9d')][_0xe693('0x5c')]({'where':_0x59ed4e})[_0xe693('0x1c')](function(_0x177740){if(_0x177740){return[_0x177740,![]];}return db['SmsInteraction'][_0xe693('0x56')](_0x118ac6)[_0xe693('0x1c')](function(_0x553f02){return[_0x553f02,!![]];});});}})[_0xe693('0x9e')](function(_0x354237,_0x4c0a37){_0x450fd5[_0xe693('0x9f')]=_0x354237[_0xe693('0x32')]({'plain':!![]});_0x450fd5[_0xe693('0x9f')][_0xe693('0xa0')]=![];if(_0x4c0a37){if(_0x450fd5['account'][_0xe693('0xa1')]){_0x450fd5['applications'][_0xe693('0xa2')]({'id':0x0,'priority':_0x450fd5[_0xe693('0x71')][_0xe693('0x44')]+0x1,'app':_0xe693('0xa3'),'appdata':'unmanaged','interval':'*,*,*,*'});}_0x450fd5[_0xe693('0x9f')][_0xe693('0xa0')]=!![];}return db[_0xe693('0xa4')]['create']({'phone':_0x450fd5[_0xe693('0x57')][_0xe693('0x7e')],'messageId':_0x450fd5[_0xe693('0x57')][_0xe693('0x81')],'body':_0x450fd5[_0xe693('0x57')][_0xe693('0x57')],'SmsAccountId':_0x2f64c0[_0xe693('0x60')]['id'],'SmsInteractionId':_0x354237['id'],'direction':'in','ContactId':_0x354237[_0xe693('0xa5')],'AttachmentId':_0x450fd5[_0xe693('0x57')][_0xe693('0xa6')]});})[_0xe693('0x1c')](function(_0x35e97d){_0x450fd5['message']=_0x35e97d;if(_0x450fd5[_0xe693('0x9f')][_0xe693('0xa7')]){return db[_0xe693('0xa8')][_0xe693('0x5c')]({'attributes':['id',_0xe693('0x37')],'where':{'id':_0x450fd5[_0xe693('0x9f')]['UserId']}})[_0xe693('0x1c')](function(_0x386edd){if(_0x386edd){_0x450fd5[_0xe693('0x71')][_0xe693('0xa9')]({'id':0x0,'priority':0x0,'app':_0xe693('0xaa'),'appdata':_0x386edd[_0xe693('0x37')]+','+(_0x450fd5[_0xe693('0x70')][_0xe693('0xab')]||0xa),'interval':_0xe693('0xac')});}return respondWithRpcPromise('Start',_0xe693('0xad'),_0x450fd5);});}return respondWithRpcPromise(_0xe693('0xae'),'startRouting',_0x450fd5);})['then'](function(_0x4c6a1d){if(_0x4c6a1d){var _0x52b7e0=0xc8;var _0x3ca1e1='receiveMessage';logger['info'](_0xe693('0x20'),_0x3ca1e1,_0x52b7e0,_0xe693('0xaf'));logger[_0xe693('0xb0')](_0xe693('0xb1'),_0x3ca1e1,_0x52b7e0,'entity\x20found',JSON[_0xe693('0xb2')](_0x4c6a1d));if(_0x450fd5['account'][_0xe693('0x3b')]===_0xe693('0xb3')){return _0x2e7b8f['status'](_0x52b7e0)['set']('Content-Type',_0xe693('0xb4'))[_0xe693('0x38')](_0xe693('0xb5'));}else{return _0x2e7b8f[_0xe693('0x25')](_0x52b7e0)['json'](_0x4c6a1d);}}})[_0xe693('0x55')](handleError(_0x2e7b8f,null));};exports[_0xe693('0xb6')]=function(_0x19b8d2,_0x3d6d75,_0x534251){return db[_0xe693('0x39')]['findOne']({'where':{'id':_0x19b8d2[_0xe693('0x60')]['id']}})[_0xe693('0x1c')](handleEntityNotFound(_0x3d6d75,null))[_0xe693('0x1c')](function(_0x2a3a8b){if(_0x2a3a8b){return db[_0xe693('0xb7')][_0xe693('0xb8')](function(_0x1cf19a){return db[_0xe693('0x6e')][_0xe693('0x31')]({'where':{'SmsAccountId':_0x19b8d2[_0xe693('0x60')]['id']},'transaction':_0x1cf19a})[_0xe693('0x1c')](function(_0x7b5d9b){var _0x502c0c=_['map'](_0x19b8d2[_0xe693('0x57')],function(_0x31ab10){_0x31ab10[_0xe693('0x66')]=_0x19b8d2[_0xe693('0x60')]['id'];return _0x31ab10;});return db[_0xe693('0x6e')]['bulkCreate'](_0x502c0c,{'transaction':_0x1cf19a});});})[_0xe693('0x1c')](function(){return db[_0xe693('0x6e')][_0xe693('0xb9')]({'where':{'SmsAccountId':_0x19b8d2[_0xe693('0x60')]['id']},'order':_0xe693('0x72')});});}})[_0xe693('0x1c')](respondWithResult(_0x3d6d75,null))[_0xe693('0x55')](handleError(_0x3d6d75,null));};exports[_0xe693('0xba')]=function(_0xb2a195,_0x47dcb9,_0x1bed93){var _0x550789={};var _0x51b227={};var _0x41eac5;var _0x191e1c;return db['SmsAccount'][_0xe693('0x64')]({'where':{'id':_0xb2a195[_0xe693('0x60')]['id']}})[_0xe693('0x1c')](handleEntityNotFound(_0x47dcb9,null))[_0xe693('0x1c')](function(_0x55545f){if(_0x55545f){_0x41eac5=_0x55545f;_0x51b227[_0xe693('0x41')]=_[_0xe693('0x3f')](db[_0xe693('0x6e')][_0xe693('0x3a')]);_0x51b227[_0xe693('0x3e')]=_['keys'](_0xb2a195[_0xe693('0x3e')]);_0x51b227[_0xe693('0x49')]=_['intersection'](_0x51b227['model'],_0x51b227[_0xe693('0x3e')]);_0x550789['attributes']=_[_0xe693('0x40')](_0x51b227[_0xe693('0x41')],qs['fields'](_0xb2a195[_0xe693('0x3e')][_0xe693('0x43')]));_0x550789[_0xe693('0x42')]=_0x550789[_0xe693('0x42')][_0xe693('0x44')]?_0x550789[_0xe693('0x42')]:_0x51b227[_0xe693('0x41')];_0x550789[_0xe693('0x46')]=qs[_0xe693('0x47')](_0xb2a195[_0xe693('0x3e')][_0xe693('0x47')]);_0x550789[_0xe693('0x48')]=qs[_0xe693('0x49')](_[_0xe693('0x4a')](_0xb2a195[_0xe693('0x3e')],_0x51b227[_0xe693('0x49')]));if(_0xb2a195[_0xe693('0x3e')]['filter']){_0x550789['where']=_[_0xe693('0x4b')](_0x550789[_0xe693('0x48')],{'$or':_[_0xe693('0x3d')](_0x550789[_0xe693('0x42')],function(_0x505498){var _0x61f7ec={};_0x61f7ec[_0x505498]={'$like':'%'+_0xb2a195[_0xe693('0x3e')][_0xe693('0x4d')]+'%'};return _0x61f7ec;})});}_0x550789=_[_0xe693('0x4b')]({},_0x550789,_0xb2a195[_0xe693('0x4e')]);return _0x41eac5[_0xe693('0xba')](_0x550789);}})['then'](function(_0x1dec51){if(_0x1dec51){_0x191e1c=_0x1dec51[_0xe693('0x44')];if(!_0xb2a195[_0xe693('0x3e')][_0xe693('0x45')](_0xe693('0x65'))){_0x550789[_0xe693('0x29')]=qs[_0xe693('0x29')](_0xb2a195['query']['limit']);_0x550789[_0xe693('0x27')]=qs[_0xe693('0x27')](_0xb2a195[_0xe693('0x3e')][_0xe693('0x27')]);}return _0x41eac5[_0xe693('0xba')](_0x550789);}})[_0xe693('0x1c')](function(_0x455c59){if(_0x455c59){return _0x455c59?{'count':_0x191e1c,'rows':_0x455c59}:null;}})[_0xe693('0x1c')](respondWithResult(_0x47dcb9,null))[_0xe693('0x55')](handleError(_0x47dcb9,null));};exports[_0xe693('0xbb')]=function(_0xf0ab0f,_0x3884a4,_0x21bc0a){var _0x1e28a5={'raw':![],'where':{}};var _0x3a0232={};var _0x1ff48a={'count':0x0,'rows':[]};return db[_0xe693('0x39')][_0xe693('0x64')]({'where':{'id':_0xf0ab0f[_0xe693('0x60')]['id']}})['then'](handleEntityNotFound(_0x3884a4,null))['then'](function(_0x4b7938){if(_0x4b7938){_0x3a0232['model']=_[_0xe693('0x3f')](db[_0xe693('0x9d')][_0xe693('0x3a')]);_0x3a0232[_0xe693('0x3e')]=_[_0xe693('0x3f')](_0xf0ab0f[_0xe693('0x3e')]);_0x3a0232[_0xe693('0x49')]=_[_0xe693('0x40')](_0x3a0232['model'],_0x3a0232[_0xe693('0x3e')]);_0x1e28a5[_0xe693('0x42')]=_['intersection'](_0x3a0232[_0xe693('0x41')],qs[_0xe693('0x43')](_0xf0ab0f['query']['fields']));_0x1e28a5[_0xe693('0x42')]=_0x1e28a5[_0xe693('0x42')][_0xe693('0x44')]?_0x1e28a5['attributes']:_0x3a0232[_0xe693('0x41')];if(!_0xf0ab0f[_0xe693('0x3e')][_0xe693('0x45')](_0xe693('0x65'))){_0x1e28a5['limit']=qs['limit'](_0xf0ab0f[_0xe693('0x3e')][_0xe693('0x29')]);_0x1e28a5['offset']=qs[_0xe693('0x27')](_0xf0ab0f[_0xe693('0x3e')]['offset']);}_0x1e28a5[_0xe693('0x46')]=qs[_0xe693('0x47')](_0xf0ab0f[_0xe693('0x3e')]['sort']);_0x1e28a5[_0xe693('0x48')]=qs[_0xe693('0x49')](_[_0xe693('0x4a')](_0xf0ab0f[_0xe693('0x3e')],_0x3a0232[_0xe693('0x49')]));_0x1e28a5['where'][_0xe693('0x66')]=_0x4b7938['id'];if(_0xf0ab0f[_0xe693('0x3e')][_0xe693('0x4d')]){_0x1e28a5[_0xe693('0x48')]=_[_0xe693('0x4b')](_0x1e28a5[_0xe693('0x48')],{'$or':_[_0xe693('0x3d')](_0x1e28a5['attributes'],function(_0x5e5692){var _0x34d64d={};_0x34d64d[_0x5e5692]={'$like':'%'+_0xf0ab0f[_0xe693('0x3e')][_0xe693('0x4d')]+'%'};return _0x34d64d;})});}_0x1e28a5=_['merge']({},_0x1e28a5,_0xf0ab0f['options']);return db[_0xe693('0x9d')]['count']({'where':_0x1e28a5[_0xe693('0x48')]})[_0xe693('0x1c')](function(_0xe77832){_0x1ff48a[_0xe693('0x2a')]=_0xe77832;if(_0xf0ab0f[_0xe693('0x3e')][_0xe693('0x4f')]){_0x1e28a5[_0xe693('0x50')]=[{'model':db[_0xe693('0x74')],'as':_0xe693('0xbc'),'required':![]},{'model':db[_0xe693('0xa8')],'as':_0xe693('0xbd'),'attributes':[_0xe693('0x37'),_0xe693('0xbe'),_0xe693('0xbf')],'required':![]},{'model':db[_0xe693('0xc0')],'as':'Tags','attributes':['id',_0xe693('0x37'),_0xe693('0xc1')],'where':_0xf0ab0f[_0xe693('0x3e')][_0xe693('0xc2')]?{'id':_0xf0ab0f[_0xe693('0x3e')][_0xe693('0xc2')]}:undefined,'required':_0xf0ab0f['query'][_0xe693('0xc2')]?!![]:![]}];}return db['SmsInteraction']['findAll'](_0x1e28a5);})[_0xe693('0x1c')](function(_0x8df325){_0x1ff48a[_0xe693('0x52')]=_0x8df325;return _0x1ff48a;});}})[_0xe693('0x1c')](respondWithFilteredResult(_0x3884a4,_0x1e28a5))['catch'](handleError(_0x3884a4,null));};exports['send']=function(_0x20d911,_0x26527d,_0x2fd6af){var _0x3052d3,_0x481601,_0x464902;if(_[_0xe693('0x95')](_0x20d911[_0xe693('0x57')][_0xe693('0x57')])||_0x20d911['body'][_0xe693('0x57')]===''){throw new db[(_0xe693('0x75'))][(_0xe693('0x76'))](_0xe693('0x96'));}if(_[_0xe693('0x95')](_0x20d911[_0xe693('0x57')]['to'])){throw new db[(_0xe693('0x75'))][(_0xe693('0x76'))](_0xe693('0xc3'));}_0x3052d3=_0x20d911[_0xe693('0x57')]['to'];return db[_0xe693('0x39')]['find']({'where':{'id':_0x20d911[_0xe693('0x60')]['id']},'include':[{'model':db[_0xe693('0xc4')],'as':_0xe693('0xc5'),'include':[{'model':db[_0xe693('0x74')],'as':_0xe693('0x9b'),'where':{'mobile':_0x3052d3},'limit':0x1,'order':[[_0xe693('0x7a'),'DESC']]}]}]})[_0xe693('0x1c')](handleEntityNotFound(_0x26527d,null))['then'](function(_0x567ebd){if(_0x567ebd&&_0x567ebd['List']){_0x481601=_0x567ebd[_0xe693('0x32')]({'plain':!![]});if(_0x481601[_0xe693('0xc5')]&&_0x481601[_0xe693('0xc5')]['Contacts'][_0xe693('0x44')]){return _0x481601['List'][_0xe693('0x9b')][0x0];}return db['CmContact'][_0xe693('0x56')](_[_0xe693('0x14')](_0x20d911[_0xe693('0x57')],{'firstName':_0x3052d3,'mobile':_0x3052d3,'phone':_0x3052d3,'ListId':_0x481601[_0xe693('0x7c')]}));}})['then'](handleEntityNotFound(_0x26527d,null))['then'](function(_0x468db8){if(_0x468db8){_0x464902=_0x468db8;return db['SmsInteraction'][_0xe693('0x5c')]({'where':{'ContactId':_0x464902['id'],'closed':![],'SmsAccountId':_0x481601['id']}})['then'](function(_0x201674){if(_0x201674){return[_0x201674,![]];}return db['SmsInteraction']['create']({'UserId':_0x20d911[_0xe693('0x58')]['id'],'ContactId':_0x464902['id'],'SmsAccountId':_0x481601['id'],'phone':_0x3052d3,'firstMsgDirection':_0xe693('0xc6'),'Messages':[_[_0xe693('0x4b')](_0x20d911['body'],{'read':![],'body':_0x20d911[_0xe693('0x57')][_0xe693('0x57')],'phone':_0x3052d3,'SmsAccountId':_0x481601['id'],'UserId':_0x20d911[_0xe693('0x58')]['id'],'ContactId':_0x464902['id']})]},{'include':[{'model':db[_0xe693('0xa4')],'as':_0xe693('0xc7')}]})[_0xe693('0x1c')](function(_0xd8673e){return[_0xd8673e,!![]];});});}})[_0xe693('0x9e')](function(_0x46cdcb,_0x410549){if(_0x410549){return _0x46cdcb;}return db['SmsMessage'][_0xe693('0x56')](_[_0xe693('0x4b')](_0x20d911[_0xe693('0x57')],{'read':![],'body':_0x20d911[_0xe693('0x57')][_0xe693('0x57')],'phone':_0x3052d3,'SmsAccountId':_0x481601['id'],'SmsInteractionId':_0x46cdcb['id'],'UserId':_0x20d911[_0xe693('0x58')]['id'],'ContactId':_0x464902['id']}))['then'](function(_0x355de5){_0x46cdcb['dataValues'][_0xe693('0xc7')]=[];_0x46cdcb[_0xe693('0xc8')][_0xe693('0xc7')]['push'](_0x355de5[_0xe693('0xc8')]);return _0x46cdcb;});})[_0xe693('0x1c')](respondWithResult(_0x26527d,null))[_0xe693('0x55')](handleError(_0x26527d,null));};exports['status']=function(_0x63007e,_0x4eb232,_0x2c750a){if(_0x63007e[_0xe693('0x57')]['id']){delete _0x63007e[_0xe693('0x57')]['id'];}var _0x5368b0,_0x245602,_0xa24584;return db[_0xe693('0x39')][_0xe693('0x5c')]({'where':{'id':_0x63007e[_0xe693('0x60')]['id']}})[_0xe693('0x1c')](handleEntityNotFound(_0x4eb232,null))['then'](function(_0x234d48){if(_0x234d48){_0xa24584=_0x234d48;logger[_0xe693('0xb0')]('SmsAccount,\x20%s,\x20%s,\x20%s',_0xe693('0x25'),_0xe693('0xc9'),_0x234d48[_0xe693('0x3b')],util[_0xe693('0xca')](_0x63007e[_0xe693('0x57')],{'showHidden':![],'depth':null}));switch(_0x234d48[_0xe693('0x3b')]){case'skebby':if(_0x63007e[_0xe693('0x57')][_0xe693('0xcb')]&&_0x63007e[_0xe693('0x57')][_0xe693('0x25')]){_0x245602=_0x63007e[_0xe693('0x57')][_0xe693('0x25')];return db[_0xe693('0xa4')]['find']({'where':{'messageId':_0x63007e[_0xe693('0x57')][_0xe693('0xcb')]}});}break;case'connectel':if(_0x63007e[_0xe693('0x57')][_0xe693('0xcc')]&&_0x63007e[_0xe693('0x57')]['statusInt']){_0x245602=_0x63007e[_0xe693('0x57')][_0xe693('0xcd')];return db[_0xe693('0xa4')][_0xe693('0x5c')]({'where':{'messageId':_0x63007e['body'][_0xe693('0xcc')]}});}break;case _0xe693('0xce'):if(_0x63007e[_0xe693('0x57')][_0xe693('0x87')]&&_0x63007e[_0xe693('0x57')][_0xe693('0xcf')]){_0x245602=_0x63007e[_0xe693('0x57')][_0xe693('0xcf')];return db[_0xe693('0xa4')]['find']({'where':{'messageId':_0x63007e[_0xe693('0x57')][_0xe693('0x87')]}});}break;case'infobip':var _0x17b76=_0x63007e[_0xe693('0x57')][_0xe693('0x8c')][0x0];if(_0x17b76['messageId']&&_0x17b76[_0xe693('0x25')]['groupName']===_0xe693('0xd0')){_0x245602=_0x17b76[_0xe693('0x25')]['groupName'];return db[_0xe693('0xa4')]['find']({'where':{'messageId':_0x17b76['messageId']}});}break;case _0xe693('0x8f'):if(_0x63007e[_0xe693('0x57')]['messageId']&&_0x63007e[_0xe693('0x57')][_0xe693('0x25')]){_0x245602=_0x63007e[_0xe693('0x57')]['status'];return db[_0xe693('0xa4')][_0xe693('0x5c')]({'where':{'messageId':_0x63007e['body'][_0xe693('0x81')]}});}break;case _0xe693('0xd1'):if(_0x63007e[_0xe693('0x57')][0x0][_0xe693('0x23')]['id']){_0x245602=_0x63007e[_0xe693('0x57')][0x0][_0xe693('0x3b')];return db[_0xe693('0xa4')][_0xe693('0x5c')]({'where':{'messageId':_0x63007e['body'][0x0][_0xe693('0x23')]['id']}});}break;case'intelepeer':if(_0x63007e['body'][_0xe693('0xd2')]&&_0x63007e[_0xe693('0x57')][_0xe693('0x25')]){_0x245602=_0x63007e['body']['status'];return db[_0xe693('0xa4')][_0xe693('0x5c')]({'where':{'messageId':_0x63007e[_0xe693('0x57')][_0xe693('0xd2')]}});}break;}}})[_0xe693('0x1c')](handleEntityNotFound(_0x4eb232,null))[_0xe693('0x1c')](function(_0x383e27){if(_0x383e27){_0x5368b0=_0x383e27;switch(_0xa24584[_0xe693('0x3b')]){case _0xe693('0x83'):if(_0x245602===_0xe693('0xd0')){return _0x5368b0['update']({'read':!![]});}else{logger[_0xe693('0x21')](_0xe693('0x20'),'status',_0xe693('0x83'),util[_0xe693('0xca')](_0x63007e['body'],{'showHidden':![],'depth':null}));}break;case _0xe693('0x86'):if(_0x245602==='1'){return _0x5368b0[_0xe693('0x30')]({'read':!![]});}else{logger[_0xe693('0x21')](_0xe693('0x20'),_0xe693('0x25'),_0xe693('0x83'),util[_0xe693('0xca')](_0x63007e[_0xe693('0x57')],{'showHidden':![],'depth':null}));}break;case'clicksend':if(!_0x63007e[_0xe693('0x57')][_0xe693('0xd3')]&&_0x245602>=0xc8&&_0x245602<=0xce){return _0x5368b0[_0xe693('0x30')]({'read':!![]});}else{logger['error'](_0xe693('0x20'),_0xe693('0x25'),_0xe693('0xce'),util[_0xe693('0xca')](_0x63007e[_0xe693('0x57')],{'showHidden':![],'depth':null}));}break;case _0xe693('0x8b'):var _0x321fb3=_0x63007e[_0xe693('0x57')][_0xe693('0x8c')][0x0];if(_0x321fb3[_0xe693('0x25')]['groupName']===_0xe693('0xd0')){return _0x5368b0[_0xe693('0x30')]({'read':!![]});}else{logger[_0xe693('0x21')](_0xe693('0x20'),_0xe693('0x25'),_0xe693('0x8b'),util[_0xe693('0xca')](_0x63007e[_0xe693('0x57')],{'showHidden':![],'depth':null}));}break;case'clickatell':if(_0x245602=='DELIVERED_TO_GATEWAY'||_0x245602==_0xe693('0xd4')){return _0x5368b0['update']({'read':!![]});}else{logger[_0xe693('0x21')]('SmsAccount,\x20%s,\x20%s,\x20%s','status',_0xe693('0x8f'),util['inspect'](_0x63007e['body'],{'showHidden':![],'depth':null}));}break;case'bandwidth':if(_0x245602==_0xe693('0xd5')){return _0x5368b0[_0xe693('0x30')]({'read':!![]});}else{logger[_0xe693('0x21')]('SmsAccount,\x20%s,\x20%s,\x20%s',_0xe693('0x25'),_0xe693('0xd1'),util[_0xe693('0xca')](_0x63007e[_0xe693('0x57')],{'showHidden':![],'depth':null}));}break;case _0xe693('0x92'):if(_0x245602==='DELIVRD'||_0x245602===_0xe693('0xd6')){return _0x5368b0[_0xe693('0x30')]({'read':!![]});}else{logger[_0xe693('0x21')](_0xe693('0x20'),_0xe693('0x25'),'intelepeer',util[_0xe693('0xca')](_0x63007e[_0xe693('0x57')],{'showHidden':![],'depth':null}));}break;}return _0x5368b0;}})[_0xe693('0x1c')](respondWithResult(_0x4eb232,null))[_0xe693('0x55')](handleError(_0x4eb232,null));};exports[_0xe693('0xd7')]=function(_0x4fee3b,_0x379949,_0x1cac95){var _0x1b9d86,_0x14de07,_0x452871;return db['SmsAccount'][_0xe693('0x5c')]({'where':{'id':_0x4fee3b[_0xe693('0x60')]['id']}})[_0xe693('0x1c')](handleEntityNotFound(_0x379949,null))['then'](function(_0x15ed96){if(_0x15ed96){_0x452871=_0x15ed96;logger[_0xe693('0xb0')](_0xe693('0x20'),_0xe693('0x25'),_0xe693('0xc9'),_0x15ed96[_0xe693('0x3b')],util[_0xe693('0xca')](_0x4fee3b[_0xe693('0x3e')],{'showHidden':![],'depth':null}));switch(_0x15ed96[_0xe693('0x3b')]){case _0xe693('0x8d'):if(_0x4fee3b[_0xe693('0x3e')]['message-id']&&_0x4fee3b[_0xe693('0x3e')]['state']){_0x14de07=_0x4fee3b[_0xe693('0x3e')][_0xe693('0xd8')];return db['SmsMessage'][_0xe693('0x5c')]({'where':{'messageId':_0x4fee3b[_0xe693('0x3e')][_0xe693('0xd9')]}});}break;}}})['then'](handleEntityNotFound(_0x379949,null))[_0xe693('0x1c')](function(_0x5dffa7){if(_0x5dffa7){_0x1b9d86=_0x5dffa7;switch(_0x452871[_0xe693('0x3b')]){case'csc':if(_0x14de07==='2'||_0x14de07==='6'){return _0x1b9d86[_0xe693('0x30')]({'read':!![]});}else{logger['error']('SmsAccount,\x20%s,\x20%s,\x20%s',_0xe693('0x25'),'csc',util['inspect'](_0x4fee3b[_0xe693('0x3e')],{'showHidden':![],'depth':null}));};break;}return _0x1b9d86;}})['then'](respondWithResult(_0x379949,null))[_0xe693('0x55')](handleError(_0x379949,null));};exports['addAgents']=function(_0x404b68,_0x3dabfb,_0x36cfe8){return db['SmsAccount']['find']({'where':{'id':_0x404b68[_0xe693('0x60')]['id']}})['then'](handleEntityNotFound(_0x3dabfb,null))[_0xe693('0x1c')](function(_0x20db8e){if(_0x20db8e){return _0x20db8e[_0xe693('0xda')](_0x404b68[_0xe693('0x57')][_0xe693('0x68')],_[_0xe693('0xdb')](_0x404b68[_0xe693('0x57')],[_0xe693('0x68'),'id'])||{})[_0xe693('0x9e')](function(_0x448d57){for(var _0x5f5a95=0x0;_0x5f5a95<_0x404b68['body'][_0xe693('0x68')][_0xe693('0x44')];_0x5f5a95+=0x1){socket[_0xe693('0xdc')](_0xe693('0xdd'),{'UserId':Number(_0x404b68['body'][_0xe693('0x68')][_0x5f5a95]),'SmsAccountId':Number(_0x404b68[_0xe693('0x60')]['id'])});}return _0x448d57;});}})[_0xe693('0x1c')](respondWithResult(_0x3dabfb,null))[_0xe693('0x55')](handleError(_0x3dabfb,null));};exports['removeAgents']=function(_0x4e71e9,_0x58eee3,_0x5afe27){return db[_0xe693('0x39')]['find']({'where':{'id':_0x4e71e9[_0xe693('0x60')]['id']}})[_0xe693('0x1c')](handleEntityNotFound(_0x58eee3,null))[_0xe693('0x1c')](function(_0x63e0de){if(_0x63e0de){return _0x63e0de[_0xe693('0xde')](_0x4e71e9[_0xe693('0x3e')][_0xe693('0x68')])[_0xe693('0x1c')](function(){if(_['isArray'](_0x4e71e9['query'][_0xe693('0x68')])){for(var _0x486d48=0x0;_0x486d48<_0x4e71e9[_0xe693('0x3e')]['ids'][_0xe693('0x44')];_0x486d48+=0x1){socket['emit'](_0xe693('0xdf'),{'UserId':Number(_0x4e71e9['query'][_0xe693('0x68')][_0x486d48]),'SmsAccountId':Number(_0x4e71e9[_0xe693('0x60')]['id'])});}}else{socket['emit'](_0xe693('0xdf'),{'UserId':Number(_0x4e71e9[_0xe693('0x3e')][_0xe693('0x68')]),'SmsAccountId':Number(_0x4e71e9[_0xe693('0x60')]['id'])});}});}})[_0xe693('0x1c')](respondWithStatusCode(_0x58eee3,null))[_0xe693('0x55')](handleError(_0x58eee3,null));};exports[_0xe693('0xe0')]=function(_0xba29f4,_0x56a8d1,_0x5d27c1){var _0x4d0421={};var _0x5057c4={};var _0x9338be;var _0x27bd94;return db[_0xe693('0x39')][_0xe693('0x64')]({'where':{'id':_0xba29f4[_0xe693('0x60')]['id']}})['then'](handleEntityNotFound(_0x56a8d1,null))[_0xe693('0x1c')](function(_0x1c967b){if(_0x1c967b){_0x9338be=_0x1c967b;_0x5057c4[_0xe693('0x41')]=_[_0xe693('0x3f')](db[_0xe693('0xa8')]['rawAttributes']);_0x5057c4[_0xe693('0x3e')]=_[_0xe693('0x3f')](_0xba29f4[_0xe693('0x3e')]);_0x5057c4['filters']=_[_0xe693('0x40')](_0x5057c4[_0xe693('0x41')],_0x5057c4[_0xe693('0x3e')]);_0x4d0421['attributes']=_['intersection'](_0x5057c4['model'],qs[_0xe693('0x43')](_0xba29f4[_0xe693('0x3e')]['fields']));_0x4d0421[_0xe693('0x42')]=_0x4d0421['attributes'][_0xe693('0x44')]?_0x4d0421['attributes']:_0x5057c4['model'];_0x4d0421[_0xe693('0x46')]=qs[_0xe693('0x47')](_0xba29f4[_0xe693('0x3e')]['sort']);_0x4d0421[_0xe693('0x48')]=qs[_0xe693('0x49')](_[_0xe693('0x4a')](_0xba29f4[_0xe693('0x3e')],_0x5057c4[_0xe693('0x49')]));if(_0xba29f4[_0xe693('0x3e')][_0xe693('0x4d')]){_0x4d0421[_0xe693('0x48')]=_[_0xe693('0x4b')](_0x4d0421[_0xe693('0x48')],{'$or':_['map'](_0x4d0421['attributes'],function(_0xe0fc2b){var _0x3a2e30={};_0x3a2e30[_0xe0fc2b]={'$like':'%'+_0xba29f4[_0xe693('0x3e')][_0xe693('0x4d')]+'%'};return _0x3a2e30;})});}_0x4d0421=_[_0xe693('0x4b')]({},_0x4d0421,_0xba29f4[_0xe693('0x4e')]);return _0x9338be['getAgents'](_0x4d0421);}})[_0xe693('0x1c')](function(_0x1110de){if(_0x1110de){_0x27bd94=_0x1110de['length'];if(!_0xba29f4['query']['hasOwnProperty'](_0xe693('0x65'))){_0x4d0421[_0xe693('0x29')]=qs['limit'](_0xba29f4['query'][_0xe693('0x29')]);_0x4d0421[_0xe693('0x27')]=qs['offset'](_0xba29f4[_0xe693('0x3e')]['offset']);}return _0x9338be[_0xe693('0xe0')](_0x4d0421);}})[_0xe693('0x1c')](function(_0x2cf5ac){if(_0x2cf5ac){return _0x2cf5ac?{'count':_0x27bd94,'rows':_0x2cf5ac}:null;}})[_0xe693('0x1c')](respondWithResult(_0x56a8d1,null))[_0xe693('0x55')](handleError(_0x56a8d1,null));};