Built motion from commit 994c64e1.|2.6.1
[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 _0x64c5=['tag','addAgents','omit','emit','userOpenchannelAccount:save','removeAgents','isArray','userOpenchannelAccount:remove','getAgents','CmList','out','dataValues','Messages','zip-dir','request-promise','moment','bluebird','mustache','util','path','sox','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js','querystring','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../mysqldb','redis','defaults','socket.io-emitter','./openchannelAccount.socket','register','client','http','request','info','request\x20sent','debug','stringify','error','code','OpenchannelAccount,\x20%s,\x20%s','message','result','catch','sendStatus','end','status','json','undefined','limit','offset','count','Content-Range','reject','update','then','destroy','get','OpenchannelAccounts','UserProfileResource','stack','name','index','Pause','mandatoryDispositionPause','map','OpenchannelAccount','rawAttributes','type','key','model','query','intersection','attributes','fields','length','nolimit','sort','pick','where','VIRTUAL','filter','includeAll','include','findAll','rows','show','params','keys','filters','merge','options','find','create','body','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','user','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','describe','OpenchannelAccountId','Disposition','getDispositions','findOne','hasOwnProperty','order','removeDispositions','ids','addAnswer','getAnswers','CannedAnswer','removeAnswers','openchannel','CmContact','Sequelize','ValidationError','no\x20available\x20attributes','difference','createdAt','updatedAt','ListId','isNil','from','body\x20is\x20mandatory\x20and\x20not\x20empty','mapKey','mapKey\x20is\x20mandatory,\x20please\x20use\x20one\x20of\x20these:\x20','includes','List','DESC','OpenchannelApplication','Applications','account','applications','list','orderBy','asc','Contacts','contact','lastName','threadId','externalUrl','OpenchannelInteraction','ContactId','spread','firstName','messageId','interaction','created','autoclose','close','*,*,*,*','OpenchannelMessage','UserId','agent','waitForTheAssignedAgent','forcedOwnership','Start','startRouting','EventManager','notify','addApplications','sequelize','transaction','Transaction','findAndCountAll','priority','finally','send','getApplications','Owner','fullname','Tag','color'];(function(_0x4d180c,_0x45c68e){var _0x49b57e=function(_0x264741){while(--_0x264741){_0x4d180c['push'](_0x4d180c['shift']());}};_0x49b57e(++_0x45c68e);}(_0x64c5,0xc5));var _0x564c=function(_0x1e85e1,_0x5bc1df){_0x1e85e1=_0x1e85e1-0x0;var _0x7a4916=_0x64c5[_0x1e85e1];return _0x7a4916;};'use strict';var emlformat=require('eml-format');var rimraf=require('rimraf');var zipdir=require(_0x564c('0x0'));var jsonpatch=require('fast-json-patch');var rp=require(_0x564c('0x1'));var moment=require(_0x564c('0x2'));var BPromise=require(_0x564c('0x3'));var Mustache=require(_0x564c('0x4'));var util=require(_0x564c('0x5'));var path=require(_0x564c('0x6'));var sox=require(_0x564c('0x7'));var csv=require(_0x564c('0x8'));var ejs=require(_0x564c('0x9'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x564c('0xa'));var squel=require(_0x564c('0xb'));var crypto=require(_0x564c('0xc'));var jsforce=require(_0x564c('0xd'));var deskjs=require(_0x564c('0xe'));var toCsv=require(_0x564c('0x8'));var querystring=require(_0x564c('0xf'));var Papa=require('papaparse');var Redis=require('ioredis');var authService=require(_0x564c('0x10'));var qs=require('../../components/parsers/qs');var as=require(_0x564c('0x11'));var hardwareService=require(_0x564c('0x12'));var logger=require(_0x564c('0x13'))(_0x564c('0x14'));var utils=require('../../config/utils');var config=require('../../config/environment');var licenseUtil=require('../../config/license/util');var db=require(_0x564c('0x15'))['db'];config[_0x564c('0x16')]=_[_0x564c('0x17')](config[_0x564c('0x16')],{'host':'localhost','port':0x18eb});var socket=require(_0x564c('0x18'))(new Redis(config['redis']));require(_0x564c('0x19'))[_0x564c('0x1a')](socket);var jayson=require('jayson/promise');var client=jayson['client']['http']({'port':0x232c});var client9002=jayson[_0x564c('0x1b')][_0x564c('0x1c')]({'port':0x232a});function respondWithRpcPromise(_0xe6c809,_0x462f21,_0x44a1c4,_0x14b813){return new BPromise(function(_0x471c41,_0x253468){var _0x5557a4=_0x14b813||client;return _0x5557a4[_0x564c('0x1d')](_0xe6c809,_0x44a1c4)['then'](function(_0x241814){logger[_0x564c('0x1e')]('OpenchannelAccount,\x20%s,\x20%s',_0x462f21,_0x564c('0x1f'));logger[_0x564c('0x20')]('OpenchannelAccount,\x20%s,\x20%s,\x20%s',_0x462f21,_0x564c('0x1f'),JSON[_0x564c('0x21')](_0x241814));if(_0x241814[_0x564c('0x22')]){if(_0x241814['error'][_0x564c('0x23')]===0x1f4){logger[_0x564c('0x22')](_0x564c('0x24'),_0x462f21,_0x241814[_0x564c('0x22')]['message']);return _0x253468(_0x241814['error'][_0x564c('0x25')]);}logger[_0x564c('0x22')]('OpenchannelAccount,\x20%s,\x20%s',_0x462f21,_0x241814[_0x564c('0x22')][_0x564c('0x25')]);return _0x471c41(_0x241814['error'][_0x564c('0x25')]);}else{logger['info']('OpenchannelAccount,\x20%s,\x20%s',_0x462f21,_0x564c('0x1f'));_0x471c41(_0x241814[_0x564c('0x26')][_0x564c('0x25')]);}})[_0x564c('0x27')](function(_0x5f3060){logger[_0x564c('0x22')]('OpenchannelAccount,\x20%s,\x20%s',_0x462f21,_0x5f3060);_0x253468(_0x5f3060);});});}function respondWithStatusCode(_0x224bfb,_0x3f2546){_0x3f2546=_0x3f2546||0xcc;return function(_0x3c8d3a){if(_0x3c8d3a){return _0x224bfb[_0x564c('0x28')](_0x3f2546);}return _0x224bfb['status'](_0x3f2546)[_0x564c('0x29')]();};}function respondWithResult(_0x466b4b,_0x549454){_0x549454=_0x549454||0xc8;return function(_0x203056){if(_0x203056){return _0x466b4b[_0x564c('0x2a')](_0x549454)[_0x564c('0x2b')](_0x203056);}};}function respondWithFilteredResult(_0x2f7c60,_0x59ab26){return function(_0xbb5c95){if(_0xbb5c95){var _0x41c0d7=typeof _0x59ab26['offset']===_0x564c('0x2c')&&typeof _0x59ab26[_0x564c('0x2d')]==='undefined';var _0x242651=_0xbb5c95['count'];var _0x12621f=_0x41c0d7?0x0:_0x59ab26[_0x564c('0x2e')];var _0x277a33=_0x41c0d7?_0xbb5c95[_0x564c('0x2f')]:_0x59ab26[_0x564c('0x2e')]+_0x59ab26[_0x564c('0x2d')];var _0x30bd73;if(_0x277a33>=_0x242651){_0x277a33=_0x242651;_0x30bd73=0xc8;}else{_0x30bd73=0xce;}_0x2f7c60[_0x564c('0x2a')](_0x30bd73);return _0x2f7c60['set'](_0x564c('0x30'),_0x12621f+'-'+_0x277a33+'/'+_0x242651)[_0x564c('0x2b')](_0xbb5c95);}return null;};}function patchUpdates(_0x3f442b){return function(_0x45e036){try{jsonpatch['apply'](_0x45e036,_0x3f442b,!![]);}catch(_0x25acdf){return BPromise[_0x564c('0x31')](_0x25acdf);}return _0x45e036['save']();};}function saveUpdates(_0x1afd3d,_0x809c44){return function(_0x3e88d9){if(_0x3e88d9){return _0x3e88d9[_0x564c('0x32')](_0x1afd3d)[_0x564c('0x33')](function(_0x44c872){return _0x44c872;});}return null;};}function removeEntity(_0x7bf8e8,_0xcc7960){return function(_0xfd1012){if(_0xfd1012){return _0xfd1012[_0x564c('0x34')]()[_0x564c('0x33')](function(){var _0x3608e8=_0xfd1012[_0x564c('0x35')]({'plain':!![]});var _0x19aec3=_0x564c('0x36');return db[_0x564c('0x37')][_0x564c('0x34')]({'where':{'type':_0x19aec3,'resourceId':_0x3608e8['id']}})[_0x564c('0x33')](function(){return _0xfd1012;});})[_0x564c('0x33')](function(){_0x7bf8e8[_0x564c('0x2a')](0xcc)[_0x564c('0x29')]();});}};}function handleEntityNotFound(_0x1a0473,_0x26d72e){return function(_0x2dd3bf){if(!_0x2dd3bf){_0x1a0473[_0x564c('0x28')](0x194);}return _0x2dd3bf;};}function handleError(_0x51cd50,_0x279a2e){_0x279a2e=_0x279a2e||0x1f4;return function(_0x43bd81){logger[_0x564c('0x22')](_0x43bd81[_0x564c('0x38')]);if(_0x43bd81['name']){delete _0x43bd81[_0x564c('0x39')];}_0x51cd50[_0x564c('0x2a')](_0x279a2e)['send'](_0x43bd81);};}exports[_0x564c('0x3a')]=function(_0x54feb3,_0x44bc41){var _0x1ca157={'include':[{'model':db[_0x564c('0x3b')],'as':_0x564c('0x3c')}]},_0x128f25={},_0x48a64c={'count':0x0,'rows':[]};var _0x34c10d=_[_0x564c('0x3d')](db[_0x564c('0x3e')][_0x564c('0x3f')],function(_0x3b34b0){return{'name':_0x3b34b0['fieldName'],'type':_0x3b34b0[_0x564c('0x40')][_0x564c('0x41')]};});_0x128f25[_0x564c('0x42')]=_[_0x564c('0x3d')](_0x34c10d,_0x564c('0x39'));_0x128f25[_0x564c('0x43')]=_['keys'](_0x54feb3[_0x564c('0x43')]);_0x128f25['filters']=_[_0x564c('0x44')](_0x128f25[_0x564c('0x42')],_0x128f25['query']);_0x1ca157[_0x564c('0x45')]=_[_0x564c('0x44')](_0x128f25[_0x564c('0x42')],qs[_0x564c('0x46')](_0x54feb3['query'][_0x564c('0x46')]));_0x1ca157[_0x564c('0x45')]=_0x1ca157[_0x564c('0x45')][_0x564c('0x47')]?_0x1ca157[_0x564c('0x45')]:_0x128f25['model'];if(!_0x54feb3[_0x564c('0x43')]['hasOwnProperty'](_0x564c('0x48'))){_0x1ca157[_0x564c('0x2d')]=qs['limit'](_0x54feb3[_0x564c('0x43')][_0x564c('0x2d')]);_0x1ca157[_0x564c('0x2e')]=qs[_0x564c('0x2e')](_0x54feb3[_0x564c('0x43')][_0x564c('0x2e')]);}_0x1ca157['order']=qs[_0x564c('0x49')](_0x54feb3[_0x564c('0x43')][_0x564c('0x49')]);_0x1ca157['where']=qs['filters'](_[_0x564c('0x4a')](_0x54feb3['query'],_0x128f25['filters']),_0x34c10d);if(_0x54feb3[_0x564c('0x43')]['filter']){_0x1ca157[_0x564c('0x4b')]=_['merge'](_0x1ca157[_0x564c('0x4b')],{'$or':_[_0x564c('0x3d')](_0x34c10d,function(_0xf5f9b2){if(_0xf5f9b2[_0x564c('0x40')]!==_0x564c('0x4c')){var _0x5c02fa={};_0x5c02fa[_0xf5f9b2[_0x564c('0x39')]]={'$like':'%'+_0x54feb3['query'][_0x564c('0x4d')]+'%'};return _0x5c02fa;}})});}_0x1ca157=_['merge']({},_0x1ca157,_0x54feb3['options']);var _0x1e34b2={'where':_0x1ca157[_0x564c('0x4b')]};return db[_0x564c('0x3e')][_0x564c('0x2f')](_0x1e34b2)[_0x564c('0x33')](function(_0xe7e643){_0x48a64c[_0x564c('0x2f')]=_0xe7e643;if(_0x54feb3[_0x564c('0x43')][_0x564c('0x4e')]){_0x1ca157[_0x564c('0x4f')]=[{'all':!![]}];}return db[_0x564c('0x3e')][_0x564c('0x50')](_0x1ca157);})[_0x564c('0x33')](function(_0x343aff){_0x48a64c[_0x564c('0x51')]=_0x343aff;return _0x48a64c;})[_0x564c('0x33')](respondWithFilteredResult(_0x44bc41,_0x1ca157))[_0x564c('0x27')](handleError(_0x44bc41,null));};exports[_0x564c('0x52')]=function(_0xaa3fc6,_0x2c13b3){var _0x398cb3={'raw':![],'where':{'id':_0xaa3fc6[_0x564c('0x53')]['id']},'include':[{'model':db['Pause'],'as':_0x564c('0x3c')}]},_0x55cef9={};_0x55cef9[_0x564c('0x42')]=_[_0x564c('0x54')](db['OpenchannelAccount']['rawAttributes']);_0x55cef9['query']=_[_0x564c('0x54')](_0xaa3fc6[_0x564c('0x43')]);_0x55cef9[_0x564c('0x55')]=_[_0x564c('0x44')](_0x55cef9['model'],_0x55cef9[_0x564c('0x43')]);_0x398cb3[_0x564c('0x45')]=_[_0x564c('0x44')](_0x55cef9[_0x564c('0x42')],qs[_0x564c('0x46')](_0xaa3fc6[_0x564c('0x43')][_0x564c('0x46')]));_0x398cb3[_0x564c('0x45')]=_0x398cb3[_0x564c('0x45')]['length']?_0x398cb3['attributes']:_0x55cef9[_0x564c('0x42')];if(_0xaa3fc6['query'][_0x564c('0x4e')]){_0x398cb3[_0x564c('0x4f')]=[{'all':!![]}];}_0x398cb3=_[_0x564c('0x56')]({},_0x398cb3,_0xaa3fc6[_0x564c('0x57')]);return db[_0x564c('0x3e')][_0x564c('0x58')](_0x398cb3)[_0x564c('0x33')](handleEntityNotFound(_0x2c13b3,null))[_0x564c('0x33')](respondWithResult(_0x2c13b3,null))[_0x564c('0x27')](handleError(_0x2c13b3,null));};exports['create']=function(_0x34d477,_0x5ef50f){return db[_0x564c('0x3e')][_0x564c('0x59')](_0x34d477[_0x564c('0x5a')],{})['then'](function(_0x5cbac6){var _0x4c8751=_0x34d477['user'][_0x564c('0x35')]({'plain':!![]});if(!_0x4c8751)throw new Error(_0x564c('0x5b'));if(_0x4c8751[_0x564c('0x5c')]===_0x564c('0x5d')){var _0x2d0f36=_0x5cbac6[_0x564c('0x35')]({'plain':!![]});var _0x6d5972=_0x564c('0x36');return db['UserProfileSection']['find']({'where':{'name':_0x6d5972,'userProfileId':_0x4c8751[_0x564c('0x5e')]},'raw':!![]})[_0x564c('0x33')](function(_0x38593c){if(_0x38593c&&_0x38593c[_0x564c('0x5f')]===0x0){return db[_0x564c('0x37')]['create']({'name':_0x2d0f36[_0x564c('0x39')],'resourceId':_0x2d0f36['id'],'type':_0x38593c[_0x564c('0x39')],'sectionId':_0x38593c['id']},{})['then'](function(){return _0x5cbac6;});}else{return _0x5cbac6;}})[_0x564c('0x27')](function(_0xf82f05){logger['error'](_0x564c('0x60'),_0xf82f05);throw _0xf82f05;});}return _0x5cbac6;})[_0x564c('0x33')](respondWithResult(_0x5ef50f,0xc9))[_0x564c('0x27')](handleError(_0x5ef50f,null));};exports['update']=function(_0x37b3c4,_0x2e7616){if(_0x37b3c4[_0x564c('0x5a')]['id']){delete _0x37b3c4[_0x564c('0x5a')]['id'];}return db[_0x564c('0x3e')]['find']({'where':{'id':_0x37b3c4['params']['id']},'include':[{'model':db['Pause'],'as':_0x564c('0x3c')}]})[_0x564c('0x33')](handleEntityNotFound(_0x2e7616,null))[_0x564c('0x33')](saveUpdates(_0x37b3c4['body'],null))[_0x564c('0x33')](respondWithResult(_0x2e7616,null))[_0x564c('0x27')](handleError(_0x2e7616,null));};exports[_0x564c('0x34')]=function(_0x77e846,_0x8d16d8){return db[_0x564c('0x3e')]['find']({'where':{'id':_0x77e846[_0x564c('0x53')]['id']}})[_0x564c('0x33')](handleEntityNotFound(_0x8d16d8,null))[_0x564c('0x33')](removeEntity(_0x8d16d8,null))[_0x564c('0x27')](handleError(_0x8d16d8,null));};exports[_0x564c('0x61')]=function(_0x2018fa,_0x181c12){return db['OpenchannelAccount'][_0x564c('0x61')]()[_0x564c('0x33')](respondWithResult(_0x181c12,null))['catch'](handleError(_0x181c12,null));};exports['addDisposition']=function(_0x3e1dcc,_0x112c0c,_0xf32148){if(_0x3e1dcc[_0x564c('0x5a')]['id']){delete _0x3e1dcc[_0x564c('0x5a')]['id'];}return db['OpenchannelAccount']['find']({'where':{'id':_0x3e1dcc[_0x564c('0x53')]['id']}})['then'](handleEntityNotFound(_0x112c0c,null))[_0x564c('0x33')](function(_0x27d2a1){if(_0x27d2a1){_0x3e1dcc['body'][_0x564c('0x62')]=_0x27d2a1['id'];return db[_0x564c('0x63')][_0x564c('0x59')](_0x3e1dcc[_0x564c('0x5a')]);}})[_0x564c('0x33')](respondWithResult(_0x112c0c,null))[_0x564c('0x27')](handleError(_0x112c0c,null));};exports[_0x564c('0x64')]=function(_0x374aea,_0x2f3ac5,_0x4706c2){var _0x4d4bad={'raw':![],'where':{}};var _0x2be02f={};var _0x3f3c06={'count':0x0,'rows':[]};return db[_0x564c('0x3e')][_0x564c('0x65')]({'where':{'id':_0x374aea[_0x564c('0x53')]['id']}})[_0x564c('0x33')](handleEntityNotFound(_0x2f3ac5,null))[_0x564c('0x33')](function(_0x133647){if(_0x133647){_0x2be02f[_0x564c('0x42')]=_[_0x564c('0x54')](db['Disposition'][_0x564c('0x3f')]);_0x2be02f[_0x564c('0x43')]=_['keys'](_0x374aea[_0x564c('0x43')]);_0x2be02f[_0x564c('0x55')]=_['intersection'](_0x2be02f[_0x564c('0x42')],_0x2be02f[_0x564c('0x43')]);_0x4d4bad[_0x564c('0x45')]=_[_0x564c('0x44')](_0x2be02f['model'],qs['fields'](_0x374aea[_0x564c('0x43')][_0x564c('0x46')]));_0x4d4bad['attributes']=_0x4d4bad[_0x564c('0x45')][_0x564c('0x47')]?_0x4d4bad[_0x564c('0x45')]:_0x2be02f[_0x564c('0x42')];if(!_0x374aea[_0x564c('0x43')][_0x564c('0x66')]('nolimit')){_0x4d4bad[_0x564c('0x2d')]=qs['limit'](_0x374aea[_0x564c('0x43')][_0x564c('0x2d')]);_0x4d4bad['offset']=qs['offset'](_0x374aea[_0x564c('0x43')][_0x564c('0x2e')]);}_0x4d4bad[_0x564c('0x67')]=qs[_0x564c('0x49')](_0x374aea[_0x564c('0x43')]['sort']);_0x4d4bad['where']=qs['filters'](_[_0x564c('0x4a')](_0x374aea[_0x564c('0x43')],_0x2be02f['filters']));_0x4d4bad[_0x564c('0x4b')]['OpenchannelAccountId']=_0x133647['id'];if(_0x374aea[_0x564c('0x43')]['filter']){_0x4d4bad[_0x564c('0x4b')]=_[_0x564c('0x56')](_0x4d4bad[_0x564c('0x4b')],{'$or':_['map'](_0x4d4bad[_0x564c('0x45')],function(_0x44dcbe){var _0xe64283={};_0xe64283[_0x44dcbe]={'$like':'%'+_0x374aea[_0x564c('0x43')][_0x564c('0x4d')]+'%'};return _0xe64283;})});}_0x4d4bad=_['merge']({},_0x4d4bad,_0x374aea[_0x564c('0x57')]);return db[_0x564c('0x63')][_0x564c('0x2f')]({'where':_0x4d4bad['where']})[_0x564c('0x33')](function(_0x2e2e56){_0x3f3c06[_0x564c('0x2f')]=_0x2e2e56;if(_0x374aea[_0x564c('0x43')][_0x564c('0x4e')]){_0x4d4bad['include']=[{'all':!![]}];}return db[_0x564c('0x63')][_0x564c('0x50')](_0x4d4bad);})['then'](function(_0x2855c4){_0x3f3c06[_0x564c('0x51')]=_0x2855c4;return _0x3f3c06;});}})[_0x564c('0x33')](respondWithFilteredResult(_0x2f3ac5,_0x4d4bad))['catch'](handleError(_0x2f3ac5,null));};exports[_0x564c('0x68')]=function(_0x1da95b,_0x2181c9,_0x57b38e){return db[_0x564c('0x3e')][_0x564c('0x58')]({'where':{'id':_0x1da95b[_0x564c('0x53')]['id']}})[_0x564c('0x33')](handleEntityNotFound(_0x2181c9,null))[_0x564c('0x33')](function(_0x4907c9){if(_0x4907c9){return _0x4907c9[_0x564c('0x68')](_0x1da95b[_0x564c('0x43')][_0x564c('0x69')]);}})[_0x564c('0x33')](respondWithStatusCode(_0x2181c9,null))[_0x564c('0x27')](handleError(_0x2181c9,null));};exports[_0x564c('0x6a')]=function(_0x133b0a,_0x1cb343,_0x45d3d8){if(_0x133b0a[_0x564c('0x5a')]['id']){delete _0x133b0a[_0x564c('0x5a')]['id'];}return db[_0x564c('0x3e')][_0x564c('0x58')]({'where':{'id':_0x133b0a['params']['id']}})['then'](handleEntityNotFound(_0x1cb343,null))[_0x564c('0x33')](function(_0x49defd){if(_0x49defd){_0x133b0a[_0x564c('0x5a')][_0x564c('0x62')]=_0x49defd['id'];return db['CannedAnswer'][_0x564c('0x59')](_0x133b0a[_0x564c('0x5a')]);}})[_0x564c('0x33')](respondWithResult(_0x1cb343,null))[_0x564c('0x27')](handleError(_0x1cb343,null));};exports[_0x564c('0x6b')]=function(_0x3e376b,_0x484450,_0x3eeb5c){var _0x28ba3e={'raw':![],'where':{}};var _0x1604c0={};var _0x524b18={'count':0x0,'rows':[]};return db['OpenchannelAccount'][_0x564c('0x65')]({'where':{'id':_0x3e376b[_0x564c('0x53')]['id']}})[_0x564c('0x33')](handleEntityNotFound(_0x484450,null))[_0x564c('0x33')](function(_0x58f23f){if(_0x58f23f){_0x1604c0['model']=_['keys'](db[_0x564c('0x6c')]['rawAttributes']);_0x1604c0[_0x564c('0x43')]=_[_0x564c('0x54')](_0x3e376b[_0x564c('0x43')]);_0x1604c0['filters']=_[_0x564c('0x44')](_0x1604c0['model'],_0x1604c0[_0x564c('0x43')]);_0x28ba3e[_0x564c('0x45')]=_[_0x564c('0x44')](_0x1604c0['model'],qs[_0x564c('0x46')](_0x3e376b['query'][_0x564c('0x46')]));_0x28ba3e[_0x564c('0x45')]=_0x28ba3e[_0x564c('0x45')][_0x564c('0x47')]?_0x28ba3e[_0x564c('0x45')]:_0x1604c0[_0x564c('0x42')];if(!_0x3e376b['query']['hasOwnProperty'](_0x564c('0x48'))){_0x28ba3e[_0x564c('0x2d')]=qs['limit'](_0x3e376b['query'][_0x564c('0x2d')]);_0x28ba3e[_0x564c('0x2e')]=qs[_0x564c('0x2e')](_0x3e376b[_0x564c('0x43')][_0x564c('0x2e')]);}_0x28ba3e['order']=qs[_0x564c('0x49')](_0x3e376b[_0x564c('0x43')]['sort']);_0x28ba3e['where']=qs[_0x564c('0x55')](_[_0x564c('0x4a')](_0x3e376b[_0x564c('0x43')],_0x1604c0[_0x564c('0x55')]));_0x28ba3e['where'][_0x564c('0x62')]=_0x58f23f['id'];if(_0x3e376b[_0x564c('0x43')][_0x564c('0x4d')]){_0x28ba3e[_0x564c('0x4b')]=_[_0x564c('0x56')](_0x28ba3e[_0x564c('0x4b')],{'$or':_['map'](_0x28ba3e[_0x564c('0x45')],function(_0x2a4388){var _0x1eda3b={};_0x1eda3b[_0x2a4388]={'$like':'%'+_0x3e376b[_0x564c('0x43')][_0x564c('0x4d')]+'%'};return _0x1eda3b;})});}_0x28ba3e=_[_0x564c('0x56')]({},_0x28ba3e,_0x3e376b[_0x564c('0x57')]);return db[_0x564c('0x6c')]['count']({'where':_0x28ba3e[_0x564c('0x4b')]})[_0x564c('0x33')](function(_0x277854){_0x524b18[_0x564c('0x2f')]=_0x277854;if(_0x3e376b[_0x564c('0x43')]['includeAll']){_0x28ba3e['include']=[{'all':!![]}];}return db[_0x564c('0x6c')][_0x564c('0x50')](_0x28ba3e);})[_0x564c('0x33')](function(_0x3f5718){_0x524b18['rows']=_0x3f5718;return _0x524b18;});}})[_0x564c('0x33')](respondWithFilteredResult(_0x484450,_0x28ba3e))[_0x564c('0x27')](handleError(_0x484450,null));};exports[_0x564c('0x6d')]=function(_0x45f5b3,_0x31eb8a,_0xa57213){return db[_0x564c('0x3e')][_0x564c('0x58')]({'where':{'id':_0x45f5b3['params']['id']}})[_0x564c('0x33')](handleEntityNotFound(_0x31eb8a,null))[_0x564c('0x33')](function(_0x97fb){if(_0x97fb){return _0x97fb[_0x564c('0x6d')](_0x45f5b3[_0x564c('0x43')][_0x564c('0x69')]);}})[_0x564c('0x33')](respondWithStatusCode(_0x31eb8a,null))[_0x564c('0x27')](handleError(_0x31eb8a,null));};exports['notify']=function(_0x225d72,_0x1fc399,_0x2d53d5){var _0x522385={'body':_0x225d72[_0x564c('0x5a')],'channel':_0x564c('0x6e')};var _0x1f5236=[];var _0x296cf2=[];var _0x46b196={};var _0x1a97f5=![];return db[_0x564c('0x6f')][_0x564c('0x61')]()['then'](function(_0xb70566){if(!_0xb70566){throw new db[(_0x564c('0x70'))][(_0x564c('0x71'))](_0x564c('0x72'));}_0x1f5236=_[_0x564c('0x73')](_[_0x564c('0x54')](_0xb70566),[_0x564c('0x74'),_0x564c('0x75')]);_0x296cf2=_[_0x564c('0x73')](_['keys'](_0xb70566),['createdAt',_0x564c('0x75'),'CompanyId',_0x564c('0x76')]);if(_0x225d72[_0x564c('0x5a')]['id']){delete _0x225d72[_0x564c('0x5a')]['id'];}if(_[_0x564c('0x77')](_0x225d72[_0x564c('0x5a')][_0x564c('0x78')])){throw new db['Sequelize']['ValidationError']('from\x20is\x20mandatory');}if(_[_0x564c('0x77')](_0x225d72['body'][_0x564c('0x5a')])||_0x225d72[_0x564c('0x5a')][_0x564c('0x5a')]===''){throw new db[(_0x564c('0x70'))]['ValidationError'](_0x564c('0x79'));}if(_[_0x564c('0x77')](_0x225d72['body'][_0x564c('0x7a')])){throw new db['Sequelize'][(_0x564c('0x71'))](_0x564c('0x7b')+_0x296cf2);}if(!_[_0x564c('0x7c')](_0x296cf2,_0x225d72['body'][_0x564c('0x7a')])){throw new db[(_0x564c('0x70'))][(_0x564c('0x71'))]('mapKey\x20invalid,\x20please\x20use\x20one\x20of\x20these:\x20'+_0x296cf2);}_0x46b196[_0x225d72[_0x564c('0x5a')]['mapKey']]=_0x225d72[_0x564c('0x5a')][_0x564c('0x78')];})['then'](function(){return db[_0x564c('0x3e')][_0x564c('0x58')]({'where':{'id':_0x225d72[_0x564c('0x53')]['id']},'include':[{'model':db['CmList'],'as':_0x564c('0x7d'),'include':[{'model':db[_0x564c('0x6f')],'as':'Contacts','where':_0x46b196,'limit':0x1,'order':[['updatedAt',_0x564c('0x7e')]]}]},{'model':db[_0x564c('0x7f')],'as':_0x564c('0x80')}]});})[_0x564c('0x33')](handleEntityNotFound(_0x1fc399,null))[_0x564c('0x33')](function(_0x474443){if(_0x474443&&_0x474443[_0x564c('0x7d')]){_0x522385[_0x564c('0x81')]=_0x474443;_0x522385[_0x564c('0x82')]=_0x474443[_0x564c('0x80')];_0x522385[_0x564c('0x83')]=_0x474443[_0x564c('0x7d')];_0x522385[_0x564c('0x82')]=_[_0x564c('0x84')](_0x522385['applications'],['priority'],[_0x564c('0x85')]);if(_0x522385[_0x564c('0x81')]['Applications']){delete _0x522385[_0x564c('0x81')]['Applications'];}if(_0x522385[_0x564c('0x81')][_0x564c('0x7d')]&&_0x522385['account'][_0x564c('0x7d')][_0x564c('0x86')][_0x564c('0x47')]){return _0x522385[_0x564c('0x81')][_0x564c('0x7d')][_0x564c('0x86')][0x0];}var _0x3bad1e=_[_0x564c('0x17')](_0x225d72[_0x564c('0x5a')],{'firstName':_0x225d72[_0x564c('0x5a')][_0x564c('0x78')],'ListId':_0x474443[_0x564c('0x76')]});_0x3bad1e[_0x225d72[_0x564c('0x5a')][_0x564c('0x7a')]]=_0x225d72[_0x564c('0x5a')]['from'];return db['CmContact']['create'](_0x3bad1e,{'fields':_0x1f5236,'raw':!![]});}})[_0x564c('0x33')](handleEntityNotFound(_0x1fc399,null))['then'](function(_0x15e952){_0x522385[_0x564c('0x87')]=_0x15e952;if(_0x15e952){var _0x48bb14={'ContactId':_0x15e952['id'],'OpenchannelAccountId':_0x225d72[_0x564c('0x53')]['id'],'from':(_0x15e952['firstName']||'')+'\x20'+(_0x15e952[_0x564c('0x88')]||'')};var _0x481910={'OpenchannelAccountId':_0x225d72[_0x564c('0x53')]['id'],'closed':![]};if(_0x225d72[_0x564c('0x5a')][_0x564c('0x89')]){_0x481910[_0x564c('0x89')]=_0x225d72[_0x564c('0x5a')][_0x564c('0x89')];return db['OpenchannelInteraction'][_0x564c('0x58')]({'where':_0x481910})[_0x564c('0x33')](function(_0x431acd){if(_0x431acd){return[_0x431acd,![]];}_0x48bb14['threadId']=_0x225d72[_0x564c('0x5a')][_0x564c('0x89')];_0x48bb14[_0x564c('0x8a')]=_0x225d72[_0x564c('0x5a')][_0x564c('0x8a')];return db[_0x564c('0x8b')][_0x564c('0x59')](_0x48bb14)[_0x564c('0x33')](function(_0x14f91b){return[_0x14f91b,!![]];});});}else{_0x481910['threadId']=null;}_0x481910[_0x564c('0x8c')]=_0x15e952['id'];return db[_0x564c('0x8b')][_0x564c('0x58')]({'where':_0x481910})[_0x564c('0x33')](function(_0x105af9){if(_0x105af9){return[_0x105af9,![]];}return db[_0x564c('0x8b')][_0x564c('0x59')](_0x48bb14)['then'](function(_0x108408){return[_0x108408,!![]];});});}})[_0x564c('0x8d')](function(_0x1af0df,_0x201b0b){if(_0x1af0df){_0x1a97f5=_0x201b0b;if(!_0x201b0b){var _0x1a1c4a={'from':(_0x522385[_0x564c('0x87')][_0x564c('0x8e')]||'')+'\x20'+(_0x522385['contact']['lastName']||'')};if(_0x225d72[_0x564c('0x5a')][_0x564c('0x89')]&&_0x225d72[_0x564c('0x5a')][_0x564c('0x8f')]&&_0x225d72[_0x564c('0x5a')]['threadId']!=_0x225d72[_0x564c('0x5a')][_0x564c('0x8f')]){_0x1a1c4a['threadId']=_0x225d72['body'][_0x564c('0x8f')];}return _0x1af0df['update'](_0x1a1c4a);}else{return _0x1af0df;}}})[_0x564c('0x33')](function(_0x157e95){_0x522385[_0x564c('0x90')]=_0x157e95['get']({'plain':!![]});_0x522385['interaction']['created']=_0x1a97f5;if(_0x522385[_0x564c('0x90')][_0x564c('0x91')]){if(_0x522385[_0x564c('0x81')][_0x564c('0x92')]){_0x522385[_0x564c('0x82')]['push']({'id':0x0,'priority':_0x522385[_0x564c('0x82')][_0x564c('0x47')]+0x1,'app':_0x564c('0x93'),'appdata':'unmanaged','interval':_0x564c('0x94')});}}return db[_0x564c('0x95')][_0x564c('0x59')]({'body':_0x225d72[_0x564c('0x5a')][_0x564c('0x5a')],'OpenchannelAccountId':_0x225d72[_0x564c('0x53')]['id'],'OpenchannelInteractionId':_0x157e95['id'],'direction':'in','ContactId':_0x522385[_0x564c('0x87')]['id'],'AttachmentId':_0x225d72[_0x564c('0x5a')]['AttachmentId']});})['then'](function(_0xb13d6e){_0x522385[_0x564c('0x25')]=_0xb13d6e;if(_0x522385['interaction']['UserId']){return db['User'][_0x564c('0x58')]({'attributes':['id',_0x564c('0x39')],'where':{'id':_0x522385[_0x564c('0x90')][_0x564c('0x96')]}})['then'](function(_0x24327b){if(_0x24327b){_0x522385[_0x564c('0x82')]['unshift']({'id':0x0,'priority':0x0,'app':_0x564c('0x97'),'appdata':_0x24327b[_0x564c('0x39')]+','+(_0x522385[_0x564c('0x81')][_0x564c('0x98')]||0xa),'interval':_0x564c('0x94')});_0x522385[_0x564c('0x99')]=![];}return respondWithRpcPromise(_0x564c('0x9a'),_0x564c('0x9b'),_0x522385);});}return respondWithRpcPromise(_0x564c('0x9a'),'startRouting',_0x522385);})[_0x564c('0x33')](function(_0x4e8379){respondWithRpcPromise(_0x564c('0x9c'),_0x564c('0x9c'),{'event':_0x564c('0x9d'),'message':_0x4e8379},client9002);return _0x4e8379;})[_0x564c('0x33')](respondWithResult(_0x1fc399,null))[_0x564c('0x27')](handleError(_0x1fc399,null));};exports[_0x564c('0x9e')]=function(_0x554f4a,_0x1e8a12){var _0x2ef4bd=_0x554f4a['params']['id'];var _0xd666b2=_0x554f4a[_0x564c('0x5a')];var _0x4ca582=0xc8;var _0x1bf9f1=null;return db[_0x564c('0x9f')][_0x564c('0xa0')]({'isolationLevel':db[_0x564c('0x9f')][_0x564c('0xa1')]['ISOLATION_LEVELS']['READ_COMMITTED']},function(_0x33ab25){return db['OpenchannelAccount'][_0x564c('0x65')]({'where':{'id':_0x2ef4bd},'transaction':_0x33ab25})[_0x564c('0x33')](function(_0x22316a){if(_0x22316a){return db['OpenchannelApplication'][_0x564c('0x34')]({'where':{'OpenchannelAccountId':_0x2ef4bd},'transaction':_0x33ab25})[_0x564c('0x33')](function(){var _0x37e8f6=_['map'](_0xd666b2,function(_0x2ed1a4){_0x2ed1a4[_0x564c('0x62')]=_0x2ef4bd;return _0x2ed1a4;});return db[_0x564c('0x7f')]['bulkCreate'](_0x37e8f6,{'transaction':_0x33ab25});});}else{_0x4ca582=0x194;_0x1bf9f1=[];}});})[_0x564c('0x33')](function(){if(_0x4ca582!==0x194){return db[_0x564c('0x7f')][_0x564c('0xa2')]({'where':{'OpenchannelAccountId':_0x2ef4bd},'order':_0x564c('0xa3')})[_0x564c('0x33')](function(_0x4eebd7){_0x1bf9f1=_0x4eebd7;});}})[_0x564c('0x27')](function(_0x375846){_0x4ca582=0x1f4;logger['error'](_0x375846[_0x564c('0x38')]);if(_0x375846[_0x564c('0x39')]){delete _0x375846[_0x564c('0x39')];}_0x1bf9f1=_0x375846;})[_0x564c('0xa4')](function(){if(_0x1bf9f1===null){_0x1e8a12['sendStatus'](_0x4ca582);}else{if(_0x4ca582===0x1f4){_0x1e8a12['status'](_0x4ca582)[_0x564c('0xa5')](_0x1bf9f1);}else{_0x1e8a12[_0x564c('0x2a')](_0x4ca582)['json'](_0x1bf9f1);}}});};exports[_0x564c('0xa6')]=function(_0x55b25c,_0x4f8eb8,_0x54ed6c){var _0x4b6fb1={};var _0x52b442={};var _0x251aea;var _0x11a293;return db[_0x564c('0x3e')][_0x564c('0x65')]({'where':{'id':_0x55b25c[_0x564c('0x53')]['id']}})[_0x564c('0x33')](handleEntityNotFound(_0x4f8eb8,null))[_0x564c('0x33')](function(_0x2cd3c4){if(_0x2cd3c4){_0x251aea=_0x2cd3c4;_0x52b442[_0x564c('0x42')]=_['keys'](db[_0x564c('0x7f')][_0x564c('0x3f')]);_0x52b442['query']=_[_0x564c('0x54')](_0x55b25c[_0x564c('0x43')]);_0x52b442[_0x564c('0x55')]=_[_0x564c('0x44')](_0x52b442['model'],_0x52b442['query']);_0x4b6fb1[_0x564c('0x45')]=_[_0x564c('0x44')](_0x52b442['model'],qs[_0x564c('0x46')](_0x55b25c[_0x564c('0x43')]['fields']));_0x4b6fb1[_0x564c('0x45')]=_0x4b6fb1[_0x564c('0x45')]['length']?_0x4b6fb1[_0x564c('0x45')]:_0x52b442[_0x564c('0x42')];_0x4b6fb1[_0x564c('0x67')]=qs[_0x564c('0x49')](_0x55b25c[_0x564c('0x43')]['sort']);_0x4b6fb1['where']=qs[_0x564c('0x55')](_[_0x564c('0x4a')](_0x55b25c[_0x564c('0x43')],_0x52b442['filters']));if(_0x55b25c['query']['filter']){_0x4b6fb1[_0x564c('0x4b')]=_[_0x564c('0x56')](_0x4b6fb1[_0x564c('0x4b')],{'$or':_[_0x564c('0x3d')](_0x4b6fb1[_0x564c('0x45')],function(_0x33f0b4){var _0x5c6316={};_0x5c6316[_0x33f0b4]={'$like':'%'+_0x55b25c[_0x564c('0x43')][_0x564c('0x4d')]+'%'};return _0x5c6316;})});}_0x4b6fb1=_['merge']({},_0x4b6fb1,_0x55b25c[_0x564c('0x57')]);return _0x251aea['getApplications'](_0x4b6fb1);}})['then'](function(_0x3852be){if(_0x3852be){_0x11a293=_0x3852be['length'];if(!_0x55b25c[_0x564c('0x43')][_0x564c('0x66')](_0x564c('0x48'))){_0x4b6fb1[_0x564c('0x2d')]=qs[_0x564c('0x2d')](_0x55b25c['query'][_0x564c('0x2d')]);_0x4b6fb1['offset']=qs[_0x564c('0x2e')](_0x55b25c[_0x564c('0x43')][_0x564c('0x2e')]);}return _0x251aea[_0x564c('0xa6')](_0x4b6fb1);}})[_0x564c('0x33')](function(_0x130ed2){if(_0x130ed2){return _0x130ed2?{'count':_0x11a293,'rows':_0x130ed2}:null;}})[_0x564c('0x33')](respondWithResult(_0x4f8eb8,null))[_0x564c('0x27')](handleError(_0x4f8eb8,null));};exports['getInteractions']=function(_0x126921,_0x5f29a2,_0x4e3419){var _0x5d8edd={'raw':![],'where':{}};var _0x187164={};var _0x158940={'count':0x0,'rows':[]};return db[_0x564c('0x3e')][_0x564c('0x65')]({'where':{'id':_0x126921[_0x564c('0x53')]['id']}})['then'](handleEntityNotFound(_0x5f29a2,null))[_0x564c('0x33')](function(_0x3843de){if(_0x3843de){_0x187164[_0x564c('0x42')]=_['keys'](db[_0x564c('0x8b')][_0x564c('0x3f')]);_0x187164['query']=_[_0x564c('0x54')](_0x126921[_0x564c('0x43')]);_0x187164[_0x564c('0x55')]=_[_0x564c('0x44')](_0x187164['model'],_0x187164[_0x564c('0x43')]);_0x5d8edd['attributes']=_[_0x564c('0x44')](_0x187164[_0x564c('0x42')],qs[_0x564c('0x46')](_0x126921[_0x564c('0x43')][_0x564c('0x46')]));_0x5d8edd[_0x564c('0x45')]=_0x5d8edd['attributes'][_0x564c('0x47')]?_0x5d8edd[_0x564c('0x45')]:_0x187164[_0x564c('0x42')];if(!_0x126921['query'][_0x564c('0x66')](_0x564c('0x48'))){_0x5d8edd['limit']=qs['limit'](_0x126921[_0x564c('0x43')][_0x564c('0x2d')]);_0x5d8edd[_0x564c('0x2e')]=qs[_0x564c('0x2e')](_0x126921[_0x564c('0x43')][_0x564c('0x2e')]);}_0x5d8edd[_0x564c('0x67')]=qs['sort'](_0x126921['query']['sort']);_0x5d8edd['where']=qs['filters'](_[_0x564c('0x4a')](_0x126921[_0x564c('0x43')],_0x187164[_0x564c('0x55')]));_0x5d8edd['where'][_0x564c('0x62')]=_0x3843de['id'];if(_0x126921[_0x564c('0x43')]['filter']){_0x5d8edd[_0x564c('0x4b')]=_[_0x564c('0x56')](_0x5d8edd[_0x564c('0x4b')],{'$or':_[_0x564c('0x3d')](_0x5d8edd[_0x564c('0x45')],function(_0x5f01da){var _0x82db3f={};_0x82db3f[_0x5f01da]={'$like':'%'+_0x126921[_0x564c('0x43')][_0x564c('0x4d')]+'%'};return _0x82db3f;})});}_0x5d8edd=_[_0x564c('0x56')]({},_0x5d8edd,_0x126921[_0x564c('0x57')]);return db[_0x564c('0x8b')][_0x564c('0x2f')]({'where':_0x5d8edd[_0x564c('0x4b')]})[_0x564c('0x33')](function(_0x489e00){_0x158940['count']=_0x489e00;if(_0x126921['query'][_0x564c('0x4e')]){_0x5d8edd[_0x564c('0x4f')]=[{'model':db['CmContact'],'as':'Contact','required':![]},{'model':db['User'],'as':_0x564c('0xa7'),'attributes':['name',_0x564c('0xa8'),'internal'],'required':![]},{'model':db[_0x564c('0xa9')],'as':'Tags','attributes':['id','name',_0x564c('0xaa')],'where':_0x126921[_0x564c('0x43')]['tag']?{'id':_0x126921[_0x564c('0x43')]['tag']}:undefined,'required':_0x126921[_0x564c('0x43')][_0x564c('0xab')]?!![]:![]}];}return db['OpenchannelInteraction']['findAll'](_0x5d8edd);})[_0x564c('0x33')](function(_0x8c25e9){_0x158940[_0x564c('0x51')]=_0x8c25e9;return _0x158940;});}})[_0x564c('0x33')](respondWithFilteredResult(_0x5f29a2,_0x5d8edd))[_0x564c('0x27')](handleError(_0x5f29a2,null));};exports[_0x564c('0xac')]=function(_0x4c7b33,_0x38630e,_0x470be2){return db[_0x564c('0x3e')][_0x564c('0x58')]({'where':{'id':_0x4c7b33[_0x564c('0x53')]['id']}})[_0x564c('0x33')](handleEntityNotFound(_0x38630e,null))[_0x564c('0x33')](function(_0x2fea58){if(_0x2fea58){return _0x2fea58[_0x564c('0xac')](_0x4c7b33['body'][_0x564c('0x69')],_[_0x564c('0xad')](_0x4c7b33[_0x564c('0x5a')],[_0x564c('0x69'),'id'])||{})[_0x564c('0x8d')](function(_0x391154){for(var _0x33cbd9=0x0;_0x33cbd9<_0x4c7b33[_0x564c('0x5a')][_0x564c('0x69')][_0x564c('0x47')];_0x33cbd9+=0x1){socket[_0x564c('0xae')](_0x564c('0xaf'),{'UserId':Number(_0x4c7b33[_0x564c('0x5a')][_0x564c('0x69')][_0x33cbd9]),'OpenchannelAccountId':Number(_0x4c7b33[_0x564c('0x53')]['id'])});}return _0x391154;});}})['then'](respondWithResult(_0x38630e,null))[_0x564c('0x27')](handleError(_0x38630e,null));};exports[_0x564c('0xb0')]=function(_0x4b5ce2,_0x5a27ff,_0x49ca07){return db[_0x564c('0x3e')]['find']({'where':{'id':_0x4b5ce2[_0x564c('0x53')]['id']}})['then'](handleEntityNotFound(_0x5a27ff,null))[_0x564c('0x33')](function(_0x2673e7){if(_0x2673e7){return _0x2673e7['removeAgents'](_0x4b5ce2[_0x564c('0x43')]['ids'])[_0x564c('0x33')](function(){if(_[_0x564c('0xb1')](_0x4b5ce2[_0x564c('0x43')][_0x564c('0x69')])){for(var _0x53d513=0x0;_0x53d513<_0x4b5ce2[_0x564c('0x43')][_0x564c('0x69')][_0x564c('0x47')];_0x53d513+=0x1){socket['emit'](_0x564c('0xb2'),{'UserId':Number(_0x4b5ce2[_0x564c('0x43')][_0x564c('0x69')][_0x53d513]),'OpenchannelAccountId':Number(_0x4b5ce2[_0x564c('0x53')]['id'])});}}else{socket['emit'](_0x564c('0xb2'),{'UserId':Number(_0x4b5ce2[_0x564c('0x43')][_0x564c('0x69')]),'OpenchannelAccountId':Number(_0x4b5ce2['params']['id'])});}});}})['then'](respondWithStatusCode(_0x5a27ff,null))[_0x564c('0x27')](handleError(_0x5a27ff,null));};exports['getAgents']=function(_0x9b4d50,_0x406a8f,_0x8120c6){var _0x2de78e={};var _0x257078={};var _0x1aa38e;var _0x1c8b4b;return db[_0x564c('0x3e')]['findOne']({'where':{'id':_0x9b4d50[_0x564c('0x53')]['id']}})['then'](handleEntityNotFound(_0x406a8f,null))[_0x564c('0x33')](function(_0x1d71eb){if(_0x1d71eb){_0x1aa38e=_0x1d71eb;_0x257078[_0x564c('0x42')]=_[_0x564c('0x54')](db['User']['rawAttributes']);_0x257078[_0x564c('0x43')]=_[_0x564c('0x54')](_0x9b4d50[_0x564c('0x43')]);_0x257078[_0x564c('0x55')]=_['intersection'](_0x257078[_0x564c('0x42')],_0x257078[_0x564c('0x43')]);_0x2de78e[_0x564c('0x45')]=_[_0x564c('0x44')](_0x257078[_0x564c('0x42')],qs[_0x564c('0x46')](_0x9b4d50[_0x564c('0x43')][_0x564c('0x46')]));_0x2de78e['attributes']=_0x2de78e[_0x564c('0x45')][_0x564c('0x47')]?_0x2de78e['attributes']:_0x257078[_0x564c('0x42')];_0x2de78e[_0x564c('0x67')]=qs[_0x564c('0x49')](_0x9b4d50[_0x564c('0x43')][_0x564c('0x49')]);_0x2de78e[_0x564c('0x4b')]=qs[_0x564c('0x55')](_[_0x564c('0x4a')](_0x9b4d50[_0x564c('0x43')],_0x257078[_0x564c('0x55')]));if(_0x9b4d50[_0x564c('0x43')][_0x564c('0x4d')]){_0x2de78e[_0x564c('0x4b')]=_['merge'](_0x2de78e[_0x564c('0x4b')],{'$or':_['map'](_0x2de78e[_0x564c('0x45')],function(_0x3ebc13){var _0x108393={};_0x108393[_0x3ebc13]={'$like':'%'+_0x9b4d50['query']['filter']+'%'};return _0x108393;})});}_0x2de78e=_[_0x564c('0x56')]({},_0x2de78e,_0x9b4d50[_0x564c('0x57')]);return _0x1aa38e[_0x564c('0xb3')](_0x2de78e);}})[_0x564c('0x33')](function(_0x40d957){if(_0x40d957){_0x1c8b4b=_0x40d957['length'];if(!_0x9b4d50['query'][_0x564c('0x66')](_0x564c('0x48'))){_0x2de78e[_0x564c('0x2d')]=qs[_0x564c('0x2d')](_0x9b4d50[_0x564c('0x43')]['limit']);_0x2de78e['offset']=qs['offset'](_0x9b4d50[_0x564c('0x43')]['offset']);}return _0x1aa38e['getAgents'](_0x2de78e);}})[_0x564c('0x33')](function(_0x48f6d0){if(_0x48f6d0){return _0x48f6d0?{'count':_0x1c8b4b,'rows':_0x48f6d0}:null;}})['then'](respondWithResult(_0x406a8f,null))[_0x564c('0x27')](handleError(_0x406a8f,null));};exports['send']=function(_0x54d4b0,_0x15a959,_0x2a69e5){var _0x438950,_0x14a894,_0x2a52aa;if(_[_0x564c('0x77')](_0x54d4b0['body'][_0x564c('0x5a')])||_0x54d4b0[_0x564c('0x5a')][_0x564c('0x5a')]===''){throw new db[(_0x564c('0x70'))][(_0x564c('0x71'))](_0x564c('0x79'));}if(_[_0x564c('0x77')](_0x54d4b0[_0x564c('0x5a')]['to'])){}_0x438950=_0x54d4b0[_0x564c('0x5a')]['to'];return db[_0x564c('0x3e')][_0x564c('0x65')]({'where':{'id':_0x54d4b0[_0x564c('0x53')]['id']}})[_0x564c('0x33')](handleEntityNotFound(_0x15a959,null))[_0x564c('0x33')](function(_0x557f6d){if(_0x557f6d){return db[_0x564c('0x3e')][_0x564c('0x58')]({'where':{'id':_0x557f6d['id']},'include':[{'model':db[_0x564c('0xb4')],'as':_0x564c('0x7d'),'include':[{'model':db['CmContact'],'as':_0x564c('0x86'),'where':{[_0x557f6d[_0x564c('0x7a')]]:_0x438950},'limit':0x1,'order':[[_0x564c('0x75'),'DESC']]}]}]})[_0x564c('0x33')](handleEntityNotFound(_0x15a959,null))[_0x564c('0x33')](function(_0x1df3a1){if(_0x1df3a1&&_0x1df3a1[_0x564c('0x7d')]){_0x14a894=_0x1df3a1[_0x564c('0x35')]({'plain':!![]});if(_0x14a894[_0x564c('0x7d')]&&_0x14a894[_0x564c('0x7d')][_0x564c('0x86')][_0x564c('0x47')]){return _0x14a894[_0x564c('0x7d')]['Contacts'][0x0];}return db[_0x564c('0x6f')][_0x564c('0x59')](_['defaults'](_0x54d4b0[_0x564c('0x5a')],{'firstName':_0x438950,[_0x1df3a1[_0x564c('0x7a')]]:_0x438950,'phone':_0x438950,'ListId':_0x14a894[_0x564c('0x76')]}));}})[_0x564c('0x33')](handleEntityNotFound(_0x15a959,null))[_0x564c('0x33')](function(_0x1d4fc7){if(_0x1d4fc7){_0x2a52aa=_0x1d4fc7;return db[_0x564c('0x8b')]['find']({'where':{'ContactId':_0x2a52aa['id'],'closed':![],'OpenchannelAccountId':_0x14a894['id']}})['then'](function(_0x38f1cf){if(_0x38f1cf){return[_0x38f1cf,![]];}return db['OpenchannelInteraction']['create']({'UserId':_0x54d4b0[_0x564c('0x5d')]['id'],'ContactId':_0x2a52aa['id'],'OpenchannelAccountId':_0x14a894['id'],'lastMsgDirection':_0x564c('0xb5'),'Messages':[_[_0x564c('0x56')](_0x54d4b0[_0x564c('0x5a')],{'read':![],'body':_0x54d4b0['body'][_0x564c('0x5a')],'OpenchannelAccountId':_0x14a894['id'],'UserId':_0x54d4b0[_0x564c('0x5d')]['id'],'ContactId':_0x2a52aa['id']})]},{'include':[{'model':db[_0x564c('0x95')],'as':'Messages'}]})['then'](function(_0x28a85){return[_0x28a85,!![]];});});}})[_0x564c('0x8d')](function(_0x276bff,_0x544409){if(_0x544409){return _0x276bff;}return db[_0x564c('0x95')][_0x564c('0x59')](_[_0x564c('0x56')](_0x54d4b0[_0x564c('0x5a')],{'read':![],'body':_0x54d4b0[_0x564c('0x5a')][_0x564c('0x5a')],'OpenchannelAccountId':_0x14a894['id'],'OpenchannelInteractionId':_0x276bff['id'],'UserId':_0x54d4b0['user']['id'],'ContactId':_0x2a52aa['id']}))[_0x564c('0x33')](function(_0x26de2d){_0x276bff[_0x564c('0xb6')][_0x564c('0xb7')]=[];_0x276bff[_0x564c('0xb6')][_0x564c('0xb7')]['push'](_0x26de2d[_0x564c('0xb6')]);return _0x276bff;});});}})['then'](respondWithResult(_0x15a959,null))[_0x564c('0x27')](handleError(_0x15a959,null));};