Built motion from commit 10af8726.|2.6.34
[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 _0x3d30=['rows','show','params','options','create','body','user','role','UserProfileSection','find','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','mandatoryDispositionPause','describe','OpenchannelAccountId','Disposition','getDispositions','findOne','removeDispositions','ids','addAnswer','CannedAnswer','getAnswers','removeAnswers','CmContact','Sequelize','no\x20available\x20attributes','difference','createdAt','CompanyId','ListId','isNil','from','ValidationError','from\x20is\x20mandatory','body\x20is\x20mandatory\x20and\x20not\x20empty','mapKey\x20is\x20mandatory,\x20please\x20use\x20one\x20of\x20these:\x20','includes','mapKey','CmList','List','Contacts','DESC','OpenchannelApplication','Applications','account','applications','list','orderBy','priority','asc','contact','threadId','externalUrl','OpenchannelInteraction','spread','firstName','messageId','interaction','created','autoclose','push','close','unmanaged','*,*,*,*','OpenchannelMessage','AttachmentId','UserId','unshift','agent','waitForTheAssignedAgent','queueId','OpenchannelQueue','waitForTheAssignedQueue','Start','startRouting','EventManager','notify','sequelize','transaction','Transaction','ISOLATION_LEVELS','READ_COMMITTED','finally','getApplications','getInteractions','Contact','User','Owner','internal','Tag','Tags','color','tag','addAgents','omit','userOpenchannelAccount:save','removeAgents','emit','userOpenchannelAccount:remove','getAgents','updatedAt','out','Messages','dataValues','zip-dir','request-promise','mustache','path','sox','to-csv','ejs','fs-extra','lodash','crypto','jsforce','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/license/util','../../mysqldb','redis','defaults','localhost','./openchannelAccount.socket','register','jayson/promise','http','client','request','then','info','OpenchannelAccount,\x20%s,\x20%s','debug','OpenchannelAccount,\x20%s,\x20%s,\x20%s','error','code','message','result','catch','sendStatus','status','end','json','offset','undefined','limit','count','set','Content-Range','reject','update','get','OpenchannelAccounts','UserProfileResource','destroy','stack','name','send','index','Pause','map','OpenchannelAccount','rawAttributes','fieldName','type','model','keys','query','filters','intersection','fields','attributes','length','hasOwnProperty','nolimit','order','sort','pick','filter','where','merge','VIRTUAL','includeAll','include','findAll'];(function(_0x7321a1,_0x2931e5){var _0x2dc2cd=function(_0x3b85ec){while(--_0x3b85ec){_0x7321a1['push'](_0x7321a1['shift']());}};_0x2dc2cd(++_0x2931e5);}(_0x3d30,0x6a));var _0x03d3=function(_0x1f284,_0x52aef1){_0x1f284=_0x1f284-0x0;var _0xf93943=_0x3d30[_0x1f284];return _0xf93943;};'use strict';var emlformat=require('eml-format');var rimraf=require('rimraf');var zipdir=require(_0x03d3('0x0'));var jsonpatch=require('fast-json-patch');var rp=require(_0x03d3('0x1'));var moment=require('moment');var BPromise=require('bluebird');var Mustache=require(_0x03d3('0x2'));var util=require('util');var path=require(_0x03d3('0x3'));var sox=require(_0x03d3('0x4'));var csv=require(_0x03d3('0x5'));var ejs=require(_0x03d3('0x6'));var fs=require('fs');var fs_extra=require(_0x03d3('0x7'));var _=require(_0x03d3('0x8'));var squel=require('squel');var crypto=require(_0x03d3('0x9'));var jsforce=require(_0x03d3('0xa'));var deskjs=require('desk.js');var toCsv=require(_0x03d3('0x5'));var querystring=require(_0x03d3('0xb'));var Papa=require(_0x03d3('0xc'));var Redis=require(_0x03d3('0xd'));var authService=require(_0x03d3('0xe'));var qs=require(_0x03d3('0xf'));var as=require(_0x03d3('0x10'));var hardwareService=require(_0x03d3('0x11'));var logger=require(_0x03d3('0x12'))('api');var utils=require('../../config/utils');var config=require('../../config/environment');var licenseUtil=require(_0x03d3('0x13'));var db=require(_0x03d3('0x14'))['db'];config[_0x03d3('0x15')]=_[_0x03d3('0x16')](config[_0x03d3('0x15')],{'host':_0x03d3('0x17'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x03d3('0x15')]));require(_0x03d3('0x18'))[_0x03d3('0x19')](socket);var jayson=require(_0x03d3('0x1a'));var client=jayson['client'][_0x03d3('0x1b')]({'port':0x232c});var client9002=jayson[_0x03d3('0x1c')]['http']({'port':0x232a});function respondWithRpcPromise(_0x5f4f6a,_0x158ff2,_0x2d4052,_0x1fdb64){return new BPromise(function(_0x4a48c4,_0x25806f){var _0x214880=_0x1fdb64||client;return _0x214880[_0x03d3('0x1d')](_0x5f4f6a,_0x2d4052)[_0x03d3('0x1e')](function(_0x4c72fe){logger[_0x03d3('0x1f')](_0x03d3('0x20'),_0x158ff2,'request\x20sent');logger[_0x03d3('0x21')](_0x03d3('0x22'),_0x158ff2,'request\x20sent',JSON['stringify'](_0x4c72fe));if(_0x4c72fe[_0x03d3('0x23')]){if(_0x4c72fe[_0x03d3('0x23')][_0x03d3('0x24')]===0x1f4){logger[_0x03d3('0x23')](_0x03d3('0x20'),_0x158ff2,_0x4c72fe['error'][_0x03d3('0x25')]);return _0x25806f(_0x4c72fe[_0x03d3('0x23')][_0x03d3('0x25')]);}logger[_0x03d3('0x23')](_0x03d3('0x20'),_0x158ff2,_0x4c72fe[_0x03d3('0x23')][_0x03d3('0x25')]);return _0x4a48c4(_0x4c72fe[_0x03d3('0x23')][_0x03d3('0x25')]);}else{logger[_0x03d3('0x1f')](_0x03d3('0x20'),_0x158ff2,'request\x20sent');_0x4a48c4(_0x4c72fe[_0x03d3('0x26')][_0x03d3('0x25')]);}})[_0x03d3('0x27')](function(_0x2370ee){logger[_0x03d3('0x23')](_0x03d3('0x20'),_0x158ff2,_0x2370ee);_0x25806f(_0x2370ee);});});}function respondWithStatusCode(_0x439455,_0x3caf5b){_0x3caf5b=_0x3caf5b||0xcc;return function(_0x180db7){if(_0x180db7){return _0x439455[_0x03d3('0x28')](_0x3caf5b);}return _0x439455[_0x03d3('0x29')](_0x3caf5b)[_0x03d3('0x2a')]();};}function respondWithResult(_0x1f768e,_0x1605fe){_0x1605fe=_0x1605fe||0xc8;return function(_0x47f3bd){if(_0x47f3bd){return _0x1f768e[_0x03d3('0x29')](_0x1605fe)[_0x03d3('0x2b')](_0x47f3bd);}};}function respondWithFilteredResult(_0x380c95,_0x185711){return function(_0x4d1e3f){if(_0x4d1e3f){var _0x250d28=typeof _0x185711[_0x03d3('0x2c')]===_0x03d3('0x2d')&&typeof _0x185711[_0x03d3('0x2e')]===_0x03d3('0x2d');var _0x248677=_0x4d1e3f[_0x03d3('0x2f')];var _0x1f71ce=_0x250d28?0x0:_0x185711[_0x03d3('0x2c')];var _0x496677=_0x250d28?_0x4d1e3f[_0x03d3('0x2f')]:_0x185711[_0x03d3('0x2c')]+_0x185711[_0x03d3('0x2e')];var _0x384f52;if(_0x496677>=_0x248677){_0x496677=_0x248677;_0x384f52=0xc8;}else{_0x384f52=0xce;}_0x380c95[_0x03d3('0x29')](_0x384f52);return _0x380c95[_0x03d3('0x30')](_0x03d3('0x31'),_0x1f71ce+'-'+_0x496677+'/'+_0x248677)['json'](_0x4d1e3f);}return null;};}function patchUpdates(_0x52a6ed){return function(_0x9f7a44){try{jsonpatch['apply'](_0x9f7a44,_0x52a6ed,!![]);}catch(_0xf8e49c){return BPromise[_0x03d3('0x32')](_0xf8e49c);}return _0x9f7a44['save']();};}function saveUpdates(_0x17c94c,_0x2c18d6){return function(_0x24b3de){if(_0x24b3de){return _0x24b3de[_0x03d3('0x33')](_0x17c94c)[_0x03d3('0x1e')](function(_0xe660fe){return _0xe660fe;});}return null;};}function removeEntity(_0x244e6b,_0x1d2982){return function(_0x3bb4df){if(_0x3bb4df){return _0x3bb4df['destroy']()[_0x03d3('0x1e')](function(){var _0x185c9c=_0x3bb4df[_0x03d3('0x34')]({'plain':!![]});var _0x5ac9c3=_0x03d3('0x35');return db[_0x03d3('0x36')][_0x03d3('0x37')]({'where':{'type':_0x5ac9c3,'resourceId':_0x185c9c['id']}})[_0x03d3('0x1e')](function(){return _0x3bb4df;});})[_0x03d3('0x1e')](function(){_0x244e6b[_0x03d3('0x29')](0xcc)['end']();});}};}function handleEntityNotFound(_0x97c0a1,_0x1154a6){return function(_0x193cda){if(!_0x193cda){_0x97c0a1[_0x03d3('0x28')](0x194);}return _0x193cda;};}function handleError(_0x85d749,_0x13e657){_0x13e657=_0x13e657||0x1f4;return function(_0x2ea95b){logger[_0x03d3('0x23')](_0x2ea95b[_0x03d3('0x38')]);if(_0x2ea95b[_0x03d3('0x39')]){delete _0x2ea95b[_0x03d3('0x39')];}_0x85d749[_0x03d3('0x29')](_0x13e657)[_0x03d3('0x3a')](_0x2ea95b);};}exports[_0x03d3('0x3b')]=function(_0x577f8c,_0x469f47){var _0x3061f1={'include':[{'model':db[_0x03d3('0x3c')],'as':'mandatoryDispositionPause'}]},_0x182896={},_0x4894e7={'count':0x0,'rows':[]};var _0x4a0bf4=_[_0x03d3('0x3d')](db[_0x03d3('0x3e')][_0x03d3('0x3f')],function(_0xea1d9c){return{'name':_0xea1d9c[_0x03d3('0x40')],'type':_0xea1d9c[_0x03d3('0x41')]['key']};});_0x182896[_0x03d3('0x42')]=_[_0x03d3('0x3d')](_0x4a0bf4,'name');_0x182896['query']=_[_0x03d3('0x43')](_0x577f8c[_0x03d3('0x44')]);_0x182896[_0x03d3('0x45')]=_['intersection'](_0x182896[_0x03d3('0x42')],_0x182896['query']);_0x3061f1['attributes']=_[_0x03d3('0x46')](_0x182896[_0x03d3('0x42')],qs[_0x03d3('0x47')](_0x577f8c['query'][_0x03d3('0x47')]));_0x3061f1[_0x03d3('0x48')]=_0x3061f1[_0x03d3('0x48')][_0x03d3('0x49')]?_0x3061f1[_0x03d3('0x48')]:_0x182896[_0x03d3('0x42')];if(!_0x577f8c['query'][_0x03d3('0x4a')](_0x03d3('0x4b'))){_0x3061f1[_0x03d3('0x2e')]=qs['limit'](_0x577f8c[_0x03d3('0x44')][_0x03d3('0x2e')]);_0x3061f1[_0x03d3('0x2c')]=qs[_0x03d3('0x2c')](_0x577f8c[_0x03d3('0x44')]['offset']);}_0x3061f1[_0x03d3('0x4c')]=qs[_0x03d3('0x4d')](_0x577f8c[_0x03d3('0x44')][_0x03d3('0x4d')]);_0x3061f1['where']=qs[_0x03d3('0x45')](_[_0x03d3('0x4e')](_0x577f8c[_0x03d3('0x44')],_0x182896['filters']),_0x4a0bf4);if(_0x577f8c[_0x03d3('0x44')][_0x03d3('0x4f')]){_0x3061f1[_0x03d3('0x50')]=_[_0x03d3('0x51')](_0x3061f1[_0x03d3('0x50')],{'$or':_[_0x03d3('0x3d')](_0x4a0bf4,function(_0x188f76){if(_0x188f76[_0x03d3('0x41')]!==_0x03d3('0x52')){var _0x5759c4={};_0x5759c4[_0x188f76['name']]={'$like':'%'+_0x577f8c[_0x03d3('0x44')][_0x03d3('0x4f')]+'%'};return _0x5759c4;}})});}_0x3061f1=_[_0x03d3('0x51')]({},_0x3061f1,_0x577f8c['options']);var _0xaa6db2={'where':_0x3061f1[_0x03d3('0x50')]};return db['OpenchannelAccount']['count'](_0xaa6db2)[_0x03d3('0x1e')](function(_0x55b9fc){_0x4894e7[_0x03d3('0x2f')]=_0x55b9fc;if(_0x577f8c[_0x03d3('0x44')][_0x03d3('0x53')]){_0x3061f1[_0x03d3('0x54')]=[{'all':!![]}];}return db['OpenchannelAccount'][_0x03d3('0x55')](_0x3061f1);})[_0x03d3('0x1e')](function(_0x185ad8){_0x4894e7[_0x03d3('0x56')]=_0x185ad8;return _0x4894e7;})[_0x03d3('0x1e')](respondWithFilteredResult(_0x469f47,_0x3061f1))[_0x03d3('0x27')](handleError(_0x469f47,null));};exports[_0x03d3('0x57')]=function(_0x506fac,_0x41c0d0){var _0x17ecd1={'raw':![],'where':{'id':_0x506fac[_0x03d3('0x58')]['id']},'include':[{'model':db[_0x03d3('0x3c')],'as':'mandatoryDispositionPause'}]},_0x304d79={};_0x304d79[_0x03d3('0x42')]=_[_0x03d3('0x43')](db[_0x03d3('0x3e')][_0x03d3('0x3f')]);_0x304d79[_0x03d3('0x44')]=_[_0x03d3('0x43')](_0x506fac['query']);_0x304d79[_0x03d3('0x45')]=_['intersection'](_0x304d79[_0x03d3('0x42')],_0x304d79[_0x03d3('0x44')]);_0x17ecd1[_0x03d3('0x48')]=_[_0x03d3('0x46')](_0x304d79[_0x03d3('0x42')],qs[_0x03d3('0x47')](_0x506fac['query'][_0x03d3('0x47')]));_0x17ecd1[_0x03d3('0x48')]=_0x17ecd1['attributes'][_0x03d3('0x49')]?_0x17ecd1['attributes']:_0x304d79[_0x03d3('0x42')];if(_0x506fac[_0x03d3('0x44')]['includeAll']){_0x17ecd1['include']=[{'all':!![]}];}_0x17ecd1=_[_0x03d3('0x51')]({},_0x17ecd1,_0x506fac[_0x03d3('0x59')]);return db[_0x03d3('0x3e')]['find'](_0x17ecd1)[_0x03d3('0x1e')](handleEntityNotFound(_0x41c0d0,null))[_0x03d3('0x1e')](respondWithResult(_0x41c0d0,null))[_0x03d3('0x27')](handleError(_0x41c0d0,null));};exports['create']=function(_0x34bc5a,_0x40cbf7){return db[_0x03d3('0x3e')][_0x03d3('0x5a')](_0x34bc5a[_0x03d3('0x5b')],{})[_0x03d3('0x1e')](function(_0x58ac7d){var _0x444242=_0x34bc5a[_0x03d3('0x5c')][_0x03d3('0x34')]({'plain':!![]});if(!_0x444242)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x444242[_0x03d3('0x5d')]===_0x03d3('0x5c')){var _0x1516b7=_0x58ac7d[_0x03d3('0x34')]({'plain':!![]});var _0x3e87d3=_0x03d3('0x35');return db[_0x03d3('0x5e')][_0x03d3('0x5f')]({'where':{'name':_0x3e87d3,'userProfileId':_0x444242[_0x03d3('0x60')]},'raw':!![]})['then'](function(_0x45c58d){if(_0x45c58d&&_0x45c58d[_0x03d3('0x61')]===0x0){return db[_0x03d3('0x36')][_0x03d3('0x5a')]({'name':_0x1516b7[_0x03d3('0x39')],'resourceId':_0x1516b7['id'],'type':_0x45c58d['name'],'sectionId':_0x45c58d['id']},{})[_0x03d3('0x1e')](function(){return _0x58ac7d;});}else{return _0x58ac7d;}})['catch'](function(_0x24fe69){logger[_0x03d3('0x23')](_0x03d3('0x62'),_0x24fe69);throw _0x24fe69;});}return _0x58ac7d;})[_0x03d3('0x1e')](respondWithResult(_0x40cbf7,0xc9))[_0x03d3('0x27')](handleError(_0x40cbf7,null));};exports[_0x03d3('0x33')]=function(_0x3fe2ea,_0x3f7868){if(_0x3fe2ea[_0x03d3('0x5b')]['id']){delete _0x3fe2ea[_0x03d3('0x5b')]['id'];}return db[_0x03d3('0x3e')][_0x03d3('0x5f')]({'where':{'id':_0x3fe2ea['params']['id']},'include':[{'model':db['Pause'],'as':_0x03d3('0x63')}]})[_0x03d3('0x1e')](handleEntityNotFound(_0x3f7868,null))[_0x03d3('0x1e')](saveUpdates(_0x3fe2ea['body'],null))[_0x03d3('0x1e')](respondWithResult(_0x3f7868,null))['catch'](handleError(_0x3f7868,null));};exports[_0x03d3('0x37')]=function(_0x2f778c,_0x3ff57f){return db[_0x03d3('0x3e')]['find']({'where':{'id':_0x2f778c[_0x03d3('0x58')]['id']}})[_0x03d3('0x1e')](handleEntityNotFound(_0x3ff57f,null))[_0x03d3('0x1e')](removeEntity(_0x3ff57f,null))[_0x03d3('0x27')](handleError(_0x3ff57f,null));};exports[_0x03d3('0x64')]=function(_0x7fa5cb,_0x2eec4b){return db[_0x03d3('0x3e')][_0x03d3('0x64')]()[_0x03d3('0x1e')](respondWithResult(_0x2eec4b,null))[_0x03d3('0x27')](handleError(_0x2eec4b,null));};exports['addDisposition']=function(_0x1e284d,_0x8666a,_0x28cb26){if(_0x1e284d[_0x03d3('0x5b')]['id']){delete _0x1e284d[_0x03d3('0x5b')]['id'];}return db[_0x03d3('0x3e')][_0x03d3('0x5f')]({'where':{'id':_0x1e284d[_0x03d3('0x58')]['id']}})[_0x03d3('0x1e')](handleEntityNotFound(_0x8666a,null))[_0x03d3('0x1e')](function(_0xb59d34){if(_0xb59d34){_0x1e284d[_0x03d3('0x5b')][_0x03d3('0x65')]=_0xb59d34['id'];return db[_0x03d3('0x66')]['create'](_0x1e284d[_0x03d3('0x5b')]);}})[_0x03d3('0x1e')](respondWithResult(_0x8666a,null))[_0x03d3('0x27')](handleError(_0x8666a,null));};exports[_0x03d3('0x67')]=function(_0x1a5c3b,_0x4a052e,_0x56bea2){var _0x4811d7={'raw':![],'where':{}};var _0x2a31d0={};var _0x592980={'count':0x0,'rows':[]};return db['OpenchannelAccount'][_0x03d3('0x68')]({'where':{'id':_0x1a5c3b[_0x03d3('0x58')]['id']}})['then'](handleEntityNotFound(_0x4a052e,null))[_0x03d3('0x1e')](function(_0x34bc38){if(_0x34bc38){_0x2a31d0[_0x03d3('0x42')]=_[_0x03d3('0x43')](db[_0x03d3('0x66')][_0x03d3('0x3f')]);_0x2a31d0[_0x03d3('0x44')]=_[_0x03d3('0x43')](_0x1a5c3b[_0x03d3('0x44')]);_0x2a31d0[_0x03d3('0x45')]=_[_0x03d3('0x46')](_0x2a31d0['model'],_0x2a31d0[_0x03d3('0x44')]);_0x4811d7[_0x03d3('0x48')]=_[_0x03d3('0x46')](_0x2a31d0['model'],qs[_0x03d3('0x47')](_0x1a5c3b[_0x03d3('0x44')]['fields']));_0x4811d7[_0x03d3('0x48')]=_0x4811d7[_0x03d3('0x48')]['length']?_0x4811d7[_0x03d3('0x48')]:_0x2a31d0[_0x03d3('0x42')];if(!_0x1a5c3b[_0x03d3('0x44')][_0x03d3('0x4a')]('nolimit')){_0x4811d7[_0x03d3('0x2e')]=qs[_0x03d3('0x2e')](_0x1a5c3b[_0x03d3('0x44')]['limit']);_0x4811d7[_0x03d3('0x2c')]=qs[_0x03d3('0x2c')](_0x1a5c3b['query'][_0x03d3('0x2c')]);}_0x4811d7[_0x03d3('0x4c')]=qs[_0x03d3('0x4d')](_0x1a5c3b[_0x03d3('0x44')]['sort']);_0x4811d7[_0x03d3('0x50')]=qs[_0x03d3('0x45')](_[_0x03d3('0x4e')](_0x1a5c3b['query'],_0x2a31d0[_0x03d3('0x45')]));_0x4811d7[_0x03d3('0x50')]['OpenchannelAccountId']=_0x34bc38['id'];if(_0x1a5c3b['query'][_0x03d3('0x4f')]){_0x4811d7[_0x03d3('0x50')]=_[_0x03d3('0x51')](_0x4811d7[_0x03d3('0x50')],{'$or':_['map'](_0x4811d7['attributes'],function(_0x3fec10){var _0x35ce9b={};_0x35ce9b[_0x3fec10]={'$like':'%'+_0x1a5c3b[_0x03d3('0x44')]['filter']+'%'};return _0x35ce9b;})});}_0x4811d7=_[_0x03d3('0x51')]({},_0x4811d7,_0x1a5c3b[_0x03d3('0x59')]);return db['Disposition'][_0x03d3('0x2f')]({'where':_0x4811d7['where']})[_0x03d3('0x1e')](function(_0x587629){_0x592980[_0x03d3('0x2f')]=_0x587629;if(_0x1a5c3b[_0x03d3('0x44')][_0x03d3('0x53')]){_0x4811d7[_0x03d3('0x54')]=[{'all':!![]}];}return db[_0x03d3('0x66')][_0x03d3('0x55')](_0x4811d7);})['then'](function(_0x20d271){_0x592980[_0x03d3('0x56')]=_0x20d271;return _0x592980;});}})[_0x03d3('0x1e')](respondWithFilteredResult(_0x4a052e,_0x4811d7))[_0x03d3('0x27')](handleError(_0x4a052e,null));};exports[_0x03d3('0x69')]=function(_0x1f8bf5,_0x2bb507,_0x7c4f92){return db[_0x03d3('0x3e')][_0x03d3('0x5f')]({'where':{'id':_0x1f8bf5['params']['id']}})[_0x03d3('0x1e')](handleEntityNotFound(_0x2bb507,null))['then'](function(_0x5bcf1e){if(_0x5bcf1e){return _0x5bcf1e[_0x03d3('0x69')](_0x1f8bf5['query'][_0x03d3('0x6a')]);}})['then'](respondWithStatusCode(_0x2bb507,null))['catch'](handleError(_0x2bb507,null));};exports[_0x03d3('0x6b')]=function(_0x57da81,_0x2ddccd,_0x2536ff){if(_0x57da81[_0x03d3('0x5b')]['id']){delete _0x57da81['body']['id'];}return db['OpenchannelAccount'][_0x03d3('0x5f')]({'where':{'id':_0x57da81[_0x03d3('0x58')]['id']}})[_0x03d3('0x1e')](handleEntityNotFound(_0x2ddccd,null))[_0x03d3('0x1e')](function(_0x4687c2){if(_0x4687c2){_0x57da81[_0x03d3('0x5b')][_0x03d3('0x65')]=_0x4687c2['id'];return db[_0x03d3('0x6c')][_0x03d3('0x5a')](_0x57da81[_0x03d3('0x5b')]);}})['then'](respondWithResult(_0x2ddccd,null))[_0x03d3('0x27')](handleError(_0x2ddccd,null));};exports[_0x03d3('0x6d')]=function(_0xac950f,_0xaa5d80,_0x5b0d14){var _0x457ffa={'raw':![],'where':{}};var _0x39c1bf={};var _0x279834={'count':0x0,'rows':[]};return db['OpenchannelAccount'][_0x03d3('0x68')]({'where':{'id':_0xac950f[_0x03d3('0x58')]['id']}})[_0x03d3('0x1e')](handleEntityNotFound(_0xaa5d80,null))[_0x03d3('0x1e')](function(_0x3700d7){if(_0x3700d7){_0x39c1bf[_0x03d3('0x42')]=_[_0x03d3('0x43')](db[_0x03d3('0x6c')][_0x03d3('0x3f')]);_0x39c1bf[_0x03d3('0x44')]=_[_0x03d3('0x43')](_0xac950f['query']);_0x39c1bf[_0x03d3('0x45')]=_[_0x03d3('0x46')](_0x39c1bf[_0x03d3('0x42')],_0x39c1bf[_0x03d3('0x44')]);_0x457ffa[_0x03d3('0x48')]=_['intersection'](_0x39c1bf['model'],qs[_0x03d3('0x47')](_0xac950f['query'][_0x03d3('0x47')]));_0x457ffa['attributes']=_0x457ffa[_0x03d3('0x48')][_0x03d3('0x49')]?_0x457ffa[_0x03d3('0x48')]:_0x39c1bf['model'];if(!_0xac950f[_0x03d3('0x44')]['hasOwnProperty'](_0x03d3('0x4b'))){_0x457ffa[_0x03d3('0x2e')]=qs[_0x03d3('0x2e')](_0xac950f['query'][_0x03d3('0x2e')]);_0x457ffa[_0x03d3('0x2c')]=qs[_0x03d3('0x2c')](_0xac950f[_0x03d3('0x44')][_0x03d3('0x2c')]);}_0x457ffa[_0x03d3('0x4c')]=qs[_0x03d3('0x4d')](_0xac950f[_0x03d3('0x44')]['sort']);_0x457ffa['where']=qs['filters'](_[_0x03d3('0x4e')](_0xac950f['query'],_0x39c1bf[_0x03d3('0x45')]));_0x457ffa[_0x03d3('0x50')][_0x03d3('0x65')]=_0x3700d7['id'];if(_0xac950f[_0x03d3('0x44')][_0x03d3('0x4f')]){_0x457ffa[_0x03d3('0x50')]=_[_0x03d3('0x51')](_0x457ffa[_0x03d3('0x50')],{'$or':_[_0x03d3('0x3d')](_0x457ffa['attributes'],function(_0x43c2d2){var _0x10ce41={};_0x10ce41[_0x43c2d2]={'$like':'%'+_0xac950f[_0x03d3('0x44')]['filter']+'%'};return _0x10ce41;})});}_0x457ffa=_[_0x03d3('0x51')]({},_0x457ffa,_0xac950f[_0x03d3('0x59')]);return db[_0x03d3('0x6c')][_0x03d3('0x2f')]({'where':_0x457ffa['where']})[_0x03d3('0x1e')](function(_0xc4dc20){_0x279834[_0x03d3('0x2f')]=_0xc4dc20;if(_0xac950f[_0x03d3('0x44')][_0x03d3('0x53')]){_0x457ffa[_0x03d3('0x54')]=[{'all':!![]}];}return db[_0x03d3('0x6c')]['findAll'](_0x457ffa);})[_0x03d3('0x1e')](function(_0x4e137f){_0x279834[_0x03d3('0x56')]=_0x4e137f;return _0x279834;});}})[_0x03d3('0x1e')](respondWithFilteredResult(_0xaa5d80,_0x457ffa))[_0x03d3('0x27')](handleError(_0xaa5d80,null));};exports[_0x03d3('0x6e')]=function(_0x3e3a1a,_0x48fb0d,_0x3342bc){return db[_0x03d3('0x3e')][_0x03d3('0x5f')]({'where':{'id':_0x3e3a1a[_0x03d3('0x58')]['id']}})[_0x03d3('0x1e')](handleEntityNotFound(_0x48fb0d,null))[_0x03d3('0x1e')](function(_0x253507){if(_0x253507){return _0x253507[_0x03d3('0x6e')](_0x3e3a1a[_0x03d3('0x44')]['ids']);}})[_0x03d3('0x1e')](respondWithStatusCode(_0x48fb0d,null))[_0x03d3('0x27')](handleError(_0x48fb0d,null));};exports['notify']=function(_0x329a79,_0x25a1f0,_0x2c1ecc){var _0x4d025d={'body':_0x329a79[_0x03d3('0x5b')],'channel':'openchannel'};var _0x53c5ca=[];var _0x5edcdb=[];var _0x521695={};var _0x165ffc=![];return db[_0x03d3('0x6f')]['describe']()[_0x03d3('0x1e')](function(_0x5d2eb3){if(!_0x5d2eb3){throw new db[(_0x03d3('0x70'))]['ValidationError'](_0x03d3('0x71'));}_0x53c5ca=_[_0x03d3('0x72')](_[_0x03d3('0x43')](_0x5d2eb3),['createdAt','updatedAt']);_0x5edcdb=_[_0x03d3('0x72')](_[_0x03d3('0x43')](_0x5d2eb3),[_0x03d3('0x73'),'updatedAt',_0x03d3('0x74'),_0x03d3('0x75')]);if(_0x329a79[_0x03d3('0x5b')]['id']){delete _0x329a79[_0x03d3('0x5b')]['id'];}if(_[_0x03d3('0x76')](_0x329a79[_0x03d3('0x5b')][_0x03d3('0x77')])){throw new db[(_0x03d3('0x70'))][(_0x03d3('0x78'))](_0x03d3('0x79'));}if(_['isNil'](_0x329a79[_0x03d3('0x5b')][_0x03d3('0x5b')])||_0x329a79[_0x03d3('0x5b')]['body']===''){throw new db[(_0x03d3('0x70'))][(_0x03d3('0x78'))](_0x03d3('0x7a'));}if(_['isNil'](_0x329a79[_0x03d3('0x5b')]['mapKey'])){throw new db[(_0x03d3('0x70'))][(_0x03d3('0x78'))](_0x03d3('0x7b')+_0x5edcdb);}if(!_[_0x03d3('0x7c')](_0x5edcdb,_0x329a79['body'][_0x03d3('0x7d')])){throw new db['Sequelize']['ValidationError']('mapKey\x20invalid,\x20please\x20use\x20one\x20of\x20these:\x20'+_0x5edcdb);}_0x521695[_0x329a79[_0x03d3('0x5b')][_0x03d3('0x7d')]]=_0x329a79[_0x03d3('0x5b')][_0x03d3('0x77')];})[_0x03d3('0x1e')](function(){return db[_0x03d3('0x3e')][_0x03d3('0x5f')]({'where':{'id':_0x329a79[_0x03d3('0x58')]['id']},'include':[{'model':db[_0x03d3('0x7e')],'as':_0x03d3('0x7f'),'include':[{'model':db[_0x03d3('0x6f')],'as':_0x03d3('0x80'),'where':_0x521695,'limit':0x1,'order':[['updatedAt',_0x03d3('0x81')]]}]},{'model':db[_0x03d3('0x82')],'as':_0x03d3('0x83')}]});})[_0x03d3('0x1e')](handleEntityNotFound(_0x25a1f0,null))['then'](function(_0x15506a){if(_0x15506a&&_0x15506a['List']){_0x4d025d[_0x03d3('0x84')]=_0x15506a;_0x4d025d[_0x03d3('0x85')]=_0x15506a[_0x03d3('0x83')];_0x4d025d[_0x03d3('0x86')]=_0x15506a['List'];_0x4d025d['applications']=_[_0x03d3('0x87')](_0x4d025d[_0x03d3('0x85')],[_0x03d3('0x88')],[_0x03d3('0x89')]);if(_0x4d025d[_0x03d3('0x84')][_0x03d3('0x83')]){delete _0x4d025d[_0x03d3('0x84')]['Applications'];}if(_0x4d025d[_0x03d3('0x84')][_0x03d3('0x7f')]&&_0x4d025d[_0x03d3('0x84')]['List'][_0x03d3('0x80')][_0x03d3('0x49')]){return _0x4d025d[_0x03d3('0x84')][_0x03d3('0x7f')]['Contacts'][0x0];}var _0x56e3a0=_[_0x03d3('0x16')](_0x329a79[_0x03d3('0x5b')],{'firstName':_0x329a79[_0x03d3('0x5b')][_0x03d3('0x77')],'ListId':_0x15506a[_0x03d3('0x75')]});_0x56e3a0[_0x329a79[_0x03d3('0x5b')][_0x03d3('0x7d')]]=_0x329a79[_0x03d3('0x5b')]['from'];return db[_0x03d3('0x6f')][_0x03d3('0x5a')](_0x56e3a0,{'fields':_0x53c5ca,'raw':!![]});}})[_0x03d3('0x1e')](handleEntityNotFound(_0x25a1f0,null))['then'](function(_0x3149b6){_0x4d025d[_0x03d3('0x8a')]=_0x3149b6;if(_0x3149b6){var _0x5b499e={'ContactId':_0x3149b6['id'],'OpenchannelAccountId':_0x329a79[_0x03d3('0x58')]['id'],'from':(_0x3149b6['firstName']||'')+'\x20'+(_0x3149b6['lastName']||'')};var _0x41f893={'OpenchannelAccountId':_0x329a79[_0x03d3('0x58')]['id'],'closed':![]};if(_0x329a79[_0x03d3('0x5b')]['threadId']){_0x41f893['threadId']=_0x329a79[_0x03d3('0x5b')]['threadId'];return db['OpenchannelInteraction'][_0x03d3('0x5f')]({'where':_0x41f893})[_0x03d3('0x1e')](function(_0x2e7649){if(_0x2e7649){return[_0x2e7649,![]];}_0x5b499e[_0x03d3('0x8b')]=_0x329a79[_0x03d3('0x5b')][_0x03d3('0x8b')];_0x5b499e[_0x03d3('0x8c')]=_0x329a79[_0x03d3('0x5b')][_0x03d3('0x8c')];return db[_0x03d3('0x8d')]['create'](_0x5b499e)[_0x03d3('0x1e')](function(_0x14df75){return[_0x14df75,!![]];});});}else{_0x41f893['threadId']=null;}_0x41f893['ContactId']=_0x3149b6['id'];return db[_0x03d3('0x8d')][_0x03d3('0x5f')]({'where':_0x41f893})['then'](function(_0x43f34b){if(_0x43f34b){return[_0x43f34b,![]];}return db[_0x03d3('0x8d')]['create'](_0x5b499e)['then'](function(_0x499759){return[_0x499759,!![]];});});}})[_0x03d3('0x8e')](function(_0x4a5d20,_0x4f44a6){if(_0x4a5d20){_0x165ffc=_0x4f44a6;if(!_0x4f44a6){var _0x581952={'from':(_0x4d025d[_0x03d3('0x8a')][_0x03d3('0x8f')]||'')+'\x20'+(_0x4d025d['contact']['lastName']||'')};if(_0x329a79[_0x03d3('0x5b')]['threadId']&&_0x329a79[_0x03d3('0x5b')][_0x03d3('0x90')]&&_0x329a79[_0x03d3('0x5b')][_0x03d3('0x8b')]!=_0x329a79[_0x03d3('0x5b')]['messageId']){_0x581952['threadId']=_0x329a79[_0x03d3('0x5b')][_0x03d3('0x90')];}return _0x4a5d20[_0x03d3('0x33')](_0x581952);}else{return _0x4a5d20;}}})[_0x03d3('0x1e')](function(_0x42d1c5){_0x4d025d[_0x03d3('0x91')]=_0x42d1c5[_0x03d3('0x34')]({'plain':!![]});_0x4d025d[_0x03d3('0x91')][_0x03d3('0x92')]=_0x165ffc;if(_0x4d025d['interaction'][_0x03d3('0x92')]){if(_0x4d025d[_0x03d3('0x84')][_0x03d3('0x93')]){_0x4d025d[_0x03d3('0x85')][_0x03d3('0x94')]({'id':0x0,'priority':_0x4d025d[_0x03d3('0x85')]['length']+0x1,'app':_0x03d3('0x95'),'appdata':_0x03d3('0x96'),'interval':_0x03d3('0x97')});}}return db[_0x03d3('0x98')][_0x03d3('0x5a')]({'body':_0x329a79[_0x03d3('0x5b')][_0x03d3('0x5b')],'OpenchannelAccountId':_0x329a79['params']['id'],'OpenchannelInteractionId':_0x42d1c5['id'],'direction':'in','ContactId':_0x4d025d['contact']['id'],'AttachmentId':_0x329a79[_0x03d3('0x5b')][_0x03d3('0x99')]});})[_0x03d3('0x1e')](function(_0x4e8aef){_0x4d025d['message']=_0x4e8aef;if(!_0x4d025d['interaction'][_0x03d3('0x9a')])return;return db['User'][_0x03d3('0x5f')]({'attributes':['id','name'],'where':{'id':_0x4d025d[_0x03d3('0x91')]['UserId']}});})[_0x03d3('0x1e')](function(_0x1c064f){if(_0x1c064f){_0x4d025d[_0x03d3('0x85')][_0x03d3('0x9b')]({'id':0x0,'priority':0x0,'app':_0x03d3('0x9c'),'appdata':_0x1c064f[_0x03d3('0x39')]+','+(_0x4d025d[_0x03d3('0x84')][_0x03d3('0x9d')]||0xa),'interval':_0x03d3('0x97')});}if(!_0x4d025d[_0x03d3('0x91')][_0x03d3('0x9e')])return;return db[_0x03d3('0x9f')][_0x03d3('0x5f')]({'attributes':['id',_0x03d3('0x39')],'where':{'id':_0x4d025d[_0x03d3('0x91')][_0x03d3('0x9e')]}});})['then'](function(_0x4c4289){if(_0x4c4289){_0x4d025d['applications']['unshift']({'id':0x0,'priority':0x1,'app':'queue','appdata':_0x4c4289['name']+','+(_0x4d025d[_0x03d3('0x84')][_0x03d3('0xa0')]||0x12c),'interval':_0x03d3('0x97')});}return respondWithRpcPromise(_0x03d3('0xa1'),_0x03d3('0xa2'),_0x4d025d);})['then'](function(_0x4927bd){respondWithRpcPromise(_0x03d3('0xa3'),_0x03d3('0xa3'),{'event':_0x03d3('0xa4'),'message':_0x4927bd},client9002);return _0x4927bd;})['then'](respondWithResult(_0x25a1f0,null))[_0x03d3('0x27')](handleError(_0x25a1f0,null));};exports['addApplications']=function(_0x4d96df,_0x2e9716){var _0x2735f0=_0x4d96df['params']['id'];var _0x2a59aa=_0x4d96df[_0x03d3('0x5b')];var _0xd1a1eb=0xc8;var _0x7bf1f2=null;return db[_0x03d3('0xa5')][_0x03d3('0xa6')]({'isolationLevel':db['sequelize'][_0x03d3('0xa7')][_0x03d3('0xa8')][_0x03d3('0xa9')]},function(_0x3baf84){return db[_0x03d3('0x3e')][_0x03d3('0x68')]({'where':{'id':_0x2735f0},'transaction':_0x3baf84})[_0x03d3('0x1e')](function(_0x1d8179){if(_0x1d8179){return db[_0x03d3('0x82')][_0x03d3('0x37')]({'where':{'OpenchannelAccountId':_0x2735f0},'transaction':_0x3baf84})[_0x03d3('0x1e')](function(){var _0x4cd221=_[_0x03d3('0x3d')](_0x2a59aa,function(_0x907073){_0x907073[_0x03d3('0x65')]=_0x2735f0;return _0x907073;});return db[_0x03d3('0x82')]['bulkCreate'](_0x4cd221,{'transaction':_0x3baf84});});}else{_0xd1a1eb=0x194;_0x7bf1f2=[];}});})[_0x03d3('0x1e')](function(){if(_0xd1a1eb!==0x194){return db[_0x03d3('0x82')]['findAndCountAll']({'where':{'OpenchannelAccountId':_0x2735f0},'order':_0x03d3('0x88')})['then'](function(_0x4f0112){_0x7bf1f2=_0x4f0112;});}})[_0x03d3('0x27')](function(_0x16d515){_0xd1a1eb=0x1f4;logger['error'](_0x16d515[_0x03d3('0x38')]);if(_0x16d515[_0x03d3('0x39')]){delete _0x16d515[_0x03d3('0x39')];}_0x7bf1f2=_0x16d515;})[_0x03d3('0xaa')](function(){if(_0x7bf1f2===null){_0x2e9716['sendStatus'](_0xd1a1eb);}else{if(_0xd1a1eb===0x1f4){_0x2e9716[_0x03d3('0x29')](_0xd1a1eb)[_0x03d3('0x3a')](_0x7bf1f2);}else{_0x2e9716[_0x03d3('0x29')](_0xd1a1eb)['json'](_0x7bf1f2);}}});};exports['getApplications']=function(_0x342340,_0x4874dd,_0x52163c){var _0x3915ae={};var _0x1594da={};var _0x13f3e7;var _0x2507c4;return db[_0x03d3('0x3e')][_0x03d3('0x68')]({'where':{'id':_0x342340[_0x03d3('0x58')]['id']}})['then'](handleEntityNotFound(_0x4874dd,null))[_0x03d3('0x1e')](function(_0xafbdf7){if(_0xafbdf7){_0x13f3e7=_0xafbdf7;_0x1594da['model']=_[_0x03d3('0x43')](db[_0x03d3('0x82')][_0x03d3('0x3f')]);_0x1594da['query']=_[_0x03d3('0x43')](_0x342340[_0x03d3('0x44')]);_0x1594da[_0x03d3('0x45')]=_['intersection'](_0x1594da['model'],_0x1594da[_0x03d3('0x44')]);_0x3915ae[_0x03d3('0x48')]=_[_0x03d3('0x46')](_0x1594da['model'],qs['fields'](_0x342340[_0x03d3('0x44')][_0x03d3('0x47')]));_0x3915ae['attributes']=_0x3915ae[_0x03d3('0x48')]['length']?_0x3915ae[_0x03d3('0x48')]:_0x1594da['model'];_0x3915ae[_0x03d3('0x4c')]=qs[_0x03d3('0x4d')](_0x342340[_0x03d3('0x44')][_0x03d3('0x4d')]);_0x3915ae[_0x03d3('0x50')]=qs[_0x03d3('0x45')](_['pick'](_0x342340[_0x03d3('0x44')],_0x1594da[_0x03d3('0x45')]));if(_0x342340[_0x03d3('0x44')]['filter']){_0x3915ae[_0x03d3('0x50')]=_['merge'](_0x3915ae[_0x03d3('0x50')],{'$or':_[_0x03d3('0x3d')](_0x3915ae['attributes'],function(_0x32ef26){var _0x493932={};_0x493932[_0x32ef26]={'$like':'%'+_0x342340[_0x03d3('0x44')]['filter']+'%'};return _0x493932;})});}_0x3915ae=_[_0x03d3('0x51')]({},_0x3915ae,_0x342340[_0x03d3('0x59')]);return _0x13f3e7[_0x03d3('0xab')](_0x3915ae);}})[_0x03d3('0x1e')](function(_0x14be39){if(_0x14be39){_0x2507c4=_0x14be39['length'];if(!_0x342340[_0x03d3('0x44')]['hasOwnProperty'](_0x03d3('0x4b'))){_0x3915ae[_0x03d3('0x2e')]=qs['limit'](_0x342340['query'][_0x03d3('0x2e')]);_0x3915ae['offset']=qs[_0x03d3('0x2c')](_0x342340[_0x03d3('0x44')][_0x03d3('0x2c')]);}return _0x13f3e7[_0x03d3('0xab')](_0x3915ae);}})[_0x03d3('0x1e')](function(_0x2165de){if(_0x2165de){return _0x2165de?{'count':_0x2507c4,'rows':_0x2165de}:null;}})[_0x03d3('0x1e')](respondWithResult(_0x4874dd,null))[_0x03d3('0x27')](handleError(_0x4874dd,null));};exports[_0x03d3('0xac')]=function(_0x2f87f0,_0x1b5c62,_0x387c65){var _0x54b108={'raw':![],'where':{}};var _0x438271={};var _0x22fd8e={'count':0x0,'rows':[]};return db['OpenchannelAccount'][_0x03d3('0x68')]({'where':{'id':_0x2f87f0[_0x03d3('0x58')]['id']}})['then'](handleEntityNotFound(_0x1b5c62,null))[_0x03d3('0x1e')](function(_0x3bcec2){if(_0x3bcec2){_0x438271[_0x03d3('0x42')]=_['keys'](db[_0x03d3('0x8d')]['rawAttributes']);_0x438271['query']=_[_0x03d3('0x43')](_0x2f87f0['query']);_0x438271['filters']=_[_0x03d3('0x46')](_0x438271['model'],_0x438271['query']);_0x54b108[_0x03d3('0x48')]=_[_0x03d3('0x46')](_0x438271['model'],qs['fields'](_0x2f87f0[_0x03d3('0x44')][_0x03d3('0x47')]));_0x54b108[_0x03d3('0x48')]=_0x54b108[_0x03d3('0x48')]['length']?_0x54b108['attributes']:_0x438271[_0x03d3('0x42')];if(!_0x2f87f0[_0x03d3('0x44')]['hasOwnProperty'](_0x03d3('0x4b'))){_0x54b108[_0x03d3('0x2e')]=qs[_0x03d3('0x2e')](_0x2f87f0[_0x03d3('0x44')][_0x03d3('0x2e')]);_0x54b108[_0x03d3('0x2c')]=qs[_0x03d3('0x2c')](_0x2f87f0['query'][_0x03d3('0x2c')]);}_0x54b108[_0x03d3('0x4c')]=qs['sort'](_0x2f87f0['query'][_0x03d3('0x4d')]);_0x54b108[_0x03d3('0x50')]=qs[_0x03d3('0x45')](_[_0x03d3('0x4e')](_0x2f87f0[_0x03d3('0x44')],_0x438271[_0x03d3('0x45')]));_0x54b108[_0x03d3('0x50')][_0x03d3('0x65')]=_0x3bcec2['id'];if(_0x2f87f0[_0x03d3('0x44')][_0x03d3('0x4f')]){_0x54b108[_0x03d3('0x50')]=_[_0x03d3('0x51')](_0x54b108[_0x03d3('0x50')],{'$or':_[_0x03d3('0x3d')](_0x54b108[_0x03d3('0x48')],function(_0x5317d7){var _0x273c06={};_0x273c06[_0x5317d7]={'$like':'%'+_0x2f87f0[_0x03d3('0x44')]['filter']+'%'};return _0x273c06;})});}_0x54b108=_[_0x03d3('0x51')]({},_0x54b108,_0x2f87f0[_0x03d3('0x59')]);return db[_0x03d3('0x8d')][_0x03d3('0x2f')]({'where':_0x54b108['where']})['then'](function(_0x3d859a){_0x22fd8e[_0x03d3('0x2f')]=_0x3d859a;if(_0x2f87f0['query'][_0x03d3('0x53')]){_0x54b108[_0x03d3('0x54')]=[{'model':db[_0x03d3('0x6f')],'as':_0x03d3('0xad'),'required':![]},{'model':db[_0x03d3('0xae')],'as':_0x03d3('0xaf'),'attributes':[_0x03d3('0x39'),'fullname',_0x03d3('0xb0')],'required':![]},{'model':db[_0x03d3('0xb1')],'as':_0x03d3('0xb2'),'attributes':['id','name',_0x03d3('0xb3')],'where':_0x2f87f0[_0x03d3('0x44')][_0x03d3('0xb4')]?{'id':_0x2f87f0[_0x03d3('0x44')][_0x03d3('0xb4')]}:undefined,'required':_0x2f87f0['query'][_0x03d3('0xb4')]?!![]:![]}];}return db[_0x03d3('0x8d')][_0x03d3('0x55')](_0x54b108);})['then'](function(_0x3e9102){_0x22fd8e[_0x03d3('0x56')]=_0x3e9102;return _0x22fd8e;});}})[_0x03d3('0x1e')](respondWithFilteredResult(_0x1b5c62,_0x54b108))[_0x03d3('0x27')](handleError(_0x1b5c62,null));};exports[_0x03d3('0xb5')]=function(_0x25212b,_0x4b6d12,_0xadc192){return db[_0x03d3('0x3e')][_0x03d3('0x5f')]({'where':{'id':_0x25212b[_0x03d3('0x58')]['id']}})[_0x03d3('0x1e')](handleEntityNotFound(_0x4b6d12,null))[_0x03d3('0x1e')](function(_0x58168a){if(_0x58168a){return _0x58168a[_0x03d3('0xb5')](_0x25212b[_0x03d3('0x5b')]['ids'],_[_0x03d3('0xb6')](_0x25212b[_0x03d3('0x5b')],[_0x03d3('0x6a'),'id'])||{})['spread'](function(_0x3b10eb){for(var _0x230a3d=0x0;_0x230a3d<_0x25212b[_0x03d3('0x5b')][_0x03d3('0x6a')][_0x03d3('0x49')];_0x230a3d+=0x1){socket['emit'](_0x03d3('0xb7'),{'UserId':Number(_0x25212b[_0x03d3('0x5b')][_0x03d3('0x6a')][_0x230a3d]),'OpenchannelAccountId':Number(_0x25212b[_0x03d3('0x58')]['id'])});}return _0x3b10eb;});}})[_0x03d3('0x1e')](respondWithResult(_0x4b6d12,null))[_0x03d3('0x27')](handleError(_0x4b6d12,null));};exports[_0x03d3('0xb8')]=function(_0x372617,_0x5e7f0b,_0x447e3a){return db[_0x03d3('0x3e')][_0x03d3('0x5f')]({'where':{'id':_0x372617[_0x03d3('0x58')]['id']}})[_0x03d3('0x1e')](handleEntityNotFound(_0x5e7f0b,null))[_0x03d3('0x1e')](function(_0x374e2d){if(_0x374e2d){return _0x374e2d['removeAgents'](_0x372617[_0x03d3('0x44')][_0x03d3('0x6a')])['then'](function(){if(_['isArray'](_0x372617[_0x03d3('0x44')][_0x03d3('0x6a')])){for(var _0x28efc9=0x0;_0x28efc9<_0x372617[_0x03d3('0x44')][_0x03d3('0x6a')]['length'];_0x28efc9+=0x1){socket[_0x03d3('0xb9')](_0x03d3('0xba'),{'UserId':Number(_0x372617['query'][_0x03d3('0x6a')][_0x28efc9]),'OpenchannelAccountId':Number(_0x372617['params']['id'])});}}else{socket[_0x03d3('0xb9')]('userOpenchannelAccount:remove',{'UserId':Number(_0x372617['query'][_0x03d3('0x6a')]),'OpenchannelAccountId':Number(_0x372617[_0x03d3('0x58')]['id'])});}});}})[_0x03d3('0x1e')](respondWithStatusCode(_0x5e7f0b,null))['catch'](handleError(_0x5e7f0b,null));};exports[_0x03d3('0xbb')]=function(_0x4e4c61,_0x582465,_0x3b8783){var _0x17eacf={};var _0x1c81f2={};var _0x553d04;var _0x507078;return db[_0x03d3('0x3e')][_0x03d3('0x68')]({'where':{'id':_0x4e4c61['params']['id']}})[_0x03d3('0x1e')](handleEntityNotFound(_0x582465,null))[_0x03d3('0x1e')](function(_0x597aa9){if(_0x597aa9){_0x553d04=_0x597aa9;_0x1c81f2[_0x03d3('0x42')]=_[_0x03d3('0x43')](db[_0x03d3('0xae')][_0x03d3('0x3f')]);_0x1c81f2[_0x03d3('0x44')]=_[_0x03d3('0x43')](_0x4e4c61[_0x03d3('0x44')]);_0x1c81f2[_0x03d3('0x45')]=_[_0x03d3('0x46')](_0x1c81f2[_0x03d3('0x42')],_0x1c81f2[_0x03d3('0x44')]);_0x17eacf[_0x03d3('0x48')]=_[_0x03d3('0x46')](_0x1c81f2[_0x03d3('0x42')],qs[_0x03d3('0x47')](_0x4e4c61[_0x03d3('0x44')]['fields']));_0x17eacf[_0x03d3('0x48')]=_0x17eacf[_0x03d3('0x48')]['length']?_0x17eacf[_0x03d3('0x48')]:_0x1c81f2[_0x03d3('0x42')];_0x17eacf[_0x03d3('0x4c')]=qs[_0x03d3('0x4d')](_0x4e4c61[_0x03d3('0x44')][_0x03d3('0x4d')]);_0x17eacf[_0x03d3('0x50')]=qs[_0x03d3('0x45')](_[_0x03d3('0x4e')](_0x4e4c61[_0x03d3('0x44')],_0x1c81f2[_0x03d3('0x45')]));if(_0x4e4c61[_0x03d3('0x44')][_0x03d3('0x4f')]){_0x17eacf[_0x03d3('0x50')]=_['merge'](_0x17eacf[_0x03d3('0x50')],{'$or':_[_0x03d3('0x3d')](_0x17eacf['attributes'],function(_0xae2710){var _0x4e4fab={};_0x4e4fab[_0xae2710]={'$like':'%'+_0x4e4c61[_0x03d3('0x44')]['filter']+'%'};return _0x4e4fab;})});}_0x17eacf=_['merge']({},_0x17eacf,_0x4e4c61[_0x03d3('0x59')]);return _0x553d04[_0x03d3('0xbb')](_0x17eacf);}})[_0x03d3('0x1e')](function(_0x272409){if(_0x272409){_0x507078=_0x272409[_0x03d3('0x49')];if(!_0x4e4c61['query'][_0x03d3('0x4a')](_0x03d3('0x4b'))){_0x17eacf[_0x03d3('0x2e')]=qs[_0x03d3('0x2e')](_0x4e4c61[_0x03d3('0x44')][_0x03d3('0x2e')]);_0x17eacf[_0x03d3('0x2c')]=qs['offset'](_0x4e4c61['query'][_0x03d3('0x2c')]);}return _0x553d04[_0x03d3('0xbb')](_0x17eacf);}})[_0x03d3('0x1e')](function(_0x52cd9c){if(_0x52cd9c){return _0x52cd9c?{'count':_0x507078,'rows':_0x52cd9c}:null;}})['then'](respondWithResult(_0x582465,null))[_0x03d3('0x27')](handleError(_0x582465,null));};exports[_0x03d3('0x3a')]=function(_0x159035,_0x4de582,_0x58dcc2){var _0x487cd7,_0x460181,_0x21dd96;if(_['isNil'](_0x159035['body'][_0x03d3('0x5b')])||_0x159035[_0x03d3('0x5b')][_0x03d3('0x5b')]===''){throw new db['Sequelize']['ValidationError'](_0x03d3('0x7a'));}if(_[_0x03d3('0x76')](_0x159035[_0x03d3('0x5b')]['to'])){}_0x487cd7=_0x159035['body']['to'];return db['OpenchannelAccount'][_0x03d3('0x68')]({'where':{'id':_0x159035['params']['id']}})[_0x03d3('0x1e')](handleEntityNotFound(_0x4de582,null))[_0x03d3('0x1e')](function(_0x243bb5){if(_0x243bb5){return db[_0x03d3('0x3e')][_0x03d3('0x5f')]({'where':{'id':_0x243bb5['id']},'include':[{'model':db[_0x03d3('0x7e')],'as':_0x03d3('0x7f'),'include':[{'model':db[_0x03d3('0x6f')],'as':_0x03d3('0x80'),'where':{[_0x243bb5[_0x03d3('0x7d')]]:_0x487cd7},'limit':0x1,'order':[[_0x03d3('0xbc'),_0x03d3('0x81')]]}]}]})[_0x03d3('0x1e')](handleEntityNotFound(_0x4de582,null))[_0x03d3('0x1e')](function(_0x5b14eb){if(_0x5b14eb&&_0x5b14eb[_0x03d3('0x7f')]){_0x460181=_0x5b14eb[_0x03d3('0x34')]({'plain':!![]});if(_0x460181[_0x03d3('0x7f')]&&_0x460181[_0x03d3('0x7f')][_0x03d3('0x80')][_0x03d3('0x49')]){return _0x460181['List']['Contacts'][0x0];}return db['CmContact'][_0x03d3('0x5a')](_['defaults'](_0x159035['body'],{'firstName':_0x487cd7,[_0x5b14eb[_0x03d3('0x7d')]]:_0x487cd7,'phone':_0x487cd7,'ListId':_0x460181[_0x03d3('0x75')]}));}})[_0x03d3('0x1e')](handleEntityNotFound(_0x4de582,null))[_0x03d3('0x1e')](function(_0x830520){if(_0x830520){_0x21dd96=_0x830520;return db[_0x03d3('0x8d')][_0x03d3('0x5f')]({'where':{'ContactId':_0x21dd96['id'],'closed':![],'OpenchannelAccountId':_0x460181['id']}})[_0x03d3('0x1e')](function(_0x4767bd){if(_0x4767bd){return[_0x4767bd,![]];}return db[_0x03d3('0x8d')][_0x03d3('0x5a')]({'UserId':_0x159035[_0x03d3('0x5c')]['id'],'ContactId':_0x21dd96['id'],'OpenchannelAccountId':_0x460181['id'],'lastMsgDirection':_0x03d3('0xbd'),'firstMsgDirection':_0x03d3('0xbd'),'Messages':[_[_0x03d3('0x51')](_0x159035[_0x03d3('0x5b')],{'read':![],'body':_0x159035['body'][_0x03d3('0x5b')],'OpenchannelAccountId':_0x460181['id'],'UserId':_0x159035[_0x03d3('0x5c')]['id'],'ContactId':_0x21dd96['id']})]},{'include':[{'model':db[_0x03d3('0x98')],'as':_0x03d3('0xbe')}]})[_0x03d3('0x1e')](function(_0x542a3a){return[_0x542a3a,!![]];});});}})[_0x03d3('0x8e')](function(_0x25b967,_0x51187e){if(_0x51187e){return _0x25b967;}return db[_0x03d3('0x98')][_0x03d3('0x5a')](_[_0x03d3('0x51')](_0x159035[_0x03d3('0x5b')],{'read':![],'body':_0x159035[_0x03d3('0x5b')][_0x03d3('0x5b')],'OpenchannelAccountId':_0x460181['id'],'OpenchannelInteractionId':_0x25b967['id'],'UserId':_0x159035['user']['id'],'ContactId':_0x21dd96['id']}))['then'](function(_0x156367){_0x25b967[_0x03d3('0xbf')][_0x03d3('0xbe')]=[];_0x25b967[_0x03d3('0xbf')][_0x03d3('0xbe')][_0x03d3('0x94')](_0x156367[_0x03d3('0xbf')]);return _0x25b967;});});}})[_0x03d3('0x1e')](respondWithResult(_0x4de582,null))[_0x03d3('0x27')](handleError(_0x4de582,null));};