504447c4111f52379f500a93726c281c9b45ea7f
[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 _0xc359=['OpenchannelAccountId','getDispositions','findOne','Disposition','rawAttributes','findAll','removeDispositions','ids','addAnswer','CannedAnswer','getAnswers','notify','openchannel','CmContact','Sequelize','updatedAt','difference','createdAt','CompanyId','isNil','from','from\x20is\x20mandatory','ValidationError','body\x20is\x20mandatory\x20and\x20not\x20empty','mapKey','mapKey\x20is\x20mandatory,\x20please\x20use\x20one\x20of\x20these:\x20','includes','List','OpenchannelApplication','Applications','account','list','orderBy','applications','asc','Contacts','threadId','externalUrl','OpenchannelInteraction','ContactId','contact','firstName','lastName','messageId','interaction','created','autoclose','close','*,*,*,*','OpenchannelMessage','UserId','unshift','agent','waitForTheAssignedAgent','queueId','OpenchannelQueue','queue','waitForTheAssignedQueue','Start','startRouting','EventManager','sequelize','Transaction','READ_COMMITTED','findAndCountAll','priority','finally','send','getApplications','getInteractions','Contact','User','Owner','internal','Tag','Tags','color','tag','addAgents','omit','spread','emit','userOpenchannelAccount:save','removeAgents','isArray','userOpenchannelAccount:remove','getAgents','CmList','DESC','ListId','dataValues','Messages','push','rimraf','fast-json-patch','request-promise','moment','mustache','path','to-csv','crypto','jsforce','desk.js','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','api','../../config/environment','../../config/license/util','../../mysqldb','defaults','redis','localhost','socket.io-emitter','register','jayson/promise','client','http','request','then','info','OpenchannelAccount,\x20%s,\x20%s','request\x20sent','debug','stringify','error','code','message','result','catch','sendStatus','end','status','json','undefined','limit','count','offset','set','apply','save','update','destroy','get','OpenchannelAccounts','UserProfileResource','stack','name','index','Pause','OpenchannelAccount','key','model','map','keys','query','filters','attributes','intersection','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','VIRTUAL','filter','merge','includeAll','include','rows','show','params','mandatoryDispositionPause','options','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','describe','addDisposition'];(function(_0x2bdd83,_0x313bcd){var _0xe70e72=function(_0x512e1c){while(--_0x512e1c){_0x2bdd83['push'](_0x2bdd83['shift']());}};_0xe70e72(++_0x313bcd);}(_0xc359,0x1d9));var _0x9c35=function(_0x3f6426,_0x12cbf9){_0x3f6426=_0x3f6426-0x0;var _0x25d790=_0xc359[_0x3f6426];return _0x25d790;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0x9c35('0x0'));var zipdir=require('zip-dir');var jsonpatch=require(_0x9c35('0x1'));var rp=require(_0x9c35('0x2'));var moment=require(_0x9c35('0x3'));var BPromise=require('bluebird');var Mustache=require(_0x9c35('0x4'));var util=require('util');var path=require(_0x9c35('0x5'));var sox=require('sox');var csv=require(_0x9c35('0x6'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require('fs-extra');var _=require('lodash');var squel=require('squel');var crypto=require(_0x9c35('0x7'));var jsforce=require(_0x9c35('0x8'));var deskjs=require(_0x9c35('0x9'));var toCsv=require(_0x9c35('0x6'));var querystring=require(_0x9c35('0xa'));var Papa=require(_0x9c35('0xb'));var Redis=require('ioredis');var authService=require(_0x9c35('0xc'));var qs=require(_0x9c35('0xd'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require('../../config/license/hardware');var logger=require('../../config/logger')(_0x9c35('0xe'));var utils=require('../../config/utils');var config=require(_0x9c35('0xf'));var licenseUtil=require(_0x9c35('0x10'));var db=require(_0x9c35('0x11'))['db'];config['redis']=_[_0x9c35('0x12')](config[_0x9c35('0x13')],{'host':_0x9c35('0x14'),'port':0x18eb});var socket=require(_0x9c35('0x15'))(new Redis(config[_0x9c35('0x13')]));require('./openchannelAccount.socket')[_0x9c35('0x16')](socket);var jayson=require(_0x9c35('0x17'));var client=jayson[_0x9c35('0x18')][_0x9c35('0x19')]({'port':0x232c});var client9002=jayson[_0x9c35('0x18')][_0x9c35('0x19')]({'port':0x232a});function respondWithRpcPromise(_0x9e7d2d,_0x77588e,_0x34b72d,_0x2b2c2b){return new BPromise(function(_0x387dd7,_0x2e8ec1){var _0x1ef1d8=_0x2b2c2b||client;return _0x1ef1d8[_0x9c35('0x1a')](_0x9e7d2d,_0x34b72d)[_0x9c35('0x1b')](function(_0x4cbeb6){logger[_0x9c35('0x1c')](_0x9c35('0x1d'),_0x77588e,_0x9c35('0x1e'));logger[_0x9c35('0x1f')]('OpenchannelAccount,\x20%s,\x20%s,\x20%s',_0x77588e,_0x9c35('0x1e'),JSON[_0x9c35('0x20')](_0x4cbeb6));if(_0x4cbeb6[_0x9c35('0x21')]){if(_0x4cbeb6[_0x9c35('0x21')][_0x9c35('0x22')]===0x1f4){logger['error'](_0x9c35('0x1d'),_0x77588e,_0x4cbeb6['error'][_0x9c35('0x23')]);return _0x2e8ec1(_0x4cbeb6[_0x9c35('0x21')][_0x9c35('0x23')]);}logger[_0x9c35('0x21')](_0x9c35('0x1d'),_0x77588e,_0x4cbeb6[_0x9c35('0x21')][_0x9c35('0x23')]);return _0x387dd7(_0x4cbeb6['error']['message']);}else{logger[_0x9c35('0x1c')](_0x9c35('0x1d'),_0x77588e,_0x9c35('0x1e'));_0x387dd7(_0x4cbeb6[_0x9c35('0x24')]['message']);}})[_0x9c35('0x25')](function(_0x578e00){logger[_0x9c35('0x21')]('OpenchannelAccount,\x20%s,\x20%s',_0x77588e,_0x578e00);_0x2e8ec1(_0x578e00);});});}function respondWithStatusCode(_0x5d924a,_0x39cd10){_0x39cd10=_0x39cd10||0xcc;return function(_0xaf9e58){if(_0xaf9e58){return _0x5d924a[_0x9c35('0x26')](_0x39cd10);}return _0x5d924a['status'](_0x39cd10)[_0x9c35('0x27')]();};}function respondWithResult(_0x55cd82,_0x16cc31){_0x16cc31=_0x16cc31||0xc8;return function(_0x2a0954){if(_0x2a0954){return _0x55cd82[_0x9c35('0x28')](_0x16cc31)[_0x9c35('0x29')](_0x2a0954);}};}function respondWithFilteredResult(_0x4525c9,_0x4f272a){return function(_0x4593e3){if(_0x4593e3){var _0x16e8dd=typeof _0x4f272a['offset']===_0x9c35('0x2a')&&typeof _0x4f272a[_0x9c35('0x2b')]===_0x9c35('0x2a');var _0x45766e=_0x4593e3[_0x9c35('0x2c')];var _0x4cb625=_0x16e8dd?0x0:_0x4f272a[_0x9c35('0x2d')];var _0xd9c6b3=_0x16e8dd?_0x4593e3[_0x9c35('0x2c')]:_0x4f272a[_0x9c35('0x2d')]+_0x4f272a[_0x9c35('0x2b')];var _0x2b5341;if(_0xd9c6b3>=_0x45766e){_0xd9c6b3=_0x45766e;_0x2b5341=0xc8;}else{_0x2b5341=0xce;}_0x4525c9['status'](_0x2b5341);return _0x4525c9[_0x9c35('0x2e')]('Content-Range',_0x4cb625+'-'+_0xd9c6b3+'/'+_0x45766e)[_0x9c35('0x29')](_0x4593e3);}return null;};}function patchUpdates(_0x2e3cd8){return function(_0xb89c8c){try{jsonpatch[_0x9c35('0x2f')](_0xb89c8c,_0x2e3cd8,!![]);}catch(_0x462306){return BPromise['reject'](_0x462306);}return _0xb89c8c[_0x9c35('0x30')]();};}function saveUpdates(_0x182701,_0x4986a9){return function(_0x49cefb){if(_0x49cefb){return _0x49cefb[_0x9c35('0x31')](_0x182701)['then'](function(_0x560b74){return _0x560b74;});}return null;};}function removeEntity(_0x4d20f7,_0x42c748){return function(_0x2b5c69){if(_0x2b5c69){return _0x2b5c69[_0x9c35('0x32')]()[_0x9c35('0x1b')](function(){var _0x232e97=_0x2b5c69[_0x9c35('0x33')]({'plain':!![]});var _0x56b64b=_0x9c35('0x34');return db[_0x9c35('0x35')][_0x9c35('0x32')]({'where':{'type':_0x56b64b,'resourceId':_0x232e97['id']}})[_0x9c35('0x1b')](function(){return _0x2b5c69;});})['then'](function(){_0x4d20f7[_0x9c35('0x28')](0xcc)[_0x9c35('0x27')]();});}};}function handleEntityNotFound(_0x2aacb8,_0x7397f6){return function(_0x2867b8){if(!_0x2867b8){_0x2aacb8[_0x9c35('0x26')](0x194);}return _0x2867b8;};}function handleError(_0x316e10,_0x5628e7){_0x5628e7=_0x5628e7||0x1f4;return function(_0x535edd){logger['error'](_0x535edd[_0x9c35('0x36')]);if(_0x535edd['name']){delete _0x535edd[_0x9c35('0x37')];}_0x316e10['status'](_0x5628e7)['send'](_0x535edd);};}exports[_0x9c35('0x38')]=function(_0x431df0,_0x20f06e){var _0x282694={'include':[{'model':db[_0x9c35('0x39')],'as':'mandatoryDispositionPause'}]},_0x33ad72={},_0x17bace={'count':0x0,'rows':[]};var _0x289222=_['map'](db[_0x9c35('0x3a')]['rawAttributes'],function(_0x5a7bbe){return{'name':_0x5a7bbe['fieldName'],'type':_0x5a7bbe['type'][_0x9c35('0x3b')]};});_0x33ad72[_0x9c35('0x3c')]=_[_0x9c35('0x3d')](_0x289222,_0x9c35('0x37'));_0x33ad72['query']=_[_0x9c35('0x3e')](_0x431df0[_0x9c35('0x3f')]);_0x33ad72[_0x9c35('0x40')]=_['intersection'](_0x33ad72[_0x9c35('0x3c')],_0x33ad72[_0x9c35('0x3f')]);_0x282694[_0x9c35('0x41')]=_[_0x9c35('0x42')](_0x33ad72[_0x9c35('0x3c')],qs[_0x9c35('0x43')](_0x431df0[_0x9c35('0x3f')][_0x9c35('0x43')]));_0x282694[_0x9c35('0x41')]=_0x282694[_0x9c35('0x41')][_0x9c35('0x44')]?_0x282694['attributes']:_0x33ad72[_0x9c35('0x3c')];if(!_0x431df0[_0x9c35('0x3f')][_0x9c35('0x45')](_0x9c35('0x46'))){_0x282694[_0x9c35('0x2b')]=qs[_0x9c35('0x2b')](_0x431df0[_0x9c35('0x3f')][_0x9c35('0x2b')]);_0x282694[_0x9c35('0x2d')]=qs[_0x9c35('0x2d')](_0x431df0[_0x9c35('0x3f')][_0x9c35('0x2d')]);}_0x282694[_0x9c35('0x47')]=qs[_0x9c35('0x48')](_0x431df0[_0x9c35('0x3f')][_0x9c35('0x48')]);_0x282694[_0x9c35('0x49')]=qs[_0x9c35('0x40')](_[_0x9c35('0x4a')](_0x431df0[_0x9c35('0x3f')],_0x33ad72[_0x9c35('0x40')]),_0x289222);if(_0x431df0[_0x9c35('0x3f')]['filter']){_0x282694[_0x9c35('0x49')]=_['merge'](_0x282694[_0x9c35('0x49')],{'$or':_[_0x9c35('0x3d')](_0x289222,function(_0x25c72b){if(_0x25c72b['type']!==_0x9c35('0x4b')){var _0x1d24ae={};_0x1d24ae[_0x25c72b[_0x9c35('0x37')]]={'$like':'%'+_0x431df0['query'][_0x9c35('0x4c')]+'%'};return _0x1d24ae;}})});}_0x282694=_[_0x9c35('0x4d')]({},_0x282694,_0x431df0['options']);var _0x1972dc={'where':_0x282694['where']};return db[_0x9c35('0x3a')][_0x9c35('0x2c')](_0x1972dc)[_0x9c35('0x1b')](function(_0x471e4d){_0x17bace[_0x9c35('0x2c')]=_0x471e4d;if(_0x431df0[_0x9c35('0x3f')][_0x9c35('0x4e')]){_0x282694[_0x9c35('0x4f')]=[{'all':!![]}];}return db[_0x9c35('0x3a')]['findAll'](_0x282694);})[_0x9c35('0x1b')](function(_0x257d9c){_0x17bace[_0x9c35('0x50')]=_0x257d9c;return _0x17bace;})['then'](respondWithFilteredResult(_0x20f06e,_0x282694))['catch'](handleError(_0x20f06e,null));};exports[_0x9c35('0x51')]=function(_0x18727f,_0x51a9f0){var _0x153080={'raw':![],'where':{'id':_0x18727f[_0x9c35('0x52')]['id']},'include':[{'model':db[_0x9c35('0x39')],'as':_0x9c35('0x53')}]},_0x2bd32c={};_0x2bd32c[_0x9c35('0x3c')]=_['keys'](db[_0x9c35('0x3a')]['rawAttributes']);_0x2bd32c[_0x9c35('0x3f')]=_[_0x9c35('0x3e')](_0x18727f[_0x9c35('0x3f')]);_0x2bd32c['filters']=_[_0x9c35('0x42')](_0x2bd32c[_0x9c35('0x3c')],_0x2bd32c[_0x9c35('0x3f')]);_0x153080[_0x9c35('0x41')]=_[_0x9c35('0x42')](_0x2bd32c[_0x9c35('0x3c')],qs['fields'](_0x18727f['query'][_0x9c35('0x43')]));_0x153080[_0x9c35('0x41')]=_0x153080[_0x9c35('0x41')]['length']?_0x153080[_0x9c35('0x41')]:_0x2bd32c[_0x9c35('0x3c')];if(_0x18727f[_0x9c35('0x3f')][_0x9c35('0x4e')]){_0x153080[_0x9c35('0x4f')]=[{'all':!![]}];}_0x153080=_[_0x9c35('0x4d')]({},_0x153080,_0x18727f[_0x9c35('0x54')]);return db['OpenchannelAccount']['find'](_0x153080)[_0x9c35('0x1b')](handleEntityNotFound(_0x51a9f0,null))[_0x9c35('0x1b')](respondWithResult(_0x51a9f0,null))['catch'](handleError(_0x51a9f0,null));};exports[_0x9c35('0x55')]=function(_0x45a840,_0x7e4488){return db[_0x9c35('0x3a')][_0x9c35('0x55')](_0x45a840[_0x9c35('0x56')],{})[_0x9c35('0x1b')](function(_0x2a882e){var _0x1458f1=_0x45a840[_0x9c35('0x57')][_0x9c35('0x33')]({'plain':!![]});if(!_0x1458f1)throw new Error(_0x9c35('0x58'));if(_0x1458f1[_0x9c35('0x59')]===_0x9c35('0x57')){var _0x1effb=_0x2a882e[_0x9c35('0x33')]({'plain':!![]});var _0x29fec1=_0x9c35('0x34');return db[_0x9c35('0x5a')][_0x9c35('0x5b')]({'where':{'name':_0x29fec1,'userProfileId':_0x1458f1[_0x9c35('0x5c')]},'raw':!![]})[_0x9c35('0x1b')](function(_0x2092d4){if(_0x2092d4&&_0x2092d4[_0x9c35('0x5d')]===0x0){return db[_0x9c35('0x35')][_0x9c35('0x55')]({'name':_0x1effb[_0x9c35('0x37')],'resourceId':_0x1effb['id'],'type':_0x2092d4['name'],'sectionId':_0x2092d4['id']},{})[_0x9c35('0x1b')](function(){return _0x2a882e;});}else{return _0x2a882e;}})[_0x9c35('0x25')](function(_0x1bf387){logger['error'](_0x9c35('0x5e'),_0x1bf387);throw _0x1bf387;});}return _0x2a882e;})['then'](respondWithResult(_0x7e4488,0xc9))[_0x9c35('0x25')](handleError(_0x7e4488,null));};exports[_0x9c35('0x31')]=function(_0x3e4b5f,_0x46d60d){if(_0x3e4b5f[_0x9c35('0x56')]['id']){delete _0x3e4b5f[_0x9c35('0x56')]['id'];}return db['OpenchannelAccount'][_0x9c35('0x5b')]({'where':{'id':_0x3e4b5f[_0x9c35('0x52')]['id']},'include':[{'model':db[_0x9c35('0x39')],'as':_0x9c35('0x53')}]})['then'](handleEntityNotFound(_0x46d60d,null))[_0x9c35('0x1b')](saveUpdates(_0x3e4b5f[_0x9c35('0x56')],null))['then'](respondWithResult(_0x46d60d,null))['catch'](handleError(_0x46d60d,null));};exports[_0x9c35('0x32')]=function(_0x2e8dbe,_0x42ffc7){return db[_0x9c35('0x3a')][_0x9c35('0x5b')]({'where':{'id':_0x2e8dbe[_0x9c35('0x52')]['id']}})[_0x9c35('0x1b')](handleEntityNotFound(_0x42ffc7,null))[_0x9c35('0x1b')](removeEntity(_0x42ffc7,null))['catch'](handleError(_0x42ffc7,null));};exports[_0x9c35('0x5f')]=function(_0x4c4fad,_0xc815e){return db[_0x9c35('0x3a')][_0x9c35('0x5f')]()['then'](respondWithResult(_0xc815e,null))[_0x9c35('0x25')](handleError(_0xc815e,null));};exports[_0x9c35('0x60')]=function(_0x54566e,_0x29526d,_0x15e244){if(_0x54566e[_0x9c35('0x56')]['id']){delete _0x54566e['body']['id'];}return db[_0x9c35('0x3a')][_0x9c35('0x5b')]({'where':{'id':_0x54566e[_0x9c35('0x52')]['id']}})['then'](handleEntityNotFound(_0x29526d,null))[_0x9c35('0x1b')](function(_0x313fb6){if(_0x313fb6){_0x54566e[_0x9c35('0x56')][_0x9c35('0x61')]=_0x313fb6['id'];return db['Disposition'][_0x9c35('0x55')](_0x54566e[_0x9c35('0x56')]);}})[_0x9c35('0x1b')](respondWithResult(_0x29526d,null))[_0x9c35('0x25')](handleError(_0x29526d,null));};exports[_0x9c35('0x62')]=function(_0x19c7ca,_0x321631,_0x3901fb){var _0x2a2ff3={'raw':![],'where':{}};var _0x584da1={};var _0x2b0397={'count':0x0,'rows':[]};return db[_0x9c35('0x3a')][_0x9c35('0x63')]({'where':{'id':_0x19c7ca[_0x9c35('0x52')]['id']}})['then'](handleEntityNotFound(_0x321631,null))['then'](function(_0x1d5397){if(_0x1d5397){_0x584da1[_0x9c35('0x3c')]=_['keys'](db[_0x9c35('0x64')][_0x9c35('0x65')]);_0x584da1[_0x9c35('0x3f')]=_[_0x9c35('0x3e')](_0x19c7ca[_0x9c35('0x3f')]);_0x584da1['filters']=_[_0x9c35('0x42')](_0x584da1['model'],_0x584da1[_0x9c35('0x3f')]);_0x2a2ff3[_0x9c35('0x41')]=_[_0x9c35('0x42')](_0x584da1[_0x9c35('0x3c')],qs[_0x9c35('0x43')](_0x19c7ca[_0x9c35('0x3f')][_0x9c35('0x43')]));_0x2a2ff3['attributes']=_0x2a2ff3[_0x9c35('0x41')][_0x9c35('0x44')]?_0x2a2ff3[_0x9c35('0x41')]:_0x584da1[_0x9c35('0x3c')];if(!_0x19c7ca[_0x9c35('0x3f')][_0x9c35('0x45')](_0x9c35('0x46'))){_0x2a2ff3['limit']=qs['limit'](_0x19c7ca[_0x9c35('0x3f')][_0x9c35('0x2b')]);_0x2a2ff3[_0x9c35('0x2d')]=qs[_0x9c35('0x2d')](_0x19c7ca[_0x9c35('0x3f')][_0x9c35('0x2d')]);}_0x2a2ff3[_0x9c35('0x47')]=qs[_0x9c35('0x48')](_0x19c7ca['query'][_0x9c35('0x48')]);_0x2a2ff3[_0x9c35('0x49')]=qs[_0x9c35('0x40')](_[_0x9c35('0x4a')](_0x19c7ca[_0x9c35('0x3f')],_0x584da1['filters']));_0x2a2ff3['where'][_0x9c35('0x61')]=_0x1d5397['id'];if(_0x19c7ca[_0x9c35('0x3f')][_0x9c35('0x4c')]){_0x2a2ff3[_0x9c35('0x49')]=_[_0x9c35('0x4d')](_0x2a2ff3[_0x9c35('0x49')],{'$or':_[_0x9c35('0x3d')](_0x2a2ff3['attributes'],function(_0x1c5201){var _0x306eab={};_0x306eab[_0x1c5201]={'$like':'%'+_0x19c7ca[_0x9c35('0x3f')][_0x9c35('0x4c')]+'%'};return _0x306eab;})});}_0x2a2ff3=_[_0x9c35('0x4d')]({},_0x2a2ff3,_0x19c7ca[_0x9c35('0x54')]);return db[_0x9c35('0x64')]['count']({'where':_0x2a2ff3['where']})[_0x9c35('0x1b')](function(_0x1499db){_0x2b0397[_0x9c35('0x2c')]=_0x1499db;if(_0x19c7ca[_0x9c35('0x3f')]['includeAll']){_0x2a2ff3[_0x9c35('0x4f')]=[{'all':!![]}];}return db[_0x9c35('0x64')][_0x9c35('0x66')](_0x2a2ff3);})[_0x9c35('0x1b')](function(_0x5dac6c){_0x2b0397[_0x9c35('0x50')]=_0x5dac6c;return _0x2b0397;});}})['then'](respondWithFilteredResult(_0x321631,_0x2a2ff3))[_0x9c35('0x25')](handleError(_0x321631,null));};exports[_0x9c35('0x67')]=function(_0x5da53d,_0x220ef6,_0x1acd45){return db[_0x9c35('0x3a')][_0x9c35('0x5b')]({'where':{'id':_0x5da53d[_0x9c35('0x52')]['id']}})['then'](handleEntityNotFound(_0x220ef6,null))[_0x9c35('0x1b')](function(_0x1310fe){if(_0x1310fe){return _0x1310fe[_0x9c35('0x67')](_0x5da53d[_0x9c35('0x3f')][_0x9c35('0x68')]);}})[_0x9c35('0x1b')](respondWithStatusCode(_0x220ef6,null))[_0x9c35('0x25')](handleError(_0x220ef6,null));};exports[_0x9c35('0x69')]=function(_0x23f0e3,_0xc8dabc,_0x3d4fe6){if(_0x23f0e3[_0x9c35('0x56')]['id']){delete _0x23f0e3[_0x9c35('0x56')]['id'];}return db[_0x9c35('0x3a')][_0x9c35('0x5b')]({'where':{'id':_0x23f0e3['params']['id']}})[_0x9c35('0x1b')](handleEntityNotFound(_0xc8dabc,null))[_0x9c35('0x1b')](function(_0x4e86dd){if(_0x4e86dd){_0x23f0e3[_0x9c35('0x56')][_0x9c35('0x61')]=_0x4e86dd['id'];return db[_0x9c35('0x6a')][_0x9c35('0x55')](_0x23f0e3[_0x9c35('0x56')]);}})['then'](respondWithResult(_0xc8dabc,null))[_0x9c35('0x25')](handleError(_0xc8dabc,null));};exports[_0x9c35('0x6b')]=function(_0x5e622a,_0x4af8c7,_0x4c1f79){var _0x89b86c={'raw':![],'where':{}};var _0x2bdfd0={};var _0x49e20b={'count':0x0,'rows':[]};return db[_0x9c35('0x3a')][_0x9c35('0x63')]({'where':{'id':_0x5e622a[_0x9c35('0x52')]['id']}})['then'](handleEntityNotFound(_0x4af8c7,null))[_0x9c35('0x1b')](function(_0x268b54){if(_0x268b54){_0x2bdfd0[_0x9c35('0x3c')]=_['keys'](db[_0x9c35('0x6a')][_0x9c35('0x65')]);_0x2bdfd0[_0x9c35('0x3f')]=_['keys'](_0x5e622a[_0x9c35('0x3f')]);_0x2bdfd0[_0x9c35('0x40')]=_[_0x9c35('0x42')](_0x2bdfd0[_0x9c35('0x3c')],_0x2bdfd0[_0x9c35('0x3f')]);_0x89b86c['attributes']=_[_0x9c35('0x42')](_0x2bdfd0['model'],qs[_0x9c35('0x43')](_0x5e622a[_0x9c35('0x3f')][_0x9c35('0x43')]));_0x89b86c[_0x9c35('0x41')]=_0x89b86c['attributes']['length']?_0x89b86c[_0x9c35('0x41')]:_0x2bdfd0[_0x9c35('0x3c')];if(!_0x5e622a[_0x9c35('0x3f')][_0x9c35('0x45')]('nolimit')){_0x89b86c[_0x9c35('0x2b')]=qs[_0x9c35('0x2b')](_0x5e622a[_0x9c35('0x3f')]['limit']);_0x89b86c[_0x9c35('0x2d')]=qs[_0x9c35('0x2d')](_0x5e622a[_0x9c35('0x3f')][_0x9c35('0x2d')]);}_0x89b86c[_0x9c35('0x47')]=qs[_0x9c35('0x48')](_0x5e622a[_0x9c35('0x3f')]['sort']);_0x89b86c[_0x9c35('0x49')]=qs[_0x9c35('0x40')](_[_0x9c35('0x4a')](_0x5e622a[_0x9c35('0x3f')],_0x2bdfd0[_0x9c35('0x40')]));_0x89b86c[_0x9c35('0x49')][_0x9c35('0x61')]=_0x268b54['id'];if(_0x5e622a[_0x9c35('0x3f')][_0x9c35('0x4c')]){_0x89b86c['where']=_[_0x9c35('0x4d')](_0x89b86c[_0x9c35('0x49')],{'$or':_[_0x9c35('0x3d')](_0x89b86c[_0x9c35('0x41')],function(_0x2203c1){var _0x2513d0={};_0x2513d0[_0x2203c1]={'$like':'%'+_0x5e622a[_0x9c35('0x3f')][_0x9c35('0x4c')]+'%'};return _0x2513d0;})});}_0x89b86c=_[_0x9c35('0x4d')]({},_0x89b86c,_0x5e622a[_0x9c35('0x54')]);return db[_0x9c35('0x6a')][_0x9c35('0x2c')]({'where':_0x89b86c[_0x9c35('0x49')]})[_0x9c35('0x1b')](function(_0x35a905){_0x49e20b[_0x9c35('0x2c')]=_0x35a905;if(_0x5e622a[_0x9c35('0x3f')][_0x9c35('0x4e')]){_0x89b86c[_0x9c35('0x4f')]=[{'all':!![]}];}return db[_0x9c35('0x6a')][_0x9c35('0x66')](_0x89b86c);})[_0x9c35('0x1b')](function(_0x417c27){_0x49e20b[_0x9c35('0x50')]=_0x417c27;return _0x49e20b;});}})[_0x9c35('0x1b')](respondWithFilteredResult(_0x4af8c7,_0x89b86c))[_0x9c35('0x25')](handleError(_0x4af8c7,null));};exports['removeAnswers']=function(_0x6e456a,_0x3de11c,_0x39630e){return db[_0x9c35('0x3a')][_0x9c35('0x5b')]({'where':{'id':_0x6e456a['params']['id']}})[_0x9c35('0x1b')](handleEntityNotFound(_0x3de11c,null))[_0x9c35('0x1b')](function(_0x503e51){if(_0x503e51){return _0x503e51['removeAnswers'](_0x6e456a[_0x9c35('0x3f')][_0x9c35('0x68')]);}})['then'](respondWithStatusCode(_0x3de11c,null))[_0x9c35('0x25')](handleError(_0x3de11c,null));};exports[_0x9c35('0x6c')]=function(_0x47d131,_0x3b5696,_0x22e0f6){var _0x4838d9={'body':_0x47d131[_0x9c35('0x56')],'channel':_0x9c35('0x6d')};var _0x4b742d=[];var _0x200bfa=[];var _0x213f08={};var _0x3d17bc=![];return db[_0x9c35('0x6e')][_0x9c35('0x5f')]()['then'](function(_0x4aece8){if(!_0x4aece8){throw new db[(_0x9c35('0x6f'))]['ValidationError']('no\x20available\x20attributes');}_0x4b742d=_['difference'](_['keys'](_0x4aece8),['createdAt',_0x9c35('0x70')]);_0x200bfa=_[_0x9c35('0x71')](_[_0x9c35('0x3e')](_0x4aece8),[_0x9c35('0x72'),_0x9c35('0x70'),_0x9c35('0x73'),'ListId']);if(_0x47d131[_0x9c35('0x56')]['id']){delete _0x47d131[_0x9c35('0x56')]['id'];}if(_[_0x9c35('0x74')](_0x47d131[_0x9c35('0x56')][_0x9c35('0x75')])){throw new db[(_0x9c35('0x6f'))]['ValidationError'](_0x9c35('0x76'));}if(_[_0x9c35('0x74')](_0x47d131[_0x9c35('0x56')][_0x9c35('0x56')])||_0x47d131[_0x9c35('0x56')][_0x9c35('0x56')]===''){throw new db[(_0x9c35('0x6f'))][(_0x9c35('0x77'))](_0x9c35('0x78'));}if(_[_0x9c35('0x74')](_0x47d131[_0x9c35('0x56')][_0x9c35('0x79')])){throw new db['Sequelize'][(_0x9c35('0x77'))](_0x9c35('0x7a')+_0x200bfa);}if(!_[_0x9c35('0x7b')](_0x200bfa,_0x47d131['body'][_0x9c35('0x79')])){throw new db[(_0x9c35('0x6f'))]['ValidationError']('mapKey\x20invalid,\x20please\x20use\x20one\x20of\x20these:\x20'+_0x200bfa);}_0x213f08[_0x47d131[_0x9c35('0x56')][_0x9c35('0x79')]]=_0x47d131['body'][_0x9c35('0x75')];})[_0x9c35('0x1b')](function(){return db[_0x9c35('0x3a')][_0x9c35('0x5b')]({'where':{'id':_0x47d131[_0x9c35('0x52')]['id']},'include':[{'model':db['CmList'],'as':_0x9c35('0x7c'),'include':[{'model':db[_0x9c35('0x6e')],'as':'Contacts','where':_0x213f08,'limit':0x1,'order':[[_0x9c35('0x70'),'DESC']]}]},{'model':db[_0x9c35('0x7d')],'as':_0x9c35('0x7e')}]});})[_0x9c35('0x1b')](handleEntityNotFound(_0x3b5696,null))[_0x9c35('0x1b')](function(_0x224f38){if(_0x224f38&&_0x224f38[_0x9c35('0x7c')]){_0x4838d9[_0x9c35('0x7f')]=_0x224f38;_0x4838d9['applications']=_0x224f38[_0x9c35('0x7e')];_0x4838d9[_0x9c35('0x80')]=_0x224f38['List'];_0x4838d9['applications']=_[_0x9c35('0x81')](_0x4838d9[_0x9c35('0x82')],['priority'],[_0x9c35('0x83')]);if(_0x4838d9[_0x9c35('0x7f')][_0x9c35('0x7e')]){delete _0x4838d9[_0x9c35('0x7f')][_0x9c35('0x7e')];}if(_0x4838d9[_0x9c35('0x7f')][_0x9c35('0x7c')]&&_0x4838d9[_0x9c35('0x7f')]['List'][_0x9c35('0x84')]['length']){return _0x4838d9['account'][_0x9c35('0x7c')][_0x9c35('0x84')][0x0];}var _0x3861ab=_['defaults'](_0x47d131['body'],{'firstName':_0x47d131[_0x9c35('0x56')]['from'],'ListId':_0x224f38['ListId']});_0x3861ab[_0x47d131[_0x9c35('0x56')][_0x9c35('0x79')]]=_0x47d131[_0x9c35('0x56')][_0x9c35('0x75')];return db[_0x9c35('0x6e')]['create'](_0x3861ab,{'fields':_0x4b742d,'raw':!![]});}})[_0x9c35('0x1b')](handleEntityNotFound(_0x3b5696,null))[_0x9c35('0x1b')](function(_0x2e6afb){_0x4838d9['contact']=_0x2e6afb;if(_0x2e6afb){var _0x3ec29f={'ContactId':_0x2e6afb['id'],'OpenchannelAccountId':_0x47d131[_0x9c35('0x52')]['id'],'from':(_0x2e6afb['firstName']||'')+'\x20'+(_0x2e6afb['lastName']||'')};var _0x485967={'OpenchannelAccountId':_0x47d131[_0x9c35('0x52')]['id'],'closed':![]};if(_0x47d131[_0x9c35('0x56')][_0x9c35('0x85')]){_0x485967['threadId']=_0x47d131[_0x9c35('0x56')][_0x9c35('0x85')];return db['OpenchannelInteraction'][_0x9c35('0x5b')]({'where':_0x485967})[_0x9c35('0x1b')](function(_0xbea90f){if(_0xbea90f){return[_0xbea90f,![]];}_0x3ec29f['threadId']=_0x47d131[_0x9c35('0x56')][_0x9c35('0x85')];_0x3ec29f['externalUrl']=_0x47d131[_0x9c35('0x56')][_0x9c35('0x86')];return db[_0x9c35('0x87')][_0x9c35('0x55')](_0x3ec29f)[_0x9c35('0x1b')](function(_0x598b39){return[_0x598b39,!![]];});});}else{_0x485967[_0x9c35('0x85')]=null;}_0x485967[_0x9c35('0x88')]=_0x2e6afb['id'];return db[_0x9c35('0x87')][_0x9c35('0x5b')]({'where':_0x485967})[_0x9c35('0x1b')](function(_0x57252c){if(_0x57252c){return[_0x57252c,![]];}return db['OpenchannelInteraction'][_0x9c35('0x55')](_0x3ec29f)[_0x9c35('0x1b')](function(_0x3562ed){return[_0x3562ed,!![]];});});}})['spread'](function(_0x1b6d9e,_0xc097f2){if(_0x1b6d9e){_0x3d17bc=_0xc097f2;if(!_0xc097f2){var _0x245860={'from':(_0x4838d9[_0x9c35('0x89')][_0x9c35('0x8a')]||'')+'\x20'+(_0x4838d9[_0x9c35('0x89')][_0x9c35('0x8b')]||'')};if(_0x47d131['body'][_0x9c35('0x85')]&&_0x47d131['body'][_0x9c35('0x8c')]&&_0x47d131['body']['threadId']!=_0x47d131[_0x9c35('0x56')][_0x9c35('0x8c')]){_0x245860[_0x9c35('0x85')]=_0x47d131[_0x9c35('0x56')][_0x9c35('0x8c')];}return _0x1b6d9e[_0x9c35('0x31')](_0x245860);}else{return _0x1b6d9e;}}})[_0x9c35('0x1b')](function(_0x42ee39){_0x4838d9['interaction']=_0x42ee39['get']({'plain':!![]});_0x4838d9[_0x9c35('0x8d')][_0x9c35('0x8e')]=_0x3d17bc;if(_0x4838d9[_0x9c35('0x8d')][_0x9c35('0x8e')]){if(_0x4838d9['account'][_0x9c35('0x8f')]){_0x4838d9['applications']['push']({'id':0x0,'priority':_0x4838d9['applications'][_0x9c35('0x44')]+0x1,'app':_0x9c35('0x90'),'appdata':'unmanaged','interval':_0x9c35('0x91')});}}return db[_0x9c35('0x92')][_0x9c35('0x55')]({'body':_0x47d131[_0x9c35('0x56')]['body'],'OpenchannelAccountId':_0x47d131[_0x9c35('0x52')]['id'],'OpenchannelInteractionId':_0x42ee39['id'],'direction':'in','ContactId':_0x4838d9[_0x9c35('0x89')]['id'],'AttachmentId':_0x47d131[_0x9c35('0x56')]['AttachmentId']});})[_0x9c35('0x1b')](function(_0x59331f){_0x4838d9[_0x9c35('0x23')]=_0x59331f;if(!_0x4838d9[_0x9c35('0x8d')]['UserId'])return;return db['User'][_0x9c35('0x5b')]({'attributes':['id',_0x9c35('0x37')],'where':{'id':_0x4838d9[_0x9c35('0x8d')][_0x9c35('0x93')]}});})['then'](function(_0x1e7a3e){if(_0x1e7a3e){_0x4838d9[_0x9c35('0x82')][_0x9c35('0x94')]({'id':0x0,'priority':0x0,'app':_0x9c35('0x95'),'appdata':_0x1e7a3e[_0x9c35('0x37')]+','+(_0x4838d9['account'][_0x9c35('0x96')]||0xa),'interval':_0x9c35('0x91')});}if(!_0x4838d9[_0x9c35('0x8d')][_0x9c35('0x97')])return;return db[_0x9c35('0x98')][_0x9c35('0x5b')]({'attributes':['id',_0x9c35('0x37')],'where':{'id':_0x4838d9['interaction'][_0x9c35('0x97')]}});})[_0x9c35('0x1b')](function(_0x4ac0d9){if(_0x4ac0d9){_0x4838d9['applications'][_0x9c35('0x94')]({'id':0x0,'priority':0x1,'app':_0x9c35('0x99'),'appdata':_0x4ac0d9['name']+','+(_0x4838d9['account'][_0x9c35('0x9a')]||0x12c),'interval':_0x9c35('0x91')});}return respondWithRpcPromise(_0x9c35('0x9b'),_0x9c35('0x9c'),_0x4838d9);})['then'](function(_0x12b18d){respondWithRpcPromise('EventManager',_0x9c35('0x9d'),{'event':'notify','message':_0x12b18d},client9002);return _0x12b18d;})['then'](respondWithResult(_0x3b5696,null))[_0x9c35('0x25')](handleError(_0x3b5696,null));};exports['addApplications']=function(_0x20a997,_0x3d0645){var _0x2d7f70=_0x20a997[_0x9c35('0x52')]['id'];var _0x2f3ddd=_0x20a997['body'];var _0x1b910c=0xc8;var _0x108214=null;return db[_0x9c35('0x9e')]['transaction']({'isolationLevel':db['sequelize'][_0x9c35('0x9f')]['ISOLATION_LEVELS'][_0x9c35('0xa0')]},function(_0x475152){return db[_0x9c35('0x3a')][_0x9c35('0x63')]({'where':{'id':_0x2d7f70},'transaction':_0x475152})['then'](function(_0x29385f){if(_0x29385f){return db[_0x9c35('0x7d')][_0x9c35('0x32')]({'where':{'OpenchannelAccountId':_0x2d7f70},'transaction':_0x475152})[_0x9c35('0x1b')](function(){var _0x4a7bd7=_[_0x9c35('0x3d')](_0x2f3ddd,function(_0x3675f1){_0x3675f1[_0x9c35('0x61')]=_0x2d7f70;return _0x3675f1;});return db[_0x9c35('0x7d')]['bulkCreate'](_0x4a7bd7,{'transaction':_0x475152});});}else{_0x1b910c=0x194;_0x108214=[];}});})[_0x9c35('0x1b')](function(){if(_0x1b910c!==0x194){return db['OpenchannelApplication'][_0x9c35('0xa1')]({'where':{'OpenchannelAccountId':_0x2d7f70},'order':_0x9c35('0xa2')})[_0x9c35('0x1b')](function(_0x573688){_0x108214=_0x573688;});}})['catch'](function(_0x2f3805){_0x1b910c=0x1f4;logger['error'](_0x2f3805['stack']);if(_0x2f3805[_0x9c35('0x37')]){delete _0x2f3805['name'];}_0x108214=_0x2f3805;})[_0x9c35('0xa3')](function(){if(_0x108214===null){_0x3d0645['sendStatus'](_0x1b910c);}else{if(_0x1b910c===0x1f4){_0x3d0645['status'](_0x1b910c)[_0x9c35('0xa4')](_0x108214);}else{_0x3d0645['status'](_0x1b910c)['json'](_0x108214);}}});};exports[_0x9c35('0xa5')]=function(_0x51ecee,_0x59d9fa,_0x4c0c0f){var _0x31c5c1={};var _0x547bc1={};var _0x11eecb;var _0x299557;return db[_0x9c35('0x3a')][_0x9c35('0x63')]({'where':{'id':_0x51ecee[_0x9c35('0x52')]['id']}})['then'](handleEntityNotFound(_0x59d9fa,null))[_0x9c35('0x1b')](function(_0x4b8aa6){if(_0x4b8aa6){_0x11eecb=_0x4b8aa6;_0x547bc1[_0x9c35('0x3c')]=_['keys'](db[_0x9c35('0x7d')][_0x9c35('0x65')]);_0x547bc1[_0x9c35('0x3f')]=_[_0x9c35('0x3e')](_0x51ecee[_0x9c35('0x3f')]);_0x547bc1[_0x9c35('0x40')]=_['intersection'](_0x547bc1[_0x9c35('0x3c')],_0x547bc1[_0x9c35('0x3f')]);_0x31c5c1[_0x9c35('0x41')]=_[_0x9c35('0x42')](_0x547bc1[_0x9c35('0x3c')],qs[_0x9c35('0x43')](_0x51ecee[_0x9c35('0x3f')][_0x9c35('0x43')]));_0x31c5c1['attributes']=_0x31c5c1[_0x9c35('0x41')][_0x9c35('0x44')]?_0x31c5c1[_0x9c35('0x41')]:_0x547bc1['model'];_0x31c5c1[_0x9c35('0x47')]=qs['sort'](_0x51ecee[_0x9c35('0x3f')][_0x9c35('0x48')]);_0x31c5c1[_0x9c35('0x49')]=qs[_0x9c35('0x40')](_['pick'](_0x51ecee[_0x9c35('0x3f')],_0x547bc1['filters']));if(_0x51ecee[_0x9c35('0x3f')][_0x9c35('0x4c')]){_0x31c5c1[_0x9c35('0x49')]=_[_0x9c35('0x4d')](_0x31c5c1[_0x9c35('0x49')],{'$or':_[_0x9c35('0x3d')](_0x31c5c1[_0x9c35('0x41')],function(_0x45aa89){var _0x559a1={};_0x559a1[_0x45aa89]={'$like':'%'+_0x51ecee[_0x9c35('0x3f')]['filter']+'%'};return _0x559a1;})});}_0x31c5c1=_[_0x9c35('0x4d')]({},_0x31c5c1,_0x51ecee[_0x9c35('0x54')]);return _0x11eecb[_0x9c35('0xa5')](_0x31c5c1);}})[_0x9c35('0x1b')](function(_0x1ff233){if(_0x1ff233){_0x299557=_0x1ff233['length'];if(!_0x51ecee['query'][_0x9c35('0x45')](_0x9c35('0x46'))){_0x31c5c1['limit']=qs[_0x9c35('0x2b')](_0x51ecee[_0x9c35('0x3f')][_0x9c35('0x2b')]);_0x31c5c1['offset']=qs[_0x9c35('0x2d')](_0x51ecee[_0x9c35('0x3f')][_0x9c35('0x2d')]);}return _0x11eecb[_0x9c35('0xa5')](_0x31c5c1);}})[_0x9c35('0x1b')](function(_0x1eee44){if(_0x1eee44){return _0x1eee44?{'count':_0x299557,'rows':_0x1eee44}:null;}})[_0x9c35('0x1b')](respondWithResult(_0x59d9fa,null))['catch'](handleError(_0x59d9fa,null));};exports[_0x9c35('0xa6')]=function(_0x52e2ed,_0x218bdf,_0x368050){var _0x3538e4={'raw':![],'where':{}};var _0x1c14ff={};var _0x8ede7b={'count':0x0,'rows':[]};return db[_0x9c35('0x3a')]['findOne']({'where':{'id':_0x52e2ed[_0x9c35('0x52')]['id']}})[_0x9c35('0x1b')](handleEntityNotFound(_0x218bdf,null))['then'](function(_0x4bb572){if(_0x4bb572){_0x1c14ff[_0x9c35('0x3c')]=_[_0x9c35('0x3e')](db[_0x9c35('0x87')]['rawAttributes']);_0x1c14ff['query']=_[_0x9c35('0x3e')](_0x52e2ed[_0x9c35('0x3f')]);_0x1c14ff[_0x9c35('0x40')]=_[_0x9c35('0x42')](_0x1c14ff['model'],_0x1c14ff[_0x9c35('0x3f')]);_0x3538e4['attributes']=_[_0x9c35('0x42')](_0x1c14ff[_0x9c35('0x3c')],qs[_0x9c35('0x43')](_0x52e2ed[_0x9c35('0x3f')][_0x9c35('0x43')]));_0x3538e4['attributes']=_0x3538e4[_0x9c35('0x41')][_0x9c35('0x44')]?_0x3538e4['attributes']:_0x1c14ff['model'];if(!_0x52e2ed['query'][_0x9c35('0x45')]('nolimit')){_0x3538e4[_0x9c35('0x2b')]=qs[_0x9c35('0x2b')](_0x52e2ed[_0x9c35('0x3f')][_0x9c35('0x2b')]);_0x3538e4[_0x9c35('0x2d')]=qs[_0x9c35('0x2d')](_0x52e2ed['query']['offset']);}_0x3538e4[_0x9c35('0x47')]=qs['sort'](_0x52e2ed[_0x9c35('0x3f')][_0x9c35('0x48')]);_0x3538e4[_0x9c35('0x49')]=qs[_0x9c35('0x40')](_[_0x9c35('0x4a')](_0x52e2ed[_0x9c35('0x3f')],_0x1c14ff[_0x9c35('0x40')]));_0x3538e4['where'][_0x9c35('0x61')]=_0x4bb572['id'];if(_0x52e2ed[_0x9c35('0x3f')]['filter']){_0x3538e4[_0x9c35('0x49')]=_['merge'](_0x3538e4['where'],{'$or':_[_0x9c35('0x3d')](_0x3538e4['attributes'],function(_0x3eaef6){var _0x402746={};_0x402746[_0x3eaef6]={'$like':'%'+_0x52e2ed['query'][_0x9c35('0x4c')]+'%'};return _0x402746;})});}_0x3538e4=_[_0x9c35('0x4d')]({},_0x3538e4,_0x52e2ed['options']);return db[_0x9c35('0x87')]['count']({'where':_0x3538e4[_0x9c35('0x49')]})[_0x9c35('0x1b')](function(_0x213bb6){_0x8ede7b[_0x9c35('0x2c')]=_0x213bb6;if(_0x52e2ed[_0x9c35('0x3f')]['includeAll']){_0x3538e4['include']=[{'model':db[_0x9c35('0x6e')],'as':_0x9c35('0xa7'),'required':![]},{'model':db[_0x9c35('0xa8')],'as':_0x9c35('0xa9'),'attributes':[_0x9c35('0x37'),'fullname',_0x9c35('0xaa')],'required':![]},{'model':db[_0x9c35('0xab')],'as':_0x9c35('0xac'),'attributes':['id',_0x9c35('0x37'),_0x9c35('0xad')],'where':_0x52e2ed[_0x9c35('0x3f')][_0x9c35('0xae')]?{'id':_0x52e2ed[_0x9c35('0x3f')][_0x9c35('0xae')]}:undefined,'required':_0x52e2ed[_0x9c35('0x3f')][_0x9c35('0xae')]?!![]:![]}];}return db[_0x9c35('0x87')]['findAll'](_0x3538e4);})[_0x9c35('0x1b')](function(_0x500b8a){_0x8ede7b['rows']=_0x500b8a;return _0x8ede7b;});}})[_0x9c35('0x1b')](respondWithFilteredResult(_0x218bdf,_0x3538e4))[_0x9c35('0x25')](handleError(_0x218bdf,null));};exports[_0x9c35('0xaf')]=function(_0x1e2820,_0x23b6fc,_0x503503){return db[_0x9c35('0x3a')]['find']({'where':{'id':_0x1e2820[_0x9c35('0x52')]['id']}})[_0x9c35('0x1b')](handleEntityNotFound(_0x23b6fc,null))[_0x9c35('0x1b')](function(_0x5e6fbb){if(_0x5e6fbb){return _0x5e6fbb[_0x9c35('0xaf')](_0x1e2820['body'][_0x9c35('0x68')],_[_0x9c35('0xb0')](_0x1e2820[_0x9c35('0x56')],['ids','id'])||{})[_0x9c35('0xb1')](function(_0x38e6b5){for(var _0x1df432=0x0;_0x1df432<_0x1e2820[_0x9c35('0x56')]['ids'][_0x9c35('0x44')];_0x1df432+=0x1){socket[_0x9c35('0xb2')](_0x9c35('0xb3'),{'UserId':Number(_0x1e2820[_0x9c35('0x56')][_0x9c35('0x68')][_0x1df432]),'OpenchannelAccountId':Number(_0x1e2820[_0x9c35('0x52')]['id'])});}return _0x38e6b5;});}})['then'](respondWithResult(_0x23b6fc,null))['catch'](handleError(_0x23b6fc,null));};exports[_0x9c35('0xb4')]=function(_0x295295,_0x4c8127,_0x1a0381){return db[_0x9c35('0x3a')]['find']({'where':{'id':_0x295295[_0x9c35('0x52')]['id']}})['then'](handleEntityNotFound(_0x4c8127,null))['then'](function(_0xd76890){if(_0xd76890){return _0xd76890['removeAgents'](_0x295295[_0x9c35('0x3f')]['ids'])[_0x9c35('0x1b')](function(){if(_[_0x9c35('0xb5')](_0x295295[_0x9c35('0x3f')][_0x9c35('0x68')])){for(var _0x133fdc=0x0;_0x133fdc<_0x295295[_0x9c35('0x3f')][_0x9c35('0x68')][_0x9c35('0x44')];_0x133fdc+=0x1){socket['emit'](_0x9c35('0xb6'),{'UserId':Number(_0x295295[_0x9c35('0x3f')]['ids'][_0x133fdc]),'OpenchannelAccountId':Number(_0x295295[_0x9c35('0x52')]['id'])});}}else{socket[_0x9c35('0xb2')](_0x9c35('0xb6'),{'UserId':Number(_0x295295[_0x9c35('0x3f')][_0x9c35('0x68')]),'OpenchannelAccountId':Number(_0x295295[_0x9c35('0x52')]['id'])});}});}})['then'](respondWithStatusCode(_0x4c8127,null))[_0x9c35('0x25')](handleError(_0x4c8127,null));};exports[_0x9c35('0xb7')]=function(_0x37bf9b,_0x4b6a39,_0x5ac86d){var _0x5885c0={};var _0x5bf3d4={};var _0x225c8b;var _0x452cc4;return db[_0x9c35('0x3a')][_0x9c35('0x63')]({'where':{'id':_0x37bf9b[_0x9c35('0x52')]['id']}})[_0x9c35('0x1b')](handleEntityNotFound(_0x4b6a39,null))[_0x9c35('0x1b')](function(_0x3b07dd){if(_0x3b07dd){_0x225c8b=_0x3b07dd;_0x5bf3d4[_0x9c35('0x3c')]=_[_0x9c35('0x3e')](db['User'][_0x9c35('0x65')]);_0x5bf3d4[_0x9c35('0x3f')]=_[_0x9c35('0x3e')](_0x37bf9b[_0x9c35('0x3f')]);_0x5bf3d4['filters']=_['intersection'](_0x5bf3d4[_0x9c35('0x3c')],_0x5bf3d4[_0x9c35('0x3f')]);_0x5885c0[_0x9c35('0x41')]=_[_0x9c35('0x42')](_0x5bf3d4[_0x9c35('0x3c')],qs[_0x9c35('0x43')](_0x37bf9b[_0x9c35('0x3f')][_0x9c35('0x43')]));_0x5885c0['attributes']=_0x5885c0[_0x9c35('0x41')]['length']?_0x5885c0['attributes']:_0x5bf3d4[_0x9c35('0x3c')];_0x5885c0[_0x9c35('0x47')]=qs[_0x9c35('0x48')](_0x37bf9b[_0x9c35('0x3f')]['sort']);_0x5885c0[_0x9c35('0x49')]=qs[_0x9c35('0x40')](_['pick'](_0x37bf9b[_0x9c35('0x3f')],_0x5bf3d4['filters']));if(_0x37bf9b[_0x9c35('0x3f')][_0x9c35('0x4c')]){_0x5885c0['where']=_[_0x9c35('0x4d')](_0x5885c0[_0x9c35('0x49')],{'$or':_[_0x9c35('0x3d')](_0x5885c0['attributes'],function(_0x280fe1){var _0x18bd17={};_0x18bd17[_0x280fe1]={'$like':'%'+_0x37bf9b[_0x9c35('0x3f')]['filter']+'%'};return _0x18bd17;})});}_0x5885c0=_['merge']({},_0x5885c0,_0x37bf9b[_0x9c35('0x54')]);return _0x225c8b['getAgents'](_0x5885c0);}})[_0x9c35('0x1b')](function(_0xe1d3c8){if(_0xe1d3c8){_0x452cc4=_0xe1d3c8['length'];if(!_0x37bf9b['query'][_0x9c35('0x45')]('nolimit')){_0x5885c0[_0x9c35('0x2b')]=qs[_0x9c35('0x2b')](_0x37bf9b[_0x9c35('0x3f')][_0x9c35('0x2b')]);_0x5885c0[_0x9c35('0x2d')]=qs[_0x9c35('0x2d')](_0x37bf9b[_0x9c35('0x3f')][_0x9c35('0x2d')]);}return _0x225c8b['getAgents'](_0x5885c0);}})[_0x9c35('0x1b')](function(_0x47c152){if(_0x47c152){return _0x47c152?{'count':_0x452cc4,'rows':_0x47c152}:null;}})['then'](respondWithResult(_0x4b6a39,null))['catch'](handleError(_0x4b6a39,null));};exports[_0x9c35('0xa4')]=function(_0x1887f2,_0x6337ef,_0x31765d){var _0x3d7ad5,_0x39f68b,_0x21f150;if(_[_0x9c35('0x74')](_0x1887f2['body'][_0x9c35('0x56')])||_0x1887f2[_0x9c35('0x56')]['body']===''){throw new db[(_0x9c35('0x6f'))][(_0x9c35('0x77'))](_0x9c35('0x78'));}if(_[_0x9c35('0x74')](_0x1887f2['body']['to'])){}_0x3d7ad5=_0x1887f2[_0x9c35('0x56')]['to'];return db[_0x9c35('0x3a')][_0x9c35('0x63')]({'where':{'id':_0x1887f2[_0x9c35('0x52')]['id']}})['then'](handleEntityNotFound(_0x6337ef,null))[_0x9c35('0x1b')](function(_0x2ae44a){if(_0x2ae44a){return db[_0x9c35('0x3a')][_0x9c35('0x5b')]({'where':{'id':_0x2ae44a['id']},'include':[{'model':db[_0x9c35('0xb8')],'as':_0x9c35('0x7c'),'include':[{'model':db[_0x9c35('0x6e')],'as':'Contacts','where':{[_0x2ae44a[_0x9c35('0x79')]]:_0x3d7ad5},'limit':0x1,'order':[['updatedAt',_0x9c35('0xb9')]]}]}]})[_0x9c35('0x1b')](handleEntityNotFound(_0x6337ef,null))['then'](function(_0x38baab){if(_0x38baab&&_0x38baab[_0x9c35('0x7c')]){_0x39f68b=_0x38baab[_0x9c35('0x33')]({'plain':!![]});if(_0x39f68b[_0x9c35('0x7c')]&&_0x39f68b[_0x9c35('0x7c')][_0x9c35('0x84')][_0x9c35('0x44')]){return _0x39f68b[_0x9c35('0x7c')][_0x9c35('0x84')][0x0];}return db[_0x9c35('0x6e')]['create'](_[_0x9c35('0x12')](_0x1887f2[_0x9c35('0x56')],{'firstName':_0x3d7ad5,[_0x38baab[_0x9c35('0x79')]]:_0x3d7ad5,'phone':_0x3d7ad5,'ListId':_0x39f68b[_0x9c35('0xba')]}));}})['then'](handleEntityNotFound(_0x6337ef,null))[_0x9c35('0x1b')](function(_0x261c59){if(_0x261c59){_0x21f150=_0x261c59;return db['OpenchannelInteraction'][_0x9c35('0x5b')]({'where':{'ContactId':_0x21f150['id'],'closed':![],'OpenchannelAccountId':_0x39f68b['id']}})[_0x9c35('0x1b')](function(_0x8cd158){if(_0x8cd158){return[_0x8cd158,![]];}return db['OpenchannelInteraction']['create']({'UserId':_0x1887f2[_0x9c35('0x57')]['id'],'ContactId':_0x21f150['id'],'OpenchannelAccountId':_0x39f68b['id'],'lastMsgDirection':'out','firstMsgDirection':'out','Messages':[_[_0x9c35('0x4d')](_0x1887f2[_0x9c35('0x56')],{'read':![],'body':_0x1887f2['body']['body'],'OpenchannelAccountId':_0x39f68b['id'],'UserId':_0x1887f2[_0x9c35('0x57')]['id'],'ContactId':_0x21f150['id']})]},{'include':[{'model':db['OpenchannelMessage'],'as':'Messages'}]})[_0x9c35('0x1b')](function(_0x2042c6){return[_0x2042c6,!![]];});});}})[_0x9c35('0xb1')](function(_0x248208,_0x446092){if(_0x446092){return _0x248208;}return db[_0x9c35('0x92')]['create'](_[_0x9c35('0x4d')](_0x1887f2[_0x9c35('0x56')],{'read':![],'body':_0x1887f2[_0x9c35('0x56')][_0x9c35('0x56')],'OpenchannelAccountId':_0x39f68b['id'],'OpenchannelInteractionId':_0x248208['id'],'UserId':_0x1887f2[_0x9c35('0x57')]['id'],'ContactId':_0x21f150['id']}))[_0x9c35('0x1b')](function(_0x2f4454){_0x248208[_0x9c35('0xbb')][_0x9c35('0xbc')]=[];_0x248208[_0x9c35('0xbb')][_0x9c35('0xbc')][_0x9c35('0xbd')](_0x2f4454[_0x9c35('0xbb')]);return _0x248208;});});}})[_0x9c35('0x1b')](respondWithResult(_0x6337ef,null))['catch'](handleError(_0x6337ef,null));};