3ecfad473a126cb7afcfafa2ee41ca8e8cfc4fe8
[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 _0x6271=['includeAll','include','show','params','keys','find','create','body','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','userProfileId','UserProfileResource','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','describe','addDisposition','Disposition','getDispositions','pick','rows','SmsAccountId','CannedAnswer','getAnswers','findOne','findAll','removeAnswers','ids','sms','Applications','account','priority','CmContact','Sequelize','no\x20available\x20attributes','createdAt','updatedAt','ListId','mobile','twilio','From','Body','MessageSid','skebby','sender','text','connectel','from','clicksend','messageId','message_id','plivo','MessageUUID','results','originatingAddress','segmentedMessage','clickatell','fromNumber','replyMessageId','bandwidth','intelepeer','refid','ValidationError','isNil','body\x20is\x20mandatory\x20and\x20not\x20empty','mapKey','mapKey\x20is\x20mandatory,\x20please\x20use\x20one\x20of\x20these:\x20','includes','mapKey\x20invalid,\x20please\x20use\x20one\x20of\x20these:\x20','CmList','Contacts','DESC','list','omit','contact','SmsInteraction','interaction','created','autoclose','applications','unmanaged','*,*,*,*','SmsMessage','ContactId','AttachmentId','UserId','agent','Start','startRouting','SmsAccount,\x20%s,\x20%s,\x20%s','entity\x20found','debug','stringify','Content-Type','text/xml','<?xml\x20version=\x221.0\x22\x20encoding=\x22UTF-8\x22?>\x0a<Response></Response>','addApplications','sequelize','transaction','Transaction','ISOLATION_LEVELS','SmsApplication','bulkCreate','findAndCountAll','finally','getApplications','Contact','User','Owner','fullname','internal','Tag','Tags','tag','to\x20is\x20mandatory','List','out','Messages','dataValues','received\x20delivery\x20report\x20from','inspect','skebby_dispatch_id','requestid','statusInt','status_code','infobip','DELIVERED','groupName','redif','DELIVERED_TO_GATEWAY','RECEIVED_BY_RECIPIENT','message-delivered','DELIVRD','csc','message-id','state','addAgents','emit','userSmsAccount:save','removeAgents','userSmsAccount:remove','getAgents','eml-format','zip-dir','fast-json-patch','bluebird','mustache','util','path','sox','ejs','fs-extra','lodash','crypto','jsforce','desk.js','to-csv','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','defaults','localhost','redis','./smsAccount.socket','register','jayson/promise','request','then','SmsAccount,\x20%s,\x20%s','request\x20sent','error','code','message','info','catch','sendStatus','status','end','undefined','limit','count','offset','set','json','apply','update','destroy','get','SmsAccounts','stack','name','send','index','Pause','mandatoryDispositionPause','map','SmsAccount','rawAttributes','fieldName','type','key','model','query','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','filter','merge','VIRTUAL','options'];(function(_0x379f70,_0x52942f){var _0x372cab=function(_0x5642c9){while(--_0x5642c9){_0x379f70['push'](_0x379f70['shift']());}};_0x372cab(++_0x52942f);}(_0x6271,0x170));var _0x1627=function(_0x4cf419,_0x1443cf){_0x4cf419=_0x4cf419-0x0;var _0xa5914d=_0x6271[_0x4cf419];return _0xa5914d;};'use strict';var emlformat=require(_0x1627('0x0'));var rimraf=require('rimraf');var zipdir=require(_0x1627('0x1'));var jsonpatch=require(_0x1627('0x2'));var rp=require('request-promise');var moment=require('moment');var BPromise=require(_0x1627('0x3'));var Mustache=require(_0x1627('0x4'));var util=require(_0x1627('0x5'));var path=require(_0x1627('0x6'));var sox=require(_0x1627('0x7'));var csv=require('to-csv');var ejs=require(_0x1627('0x8'));var fs=require('fs');var fs_extra=require(_0x1627('0x9'));var _=require(_0x1627('0xa'));var squel=require('squel');var crypto=require(_0x1627('0xb'));var jsforce=require(_0x1627('0xc'));var deskjs=require(_0x1627('0xd'));var toCsv=require(_0x1627('0xe'));var querystring=require(_0x1627('0xf'));var Papa=require('papaparse');var Redis=require(_0x1627('0x10'));var authService=require(_0x1627('0x11'));var qs=require(_0x1627('0x12'));var as=require(_0x1627('0x13'));var hardwareService=require(_0x1627('0x14'));var logger=require(_0x1627('0x15'))(_0x1627('0x16'));var utils=require(_0x1627('0x17'));var config=require(_0x1627('0x18'));var licenseUtil=require(_0x1627('0x19'));var db=require(_0x1627('0x1a'))['db'];config['redis']=_[_0x1627('0x1b')](config['redis'],{'host':_0x1627('0x1c'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x1627('0x1d')]));require(_0x1627('0x1e'))[_0x1627('0x1f')](socket);var jayson=require(_0x1627('0x20'));var client=jayson['client']['http']({'port':0x232c});function respondWithRpcPromise(_0x18064e,_0x5d0875,_0x161a35,_0x11c00f){return new BPromise(function(_0x3b312c,_0x2a7c84){var _0x1aef2f=_0x11c00f||client;return _0x1aef2f[_0x1627('0x21')](_0x18064e,_0x161a35)[_0x1627('0x22')](function(_0x2ad49e){logger['info'](_0x1627('0x23'),_0x5d0875,_0x1627('0x24'));logger['debug']('SmsAccount,\x20%s,\x20%s,\x20%s',_0x5d0875,_0x1627('0x24'),JSON['stringify'](_0x2ad49e));if(_0x2ad49e[_0x1627('0x25')]){if(_0x2ad49e[_0x1627('0x25')][_0x1627('0x26')]===0x1f4){logger[_0x1627('0x25')](_0x1627('0x23'),_0x5d0875,_0x2ad49e[_0x1627('0x25')][_0x1627('0x27')]);return _0x2a7c84(_0x2ad49e['error'][_0x1627('0x27')]);}logger[_0x1627('0x25')](_0x1627('0x23'),_0x5d0875,_0x2ad49e['error'][_0x1627('0x27')]);return _0x3b312c(_0x2ad49e[_0x1627('0x25')]['message']);}else{logger[_0x1627('0x28')](_0x1627('0x23'),_0x5d0875,_0x1627('0x24'));_0x3b312c(_0x2ad49e['result'][_0x1627('0x27')]);}})[_0x1627('0x29')](function(_0x1f79e0){logger[_0x1627('0x25')](_0x1627('0x23'),_0x5d0875,_0x1f79e0);_0x2a7c84(_0x1f79e0);});});}function respondWithStatusCode(_0xafadb2,_0x188377){_0x188377=_0x188377||0xcc;return function(_0x5131b0){if(_0x5131b0){return _0xafadb2[_0x1627('0x2a')](_0x188377);}return _0xafadb2[_0x1627('0x2b')](_0x188377)[_0x1627('0x2c')]();};}function respondWithResult(_0x58768b,_0x5c3861){_0x5c3861=_0x5c3861||0xc8;return function(_0x4f43dd){if(_0x4f43dd){return _0x58768b['status'](_0x5c3861)['json'](_0x4f43dd);}};}function respondWithFilteredResult(_0x27c633,_0x51f78e){return function(_0x563836){if(_0x563836){var _0x2f995a=typeof _0x51f78e['offset']===_0x1627('0x2d')&&typeof _0x51f78e[_0x1627('0x2e')]===_0x1627('0x2d');var _0x5b00e8=_0x563836[_0x1627('0x2f')];var _0x14cbba=_0x2f995a?0x0:_0x51f78e[_0x1627('0x30')];var _0x226556=_0x2f995a?_0x563836[_0x1627('0x2f')]:_0x51f78e[_0x1627('0x30')]+_0x51f78e[_0x1627('0x2e')];var _0x1c187a;if(_0x226556>=_0x5b00e8){_0x226556=_0x5b00e8;_0x1c187a=0xc8;}else{_0x1c187a=0xce;}_0x27c633[_0x1627('0x2b')](_0x1c187a);return _0x27c633[_0x1627('0x31')]('Content-Range',_0x14cbba+'-'+_0x226556+'/'+_0x5b00e8)[_0x1627('0x32')](_0x563836);}return null;};}function patchUpdates(_0x1592d8){return function(_0x2e65c6){try{jsonpatch[_0x1627('0x33')](_0x2e65c6,_0x1592d8,!![]);}catch(_0xea7e7f){return BPromise['reject'](_0xea7e7f);}return _0x2e65c6['save']();};}function saveUpdates(_0x243dd0,_0x414032){return function(_0x1faa43){if(_0x1faa43){return _0x1faa43[_0x1627('0x34')](_0x243dd0)['then'](function(_0x2e72c1){return _0x2e72c1;});}return null;};}function removeEntity(_0x21fae8,_0x3c13b4){return function(_0x4db4bb){if(_0x4db4bb){return _0x4db4bb[_0x1627('0x35')]()[_0x1627('0x22')](function(){var _0x470fdf=_0x4db4bb[_0x1627('0x36')]({'plain':!![]});var _0x11c6eb=_0x1627('0x37');return db['UserProfileResource'][_0x1627('0x35')]({'where':{'type':_0x11c6eb,'resourceId':_0x470fdf['id']}})[_0x1627('0x22')](function(){return _0x4db4bb;});})[_0x1627('0x22')](function(){_0x21fae8[_0x1627('0x2b')](0xcc)[_0x1627('0x2c')]();});}};}function handleEntityNotFound(_0xb9ca3e,_0x445718){return function(_0x41e4f9){if(!_0x41e4f9){_0xb9ca3e[_0x1627('0x2a')](0x194);}return _0x41e4f9;};}function handleError(_0xa7d497,_0x46102d){_0x46102d=_0x46102d||0x1f4;return function(_0x51c9e6){logger[_0x1627('0x25')](_0x51c9e6[_0x1627('0x38')]);if(_0x51c9e6[_0x1627('0x39')]){delete _0x51c9e6[_0x1627('0x39')];}_0xa7d497['status'](_0x46102d)[_0x1627('0x3a')](_0x51c9e6);};}exports[_0x1627('0x3b')]=function(_0x5bb883,_0x5ce71f){var _0x39341f={'include':[{'model':db[_0x1627('0x3c')],'as':_0x1627('0x3d')}]},_0x576497={},_0x41f59d={'count':0x0,'rows':[]};var _0x4ec28e=_[_0x1627('0x3e')](db[_0x1627('0x3f')][_0x1627('0x40')],function(_0x77abc9){return{'name':_0x77abc9[_0x1627('0x41')],'type':_0x77abc9[_0x1627('0x42')][_0x1627('0x43')]};});_0x576497[_0x1627('0x44')]=_['map'](_0x4ec28e,_0x1627('0x39'));_0x576497[_0x1627('0x45')]=_['keys'](_0x5bb883[_0x1627('0x45')]);_0x576497[_0x1627('0x46')]=_[_0x1627('0x47')](_0x576497[_0x1627('0x44')],_0x576497['query']);_0x39341f[_0x1627('0x48')]=_[_0x1627('0x47')](_0x576497['model'],qs[_0x1627('0x49')](_0x5bb883[_0x1627('0x45')][_0x1627('0x49')]));_0x39341f[_0x1627('0x48')]=_0x39341f[_0x1627('0x48')][_0x1627('0x4a')]?_0x39341f[_0x1627('0x48')]:_0x576497[_0x1627('0x44')];if(!_0x5bb883['query'][_0x1627('0x4b')](_0x1627('0x4c'))){_0x39341f[_0x1627('0x2e')]=qs['limit'](_0x5bb883[_0x1627('0x45')]['limit']);_0x39341f[_0x1627('0x30')]=qs[_0x1627('0x30')](_0x5bb883[_0x1627('0x45')][_0x1627('0x30')]);}_0x39341f[_0x1627('0x4d')]=qs[_0x1627('0x4e')](_0x5bb883[_0x1627('0x45')]['sort']);_0x39341f[_0x1627('0x4f')]=qs[_0x1627('0x46')](_['pick'](_0x5bb883[_0x1627('0x45')],_0x576497['filters']),_0x4ec28e);if(_0x5bb883[_0x1627('0x45')][_0x1627('0x50')]){_0x39341f[_0x1627('0x4f')]=_[_0x1627('0x51')](_0x39341f[_0x1627('0x4f')],{'$or':_[_0x1627('0x3e')](_0x4ec28e,function(_0x4d5e30){if(_0x4d5e30['type']!==_0x1627('0x52')){var _0x27b312={};_0x27b312[_0x4d5e30[_0x1627('0x39')]]={'$like':'%'+_0x5bb883[_0x1627('0x45')][_0x1627('0x50')]+'%'};return _0x27b312;}})});}_0x39341f=_['merge']({},_0x39341f,_0x5bb883[_0x1627('0x53')]);var _0x3764ef={'where':_0x39341f[_0x1627('0x4f')]};return db[_0x1627('0x3f')]['count'](_0x3764ef)['then'](function(_0x438560){_0x41f59d[_0x1627('0x2f')]=_0x438560;if(_0x5bb883['query'][_0x1627('0x54')]){_0x39341f[_0x1627('0x55')]=[{'all':!![]}];}return db['SmsAccount']['findAll'](_0x39341f);})[_0x1627('0x22')](function(_0x4681f7){_0x41f59d['rows']=_0x4681f7;return _0x41f59d;})['then'](respondWithFilteredResult(_0x5ce71f,_0x39341f))['catch'](handleError(_0x5ce71f,null));};exports[_0x1627('0x56')]=function(_0x5356f6,_0xa1d1b2){var _0x1c3865={'raw':![],'where':{'id':_0x5356f6[_0x1627('0x57')]['id']},'include':[{'model':db[_0x1627('0x3c')],'as':'mandatoryDispositionPause'}]},_0x2c6ae4={};_0x2c6ae4[_0x1627('0x44')]=_[_0x1627('0x58')](db[_0x1627('0x3f')]['rawAttributes']);_0x2c6ae4[_0x1627('0x45')]=_['keys'](_0x5356f6['query']);_0x2c6ae4['filters']=_[_0x1627('0x47')](_0x2c6ae4[_0x1627('0x44')],_0x2c6ae4['query']);_0x1c3865['attributes']=_[_0x1627('0x47')](_0x2c6ae4[_0x1627('0x44')],qs['fields'](_0x5356f6[_0x1627('0x45')][_0x1627('0x49')]));_0x1c3865[_0x1627('0x48')]=_0x1c3865[_0x1627('0x48')][_0x1627('0x4a')]?_0x1c3865['attributes']:_0x2c6ae4[_0x1627('0x44')];if(_0x5356f6['query'][_0x1627('0x54')]){_0x1c3865['include']=[{'all':!![]}];}_0x1c3865=_['merge']({},_0x1c3865,_0x5356f6['options']);return db['SmsAccount'][_0x1627('0x59')](_0x1c3865)[_0x1627('0x22')](handleEntityNotFound(_0xa1d1b2,null))['then'](respondWithResult(_0xa1d1b2,null))[_0x1627('0x29')](handleError(_0xa1d1b2,null));};exports['create']=function(_0x194a93,_0x5999bd){return db[_0x1627('0x3f')][_0x1627('0x5a')](_0x194a93[_0x1627('0x5b')],{})[_0x1627('0x22')](function(_0x8c6e08){var _0x1ffcf9=_0x194a93[_0x1627('0x5c')][_0x1627('0x36')]({'plain':!![]});if(!_0x1ffcf9)throw new Error(_0x1627('0x5d'));if(_0x1ffcf9[_0x1627('0x5e')]==='user'){var _0x1f0f64=_0x8c6e08[_0x1627('0x36')]({'plain':!![]});var _0x439dce=_0x1627('0x37');return db[_0x1627('0x5f')][_0x1627('0x59')]({'where':{'name':_0x439dce,'userProfileId':_0x1ffcf9[_0x1627('0x60')]},'raw':!![]})[_0x1627('0x22')](function(_0x191a3c){if(_0x191a3c&&_0x191a3c['autoAssociation']===0x0){return db[_0x1627('0x61')][_0x1627('0x5a')]({'name':_0x1f0f64[_0x1627('0x39')],'resourceId':_0x1f0f64['id'],'type':_0x191a3c[_0x1627('0x39')],'sectionId':_0x191a3c['id']},{})[_0x1627('0x22')](function(){return _0x8c6e08;});}else{return _0x8c6e08;}})['catch'](function(_0x3b4cb4){logger[_0x1627('0x25')](_0x1627('0x62'),_0x3b4cb4);throw _0x3b4cb4;});}return _0x8c6e08;})[_0x1627('0x22')](respondWithResult(_0x5999bd,0xc9))[_0x1627('0x29')](handleError(_0x5999bd,null));};exports[_0x1627('0x34')]=function(_0x5cf3be,_0x5cbb9){if(_0x5cf3be[_0x1627('0x5b')]['id']){delete _0x5cf3be['body']['id'];}return db[_0x1627('0x3f')][_0x1627('0x59')]({'where':{'id':_0x5cf3be[_0x1627('0x57')]['id']},'include':[{'model':db[_0x1627('0x3c')],'as':'mandatoryDispositionPause'}]})[_0x1627('0x22')](handleEntityNotFound(_0x5cbb9,null))[_0x1627('0x22')](saveUpdates(_0x5cf3be['body'],null))['then'](respondWithResult(_0x5cbb9,null))['catch'](handleError(_0x5cbb9,null));};exports[_0x1627('0x35')]=function(_0x1143c6,_0x54a309){return db[_0x1627('0x3f')]['find']({'where':{'id':_0x1143c6['params']['id']}})[_0x1627('0x22')](handleEntityNotFound(_0x54a309,null))['then'](removeEntity(_0x54a309,null))['catch'](handleError(_0x54a309,null));};exports['describe']=function(_0xf37bad,_0x5c7d25){return db[_0x1627('0x3f')][_0x1627('0x63')]()[_0x1627('0x22')](respondWithResult(_0x5c7d25,null))[_0x1627('0x29')](handleError(_0x5c7d25,null));};exports[_0x1627('0x64')]=function(_0x44150e,_0xb97b95,_0x585da9){if(_0x44150e[_0x1627('0x5b')]['id']){delete _0x44150e['body']['id'];}return db[_0x1627('0x3f')][_0x1627('0x59')]({'where':{'id':_0x44150e[_0x1627('0x57')]['id']}})[_0x1627('0x22')](handleEntityNotFound(_0xb97b95,null))[_0x1627('0x22')](function(_0x4db97c){if(_0x4db97c){_0x44150e['body']['SmsAccountId']=_0x4db97c['id'];return db[_0x1627('0x65')][_0x1627('0x5a')](_0x44150e[_0x1627('0x5b')]);}})[_0x1627('0x22')](respondWithResult(_0xb97b95,null))['catch'](handleError(_0xb97b95,null));};exports[_0x1627('0x66')]=function(_0xdaf124,_0x1e0a49,_0x5841e0){var _0x2024bf={'raw':![],'where':{}};var _0x4ad1ad={};var _0x192420={'count':0x0,'rows':[]};return db[_0x1627('0x3f')]['findOne']({'where':{'id':_0xdaf124[_0x1627('0x57')]['id']}})[_0x1627('0x22')](handleEntityNotFound(_0x1e0a49,null))[_0x1627('0x22')](function(_0x5145c3){if(_0x5145c3){_0x4ad1ad[_0x1627('0x44')]=_[_0x1627('0x58')](db[_0x1627('0x65')][_0x1627('0x40')]);_0x4ad1ad[_0x1627('0x45')]=_['keys'](_0xdaf124[_0x1627('0x45')]);_0x4ad1ad[_0x1627('0x46')]=_[_0x1627('0x47')](_0x4ad1ad[_0x1627('0x44')],_0x4ad1ad[_0x1627('0x45')]);_0x2024bf[_0x1627('0x48')]=_['intersection'](_0x4ad1ad[_0x1627('0x44')],qs[_0x1627('0x49')](_0xdaf124[_0x1627('0x45')]['fields']));_0x2024bf[_0x1627('0x48')]=_0x2024bf['attributes'][_0x1627('0x4a')]?_0x2024bf[_0x1627('0x48')]:_0x4ad1ad[_0x1627('0x44')];if(!_0xdaf124[_0x1627('0x45')]['hasOwnProperty'](_0x1627('0x4c'))){_0x2024bf[_0x1627('0x2e')]=qs[_0x1627('0x2e')](_0xdaf124[_0x1627('0x45')][_0x1627('0x2e')]);_0x2024bf[_0x1627('0x30')]=qs[_0x1627('0x30')](_0xdaf124[_0x1627('0x45')][_0x1627('0x30')]);}_0x2024bf[_0x1627('0x4d')]=qs['sort'](_0xdaf124[_0x1627('0x45')][_0x1627('0x4e')]);_0x2024bf['where']=qs[_0x1627('0x46')](_[_0x1627('0x67')](_0xdaf124[_0x1627('0x45')],_0x4ad1ad[_0x1627('0x46')]));_0x2024bf[_0x1627('0x4f')]['SmsAccountId']=_0x5145c3['id'];if(_0xdaf124[_0x1627('0x45')][_0x1627('0x50')]){_0x2024bf[_0x1627('0x4f')]=_[_0x1627('0x51')](_0x2024bf[_0x1627('0x4f')],{'$or':_[_0x1627('0x3e')](_0x2024bf['attributes'],function(_0x47c7ca){var _0x28b404={};_0x28b404[_0x47c7ca]={'$like':'%'+_0xdaf124[_0x1627('0x45')]['filter']+'%'};return _0x28b404;})});}_0x2024bf=_[_0x1627('0x51')]({},_0x2024bf,_0xdaf124['options']);return db[_0x1627('0x65')][_0x1627('0x2f')]({'where':_0x2024bf[_0x1627('0x4f')]})[_0x1627('0x22')](function(_0x1dc11c){_0x192420[_0x1627('0x2f')]=_0x1dc11c;if(_0xdaf124[_0x1627('0x45')][_0x1627('0x54')]){_0x2024bf[_0x1627('0x55')]=[{'all':!![]}];}return db[_0x1627('0x65')]['findAll'](_0x2024bf);})[_0x1627('0x22')](function(_0x2236c6){_0x192420[_0x1627('0x68')]=_0x2236c6;return _0x192420;});}})['then'](respondWithFilteredResult(_0x1e0a49,_0x2024bf))[_0x1627('0x29')](handleError(_0x1e0a49,null));};exports['removeDispositions']=function(_0x2e0eb7,_0x5b66d7,_0x388a14){return db['SmsAccount']['find']({'where':{'id':_0x2e0eb7[_0x1627('0x57')]['id']}})[_0x1627('0x22')](handleEntityNotFound(_0x5b66d7,null))[_0x1627('0x22')](function(_0x4c9591){if(_0x4c9591){return _0x4c9591['removeDispositions'](_0x2e0eb7[_0x1627('0x45')]['ids']);}})[_0x1627('0x22')](respondWithStatusCode(_0x5b66d7,null))[_0x1627('0x29')](handleError(_0x5b66d7,null));};exports['addAnswer']=function(_0x15d5ea,_0x2e9509,_0x2292ee){if(_0x15d5ea['body']['id']){delete _0x15d5ea['body']['id'];}return db['SmsAccount'][_0x1627('0x59')]({'where':{'id':_0x15d5ea[_0x1627('0x57')]['id']}})['then'](handleEntityNotFound(_0x2e9509,null))['then'](function(_0x57ac94){if(_0x57ac94){_0x15d5ea[_0x1627('0x5b')][_0x1627('0x69')]=_0x57ac94['id'];return db[_0x1627('0x6a')][_0x1627('0x5a')](_0x15d5ea[_0x1627('0x5b')]);}})['then'](respondWithResult(_0x2e9509,null))['catch'](handleError(_0x2e9509,null));};exports[_0x1627('0x6b')]=function(_0x410f84,_0xc1c1a5,_0x565bed){var _0x2036ca={'raw':![],'where':{}};var _0x58134c={};var _0x1f2fea={'count':0x0,'rows':[]};return db[_0x1627('0x3f')][_0x1627('0x6c')]({'where':{'id':_0x410f84[_0x1627('0x57')]['id']}})[_0x1627('0x22')](handleEntityNotFound(_0xc1c1a5,null))[_0x1627('0x22')](function(_0x1b0721){if(_0x1b0721){_0x58134c[_0x1627('0x44')]=_[_0x1627('0x58')](db[_0x1627('0x6a')][_0x1627('0x40')]);_0x58134c[_0x1627('0x45')]=_[_0x1627('0x58')](_0x410f84[_0x1627('0x45')]);_0x58134c[_0x1627('0x46')]=_['intersection'](_0x58134c[_0x1627('0x44')],_0x58134c[_0x1627('0x45')]);_0x2036ca[_0x1627('0x48')]=_['intersection'](_0x58134c[_0x1627('0x44')],qs[_0x1627('0x49')](_0x410f84['query'][_0x1627('0x49')]));_0x2036ca[_0x1627('0x48')]=_0x2036ca[_0x1627('0x48')][_0x1627('0x4a')]?_0x2036ca[_0x1627('0x48')]:_0x58134c[_0x1627('0x44')];if(!_0x410f84[_0x1627('0x45')][_0x1627('0x4b')](_0x1627('0x4c'))){_0x2036ca[_0x1627('0x2e')]=qs[_0x1627('0x2e')](_0x410f84[_0x1627('0x45')][_0x1627('0x2e')]);_0x2036ca[_0x1627('0x30')]=qs[_0x1627('0x30')](_0x410f84[_0x1627('0x45')][_0x1627('0x30')]);}_0x2036ca['order']=qs[_0x1627('0x4e')](_0x410f84[_0x1627('0x45')][_0x1627('0x4e')]);_0x2036ca['where']=qs[_0x1627('0x46')](_['pick'](_0x410f84[_0x1627('0x45')],_0x58134c[_0x1627('0x46')]));_0x2036ca[_0x1627('0x4f')]['SmsAccountId']=_0x1b0721['id'];if(_0x410f84[_0x1627('0x45')][_0x1627('0x50')]){_0x2036ca[_0x1627('0x4f')]=_[_0x1627('0x51')](_0x2036ca[_0x1627('0x4f')],{'$or':_[_0x1627('0x3e')](_0x2036ca[_0x1627('0x48')],function(_0x375e4a){var _0x3f1c0e={};_0x3f1c0e[_0x375e4a]={'$like':'%'+_0x410f84[_0x1627('0x45')][_0x1627('0x50')]+'%'};return _0x3f1c0e;})});}_0x2036ca=_[_0x1627('0x51')]({},_0x2036ca,_0x410f84[_0x1627('0x53')]);return db[_0x1627('0x6a')][_0x1627('0x2f')]({'where':_0x2036ca[_0x1627('0x4f')]})[_0x1627('0x22')](function(_0x6dc718){_0x1f2fea[_0x1627('0x2f')]=_0x6dc718;if(_0x410f84[_0x1627('0x45')][_0x1627('0x54')]){_0x2036ca[_0x1627('0x55')]=[{'all':!![]}];}return db[_0x1627('0x6a')][_0x1627('0x6d')](_0x2036ca);})[_0x1627('0x22')](function(_0x37641d){_0x1f2fea[_0x1627('0x68')]=_0x37641d;return _0x1f2fea;});}})['then'](respondWithFilteredResult(_0xc1c1a5,_0x2036ca))[_0x1627('0x29')](handleError(_0xc1c1a5,null));};exports['removeAnswers']=function(_0x235193,_0x1c87f5,_0x44b8e8){return db[_0x1627('0x3f')][_0x1627('0x59')]({'where':{'id':_0x235193[_0x1627('0x57')]['id']}})[_0x1627('0x22')](handleEntityNotFound(_0x1c87f5,null))['then'](function(_0x15bc06){if(_0x15bc06){return _0x15bc06[_0x1627('0x6e')](_0x235193['query'][_0x1627('0x6f')]);}})['then'](respondWithStatusCode(_0x1c87f5,null))['catch'](handleError(_0x1c87f5,null));};exports['notify']=function(_0x30cad4,_0x188f26,_0x5a1954){var _0x15a3d7={'channel':_0x1627('0x70')};var _0x26fb3b=[];var _0x442ed2=[];var _0x22e934={};return db['SmsAccount']['find']({'where':{'id':_0x30cad4[_0x1627('0x57')]['id']},'include':[{'model':db['SmsApplication'],'as':_0x1627('0x71')}]})[_0x1627('0x22')](handleEntityNotFound(_0x188f26,null))[_0x1627('0x22')](function(_0x411bce){_0x15a3d7[_0x1627('0x72')]=_0x411bce;_0x15a3d7['applications']=_['orderBy'](_0x411bce[_0x1627('0x71')],[_0x1627('0x73')],['asc']);if(_0x15a3d7[_0x1627('0x72')][_0x1627('0x71')]){delete _0x15a3d7[_0x1627('0x72')][_0x1627('0x71')];}return db[_0x1627('0x74')][_0x1627('0x63')]();})[_0x1627('0x22')](function(_0x7d92f4){if(!_0x7d92f4){throw new db[(_0x1627('0x75'))]['ValidationError'](_0x1627('0x76'));}_0x26fb3b=_['difference'](_[_0x1627('0x58')](_0x7d92f4),[_0x1627('0x77'),'updatedAt']);_0x442ed2=_['difference'](_['keys'](_0x7d92f4),[_0x1627('0x77'),_0x1627('0x78'),'CompanyId',_0x1627('0x79')]);_0x15a3d7[_0x1627('0x5b')]={'mapKey':_0x1627('0x7a')};if(_0x15a3d7[_0x1627('0x72')][_0x1627('0x42')]){switch(_0x15a3d7[_0x1627('0x72')][_0x1627('0x42')]){case _0x1627('0x7b'):_0x15a3d7[_0x1627('0x5b')]['from']=_0x30cad4['body'][_0x1627('0x7c')];_0x15a3d7['body'][_0x1627('0x5b')]=_0x30cad4['body'][_0x1627('0x7d')];_0x15a3d7[_0x1627('0x5b')]['messageId']=_0x30cad4[_0x1627('0x5b')][_0x1627('0x7e')];break;case _0x1627('0x7f'):_0x15a3d7[_0x1627('0x5b')]['from']='+'+_0x30cad4[_0x1627('0x5b')][_0x1627('0x80')];_0x15a3d7[_0x1627('0x5b')][_0x1627('0x5b')]=_0x30cad4[_0x1627('0x5b')][_0x1627('0x81')];break;case _0x1627('0x82'):_0x15a3d7['body']['from']=_0x30cad4[_0x1627('0x5b')][_0x1627('0x83')];_0x15a3d7[_0x1627('0x5b')][_0x1627('0x5b')]=_0x30cad4[_0x1627('0x5b')][_0x1627('0x27')];break;case _0x1627('0x84'):_0x15a3d7[_0x1627('0x5b')][_0x1627('0x83')]=_0x30cad4[_0x1627('0x5b')][_0x1627('0x83')];_0x15a3d7[_0x1627('0x5b')][_0x1627('0x5b')]=_0x30cad4['body'][_0x1627('0x5b')];_0x15a3d7[_0x1627('0x5b')][_0x1627('0x85')]=_0x30cad4[_0x1627('0x5b')][_0x1627('0x86')];break;case _0x1627('0x87'):_0x15a3d7[_0x1627('0x5b')][_0x1627('0x83')]=_0x30cad4[_0x1627('0x5b')]['From'];_0x15a3d7['body'][_0x1627('0x5b')]=_0x30cad4['body']['Text'];_0x15a3d7[_0x1627('0x5b')][_0x1627('0x85')]=_0x30cad4['body'][_0x1627('0x88')];break;case'infobip':_0x15a3d7[_0x1627('0x5b')][_0x1627('0x83')]='+'+_0x30cad4[_0x1627('0x5b')]['results'][0x0][_0x1627('0x83')];_0x15a3d7[_0x1627('0x5b')]['body']=_0x30cad4[_0x1627('0x5b')]['results'][0x0][_0x1627('0x81')];_0x15a3d7[_0x1627('0x5b')][_0x1627('0x85')]=_0x30cad4[_0x1627('0x5b')][_0x1627('0x89')][0x0][_0x1627('0x85')];break;case'csc':_0x15a3d7[_0x1627('0x5b')][_0x1627('0x83')]=_0x30cad4[_0x1627('0x5b')][_0x1627('0x8a')];_0x15a3d7[_0x1627('0x5b')]['body']=_0x30cad4[_0x1627('0x5b')][_0x1627('0x8b')][_0x1627('0x27')];break;case _0x1627('0x8c'):_0x15a3d7['body'][_0x1627('0x83')]=_0x30cad4[_0x1627('0x5b')][_0x1627('0x8d')];_0x15a3d7[_0x1627('0x5b')][_0x1627('0x5b')]=_0x30cad4['body']['text'];_0x15a3d7['body']['messageId']=_0x30cad4[_0x1627('0x5b')][_0x1627('0x8e')];break;case _0x1627('0x8f'):_0x15a3d7[_0x1627('0x5b')][_0x1627('0x85')]=_0x30cad4['body'][0x0][_0x1627('0x27')]['id'];_0x15a3d7[_0x1627('0x5b')][_0x1627('0x83')]=_0x30cad4[_0x1627('0x5b')][0x0][_0x1627('0x27')][_0x1627('0x83')];_0x15a3d7['body'][_0x1627('0x5b')]=_0x30cad4['body'][0x0][_0x1627('0x27')][_0x1627('0x81')];break;case _0x1627('0x90'):_0x15a3d7['body'][_0x1627('0x83')]=_0x30cad4[_0x1627('0x5b')][_0x1627('0x83')];_0x15a3d7[_0x1627('0x5b')][_0x1627('0x5b')]=_0x30cad4[_0x1627('0x5b')][_0x1627('0x27')];_0x15a3d7[_0x1627('0x5b')][_0x1627('0x85')]=_0x30cad4['body'][_0x1627('0x91')];break;}}if(_0x15a3d7[_0x1627('0x5b')]['id']){delete _0x15a3d7[_0x1627('0x5b')]['id'];}if(_['isNil'](_0x15a3d7['body']['from'])){throw new db['Sequelize'][(_0x1627('0x92'))]('from\x20is\x20mandatory');}if(_[_0x1627('0x93')](_0x15a3d7['body'][_0x1627('0x5b')])||_0x15a3d7[_0x1627('0x5b')][_0x1627('0x5b')]===''){throw new db[(_0x1627('0x75'))][(_0x1627('0x92'))](_0x1627('0x94'));}if(_[_0x1627('0x93')](_0x15a3d7[_0x1627('0x5b')][_0x1627('0x95')])){throw new db[(_0x1627('0x75'))]['ValidationError'](_0x1627('0x96')+_0x442ed2);}if(!_[_0x1627('0x97')](_0x442ed2,_0x15a3d7[_0x1627('0x5b')]['mapKey'])){throw new db[(_0x1627('0x75'))][(_0x1627('0x92'))](_0x1627('0x98')+_0x442ed2);}_0x22e934[_0x15a3d7[_0x1627('0x5b')][_0x1627('0x95')]]=_0x15a3d7[_0x1627('0x5b')]['from'];return db[_0x1627('0x99')]['find']({'where':{'id':_0x15a3d7['account']['ListId']},'include':[{'model':db['CmContact'],'as':_0x1627('0x9a'),'where':_0x22e934,'limit':0x1,'order':[[_0x1627('0x78'),_0x1627('0x9b')]]}]});})[_0x1627('0x22')](handleEntityNotFound(_0x188f26,null))[_0x1627('0x22')](function(_0x28f3f0){if(_0x28f3f0){_0x15a3d7[_0x1627('0x9c')]=_[_0x1627('0x9d')](_0x28f3f0,[_0x1627('0x9a')]);if(_0x28f3f0[_0x1627('0x9a')]['length']){return _0x28f3f0['Contacts'][0x0];}var _0x29f5b0=_[_0x1627('0x1b')](_0x15a3d7[_0x1627('0x5b')],{'firstName':_0x15a3d7['body'][_0x1627('0x83')],'ListId':_0x28f3f0['id']});_0x29f5b0[_0x15a3d7[_0x1627('0x5b')]['mapKey']]=_0x15a3d7['body'][_0x1627('0x83')];return db[_0x1627('0x74')]['create'](_0x29f5b0,{'fields':_0x26fb3b,'raw':!![]});}})[_0x1627('0x22')](handleEntityNotFound(_0x188f26,null))[_0x1627('0x22')](function(_0x189f57){if(_0x189f57){_0x15a3d7[_0x1627('0x9e')]=_0x189f57;var _0x4974f2={'ContactId':_0x189f57['id'],'phone':_0x15a3d7[_0x1627('0x5b')][_0x1627('0x83')],'SmsAccountId':_0x30cad4['params']['id']};var _0x23ffc9={'ContactId':_0x189f57['id'],'SmsAccountId':_0x30cad4['params']['id'],'closed':![]};return db[_0x1627('0x9f')]['find']({'where':_0x23ffc9})[_0x1627('0x22')](function(_0x3b8641){if(_0x3b8641){return[_0x3b8641,![]];}return db[_0x1627('0x9f')][_0x1627('0x5a')](_0x4974f2)[_0x1627('0x22')](function(_0x993dbb){return[_0x993dbb,!![]];});});}})['spread'](function(_0x17343d,_0x2e59f3){_0x15a3d7[_0x1627('0xa0')]=_0x17343d['get']({'plain':!![]});_0x15a3d7['interaction'][_0x1627('0xa1')]=![];if(_0x2e59f3){if(_0x15a3d7[_0x1627('0x72')][_0x1627('0xa2')]){_0x15a3d7[_0x1627('0xa3')]['push']({'id':0x0,'priority':_0x15a3d7[_0x1627('0xa3')][_0x1627('0x4a')]+0x1,'app':'close','appdata':_0x1627('0xa4'),'interval':_0x1627('0xa5')});}_0x15a3d7['interaction'][_0x1627('0xa1')]=!![];}return db[_0x1627('0xa6')][_0x1627('0x5a')]({'phone':_0x15a3d7['body']['from'],'messageId':_0x15a3d7['body'][_0x1627('0x85')],'body':_0x15a3d7[_0x1627('0x5b')][_0x1627('0x5b')],'SmsAccountId':_0x30cad4[_0x1627('0x57')]['id'],'SmsInteractionId':_0x17343d['id'],'direction':'in','ContactId':_0x17343d[_0x1627('0xa7')],'AttachmentId':_0x15a3d7[_0x1627('0x5b')][_0x1627('0xa8')]});})[_0x1627('0x22')](function(_0x599aa4){_0x15a3d7[_0x1627('0x27')]=_0x599aa4;if(_0x15a3d7[_0x1627('0xa0')][_0x1627('0xa9')]){return db['User'][_0x1627('0x59')]({'attributes':['id',_0x1627('0x39')],'where':{'id':_0x15a3d7[_0x1627('0xa0')][_0x1627('0xa9')]}})[_0x1627('0x22')](function(_0xa28ea0){if(_0xa28ea0){_0x15a3d7['applications']['unshift']({'id':0x0,'priority':0x0,'app':_0x1627('0xaa'),'appdata':_0xa28ea0[_0x1627('0x39')]+','+(_0x15a3d7[_0x1627('0x72')]['waitForTheAssignedAgent']||0xa),'interval':'*,*,*,*'});}return respondWithRpcPromise('Start','startRouting',_0x15a3d7);});}return respondWithRpcPromise(_0x1627('0xab'),_0x1627('0xac'),_0x15a3d7);})[_0x1627('0x22')](function(_0x5a0ae1){if(_0x5a0ae1){var _0x4d1fea=0xc8;var _0x5afaf8='receiveMessage';logger['info'](_0x1627('0xad'),_0x5afaf8,_0x4d1fea,_0x1627('0xae'));logger[_0x1627('0xaf')]('SmsAccount,\x20%s,\x20%s,\x20%s,\x20%s',_0x5afaf8,_0x4d1fea,_0x1627('0xae'),JSON[_0x1627('0xb0')](_0x5a0ae1));if(_0x15a3d7['account'][_0x1627('0x42')]===_0x1627('0x7b')){return _0x188f26[_0x1627('0x2b')](_0x4d1fea)[_0x1627('0x31')](_0x1627('0xb1'),_0x1627('0xb2'))[_0x1627('0x3a')](_0x1627('0xb3'));}else{return _0x188f26[_0x1627('0x2b')](_0x4d1fea)[_0x1627('0x32')](_0x5a0ae1);}}})[_0x1627('0x29')](handleError(_0x188f26,null));};exports[_0x1627('0xb4')]=function(_0x54b4bb,_0x238a6e){var _0x594a73=_0x54b4bb[_0x1627('0x57')]['id'];var _0x5f1355=_0x54b4bb[_0x1627('0x5b')];var _0x2c96bb=0xc8;var _0x53148b=null;return db[_0x1627('0xb5')][_0x1627('0xb6')]({'isolationLevel':db[_0x1627('0xb5')][_0x1627('0xb7')][_0x1627('0xb8')]['READ_COMMITTED']},function(_0x32f4ff){return db[_0x1627('0x3f')]['findOne']({'where':{'id':_0x594a73},'transaction':_0x32f4ff})['then'](function(_0x1b528a){if(_0x1b528a){return db[_0x1627('0xb9')][_0x1627('0x35')]({'where':{'SmsAccountId':_0x594a73},'transaction':_0x32f4ff})[_0x1627('0x22')](function(){var _0x184001=_[_0x1627('0x3e')](_0x5f1355,function(_0x143925){_0x143925[_0x1627('0x69')]=_0x594a73;return _0x143925;});return db[_0x1627('0xb9')][_0x1627('0xba')](_0x184001,{'transaction':_0x32f4ff});});}else{_0x2c96bb=0x194;_0x53148b=[];}});})[_0x1627('0x22')](function(){if(_0x2c96bb!==0x194){return db[_0x1627('0xb9')][_0x1627('0xbb')]({'where':{'SmsAccountId':_0x594a73},'order':_0x1627('0x73')})[_0x1627('0x22')](function(_0x3d0acf){_0x53148b=_0x3d0acf;});}})['catch'](function(_0x2afd12){_0x2c96bb=0x1f4;logger[_0x1627('0x25')](_0x2afd12['stack']);if(_0x2afd12[_0x1627('0x39')]){delete _0x2afd12[_0x1627('0x39')];}_0x53148b=_0x2afd12;})[_0x1627('0xbc')](function(){if(_0x53148b===null){_0x238a6e[_0x1627('0x2a')](_0x2c96bb);}else{if(_0x2c96bb===0x1f4){_0x238a6e[_0x1627('0x2b')](_0x2c96bb)[_0x1627('0x3a')](_0x53148b);}else{_0x238a6e[_0x1627('0x2b')](_0x2c96bb)['json'](_0x53148b);}}});};exports[_0x1627('0xbd')]=function(_0x229a96,_0x1ac737,_0x4d9302){var _0x33a895={};var _0x596cfc={};var _0x127cff;var _0x25b439;return db[_0x1627('0x3f')][_0x1627('0x6c')]({'where':{'id':_0x229a96[_0x1627('0x57')]['id']}})['then'](handleEntityNotFound(_0x1ac737,null))[_0x1627('0x22')](function(_0x2d0f1f){if(_0x2d0f1f){_0x127cff=_0x2d0f1f;_0x596cfc['model']=_[_0x1627('0x58')](db[_0x1627('0xb9')][_0x1627('0x40')]);_0x596cfc[_0x1627('0x45')]=_[_0x1627('0x58')](_0x229a96[_0x1627('0x45')]);_0x596cfc[_0x1627('0x46')]=_[_0x1627('0x47')](_0x596cfc[_0x1627('0x44')],_0x596cfc[_0x1627('0x45')]);_0x33a895[_0x1627('0x48')]=_['intersection'](_0x596cfc[_0x1627('0x44')],qs[_0x1627('0x49')](_0x229a96['query']['fields']));_0x33a895[_0x1627('0x48')]=_0x33a895[_0x1627('0x48')][_0x1627('0x4a')]?_0x33a895[_0x1627('0x48')]:_0x596cfc['model'];_0x33a895[_0x1627('0x4d')]=qs[_0x1627('0x4e')](_0x229a96['query'][_0x1627('0x4e')]);_0x33a895[_0x1627('0x4f')]=qs[_0x1627('0x46')](_[_0x1627('0x67')](_0x229a96[_0x1627('0x45')],_0x596cfc[_0x1627('0x46')]));if(_0x229a96[_0x1627('0x45')][_0x1627('0x50')]){_0x33a895[_0x1627('0x4f')]=_[_0x1627('0x51')](_0x33a895[_0x1627('0x4f')],{'$or':_[_0x1627('0x3e')](_0x33a895[_0x1627('0x48')],function(_0x5bc175){var _0x4fe459={};_0x4fe459[_0x5bc175]={'$like':'%'+_0x229a96[_0x1627('0x45')][_0x1627('0x50')]+'%'};return _0x4fe459;})});}_0x33a895=_[_0x1627('0x51')]({},_0x33a895,_0x229a96[_0x1627('0x53')]);return _0x127cff[_0x1627('0xbd')](_0x33a895);}})[_0x1627('0x22')](function(_0x58abcf){if(_0x58abcf){_0x25b439=_0x58abcf[_0x1627('0x4a')];if(!_0x229a96[_0x1627('0x45')][_0x1627('0x4b')](_0x1627('0x4c'))){_0x33a895[_0x1627('0x2e')]=qs[_0x1627('0x2e')](_0x229a96[_0x1627('0x45')][_0x1627('0x2e')]);_0x33a895[_0x1627('0x30')]=qs[_0x1627('0x30')](_0x229a96[_0x1627('0x45')][_0x1627('0x30')]);}return _0x127cff[_0x1627('0xbd')](_0x33a895);}})[_0x1627('0x22')](function(_0x5a37d5){if(_0x5a37d5){return _0x5a37d5?{'count':_0x25b439,'rows':_0x5a37d5}:null;}})[_0x1627('0x22')](respondWithResult(_0x1ac737,null))[_0x1627('0x29')](handleError(_0x1ac737,null));};exports['getInteractions']=function(_0x29dfc8,_0x3aa3b7,_0x40a8eb){var _0x5c15cf={'raw':![],'where':{}};var _0x3da868={};var _0x2649aa={'count':0x0,'rows':[]};return db[_0x1627('0x3f')][_0x1627('0x6c')]({'where':{'id':_0x29dfc8[_0x1627('0x57')]['id']}})['then'](handleEntityNotFound(_0x3aa3b7,null))[_0x1627('0x22')](function(_0x272164){if(_0x272164){_0x3da868[_0x1627('0x44')]=_[_0x1627('0x58')](db[_0x1627('0x9f')][_0x1627('0x40')]);_0x3da868[_0x1627('0x45')]=_[_0x1627('0x58')](_0x29dfc8['query']);_0x3da868['filters']=_[_0x1627('0x47')](_0x3da868['model'],_0x3da868['query']);_0x5c15cf[_0x1627('0x48')]=_['intersection'](_0x3da868['model'],qs[_0x1627('0x49')](_0x29dfc8['query'][_0x1627('0x49')]));_0x5c15cf[_0x1627('0x48')]=_0x5c15cf[_0x1627('0x48')][_0x1627('0x4a')]?_0x5c15cf[_0x1627('0x48')]:_0x3da868['model'];if(!_0x29dfc8['query']['hasOwnProperty'](_0x1627('0x4c'))){_0x5c15cf[_0x1627('0x2e')]=qs[_0x1627('0x2e')](_0x29dfc8[_0x1627('0x45')]['limit']);_0x5c15cf[_0x1627('0x30')]=qs['offset'](_0x29dfc8[_0x1627('0x45')][_0x1627('0x30')]);}_0x5c15cf[_0x1627('0x4d')]=qs[_0x1627('0x4e')](_0x29dfc8['query'][_0x1627('0x4e')]);_0x5c15cf[_0x1627('0x4f')]=qs[_0x1627('0x46')](_[_0x1627('0x67')](_0x29dfc8['query'],_0x3da868[_0x1627('0x46')]));_0x5c15cf['where'][_0x1627('0x69')]=_0x272164['id'];if(_0x29dfc8[_0x1627('0x45')]['filter']){_0x5c15cf[_0x1627('0x4f')]=_[_0x1627('0x51')](_0x5c15cf[_0x1627('0x4f')],{'$or':_['map'](_0x5c15cf[_0x1627('0x48')],function(_0x174f7e){var _0x2a4598={};_0x2a4598[_0x174f7e]={'$like':'%'+_0x29dfc8['query'][_0x1627('0x50')]+'%'};return _0x2a4598;})});}_0x5c15cf=_[_0x1627('0x51')]({},_0x5c15cf,_0x29dfc8['options']);return db['SmsInteraction'][_0x1627('0x2f')]({'where':_0x5c15cf['where']})[_0x1627('0x22')](function(_0x24ab50){_0x2649aa[_0x1627('0x2f')]=_0x24ab50;if(_0x29dfc8['query'][_0x1627('0x54')]){_0x5c15cf[_0x1627('0x55')]=[{'model':db[_0x1627('0x74')],'as':_0x1627('0xbe'),'required':![]},{'model':db[_0x1627('0xbf')],'as':_0x1627('0xc0'),'attributes':[_0x1627('0x39'),_0x1627('0xc1'),_0x1627('0xc2')],'required':![]},{'model':db[_0x1627('0xc3')],'as':_0x1627('0xc4'),'attributes':['id','name','color'],'where':_0x29dfc8[_0x1627('0x45')][_0x1627('0xc5')]?{'id':_0x29dfc8[_0x1627('0x45')][_0x1627('0xc5')]}:undefined,'required':_0x29dfc8[_0x1627('0x45')]['tag']?!![]:![]}];}return db[_0x1627('0x9f')][_0x1627('0x6d')](_0x5c15cf);})[_0x1627('0x22')](function(_0x2e061f){_0x2649aa['rows']=_0x2e061f;return _0x2649aa;});}})[_0x1627('0x22')](respondWithFilteredResult(_0x3aa3b7,_0x5c15cf))[_0x1627('0x29')](handleError(_0x3aa3b7,null));};exports[_0x1627('0x3a')]=function(_0x513b90,_0x388859,_0x494a84){var _0x1774d6,_0x2eff37,_0x49b41d;if(_['isNil'](_0x513b90[_0x1627('0x5b')]['body'])||_0x513b90[_0x1627('0x5b')][_0x1627('0x5b')]===''){throw new db[(_0x1627('0x75'))]['ValidationError'](_0x1627('0x94'));}if(_[_0x1627('0x93')](_0x513b90['body']['to'])){throw new db[(_0x1627('0x75'))]['ValidationError'](_0x1627('0xc6'));}_0x1774d6=_0x513b90[_0x1627('0x5b')]['to'];return db[_0x1627('0x3f')]['find']({'where':{'id':_0x513b90[_0x1627('0x57')]['id']},'include':[{'model':db[_0x1627('0x99')],'as':_0x1627('0xc7'),'include':[{'model':db[_0x1627('0x74')],'as':_0x1627('0x9a'),'where':{'mobile':_0x1774d6},'limit':0x1,'order':[['updatedAt','DESC']]}]}]})[_0x1627('0x22')](handleEntityNotFound(_0x388859,null))[_0x1627('0x22')](function(_0x30e0ef){if(_0x30e0ef&&_0x30e0ef['List']){_0x2eff37=_0x30e0ef['get']({'plain':!![]});if(_0x2eff37['List']&&_0x2eff37[_0x1627('0xc7')][_0x1627('0x9a')][_0x1627('0x4a')]){return _0x2eff37['List'][_0x1627('0x9a')][0x0];}return db[_0x1627('0x74')][_0x1627('0x5a')](_[_0x1627('0x1b')](_0x513b90[_0x1627('0x5b')],{'firstName':_0x1774d6,'mobile':_0x1774d6,'phone':_0x1774d6,'ListId':_0x2eff37[_0x1627('0x79')]}));}})['then'](handleEntityNotFound(_0x388859,null))['then'](function(_0x287bf0){if(_0x287bf0){_0x49b41d=_0x287bf0;return db[_0x1627('0x9f')][_0x1627('0x59')]({'where':{'ContactId':_0x49b41d['id'],'closed':![],'SmsAccountId':_0x2eff37['id']}})['then'](function(_0x397626){if(_0x397626){return[_0x397626,![]];}return db[_0x1627('0x9f')][_0x1627('0x5a')]({'UserId':_0x513b90[_0x1627('0x5c')]['id'],'ContactId':_0x49b41d['id'],'SmsAccountId':_0x2eff37['id'],'phone':_0x1774d6,'firstMsgDirection':_0x1627('0xc8'),'Messages':[_['merge'](_0x513b90[_0x1627('0x5b')],{'read':![],'body':_0x513b90[_0x1627('0x5b')]['body'],'phone':_0x1774d6,'SmsAccountId':_0x2eff37['id'],'UserId':_0x513b90[_0x1627('0x5c')]['id'],'ContactId':_0x49b41d['id']})]},{'include':[{'model':db[_0x1627('0xa6')],'as':_0x1627('0xc9')}]})[_0x1627('0x22')](function(_0x4a3b5a){return[_0x4a3b5a,!![]];});});}})['spread'](function(_0x17f352,_0x138dba){if(_0x138dba){return _0x17f352;}return db['SmsMessage'][_0x1627('0x5a')](_['merge'](_0x513b90['body'],{'read':![],'body':_0x513b90[_0x1627('0x5b')][_0x1627('0x5b')],'phone':_0x1774d6,'SmsAccountId':_0x2eff37['id'],'SmsInteractionId':_0x17f352['id'],'UserId':_0x513b90[_0x1627('0x5c')]['id'],'ContactId':_0x49b41d['id']}))[_0x1627('0x22')](function(_0x5ef887){_0x17f352['dataValues'][_0x1627('0xc9')]=[];_0x17f352[_0x1627('0xca')]['Messages']['push'](_0x5ef887['dataValues']);return _0x17f352;});})[_0x1627('0x22')](respondWithResult(_0x388859,null))[_0x1627('0x29')](handleError(_0x388859,null));};exports[_0x1627('0x2b')]=function(_0x224ad4,_0x5e79be,_0x3b59cf){if(_0x224ad4['body']['id']){delete _0x224ad4['body']['id'];}var _0x41c245,_0x4457dd,_0x2179a8;return db[_0x1627('0x3f')][_0x1627('0x59')]({'where':{'id':_0x224ad4[_0x1627('0x57')]['id']}})[_0x1627('0x22')](handleEntityNotFound(_0x5e79be,null))['then'](function(_0x404013){if(_0x404013){_0x2179a8=_0x404013;logger[_0x1627('0xaf')](_0x1627('0xad'),_0x1627('0x2b'),_0x1627('0xcb'),_0x404013[_0x1627('0x42')],util[_0x1627('0xcc')](_0x224ad4[_0x1627('0x5b')],{'showHidden':![],'depth':null}));switch(_0x404013['type']){case _0x1627('0x7f'):if(_0x224ad4[_0x1627('0x5b')]['skebby_dispatch_id']&&_0x224ad4[_0x1627('0x5b')]['status']){_0x4457dd=_0x224ad4['body'][_0x1627('0x2b')];return db[_0x1627('0xa6')]['find']({'where':{'messageId':_0x224ad4[_0x1627('0x5b')][_0x1627('0xcd')]}});}break;case'connectel':if(_0x224ad4[_0x1627('0x5b')][_0x1627('0xce')]&&_0x224ad4[_0x1627('0x5b')][_0x1627('0xcf')]){_0x4457dd=_0x224ad4[_0x1627('0x5b')]['statusInt'];return db[_0x1627('0xa6')][_0x1627('0x59')]({'where':{'messageId':_0x224ad4[_0x1627('0x5b')][_0x1627('0xce')]}});}break;case _0x1627('0x84'):if(_0x224ad4['body'][_0x1627('0x86')]&&_0x224ad4[_0x1627('0x5b')][_0x1627('0xd0')]){_0x4457dd=_0x224ad4[_0x1627('0x5b')]['status_code'];return db[_0x1627('0xa6')][_0x1627('0x59')]({'where':{'messageId':_0x224ad4[_0x1627('0x5b')][_0x1627('0x86')]}});}break;case _0x1627('0xd1'):var _0x6fd275=_0x224ad4[_0x1627('0x5b')][_0x1627('0x89')][0x0];if(_0x6fd275[_0x1627('0x85')]&&_0x6fd275[_0x1627('0x2b')]['groupName']===_0x1627('0xd2')){_0x4457dd=_0x6fd275[_0x1627('0x2b')][_0x1627('0xd3')];return db[_0x1627('0xa6')][_0x1627('0x59')]({'where':{'messageId':_0x6fd275[_0x1627('0x85')]}});}break;case'clickatell':if(_0x224ad4['body']['messageId']&&_0x224ad4[_0x1627('0x5b')][_0x1627('0x2b')]){_0x4457dd=_0x224ad4[_0x1627('0x5b')]['status'];return db[_0x1627('0xa6')][_0x1627('0x59')]({'where':{'messageId':_0x224ad4[_0x1627('0x5b')][_0x1627('0x85')]}});}break;case _0x1627('0x8f'):if(_0x224ad4[_0x1627('0x5b')][0x0][_0x1627('0x27')]['id']){_0x4457dd=_0x224ad4[_0x1627('0x5b')][0x0][_0x1627('0x42')];return db[_0x1627('0xa6')][_0x1627('0x59')]({'where':{'messageId':_0x224ad4[_0x1627('0x5b')][0x0][_0x1627('0x27')]['id']}});}break;case _0x1627('0x90'):if(_0x224ad4[_0x1627('0x5b')][_0x1627('0xd4')]&&_0x224ad4[_0x1627('0x5b')][_0x1627('0x2b')]){_0x4457dd=_0x224ad4['body'][_0x1627('0x2b')];return db['SmsMessage']['find']({'where':{'messageId':_0x224ad4['body'][_0x1627('0xd4')]}});}break;}}})[_0x1627('0x22')](handleEntityNotFound(_0x5e79be,null))[_0x1627('0x22')](function(_0x2640d3){if(_0x2640d3){_0x41c245=_0x2640d3;switch(_0x2179a8[_0x1627('0x42')]){case _0x1627('0x7f'):if(_0x4457dd==='DELIVERED'){return _0x41c245[_0x1627('0x34')]({'read':!![]});}else{logger[_0x1627('0x25')](_0x1627('0xad'),_0x1627('0x2b'),_0x1627('0x7f'),util[_0x1627('0xcc')](_0x224ad4[_0x1627('0x5b')],{'showHidden':![],'depth':null}));}break;case _0x1627('0x82'):if(_0x4457dd==='1'){return _0x41c245['update']({'read':!![]});}else{logger[_0x1627('0x25')](_0x1627('0xad'),_0x1627('0x2b'),_0x1627('0x7f'),util[_0x1627('0xcc')](_0x224ad4[_0x1627('0x5b')],{'showHidden':![],'depth':null}));}break;case'clicksend':if(!_0x224ad4['body']['error_code']&&_0x4457dd>=0xc8&&_0x4457dd<=0xce){return _0x41c245[_0x1627('0x34')]({'read':!![]});}else{logger['error'](_0x1627('0xad'),_0x1627('0x2b'),'clicksend',util[_0x1627('0xcc')](_0x224ad4[_0x1627('0x5b')],{'showHidden':![],'depth':null}));}break;case'infobip':var _0x1f9040=_0x224ad4['body'][_0x1627('0x89')][0x0];if(_0x1f9040[_0x1627('0x2b')][_0x1627('0xd3')]===_0x1627('0xd2')){return _0x41c245[_0x1627('0x34')]({'read':!![]});}else{logger[_0x1627('0x25')]('SmsAccount,\x20%s,\x20%s,\x20%s',_0x1627('0x2b'),_0x1627('0xd1'),util[_0x1627('0xcc')](_0x224ad4['body'],{'showHidden':![],'depth':null}));}break;case _0x1627('0x8c'):if(_0x4457dd==_0x1627('0xd5')||_0x4457dd==_0x1627('0xd6')){return _0x41c245[_0x1627('0x34')]({'read':!![]});}else{logger[_0x1627('0x25')]('SmsAccount,\x20%s,\x20%s,\x20%s',_0x1627('0x2b'),'clickatell',util[_0x1627('0xcc')](_0x224ad4[_0x1627('0x5b')],{'showHidden':![],'depth':null}));}break;case'bandwidth':if(_0x4457dd==_0x1627('0xd7')){return _0x41c245['update']({'read':!![]});}else{logger['error'](_0x1627('0xad'),_0x1627('0x2b'),'bandwidth',util[_0x1627('0xcc')](_0x224ad4[_0x1627('0x5b')],{'showHidden':![],'depth':null}));}break;case _0x1627('0x90'):if(_0x4457dd===_0x1627('0xd8')||_0x4457dd==='ACCEPTD'){return _0x41c245['update']({'read':!![]});}else{logger[_0x1627('0x25')]('SmsAccount,\x20%s,\x20%s,\x20%s',_0x1627('0x2b'),_0x1627('0x90'),util[_0x1627('0xcc')](_0x224ad4[_0x1627('0x5b')],{'showHidden':![],'depth':null}));}break;}return _0x41c245;}})[_0x1627('0x22')](respondWithResult(_0x5e79be,null))['catch'](handleError(_0x5e79be,null));};exports['statusGet']=function(_0x4aa0f3,_0x386bd9,_0x37cba8){var _0x266e91,_0x4aa56c,_0x401e64;return db['SmsAccount'][_0x1627('0x59')]({'where':{'id':_0x4aa0f3['params']['id']}})['then'](handleEntityNotFound(_0x386bd9,null))[_0x1627('0x22')](function(_0x4de616){if(_0x4de616){_0x401e64=_0x4de616;logger[_0x1627('0xaf')](_0x1627('0xad'),'status',_0x1627('0xcb'),_0x4de616[_0x1627('0x42')],util[_0x1627('0xcc')](_0x4aa0f3[_0x1627('0x45')],{'showHidden':![],'depth':null}));switch(_0x4de616['type']){case _0x1627('0xd9'):if(_0x4aa0f3['query'][_0x1627('0xda')]&&_0x4aa0f3[_0x1627('0x45')][_0x1627('0xdb')]){_0x4aa56c=_0x4aa0f3[_0x1627('0x45')]['state'];return db['SmsMessage'][_0x1627('0x59')]({'where':{'messageId':_0x4aa0f3[_0x1627('0x45')]['message-id']}});}break;}}})[_0x1627('0x22')](handleEntityNotFound(_0x386bd9,null))[_0x1627('0x22')](function(_0x19cc97){if(_0x19cc97){_0x266e91=_0x19cc97;switch(_0x401e64[_0x1627('0x42')]){case'csc':if(_0x4aa56c==='2'||_0x4aa56c==='6'){return _0x266e91[_0x1627('0x34')]({'read':!![]});}else{logger[_0x1627('0x25')]('SmsAccount,\x20%s,\x20%s,\x20%s',_0x1627('0x2b'),_0x1627('0xd9'),util[_0x1627('0xcc')](_0x4aa0f3[_0x1627('0x45')],{'showHidden':![],'depth':null}));};break;}return _0x266e91;}})['then'](respondWithResult(_0x386bd9,null))[_0x1627('0x29')](handleError(_0x386bd9,null));};exports['addAgents']=function(_0x2be726,_0x49e4f0,_0xc63684){return db[_0x1627('0x3f')][_0x1627('0x59')]({'where':{'id':_0x2be726[_0x1627('0x57')]['id']}})['then'](handleEntityNotFound(_0x49e4f0,null))['then'](function(_0x156e26){if(_0x156e26){return _0x156e26[_0x1627('0xdc')](_0x2be726['body'][_0x1627('0x6f')],_['omit'](_0x2be726[_0x1627('0x5b')],['ids','id'])||{})['spread'](function(_0x26f30b){for(var _0x3e03e5=0x0;_0x3e03e5<_0x2be726['body'][_0x1627('0x6f')][_0x1627('0x4a')];_0x3e03e5+=0x1){socket[_0x1627('0xdd')](_0x1627('0xde'),{'UserId':Number(_0x2be726[_0x1627('0x5b')][_0x1627('0x6f')][_0x3e03e5]),'SmsAccountId':Number(_0x2be726[_0x1627('0x57')]['id'])});}return _0x26f30b;});}})[_0x1627('0x22')](respondWithResult(_0x49e4f0,null))['catch'](handleError(_0x49e4f0,null));};exports[_0x1627('0xdf')]=function(_0x4048ed,_0x323405,_0x442d52){return db[_0x1627('0x3f')][_0x1627('0x59')]({'where':{'id':_0x4048ed['params']['id']}})[_0x1627('0x22')](handleEntityNotFound(_0x323405,null))[_0x1627('0x22')](function(_0x35ada6){if(_0x35ada6){return _0x35ada6[_0x1627('0xdf')](_0x4048ed[_0x1627('0x45')]['ids'])[_0x1627('0x22')](function(){if(_['isArray'](_0x4048ed['query'][_0x1627('0x6f')])){for(var _0x11697f=0x0;_0x11697f<_0x4048ed[_0x1627('0x45')]['ids'][_0x1627('0x4a')];_0x11697f+=0x1){socket[_0x1627('0xdd')]('userSmsAccount:remove',{'UserId':Number(_0x4048ed[_0x1627('0x45')][_0x1627('0x6f')][_0x11697f]),'SmsAccountId':Number(_0x4048ed[_0x1627('0x57')]['id'])});}}else{socket[_0x1627('0xdd')](_0x1627('0xe0'),{'UserId':Number(_0x4048ed['query']['ids']),'SmsAccountId':Number(_0x4048ed[_0x1627('0x57')]['id'])});}});}})['then'](respondWithStatusCode(_0x323405,null))['catch'](handleError(_0x323405,null));};exports[_0x1627('0xe1')]=function(_0x37a7c8,_0x154ce6,_0x387d64){var _0x8592d1={};var _0x334e66={};var _0x347514;var _0xf0df5e;return db[_0x1627('0x3f')][_0x1627('0x6c')]({'where':{'id':_0x37a7c8[_0x1627('0x57')]['id']}})[_0x1627('0x22')](handleEntityNotFound(_0x154ce6,null))[_0x1627('0x22')](function(_0x40e29c){if(_0x40e29c){_0x347514=_0x40e29c;_0x334e66[_0x1627('0x44')]=_[_0x1627('0x58')](db[_0x1627('0xbf')]['rawAttributes']);_0x334e66[_0x1627('0x45')]=_['keys'](_0x37a7c8[_0x1627('0x45')]);_0x334e66['filters']=_[_0x1627('0x47')](_0x334e66[_0x1627('0x44')],_0x334e66['query']);_0x8592d1[_0x1627('0x48')]=_[_0x1627('0x47')](_0x334e66['model'],qs[_0x1627('0x49')](_0x37a7c8[_0x1627('0x45')][_0x1627('0x49')]));_0x8592d1[_0x1627('0x48')]=_0x8592d1[_0x1627('0x48')][_0x1627('0x4a')]?_0x8592d1[_0x1627('0x48')]:_0x334e66[_0x1627('0x44')];_0x8592d1[_0x1627('0x4d')]=qs[_0x1627('0x4e')](_0x37a7c8[_0x1627('0x45')][_0x1627('0x4e')]);_0x8592d1[_0x1627('0x4f')]=qs['filters'](_[_0x1627('0x67')](_0x37a7c8[_0x1627('0x45')],_0x334e66['filters']));if(_0x37a7c8['query'][_0x1627('0x50')]){_0x8592d1[_0x1627('0x4f')]=_[_0x1627('0x51')](_0x8592d1[_0x1627('0x4f')],{'$or':_[_0x1627('0x3e')](_0x8592d1[_0x1627('0x48')],function(_0x50d256){var _0x2f1ac8={};_0x2f1ac8[_0x50d256]={'$like':'%'+_0x37a7c8[_0x1627('0x45')][_0x1627('0x50')]+'%'};return _0x2f1ac8;})});}_0x8592d1=_[_0x1627('0x51')]({},_0x8592d1,_0x37a7c8['options']);return _0x347514[_0x1627('0xe1')](_0x8592d1);}})[_0x1627('0x22')](function(_0x33cb0e){if(_0x33cb0e){_0xf0df5e=_0x33cb0e[_0x1627('0x4a')];if(!_0x37a7c8[_0x1627('0x45')][_0x1627('0x4b')](_0x1627('0x4c'))){_0x8592d1[_0x1627('0x2e')]=qs[_0x1627('0x2e')](_0x37a7c8[_0x1627('0x45')][_0x1627('0x2e')]);_0x8592d1[_0x1627('0x30')]=qs[_0x1627('0x30')](_0x37a7c8['query'][_0x1627('0x30')]);}return _0x347514[_0x1627('0xe1')](_0x8592d1);}})[_0x1627('0x22')](function(_0x4d8502){if(_0x4d8502){return _0x4d8502?{'count':_0xf0df5e,'rows':_0x4d8502}:null;}})[_0x1627('0x22')](respondWithResult(_0x154ce6,null))[_0x1627('0x29')](handleError(_0x154ce6,null));};