af8446d7d99b4ec43a2b07e47b74131af5c40f70
[motion2.git] / server / api / openchannelAccount / openchannelAccount.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 _0xe548=['getInteractions','Contact','fullname','Tag','color','tag','addAgents','omit','emit','userOpenchannelAccount:save','removeAgents','isArray','userOpenchannelAccount:remove','getAgents','body\x20is\x20mandatory\x20and\x20not\x20empty','out','Messages','dataValues','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','sox','ejs','lodash','squel','crypto','jsforce','desk.js','to-csv','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/utils','defaults','redis','localhost','./openchannelAccount.socket','client','then','OpenchannelAccount,\x20%s,\x20%s','request\x20sent','debug','OpenchannelAccount,\x20%s,\x20%s,\x20%s','error','code','message','info','result','catch','sendStatus','status','end','json','count','offset','limit','set','Content-Range','apply','reject','update','destroy','get','OpenchannelAccounts','UserProfileResource','name','send','index','Pause','mandatoryDispositionPause','map','OpenchannelAccount','rawAttributes','fieldName','type','key','model','query','keys','filters','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','merge','VIRTUAL','options','includeAll','findAll','rows','params','intersection','find','create','body','Unable\x20to\x20retrieve\x20the\x20current\x20user','user','UserProfileSection','autoAssociation','describe','addDisposition','OpenchannelAccountId','Disposition','getDispositions','findOne','removeDispositions','ids','CannedAnswer','include','removeAnswers','notify','openchannel','CmContact','Sequelize','ValidationError','no\x20available\x20attributes','difference','createdAt','updatedAt','ListId','from','from\x20is\x20mandatory','isNil','includes','mapKey','CmList','List','Contacts','DESC','OpenchannelApplication','Applications','account','applications','list','orderBy','priority','asc','contact','lastName','threadId','OpenchannelInteraction','externalUrl','ContactId','spread','firstName','messageId','interaction','created','autoclose','push','unmanaged','*,*,*,*','OpenchannelMessage','AttachmentId','UserId','User','agent','waitForTheAssignedAgent','OpenchannelQueue','queueId','queue','Start','EventManager','addApplications','sequelize','transaction','ISOLATION_LEVELS','READ_COMMITTED','bulkCreate','findAndCountAll','stack','finally','getApplications'];(function(_0x47fe45,_0x3f7272){var _0x354d31=function(_0x326893){while(--_0x326893){_0x47fe45['push'](_0x47fe45['shift']());}};_0x354d31(++_0x3f7272);}(_0xe548,0x184));var _0x8e54=function(_0x26299e,_0x394ad1){_0x26299e=_0x26299e-0x0;var _0x6c4f4a=_0xe548[_0x26299e];return _0x6c4f4a;};'use strict';var emlformat=require(_0x8e54('0x0'));var rimraf=require(_0x8e54('0x1'));var zipdir=require(_0x8e54('0x2'));var jsonpatch=require(_0x8e54('0x3'));var rp=require(_0x8e54('0x4'));var moment=require('moment');var BPromise=require('bluebird');var Mustache=require('mustache');var util=require('util');var path=require('path');var sox=require(_0x8e54('0x5'));var csv=require('to-csv');var ejs=require(_0x8e54('0x6'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x8e54('0x7'));var squel=require(_0x8e54('0x8'));var crypto=require(_0x8e54('0x9'));var jsforce=require(_0x8e54('0xa'));var deskjs=require(_0x8e54('0xb'));var toCsv=require(_0x8e54('0xc'));var querystring=require(_0x8e54('0xd'));var Papa=require('papaparse');var Redis=require(_0x8e54('0xe'));var authService=require(_0x8e54('0xf'));var qs=require(_0x8e54('0x10'));var as=require(_0x8e54('0x11'));var hardwareService=require(_0x8e54('0x12'));var logger=require('../../config/logger')(_0x8e54('0x13'));var utils=require(_0x8e54('0x14'));var config=require('../../config/environment');var licenseUtil=require('../../config/license/util');var db=require('../../mysqldb')['db'];config['redis']=_[_0x8e54('0x15')](config[_0x8e54('0x16')],{'host':_0x8e54('0x17'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x8e54('0x16')]));require(_0x8e54('0x18'))['register'](socket);var jayson=require('jayson/promise');var client=jayson[_0x8e54('0x19')]['http']({'port':0x232c});var client9002=jayson[_0x8e54('0x19')]['http']({'port':0x232a});function respondWithRpcPromise(_0x5c453f,_0x2c75d8,_0x861ebe,_0x5760a5){return new BPromise(function(_0x45896b,_0x400aa7){var _0x20caac=_0x5760a5||client;return _0x20caac['request'](_0x5c453f,_0x861ebe)[_0x8e54('0x1a')](function(_0xed22ea){logger['info'](_0x8e54('0x1b'),_0x2c75d8,_0x8e54('0x1c'));logger[_0x8e54('0x1d')](_0x8e54('0x1e'),_0x2c75d8,_0x8e54('0x1c'),JSON['stringify'](_0xed22ea));if(_0xed22ea[_0x8e54('0x1f')]){if(_0xed22ea[_0x8e54('0x1f')][_0x8e54('0x20')]===0x1f4){logger['error'](_0x8e54('0x1b'),_0x2c75d8,_0xed22ea[_0x8e54('0x1f')][_0x8e54('0x21')]);return _0x400aa7(_0xed22ea['error']['message']);}logger['error'](_0x8e54('0x1b'),_0x2c75d8,_0xed22ea[_0x8e54('0x1f')]['message']);return _0x45896b(_0xed22ea[_0x8e54('0x1f')][_0x8e54('0x21')]);}else{logger[_0x8e54('0x22')](_0x8e54('0x1b'),_0x2c75d8,'request\x20sent');_0x45896b(_0xed22ea[_0x8e54('0x23')][_0x8e54('0x21')]);}})[_0x8e54('0x24')](function(_0xfeed5f){logger[_0x8e54('0x1f')]('OpenchannelAccount,\x20%s,\x20%s',_0x2c75d8,_0xfeed5f);_0x400aa7(_0xfeed5f);});});}function respondWithStatusCode(_0x210dac,_0x3307a5){_0x3307a5=_0x3307a5||0xcc;return function(_0x591fe4){if(_0x591fe4){return _0x210dac[_0x8e54('0x25')](_0x3307a5);}return _0x210dac[_0x8e54('0x26')](_0x3307a5)[_0x8e54('0x27')]();};}function respondWithResult(_0x38cea9,_0x5f1f7b){_0x5f1f7b=_0x5f1f7b||0xc8;return function(_0x3a36a3){if(_0x3a36a3){return _0x38cea9[_0x8e54('0x26')](_0x5f1f7b)[_0x8e54('0x28')](_0x3a36a3);}};}function respondWithFilteredResult(_0x1e5975,_0x43eccc){return function(_0x1996d0){if(_0x1996d0){var _0x44d18d=typeof _0x43eccc['offset']==='undefined'&&typeof _0x43eccc['limit']==='undefined';var _0x311818=_0x1996d0[_0x8e54('0x29')];var _0x26e1bd=_0x44d18d?0x0:_0x43eccc['offset'];var _0x15e176=_0x44d18d?_0x1996d0[_0x8e54('0x29')]:_0x43eccc[_0x8e54('0x2a')]+_0x43eccc[_0x8e54('0x2b')];var _0x5bc501;if(_0x15e176>=_0x311818){_0x15e176=_0x311818;_0x5bc501=0xc8;}else{_0x5bc501=0xce;}_0x1e5975[_0x8e54('0x26')](_0x5bc501);return _0x1e5975[_0x8e54('0x2c')](_0x8e54('0x2d'),_0x26e1bd+'-'+_0x15e176+'/'+_0x311818)[_0x8e54('0x28')](_0x1996d0);}return null;};}function patchUpdates(_0x378bba){return function(_0x52b7be){try{jsonpatch[_0x8e54('0x2e')](_0x52b7be,_0x378bba,!![]);}catch(_0x28f459){return BPromise[_0x8e54('0x2f')](_0x28f459);}return _0x52b7be['save']();};}function saveUpdates(_0x4079d5,_0xdb85dc){return function(_0x3fee9a){if(_0x3fee9a){return _0x3fee9a[_0x8e54('0x30')](_0x4079d5)[_0x8e54('0x1a')](function(_0x546de7){return _0x546de7;});}return null;};}function removeEntity(_0x4d630d,_0x380016){return function(_0x110ef9){if(_0x110ef9){return _0x110ef9[_0x8e54('0x31')]()[_0x8e54('0x1a')](function(){var _0x431ef2=_0x110ef9[_0x8e54('0x32')]({'plain':!![]});var _0xe922ef=_0x8e54('0x33');return db[_0x8e54('0x34')][_0x8e54('0x31')]({'where':{'type':_0xe922ef,'resourceId':_0x431ef2['id']}})[_0x8e54('0x1a')](function(){return _0x110ef9;});})[_0x8e54('0x1a')](function(){_0x4d630d[_0x8e54('0x26')](0xcc)[_0x8e54('0x27')]();});}};}function handleEntityNotFound(_0x171a35,_0xea7c52){return function(_0x1ee01f){if(!_0x1ee01f){_0x171a35[_0x8e54('0x25')](0x194);}return _0x1ee01f;};}function handleError(_0xce2804,_0x16fc64){_0x16fc64=_0x16fc64||0x1f4;return function(_0x5adf56){logger['error'](_0x5adf56['stack']);if(_0x5adf56[_0x8e54('0x35')]){delete _0x5adf56[_0x8e54('0x35')];}_0xce2804[_0x8e54('0x26')](_0x16fc64)[_0x8e54('0x36')](_0x5adf56);};}exports[_0x8e54('0x37')]=function(_0x105a63,_0x1c063a){var _0x3ed1aa={'include':[{'model':db[_0x8e54('0x38')],'as':_0x8e54('0x39')}]},_0x3a1503={},_0xfbda37={'count':0x0,'rows':[]};var _0x1d805b=_[_0x8e54('0x3a')](db[_0x8e54('0x3b')][_0x8e54('0x3c')],function(_0x321f75){return{'name':_0x321f75[_0x8e54('0x3d')],'type':_0x321f75[_0x8e54('0x3e')][_0x8e54('0x3f')]};});_0x3a1503[_0x8e54('0x40')]=_[_0x8e54('0x3a')](_0x1d805b,'name');_0x3a1503[_0x8e54('0x41')]=_[_0x8e54('0x42')](_0x105a63[_0x8e54('0x41')]);_0x3a1503[_0x8e54('0x43')]=_['intersection'](_0x3a1503[_0x8e54('0x40')],_0x3a1503[_0x8e54('0x41')]);_0x3ed1aa[_0x8e54('0x44')]=_['intersection'](_0x3a1503[_0x8e54('0x40')],qs[_0x8e54('0x45')](_0x105a63['query']['fields']));_0x3ed1aa['attributes']=_0x3ed1aa[_0x8e54('0x44')][_0x8e54('0x46')]?_0x3ed1aa[_0x8e54('0x44')]:_0x3a1503[_0x8e54('0x40')];if(!_0x105a63[_0x8e54('0x41')][_0x8e54('0x47')](_0x8e54('0x48'))){_0x3ed1aa[_0x8e54('0x2b')]=qs[_0x8e54('0x2b')](_0x105a63[_0x8e54('0x41')][_0x8e54('0x2b')]);_0x3ed1aa[_0x8e54('0x2a')]=qs[_0x8e54('0x2a')](_0x105a63[_0x8e54('0x41')]['offset']);}_0x3ed1aa[_0x8e54('0x49')]=qs['sort'](_0x105a63[_0x8e54('0x41')][_0x8e54('0x4a')]);_0x3ed1aa[_0x8e54('0x4b')]=qs[_0x8e54('0x43')](_[_0x8e54('0x4c')](_0x105a63['query'],_0x3a1503[_0x8e54('0x43')]),_0x1d805b);if(_0x105a63[_0x8e54('0x41')][_0x8e54('0x4d')]){_0x3ed1aa[_0x8e54('0x4b')]=_[_0x8e54('0x4e')](_0x3ed1aa[_0x8e54('0x4b')],{'$or':_['map'](_0x1d805b,function(_0x3b3bd3){if(_0x3b3bd3[_0x8e54('0x3e')]!==_0x8e54('0x4f')){var _0x2ec413={};_0x2ec413[_0x3b3bd3[_0x8e54('0x35')]]={'$like':'%'+_0x105a63[_0x8e54('0x41')][_0x8e54('0x4d')]+'%'};return _0x2ec413;}})});}_0x3ed1aa=_[_0x8e54('0x4e')]({},_0x3ed1aa,_0x105a63[_0x8e54('0x50')]);var _0x333f31={'where':_0x3ed1aa[_0x8e54('0x4b')]};return db[_0x8e54('0x3b')][_0x8e54('0x29')](_0x333f31)[_0x8e54('0x1a')](function(_0x11fb0b){_0xfbda37['count']=_0x11fb0b;if(_0x105a63[_0x8e54('0x41')][_0x8e54('0x51')]){_0x3ed1aa['include']=[{'all':!![]}];}return db[_0x8e54('0x3b')][_0x8e54('0x52')](_0x3ed1aa);})[_0x8e54('0x1a')](function(_0x3aa49b){_0xfbda37[_0x8e54('0x53')]=_0x3aa49b;return _0xfbda37;})[_0x8e54('0x1a')](respondWithFilteredResult(_0x1c063a,_0x3ed1aa))[_0x8e54('0x24')](handleError(_0x1c063a,null));};exports['show']=function(_0x3505f2,_0x54f303){var _0x483c2a={'raw':![],'where':{'id':_0x3505f2[_0x8e54('0x54')]['id']},'include':[{'model':db[_0x8e54('0x38')],'as':_0x8e54('0x39')}]},_0x1b4455={};_0x1b4455['model']=_['keys'](db[_0x8e54('0x3b')][_0x8e54('0x3c')]);_0x1b4455['query']=_[_0x8e54('0x42')](_0x3505f2[_0x8e54('0x41')]);_0x1b4455[_0x8e54('0x43')]=_['intersection'](_0x1b4455[_0x8e54('0x40')],_0x1b4455['query']);_0x483c2a[_0x8e54('0x44')]=_[_0x8e54('0x55')](_0x1b4455['model'],qs[_0x8e54('0x45')](_0x3505f2[_0x8e54('0x41')][_0x8e54('0x45')]));_0x483c2a[_0x8e54('0x44')]=_0x483c2a[_0x8e54('0x44')][_0x8e54('0x46')]?_0x483c2a[_0x8e54('0x44')]:_0x1b4455[_0x8e54('0x40')];if(_0x3505f2['query'][_0x8e54('0x51')]){_0x483c2a['include']=[{'all':!![]}];}_0x483c2a=_[_0x8e54('0x4e')]({},_0x483c2a,_0x3505f2[_0x8e54('0x50')]);return db[_0x8e54('0x3b')][_0x8e54('0x56')](_0x483c2a)['then'](handleEntityNotFound(_0x54f303,null))[_0x8e54('0x1a')](respondWithResult(_0x54f303,null))[_0x8e54('0x24')](handleError(_0x54f303,null));};exports[_0x8e54('0x57')]=function(_0xddd230,_0x2a98f0){return db[_0x8e54('0x3b')]['create'](_0xddd230[_0x8e54('0x58')],{})[_0x8e54('0x1a')](function(_0x56b0fa){var _0x39ff4a=_0xddd230['user'][_0x8e54('0x32')]({'plain':!![]});if(!_0x39ff4a)throw new Error(_0x8e54('0x59'));if(_0x39ff4a['role']===_0x8e54('0x5a')){var _0x2ea972=_0x56b0fa[_0x8e54('0x32')]({'plain':!![]});var _0x38a5d6=_0x8e54('0x33');return db[_0x8e54('0x5b')][_0x8e54('0x56')]({'where':{'name':_0x38a5d6,'userProfileId':_0x39ff4a['userProfileId']},'raw':!![]})[_0x8e54('0x1a')](function(_0x3875a7){if(_0x3875a7&&_0x3875a7[_0x8e54('0x5c')]===0x0){return db[_0x8e54('0x34')]['create']({'name':_0x2ea972[_0x8e54('0x35')],'resourceId':_0x2ea972['id'],'type':_0x3875a7[_0x8e54('0x35')],'sectionId':_0x3875a7['id']},{})[_0x8e54('0x1a')](function(){return _0x56b0fa;});}else{return _0x56b0fa;}})[_0x8e54('0x24')](function(_0x4cf3b7){logger[_0x8e54('0x1f')]('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0x4cf3b7);throw _0x4cf3b7;});}return _0x56b0fa;})[_0x8e54('0x1a')](respondWithResult(_0x2a98f0,0xc9))['catch'](handleError(_0x2a98f0,null));};exports[_0x8e54('0x30')]=function(_0x3b6d13,_0x2983ff){if(_0x3b6d13['body']['id']){delete _0x3b6d13[_0x8e54('0x58')]['id'];}return db[_0x8e54('0x3b')]['find']({'where':{'id':_0x3b6d13[_0x8e54('0x54')]['id']},'include':[{'model':db['Pause'],'as':_0x8e54('0x39')}]})[_0x8e54('0x1a')](handleEntityNotFound(_0x2983ff,null))[_0x8e54('0x1a')](saveUpdates(_0x3b6d13[_0x8e54('0x58')],null))[_0x8e54('0x1a')](respondWithResult(_0x2983ff,null))[_0x8e54('0x24')](handleError(_0x2983ff,null));};exports[_0x8e54('0x31')]=function(_0x504022,_0x4257f9){return db[_0x8e54('0x3b')][_0x8e54('0x56')]({'where':{'id':_0x504022[_0x8e54('0x54')]['id']}})[_0x8e54('0x1a')](handleEntityNotFound(_0x4257f9,null))[_0x8e54('0x1a')](removeEntity(_0x4257f9,null))[_0x8e54('0x24')](handleError(_0x4257f9,null));};exports[_0x8e54('0x5d')]=function(_0x41e9ba,_0x2e1898){return db[_0x8e54('0x3b')][_0x8e54('0x5d')]()['then'](respondWithResult(_0x2e1898,null))[_0x8e54('0x24')](handleError(_0x2e1898,null));};exports[_0x8e54('0x5e')]=function(_0x2cd2c2,_0x370d27,_0x3689e6){if(_0x2cd2c2['body']['id']){delete _0x2cd2c2[_0x8e54('0x58')]['id'];}return db[_0x8e54('0x3b')]['find']({'where':{'id':_0x2cd2c2[_0x8e54('0x54')]['id']}})[_0x8e54('0x1a')](handleEntityNotFound(_0x370d27,null))[_0x8e54('0x1a')](function(_0x262c7e){if(_0x262c7e){_0x2cd2c2[_0x8e54('0x58')][_0x8e54('0x5f')]=_0x262c7e['id'];return db[_0x8e54('0x60')]['create'](_0x2cd2c2[_0x8e54('0x58')]);}})[_0x8e54('0x1a')](respondWithResult(_0x370d27,null))[_0x8e54('0x24')](handleError(_0x370d27,null));};exports[_0x8e54('0x61')]=function(_0x58e8a0,_0x378a04,_0x3d57a8){var _0x23671f={'raw':![],'where':{}};var _0x10388b={};var _0x1ed055={'count':0x0,'rows':[]};return db[_0x8e54('0x3b')][_0x8e54('0x62')]({'where':{'id':_0x58e8a0[_0x8e54('0x54')]['id']}})[_0x8e54('0x1a')](handleEntityNotFound(_0x378a04,null))[_0x8e54('0x1a')](function(_0x375318){if(_0x375318){_0x10388b[_0x8e54('0x40')]=_[_0x8e54('0x42')](db[_0x8e54('0x60')][_0x8e54('0x3c')]);_0x10388b[_0x8e54('0x41')]=_[_0x8e54('0x42')](_0x58e8a0[_0x8e54('0x41')]);_0x10388b[_0x8e54('0x43')]=_['intersection'](_0x10388b[_0x8e54('0x40')],_0x10388b[_0x8e54('0x41')]);_0x23671f[_0x8e54('0x44')]=_[_0x8e54('0x55')](_0x10388b[_0x8e54('0x40')],qs[_0x8e54('0x45')](_0x58e8a0[_0x8e54('0x41')]['fields']));_0x23671f[_0x8e54('0x44')]=_0x23671f[_0x8e54('0x44')]['length']?_0x23671f[_0x8e54('0x44')]:_0x10388b[_0x8e54('0x40')];if(!_0x58e8a0[_0x8e54('0x41')]['hasOwnProperty'](_0x8e54('0x48'))){_0x23671f['limit']=qs[_0x8e54('0x2b')](_0x58e8a0['query']['limit']);_0x23671f[_0x8e54('0x2a')]=qs[_0x8e54('0x2a')](_0x58e8a0[_0x8e54('0x41')][_0x8e54('0x2a')]);}_0x23671f[_0x8e54('0x49')]=qs[_0x8e54('0x4a')](_0x58e8a0[_0x8e54('0x41')][_0x8e54('0x4a')]);_0x23671f[_0x8e54('0x4b')]=qs[_0x8e54('0x43')](_[_0x8e54('0x4c')](_0x58e8a0[_0x8e54('0x41')],_0x10388b[_0x8e54('0x43')]));_0x23671f[_0x8e54('0x4b')][_0x8e54('0x5f')]=_0x375318['id'];if(_0x58e8a0['query']['filter']){_0x23671f[_0x8e54('0x4b')]=_[_0x8e54('0x4e')](_0x23671f[_0x8e54('0x4b')],{'$or':_[_0x8e54('0x3a')](_0x23671f['attributes'],function(_0x5807d1){var _0x32720c={};_0x32720c[_0x5807d1]={'$like':'%'+_0x58e8a0[_0x8e54('0x41')][_0x8e54('0x4d')]+'%'};return _0x32720c;})});}_0x23671f=_[_0x8e54('0x4e')]({},_0x23671f,_0x58e8a0['options']);return db[_0x8e54('0x60')][_0x8e54('0x29')]({'where':_0x23671f[_0x8e54('0x4b')]})[_0x8e54('0x1a')](function(_0xf97f3c){_0x1ed055[_0x8e54('0x29')]=_0xf97f3c;if(_0x58e8a0[_0x8e54('0x41')][_0x8e54('0x51')]){_0x23671f['include']=[{'all':!![]}];}return db[_0x8e54('0x60')]['findAll'](_0x23671f);})[_0x8e54('0x1a')](function(_0x40e7a1){_0x1ed055[_0x8e54('0x53')]=_0x40e7a1;return _0x1ed055;});}})[_0x8e54('0x1a')](respondWithFilteredResult(_0x378a04,_0x23671f))['catch'](handleError(_0x378a04,null));};exports[_0x8e54('0x63')]=function(_0x14048e,_0x568dea,_0x290b5d){return db[_0x8e54('0x3b')][_0x8e54('0x56')]({'where':{'id':_0x14048e[_0x8e54('0x54')]['id']}})[_0x8e54('0x1a')](handleEntityNotFound(_0x568dea,null))[_0x8e54('0x1a')](function(_0xe28e8){if(_0xe28e8){return _0xe28e8[_0x8e54('0x63')](_0x14048e[_0x8e54('0x41')][_0x8e54('0x64')]);}})[_0x8e54('0x1a')](respondWithStatusCode(_0x568dea,null))[_0x8e54('0x24')](handleError(_0x568dea,null));};exports['addAnswer']=function(_0x5d1517,_0x4d14b8,_0x399a66){if(_0x5d1517[_0x8e54('0x58')]['id']){delete _0x5d1517[_0x8e54('0x58')]['id'];}return db[_0x8e54('0x3b')][_0x8e54('0x56')]({'where':{'id':_0x5d1517[_0x8e54('0x54')]['id']}})[_0x8e54('0x1a')](handleEntityNotFound(_0x4d14b8,null))[_0x8e54('0x1a')](function(_0x241d37){if(_0x241d37){_0x5d1517['body'][_0x8e54('0x5f')]=_0x241d37['id'];return db[_0x8e54('0x65')]['create'](_0x5d1517[_0x8e54('0x58')]);}})[_0x8e54('0x1a')](respondWithResult(_0x4d14b8,null))['catch'](handleError(_0x4d14b8,null));};exports['getAnswers']=function(_0x2e6fa0,_0x376edb,_0x2c7414){var _0x264cfb={'raw':![],'where':{}};var _0x2eecd5={};var _0x4b576d={'count':0x0,'rows':[]};return db[_0x8e54('0x3b')][_0x8e54('0x62')]({'where':{'id':_0x2e6fa0[_0x8e54('0x54')]['id']}})['then'](handleEntityNotFound(_0x376edb,null))[_0x8e54('0x1a')](function(_0x466d0d){if(_0x466d0d){_0x2eecd5[_0x8e54('0x40')]=_['keys'](db[_0x8e54('0x65')][_0x8e54('0x3c')]);_0x2eecd5[_0x8e54('0x41')]=_['keys'](_0x2e6fa0[_0x8e54('0x41')]);_0x2eecd5[_0x8e54('0x43')]=_['intersection'](_0x2eecd5[_0x8e54('0x40')],_0x2eecd5[_0x8e54('0x41')]);_0x264cfb[_0x8e54('0x44')]=_[_0x8e54('0x55')](_0x2eecd5[_0x8e54('0x40')],qs[_0x8e54('0x45')](_0x2e6fa0[_0x8e54('0x41')][_0x8e54('0x45')]));_0x264cfb[_0x8e54('0x44')]=_0x264cfb[_0x8e54('0x44')]['length']?_0x264cfb[_0x8e54('0x44')]:_0x2eecd5['model'];if(!_0x2e6fa0[_0x8e54('0x41')][_0x8e54('0x47')](_0x8e54('0x48'))){_0x264cfb[_0x8e54('0x2b')]=qs[_0x8e54('0x2b')](_0x2e6fa0[_0x8e54('0x41')][_0x8e54('0x2b')]);_0x264cfb[_0x8e54('0x2a')]=qs[_0x8e54('0x2a')](_0x2e6fa0['query'][_0x8e54('0x2a')]);}_0x264cfb[_0x8e54('0x49')]=qs[_0x8e54('0x4a')](_0x2e6fa0[_0x8e54('0x41')][_0x8e54('0x4a')]);_0x264cfb[_0x8e54('0x4b')]=qs[_0x8e54('0x43')](_[_0x8e54('0x4c')](_0x2e6fa0[_0x8e54('0x41')],_0x2eecd5[_0x8e54('0x43')]));_0x264cfb['where'][_0x8e54('0x5f')]=_0x466d0d['id'];if(_0x2e6fa0[_0x8e54('0x41')][_0x8e54('0x4d')]){_0x264cfb[_0x8e54('0x4b')]=_[_0x8e54('0x4e')](_0x264cfb[_0x8e54('0x4b')],{'$or':_[_0x8e54('0x3a')](_0x264cfb['attributes'],function(_0x228d69){var _0x57e733={};_0x57e733[_0x228d69]={'$like':'%'+_0x2e6fa0[_0x8e54('0x41')][_0x8e54('0x4d')]+'%'};return _0x57e733;})});}_0x264cfb=_[_0x8e54('0x4e')]({},_0x264cfb,_0x2e6fa0[_0x8e54('0x50')]);return db[_0x8e54('0x65')][_0x8e54('0x29')]({'where':_0x264cfb[_0x8e54('0x4b')]})[_0x8e54('0x1a')](function(_0x1359e3){_0x4b576d[_0x8e54('0x29')]=_0x1359e3;if(_0x2e6fa0[_0x8e54('0x41')][_0x8e54('0x51')]){_0x264cfb[_0x8e54('0x66')]=[{'all':!![]}];}return db[_0x8e54('0x65')][_0x8e54('0x52')](_0x264cfb);})[_0x8e54('0x1a')](function(_0x31a350){_0x4b576d['rows']=_0x31a350;return _0x4b576d;});}})['then'](respondWithFilteredResult(_0x376edb,_0x264cfb))['catch'](handleError(_0x376edb,null));};exports['removeAnswers']=function(_0x21b78b,_0x2ecb9f,_0x3fab04){return db['OpenchannelAccount'][_0x8e54('0x56')]({'where':{'id':_0x21b78b[_0x8e54('0x54')]['id']}})[_0x8e54('0x1a')](handleEntityNotFound(_0x2ecb9f,null))[_0x8e54('0x1a')](function(_0x537091){if(_0x537091){return _0x537091[_0x8e54('0x67')](_0x21b78b['query'][_0x8e54('0x64')]);}})[_0x8e54('0x1a')](respondWithStatusCode(_0x2ecb9f,null))['catch'](handleError(_0x2ecb9f,null));};exports[_0x8e54('0x68')]=function(_0x1dcd12,_0x16c206,_0x391004){var _0x3fba0d={'body':_0x1dcd12[_0x8e54('0x58')],'channel':_0x8e54('0x69')};var _0x45aaed=[];var _0xfa87eb=[];var _0x519e7f={};var _0x5863ae=![];return db[_0x8e54('0x6a')][_0x8e54('0x5d')]()[_0x8e54('0x1a')](function(_0x349c7c){if(!_0x349c7c){throw new db[(_0x8e54('0x6b'))][(_0x8e54('0x6c'))](_0x8e54('0x6d'));}_0x45aaed=_[_0x8e54('0x6e')](_[_0x8e54('0x42')](_0x349c7c),[_0x8e54('0x6f'),_0x8e54('0x70')]);_0xfa87eb=_[_0x8e54('0x6e')](_[_0x8e54('0x42')](_0x349c7c),[_0x8e54('0x6f'),_0x8e54('0x70'),'CompanyId',_0x8e54('0x71')]);if(_0x1dcd12[_0x8e54('0x58')]['id']){delete _0x1dcd12[_0x8e54('0x58')]['id'];}if(_['isNil'](_0x1dcd12[_0x8e54('0x58')][_0x8e54('0x72')])){throw new db[(_0x8e54('0x6b'))]['ValidationError'](_0x8e54('0x73'));}if(_[_0x8e54('0x74')](_0x1dcd12['body'][_0x8e54('0x58')])||_0x1dcd12['body'][_0x8e54('0x58')]===''){throw new db['Sequelize'][(_0x8e54('0x6c'))]('body\x20is\x20mandatory\x20and\x20not\x20empty');}if(_[_0x8e54('0x74')](_0x1dcd12['body']['mapKey'])){throw new db[(_0x8e54('0x6b'))][(_0x8e54('0x6c'))]('mapKey\x20is\x20mandatory,\x20please\x20use\x20one\x20of\x20these:\x20'+_0xfa87eb);}if(!_[_0x8e54('0x75')](_0xfa87eb,_0x1dcd12[_0x8e54('0x58')][_0x8e54('0x76')])){throw new db['Sequelize'][(_0x8e54('0x6c'))]('mapKey\x20invalid,\x20please\x20use\x20one\x20of\x20these:\x20'+_0xfa87eb);}_0x519e7f[_0x1dcd12['body'][_0x8e54('0x76')]]=_0x1dcd12[_0x8e54('0x58')][_0x8e54('0x72')];})['then'](function(){return db['OpenchannelAccount']['find']({'where':{'id':_0x1dcd12[_0x8e54('0x54')]['id']},'include':[{'model':db[_0x8e54('0x77')],'as':_0x8e54('0x78'),'include':[{'model':db[_0x8e54('0x6a')],'as':_0x8e54('0x79'),'where':_0x519e7f,'limit':0x1,'order':[[_0x8e54('0x70'),_0x8e54('0x7a')]]}]},{'model':db[_0x8e54('0x7b')],'as':_0x8e54('0x7c')}]});})[_0x8e54('0x1a')](handleEntityNotFound(_0x16c206,null))['then'](function(_0x177f1a){if(_0x177f1a&&_0x177f1a[_0x8e54('0x78')]){_0x3fba0d[_0x8e54('0x7d')]=_0x177f1a;_0x3fba0d[_0x8e54('0x7e')]=_0x177f1a[_0x8e54('0x7c')];_0x3fba0d[_0x8e54('0x7f')]=_0x177f1a[_0x8e54('0x78')];_0x3fba0d[_0x8e54('0x7e')]=_[_0x8e54('0x80')](_0x3fba0d[_0x8e54('0x7e')],[_0x8e54('0x81')],[_0x8e54('0x82')]);if(_0x3fba0d[_0x8e54('0x7d')][_0x8e54('0x7c')]){delete _0x3fba0d[_0x8e54('0x7d')][_0x8e54('0x7c')];}if(_0x3fba0d[_0x8e54('0x7d')][_0x8e54('0x78')]&&_0x3fba0d['account']['List']['Contacts']['length']){return _0x3fba0d[_0x8e54('0x7d')][_0x8e54('0x78')][_0x8e54('0x79')][0x0];}var _0x51943c=_[_0x8e54('0x15')](_0x1dcd12[_0x8e54('0x58')],{'firstName':_0x1dcd12[_0x8e54('0x58')]['from'],'ListId':_0x177f1a[_0x8e54('0x71')]});_0x51943c[_0x1dcd12[_0x8e54('0x58')][_0x8e54('0x76')]]=_0x1dcd12[_0x8e54('0x58')][_0x8e54('0x72')];return db[_0x8e54('0x6a')][_0x8e54('0x57')](_0x51943c,{'fields':_0x45aaed,'raw':!![]});}})[_0x8e54('0x1a')](handleEntityNotFound(_0x16c206,null))[_0x8e54('0x1a')](function(_0x581934){_0x3fba0d[_0x8e54('0x83')]=_0x581934;if(_0x581934){var _0x194de9={'ContactId':_0x581934['id'],'OpenchannelAccountId':_0x1dcd12['params']['id'],'from':(_0x581934['firstName']||'')+'\x20'+(_0x581934[_0x8e54('0x84')]||'')};var _0x4cbaab={'OpenchannelAccountId':_0x1dcd12[_0x8e54('0x54')]['id'],'closed':![]};if(_0x1dcd12[_0x8e54('0x58')]['threadId']){_0x4cbaab[_0x8e54('0x85')]=_0x1dcd12['body'][_0x8e54('0x85')];return db[_0x8e54('0x86')][_0x8e54('0x56')]({'where':_0x4cbaab})[_0x8e54('0x1a')](function(_0x48a8eb){if(_0x48a8eb){return[_0x48a8eb,![]];}_0x194de9[_0x8e54('0x85')]=_0x1dcd12[_0x8e54('0x58')][_0x8e54('0x85')];_0x194de9['externalUrl']=_0x1dcd12[_0x8e54('0x58')][_0x8e54('0x87')];return db[_0x8e54('0x86')][_0x8e54('0x57')](_0x194de9)[_0x8e54('0x1a')](function(_0x4e605f){return[_0x4e605f,!![]];});});}else{_0x4cbaab['threadId']=null;}_0x4cbaab[_0x8e54('0x88')]=_0x581934['id'];return db['OpenchannelInteraction']['find']({'where':_0x4cbaab})[_0x8e54('0x1a')](function(_0x470a53){if(_0x470a53){return[_0x470a53,![]];}return db[_0x8e54('0x86')][_0x8e54('0x57')](_0x194de9)['then'](function(_0x5c0a1e){return[_0x5c0a1e,!![]];});});}})[_0x8e54('0x89')](function(_0x21db2f,_0x34042b){if(_0x21db2f){_0x5863ae=_0x34042b;if(!_0x34042b){var _0x5f2f1f={'from':(_0x3fba0d[_0x8e54('0x83')][_0x8e54('0x8a')]||'')+'\x20'+(_0x3fba0d[_0x8e54('0x83')]['lastName']||'')};if(_0x1dcd12[_0x8e54('0x58')]['threadId']&&_0x1dcd12[_0x8e54('0x58')]['messageId']&&_0x1dcd12['body'][_0x8e54('0x85')]!=_0x1dcd12['body'][_0x8e54('0x8b')]){_0x5f2f1f[_0x8e54('0x85')]=_0x1dcd12[_0x8e54('0x58')][_0x8e54('0x8b')];}return _0x21db2f[_0x8e54('0x30')](_0x5f2f1f);}else{return _0x21db2f;}}})['then'](function(_0x5f3395){_0x3fba0d[_0x8e54('0x8c')]=_0x5f3395[_0x8e54('0x32')]({'plain':!![]});_0x3fba0d[_0x8e54('0x8c')][_0x8e54('0x8d')]=_0x5863ae;if(_0x3fba0d[_0x8e54('0x8c')][_0x8e54('0x8d')]){if(_0x3fba0d[_0x8e54('0x7d')][_0x8e54('0x8e')]){_0x3fba0d[_0x8e54('0x7e')][_0x8e54('0x8f')]({'id':0x0,'priority':_0x3fba0d[_0x8e54('0x7e')]['length']+0x1,'app':'close','appdata':_0x8e54('0x90'),'interval':_0x8e54('0x91')});}}return db[_0x8e54('0x92')][_0x8e54('0x57')]({'body':_0x1dcd12[_0x8e54('0x58')][_0x8e54('0x58')],'OpenchannelAccountId':_0x1dcd12[_0x8e54('0x54')]['id'],'OpenchannelInteractionId':_0x5f3395['id'],'direction':'in','ContactId':_0x3fba0d[_0x8e54('0x83')]['id'],'AttachmentId':_0x1dcd12['body'][_0x8e54('0x93')]});})[_0x8e54('0x1a')](function(_0x2f906c){_0x3fba0d[_0x8e54('0x21')]=_0x2f906c;if(!_0x3fba0d[_0x8e54('0x8c')][_0x8e54('0x94')])return;return db[_0x8e54('0x95')][_0x8e54('0x56')]({'attributes':['id',_0x8e54('0x35')],'where':{'id':_0x3fba0d[_0x8e54('0x8c')]['UserId']}});})[_0x8e54('0x1a')](function(_0x3b3344){if(_0x3b3344){_0x3fba0d[_0x8e54('0x7e')]['unshift']({'id':0x0,'priority':0x0,'app':_0x8e54('0x96'),'appdata':_0x3b3344[_0x8e54('0x35')]+','+(_0x3fba0d[_0x8e54('0x7d')][_0x8e54('0x97')]||0xa),'interval':'*,*,*,*'});}if(!_0x3fba0d[_0x8e54('0x8c')]['queueId'])return;return db[_0x8e54('0x98')]['find']({'attributes':['id',_0x8e54('0x35')],'where':{'id':_0x3fba0d['interaction'][_0x8e54('0x99')]}});})['then'](function(_0x1f93bc){if(_0x1f93bc){_0x3fba0d[_0x8e54('0x7e')]['unshift']({'id':0x0,'priority':0x1,'app':_0x8e54('0x9a'),'appdata':_0x1f93bc[_0x8e54('0x35')]+','+(_0x3fba0d[_0x8e54('0x7d')]['waitForTheAssignedQueue']||0x12c),'interval':_0x8e54('0x91')});}return respondWithRpcPromise(_0x8e54('0x9b'),'startRouting',_0x3fba0d);})[_0x8e54('0x1a')](function(_0x7ba84f){respondWithRpcPromise(_0x8e54('0x9c'),_0x8e54('0x9c'),{'event':_0x8e54('0x68'),'message':_0x7ba84f},client9002);return _0x7ba84f;})['then'](respondWithResult(_0x16c206,null))[_0x8e54('0x24')](handleError(_0x16c206,null));};exports[_0x8e54('0x9d')]=function(_0x4c7a41,_0x4771c0){var _0x53767c=_0x4c7a41[_0x8e54('0x54')]['id'];var _0x129197=_0x4c7a41[_0x8e54('0x58')];var _0xa5c2a9=0xc8;var _0x3fb50e=null;return db[_0x8e54('0x9e')][_0x8e54('0x9f')]({'isolationLevel':db[_0x8e54('0x9e')]['Transaction'][_0x8e54('0xa0')][_0x8e54('0xa1')]},function(_0x53905e){return db[_0x8e54('0x3b')][_0x8e54('0x62')]({'where':{'id':_0x53767c},'transaction':_0x53905e})['then'](function(_0x1347dc){if(_0x1347dc){return db[_0x8e54('0x7b')][_0x8e54('0x31')]({'where':{'OpenchannelAccountId':_0x53767c},'transaction':_0x53905e})[_0x8e54('0x1a')](function(){var _0x2c3cc9=_[_0x8e54('0x3a')](_0x129197,function(_0x45fa1b){_0x45fa1b[_0x8e54('0x5f')]=_0x53767c;return _0x45fa1b;});return db['OpenchannelApplication'][_0x8e54('0xa2')](_0x2c3cc9,{'transaction':_0x53905e});});}else{_0xa5c2a9=0x194;_0x3fb50e=[];}});})[_0x8e54('0x1a')](function(){if(_0xa5c2a9!==0x194){return db[_0x8e54('0x7b')][_0x8e54('0xa3')]({'where':{'OpenchannelAccountId':_0x53767c},'order':_0x8e54('0x81')})[_0x8e54('0x1a')](function(_0x1a7071){_0x3fb50e=_0x1a7071;});}})[_0x8e54('0x24')](function(_0x26a1b3){_0xa5c2a9=0x1f4;logger[_0x8e54('0x1f')](_0x26a1b3[_0x8e54('0xa4')]);if(_0x26a1b3['name']){delete _0x26a1b3['name'];}_0x3fb50e=_0x26a1b3;})[_0x8e54('0xa5')](function(){if(_0x3fb50e===null){_0x4771c0[_0x8e54('0x25')](_0xa5c2a9);}else{if(_0xa5c2a9===0x1f4){_0x4771c0[_0x8e54('0x26')](_0xa5c2a9)[_0x8e54('0x36')](_0x3fb50e);}else{_0x4771c0['status'](_0xa5c2a9)[_0x8e54('0x28')](_0x3fb50e);}}});};exports[_0x8e54('0xa6')]=function(_0x4521d8,_0x42d768,_0x5b8f95){var _0x1e64dd={};var _0x2d2d5f={};var _0x244801;var _0x52f037;return db[_0x8e54('0x3b')]['findOne']({'where':{'id':_0x4521d8[_0x8e54('0x54')]['id']}})[_0x8e54('0x1a')](handleEntityNotFound(_0x42d768,null))['then'](function(_0x2bac97){if(_0x2bac97){_0x244801=_0x2bac97;_0x2d2d5f[_0x8e54('0x40')]=_[_0x8e54('0x42')](db[_0x8e54('0x7b')]['rawAttributes']);_0x2d2d5f['query']=_[_0x8e54('0x42')](_0x4521d8['query']);_0x2d2d5f['filters']=_[_0x8e54('0x55')](_0x2d2d5f['model'],_0x2d2d5f[_0x8e54('0x41')]);_0x1e64dd[_0x8e54('0x44')]=_['intersection'](_0x2d2d5f[_0x8e54('0x40')],qs[_0x8e54('0x45')](_0x4521d8[_0x8e54('0x41')][_0x8e54('0x45')]));_0x1e64dd[_0x8e54('0x44')]=_0x1e64dd[_0x8e54('0x44')]['length']?_0x1e64dd[_0x8e54('0x44')]:_0x2d2d5f['model'];_0x1e64dd[_0x8e54('0x49')]=qs[_0x8e54('0x4a')](_0x4521d8[_0x8e54('0x41')][_0x8e54('0x4a')]);_0x1e64dd['where']=qs[_0x8e54('0x43')](_[_0x8e54('0x4c')](_0x4521d8[_0x8e54('0x41')],_0x2d2d5f['filters']));if(_0x4521d8[_0x8e54('0x41')][_0x8e54('0x4d')]){_0x1e64dd[_0x8e54('0x4b')]=_[_0x8e54('0x4e')](_0x1e64dd[_0x8e54('0x4b')],{'$or':_[_0x8e54('0x3a')](_0x1e64dd[_0x8e54('0x44')],function(_0x3bf293){var _0x4d1a5f={};_0x4d1a5f[_0x3bf293]={'$like':'%'+_0x4521d8[_0x8e54('0x41')]['filter']+'%'};return _0x4d1a5f;})});}_0x1e64dd=_['merge']({},_0x1e64dd,_0x4521d8['options']);return _0x244801['getApplications'](_0x1e64dd);}})[_0x8e54('0x1a')](function(_0x43d997){if(_0x43d997){_0x52f037=_0x43d997[_0x8e54('0x46')];if(!_0x4521d8[_0x8e54('0x41')][_0x8e54('0x47')]('nolimit')){_0x1e64dd['limit']=qs[_0x8e54('0x2b')](_0x4521d8[_0x8e54('0x41')][_0x8e54('0x2b')]);_0x1e64dd[_0x8e54('0x2a')]=qs[_0x8e54('0x2a')](_0x4521d8['query'][_0x8e54('0x2a')]);}return _0x244801[_0x8e54('0xa6')](_0x1e64dd);}})['then'](function(_0x36eb25){if(_0x36eb25){return _0x36eb25?{'count':_0x52f037,'rows':_0x36eb25}:null;}})[_0x8e54('0x1a')](respondWithResult(_0x42d768,null))['catch'](handleError(_0x42d768,null));};exports[_0x8e54('0xa7')]=function(_0x2a6beb,_0x4b210c,_0x58e7a0){var _0x28a63c={'raw':![],'where':{}};var _0x40db6e={};var _0xd2bae2={'count':0x0,'rows':[]};return db[_0x8e54('0x3b')]['findOne']({'where':{'id':_0x2a6beb[_0x8e54('0x54')]['id']}})[_0x8e54('0x1a')](handleEntityNotFound(_0x4b210c,null))[_0x8e54('0x1a')](function(_0x3ac96a){if(_0x3ac96a){_0x40db6e[_0x8e54('0x40')]=_[_0x8e54('0x42')](db['OpenchannelInteraction'][_0x8e54('0x3c')]);_0x40db6e[_0x8e54('0x41')]=_['keys'](_0x2a6beb[_0x8e54('0x41')]);_0x40db6e[_0x8e54('0x43')]=_['intersection'](_0x40db6e[_0x8e54('0x40')],_0x40db6e[_0x8e54('0x41')]);_0x28a63c['attributes']=_[_0x8e54('0x55')](_0x40db6e[_0x8e54('0x40')],qs[_0x8e54('0x45')](_0x2a6beb[_0x8e54('0x41')][_0x8e54('0x45')]));_0x28a63c[_0x8e54('0x44')]=_0x28a63c['attributes'][_0x8e54('0x46')]?_0x28a63c[_0x8e54('0x44')]:_0x40db6e['model'];if(!_0x2a6beb['query'][_0x8e54('0x47')]('nolimit')){_0x28a63c[_0x8e54('0x2b')]=qs[_0x8e54('0x2b')](_0x2a6beb[_0x8e54('0x41')][_0x8e54('0x2b')]);_0x28a63c[_0x8e54('0x2a')]=qs[_0x8e54('0x2a')](_0x2a6beb[_0x8e54('0x41')][_0x8e54('0x2a')]);}_0x28a63c[_0x8e54('0x49')]=qs[_0x8e54('0x4a')](_0x2a6beb[_0x8e54('0x41')][_0x8e54('0x4a')]);_0x28a63c[_0x8e54('0x4b')]=qs['filters'](_[_0x8e54('0x4c')](_0x2a6beb[_0x8e54('0x41')],_0x40db6e[_0x8e54('0x43')]));_0x28a63c[_0x8e54('0x4b')][_0x8e54('0x5f')]=_0x3ac96a['id'];if(_0x2a6beb[_0x8e54('0x41')][_0x8e54('0x4d')]){_0x28a63c[_0x8e54('0x4b')]=_[_0x8e54('0x4e')](_0x28a63c['where'],{'$or':_[_0x8e54('0x3a')](_0x28a63c[_0x8e54('0x44')],function(_0x334047){var _0x25d3cc={};_0x25d3cc[_0x334047]={'$like':'%'+_0x2a6beb[_0x8e54('0x41')]['filter']+'%'};return _0x25d3cc;})});}_0x28a63c=_[_0x8e54('0x4e')]({},_0x28a63c,_0x2a6beb['options']);return db[_0x8e54('0x86')][_0x8e54('0x29')]({'where':_0x28a63c['where']})[_0x8e54('0x1a')](function(_0x32efbe){_0xd2bae2['count']=_0x32efbe;if(_0x2a6beb[_0x8e54('0x41')][_0x8e54('0x51')]){_0x28a63c['include']=[{'model':db[_0x8e54('0x6a')],'as':_0x8e54('0xa8'),'required':![]},{'model':db[_0x8e54('0x95')],'as':'Owner','attributes':['name',_0x8e54('0xa9'),'internal'],'required':![]},{'model':db[_0x8e54('0xaa')],'as':'Tags','attributes':['id',_0x8e54('0x35'),_0x8e54('0xab')],'where':_0x2a6beb[_0x8e54('0x41')][_0x8e54('0xac')]?{'id':_0x2a6beb['query'][_0x8e54('0xac')]}:undefined,'required':_0x2a6beb['query']['tag']?!![]:![]}];}return db['OpenchannelInteraction'][_0x8e54('0x52')](_0x28a63c);})['then'](function(_0x2a1f9a){_0xd2bae2[_0x8e54('0x53')]=_0x2a1f9a;return _0xd2bae2;});}})['then'](respondWithFilteredResult(_0x4b210c,_0x28a63c))['catch'](handleError(_0x4b210c,null));};exports[_0x8e54('0xad')]=function(_0x377172,_0x514094,_0x581f50){return db[_0x8e54('0x3b')][_0x8e54('0x56')]({'where':{'id':_0x377172[_0x8e54('0x54')]['id']}})[_0x8e54('0x1a')](handleEntityNotFound(_0x514094,null))['then'](function(_0x2b6229){if(_0x2b6229){return _0x2b6229[_0x8e54('0xad')](_0x377172[_0x8e54('0x58')]['ids'],_[_0x8e54('0xae')](_0x377172[_0x8e54('0x58')],[_0x8e54('0x64'),'id'])||{})[_0x8e54('0x89')](function(_0x558876){for(var _0x5821ef=0x0;_0x5821ef<_0x377172['body'][_0x8e54('0x64')][_0x8e54('0x46')];_0x5821ef+=0x1){socket[_0x8e54('0xaf')](_0x8e54('0xb0'),{'UserId':Number(_0x377172['body'][_0x8e54('0x64')][_0x5821ef]),'OpenchannelAccountId':Number(_0x377172['params']['id'])});}return _0x558876;});}})['then'](respondWithResult(_0x514094,null))['catch'](handleError(_0x514094,null));};exports[_0x8e54('0xb1')]=function(_0x53e706,_0x4b2c32,_0x321abb){return db[_0x8e54('0x3b')]['find']({'where':{'id':_0x53e706[_0x8e54('0x54')]['id']}})[_0x8e54('0x1a')](handleEntityNotFound(_0x4b2c32,null))[_0x8e54('0x1a')](function(_0x33fd49){if(_0x33fd49){return _0x33fd49[_0x8e54('0xb1')](_0x53e706[_0x8e54('0x41')][_0x8e54('0x64')])[_0x8e54('0x1a')](function(){if(_[_0x8e54('0xb2')](_0x53e706[_0x8e54('0x41')][_0x8e54('0x64')])){for(var _0x14e783=0x0;_0x14e783<_0x53e706['query'][_0x8e54('0x64')][_0x8e54('0x46')];_0x14e783+=0x1){socket['emit'](_0x8e54('0xb3'),{'UserId':Number(_0x53e706[_0x8e54('0x41')][_0x8e54('0x64')][_0x14e783]),'OpenchannelAccountId':Number(_0x53e706[_0x8e54('0x54')]['id'])});}}else{socket[_0x8e54('0xaf')]('userOpenchannelAccount:remove',{'UserId':Number(_0x53e706[_0x8e54('0x41')][_0x8e54('0x64')]),'OpenchannelAccountId':Number(_0x53e706[_0x8e54('0x54')]['id'])});}});}})[_0x8e54('0x1a')](respondWithStatusCode(_0x4b2c32,null))['catch'](handleError(_0x4b2c32,null));};exports['getAgents']=function(_0x4cfab7,_0x86cafd,_0x2fb3f4){var _0x5b7bf9={};var _0x25693e={};var _0xe1930c;var _0x1b5e6c;return db[_0x8e54('0x3b')]['findOne']({'where':{'id':_0x4cfab7['params']['id']}})[_0x8e54('0x1a')](handleEntityNotFound(_0x86cafd,null))[_0x8e54('0x1a')](function(_0xd7acc0){if(_0xd7acc0){_0xe1930c=_0xd7acc0;_0x25693e[_0x8e54('0x40')]=_[_0x8e54('0x42')](db['User'][_0x8e54('0x3c')]);_0x25693e[_0x8e54('0x41')]=_[_0x8e54('0x42')](_0x4cfab7['query']);_0x25693e[_0x8e54('0x43')]=_[_0x8e54('0x55')](_0x25693e[_0x8e54('0x40')],_0x25693e[_0x8e54('0x41')]);_0x5b7bf9[_0x8e54('0x44')]=_[_0x8e54('0x55')](_0x25693e[_0x8e54('0x40')],qs[_0x8e54('0x45')](_0x4cfab7[_0x8e54('0x41')]['fields']));_0x5b7bf9[_0x8e54('0x44')]=_0x5b7bf9['attributes'][_0x8e54('0x46')]?_0x5b7bf9[_0x8e54('0x44')]:_0x25693e[_0x8e54('0x40')];_0x5b7bf9[_0x8e54('0x49')]=qs[_0x8e54('0x4a')](_0x4cfab7[_0x8e54('0x41')]['sort']);_0x5b7bf9[_0x8e54('0x4b')]=qs[_0x8e54('0x43')](_[_0x8e54('0x4c')](_0x4cfab7['query'],_0x25693e['filters']));if(_0x4cfab7['query'][_0x8e54('0x4d')]){_0x5b7bf9[_0x8e54('0x4b')]=_[_0x8e54('0x4e')](_0x5b7bf9[_0x8e54('0x4b')],{'$or':_['map'](_0x5b7bf9[_0x8e54('0x44')],function(_0x9a8635){var _0x2342ef={};_0x2342ef[_0x9a8635]={'$like':'%'+_0x4cfab7['query'][_0x8e54('0x4d')]+'%'};return _0x2342ef;})});}_0x5b7bf9=_[_0x8e54('0x4e')]({},_0x5b7bf9,_0x4cfab7['options']);return _0xe1930c[_0x8e54('0xb4')](_0x5b7bf9);}})[_0x8e54('0x1a')](function(_0x72963b){if(_0x72963b){_0x1b5e6c=_0x72963b[_0x8e54('0x46')];if(!_0x4cfab7[_0x8e54('0x41')][_0x8e54('0x47')]('nolimit')){_0x5b7bf9[_0x8e54('0x2b')]=qs[_0x8e54('0x2b')](_0x4cfab7[_0x8e54('0x41')][_0x8e54('0x2b')]);_0x5b7bf9[_0x8e54('0x2a')]=qs[_0x8e54('0x2a')](_0x4cfab7['query'][_0x8e54('0x2a')]);}return _0xe1930c[_0x8e54('0xb4')](_0x5b7bf9);}})[_0x8e54('0x1a')](function(_0x1b226f){if(_0x1b226f){return _0x1b226f?{'count':_0x1b5e6c,'rows':_0x1b226f}:null;}})['then'](respondWithResult(_0x86cafd,null))['catch'](handleError(_0x86cafd,null));};exports[_0x8e54('0x36')]=function(_0x23a4f6,_0x4eca3a,_0x16a130){var _0x9163b,_0x515717,_0x3285e1;if(_['isNil'](_0x23a4f6[_0x8e54('0x58')][_0x8e54('0x58')])||_0x23a4f6[_0x8e54('0x58')][_0x8e54('0x58')]===''){throw new db[(_0x8e54('0x6b'))]['ValidationError'](_0x8e54('0xb5'));}if(_['isNil'](_0x23a4f6[_0x8e54('0x58')]['to'])){}_0x9163b=_0x23a4f6[_0x8e54('0x58')]['to'];return db[_0x8e54('0x3b')][_0x8e54('0x62')]({'where':{'id':_0x23a4f6[_0x8e54('0x54')]['id']}})[_0x8e54('0x1a')](handleEntityNotFound(_0x4eca3a,null))[_0x8e54('0x1a')](function(_0x1d1784){if(_0x1d1784){return db['OpenchannelAccount'][_0x8e54('0x56')]({'where':{'id':_0x1d1784['id']},'include':[{'model':db['CmList'],'as':'List','include':[{'model':db[_0x8e54('0x6a')],'as':_0x8e54('0x79'),'where':{[_0x1d1784['mapKey']]:_0x9163b},'limit':0x1,'order':[[_0x8e54('0x70'),_0x8e54('0x7a')]]}]}]})[_0x8e54('0x1a')](handleEntityNotFound(_0x4eca3a,null))[_0x8e54('0x1a')](function(_0x36f390){if(_0x36f390&&_0x36f390[_0x8e54('0x78')]){_0x515717=_0x36f390[_0x8e54('0x32')]({'plain':!![]});if(_0x515717[_0x8e54('0x78')]&&_0x515717[_0x8e54('0x78')][_0x8e54('0x79')]['length']){return _0x515717[_0x8e54('0x78')][_0x8e54('0x79')][0x0];}return db[_0x8e54('0x6a')][_0x8e54('0x57')](_['defaults'](_0x23a4f6['body'],{'firstName':_0x9163b,[_0x36f390[_0x8e54('0x76')]]:_0x9163b,'phone':_0x9163b,'ListId':_0x515717[_0x8e54('0x71')]}));}})[_0x8e54('0x1a')](handleEntityNotFound(_0x4eca3a,null))[_0x8e54('0x1a')](function(_0x1dd853){if(_0x1dd853){_0x3285e1=_0x1dd853;return db[_0x8e54('0x86')]['find']({'where':{'ContactId':_0x3285e1['id'],'closed':![],'OpenchannelAccountId':_0x515717['id']}})[_0x8e54('0x1a')](function(_0x67f504){if(_0x67f504){return[_0x67f504,![]];}return db[_0x8e54('0x86')]['create']({'UserId':_0x23a4f6[_0x8e54('0x5a')]['id'],'ContactId':_0x3285e1['id'],'OpenchannelAccountId':_0x515717['id'],'lastMsgDirection':_0x8e54('0xb6'),'firstMsgDirection':_0x8e54('0xb6'),'Messages':[_[_0x8e54('0x4e')](_0x23a4f6['body'],{'read':![],'body':_0x23a4f6[_0x8e54('0x58')]['body'],'OpenchannelAccountId':_0x515717['id'],'UserId':_0x23a4f6[_0x8e54('0x5a')]['id'],'ContactId':_0x3285e1['id']})]},{'include':[{'model':db[_0x8e54('0x92')],'as':_0x8e54('0xb7')}]})['then'](function(_0x45f0e1){return[_0x45f0e1,!![]];});});}})[_0x8e54('0x89')](function(_0x391303,_0x2bc1ed){if(_0x2bc1ed){return _0x391303;}return db['OpenchannelMessage'][_0x8e54('0x57')](_[_0x8e54('0x4e')](_0x23a4f6[_0x8e54('0x58')],{'read':![],'body':_0x23a4f6[_0x8e54('0x58')][_0x8e54('0x58')],'OpenchannelAccountId':_0x515717['id'],'OpenchannelInteractionId':_0x391303['id'],'UserId':_0x23a4f6[_0x8e54('0x5a')]['id'],'ContactId':_0x3285e1['id']}))[_0x8e54('0x1a')](function(_0x2d5cf2){_0x391303[_0x8e54('0xb8')][_0x8e54('0xb7')]=[];_0x391303[_0x8e54('0xb8')][_0x8e54('0xb7')][_0x8e54('0x8f')](_0x2d5cf2[_0x8e54('0xb8')]);return _0x391303;});});}})[_0x8e54('0x1a')](respondWithResult(_0x4eca3a,null))[_0x8e54('0x24')](handleError(_0x4eca3a,null));};