Built motion from commit (unavailable).|2.5.24
[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 _0x3889=['squel','crypto','desk.js','querystring','papaparse','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','api','../../config/environment','redis','defaults','localhost','socket.io-emitter','./openchannelAccount.socket','register','jayson/promise','http','client','request','info','OpenchannelAccount,\x20%s,\x20%s','request\x20sent','debug','OpenchannelAccount,\x20%s,\x20%s,\x20%s','stringify','error','code','message','result','catch','sendStatus','end','json','count','offset','limit','status','set','Content-Range','apply','reject','save','update','then','destroy','get','OpenchannelAccounts','UserProfileResource','stack','name','send','index','Pause','mandatoryDispositionPause','map','OpenchannelAccount','type','key','model','query','intersection','fields','attributes','length','hasOwnProperty','nolimit','order','sort','where','filters','pick','filter','merge','VIRTUAL','options','include','rows','params','keys','rawAttributes','includeAll','find','create','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','body','describe','addDisposition','Disposition','getDispositions','findOne','OpenchannelAccountId','findAll','removeDispositions','ids','CannedAnswer','getAnswers','removeAnswers','notify','Sequelize','ValidationError','difference','createdAt','updatedAt','ListId','isNil','from','from\x20is\x20mandatory','body\x20is\x20mandatory\x20and\x20not\x20empty','mapKey','mapKey\x20is\x20mandatory,\x20please\x20use\x20one\x20of\x20these:\x20','includes','mapKey\x20invalid,\x20please\x20use\x20one\x20of\x20these:\x20','CmList','List','CmContact','Contacts','DESC','OpenchannelApplication','Applications','account','applications','list','orderBy','contact','firstName','lastName','threadId','OpenchannelInteraction','externalUrl','ContactId','spread','messageId','interaction','created','push','close','unmanaged','*,*,*,*','OpenchannelMessage','AttachmentId','UserId','User','unshift','agent','waitForTheAssignedAgent','forcedOwnership','Start','startRouting','addApplications','transaction','findAndCountAll','getApplications','getInteractions','Contact','Owner','fullname','internal','Tags','tag','addAgents','omit','emit','userOpenchannelAccount:save','removeAgents','isArray','userOpenchannelAccount:remove','getAgents','Messages','dataValues','html-pdf','eml-format','fast-json-patch','request-promise','moment','bluebird','mustache','path','sox','to-csv','ejs','lodash'];(function(_0x53fafb,_0x599411){var _0x661b0=function(_0x1794b6){while(--_0x1794b6){_0x53fafb['push'](_0x53fafb['shift']());}};_0x661b0(++_0x599411);}(_0x3889,0xae));var _0x9388=function(_0x2798b9,_0x51f40){_0x2798b9=_0x2798b9-0x0;var _0x53586b=_0x3889[_0x2798b9];return _0x53586b;};'use strict';var pdf=require(_0x9388('0x0'));var emlformat=require(_0x9388('0x1'));var rimraf=require('rimraf');var zipdir=require('zip-dir');var jsonpatch=require(_0x9388('0x2'));var rp=require(_0x9388('0x3'));var moment=require(_0x9388('0x4'));var BPromise=require(_0x9388('0x5'));var Mustache=require(_0x9388('0x6'));var util=require('util');var path=require(_0x9388('0x7'));var sox=require(_0x9388('0x8'));var csv=require(_0x9388('0x9'));var ejs=require(_0x9388('0xa'));var fs=require('fs');var _=require(_0x9388('0xb'));var squel=require(_0x9388('0xc'));var crypto=require(_0x9388('0xd'));var jsforce=require('jsforce');var deskjs=require(_0x9388('0xe'));var toCsv=require(_0x9388('0x9'));var querystring=require(_0x9388('0xf'));var Papa=require(_0x9388('0x10'));var Redis=require(_0x9388('0x11'));var authService=require('../../components/auth/service');var qs=require(_0x9388('0x12'));var as=require(_0x9388('0x13'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x9388('0x14'))(_0x9388('0x15'));var utils=require('../../config/utils');var config=require(_0x9388('0x16'));var licenseUtil=require('../../config/license/util');var db=require('../../mysqldb')['db'];config[_0x9388('0x17')]=_[_0x9388('0x18')](config[_0x9388('0x17')],{'host':_0x9388('0x19'),'port':0x18eb});var socket=require(_0x9388('0x1a'))(new Redis(config[_0x9388('0x17')]));require(_0x9388('0x1b'))[_0x9388('0x1c')](socket);var jayson=require(_0x9388('0x1d'));var client=jayson['client'][_0x9388('0x1e')]({'port':0x232c});var client9002=jayson[_0x9388('0x1f')]['http']({'port':0x232a});function respondWithRpcPromise(_0x192cae,_0x387499,_0x40b509,_0x1cf38e){return new BPromise(function(_0x2320b0,_0x2e0400){var _0x12d3cc=_0x1cf38e||client;return _0x12d3cc[_0x9388('0x20')](_0x192cae,_0x40b509)['then'](function(_0x1afbea){logger[_0x9388('0x21')](_0x9388('0x22'),_0x387499,_0x9388('0x23'));logger[_0x9388('0x24')](_0x9388('0x25'),_0x387499,_0x9388('0x23'),JSON[_0x9388('0x26')](_0x1afbea));if(_0x1afbea[_0x9388('0x27')]){if(_0x1afbea['error'][_0x9388('0x28')]===0x1f4){logger[_0x9388('0x27')](_0x9388('0x22'),_0x387499,_0x1afbea[_0x9388('0x27')][_0x9388('0x29')]);return _0x2e0400(_0x1afbea[_0x9388('0x27')][_0x9388('0x29')]);}logger[_0x9388('0x27')](_0x9388('0x22'),_0x387499,_0x1afbea['error'][_0x9388('0x29')]);return _0x2320b0(_0x1afbea[_0x9388('0x27')]['message']);}else{logger[_0x9388('0x21')](_0x9388('0x22'),_0x387499,_0x9388('0x23'));_0x2320b0(_0x1afbea[_0x9388('0x2a')][_0x9388('0x29')]);}})[_0x9388('0x2b')](function(_0x3a46bd){logger[_0x9388('0x27')](_0x9388('0x22'),_0x387499,_0x3a46bd);_0x2e0400(_0x3a46bd);});});}function respondWithStatusCode(_0x5d92af,_0x220182){_0x220182=_0x220182||0xcc;return function(_0x351f27){if(_0x351f27){return _0x5d92af[_0x9388('0x2c')](_0x220182);}return _0x5d92af['status'](_0x220182)[_0x9388('0x2d')]();};}function respondWithResult(_0x155e6b,_0x30c8e0){_0x30c8e0=_0x30c8e0||0xc8;return function(_0x3de716){if(_0x3de716){return _0x155e6b['status'](_0x30c8e0)[_0x9388('0x2e')](_0x3de716);}};}function respondWithFilteredResult(_0x41c865,_0x2c9f7a){return function(_0x4def03){if(_0x4def03){var _0x14be45=_0x4def03[_0x9388('0x2f')],_0x267e03=_0x2c9f7a['offset'],_0x515a48=_0x2c9f7a[_0x9388('0x30')]+_0x2c9f7a[_0x9388('0x31')],_0x3bfd3e;if(_0x515a48>=_0x14be45){_0x515a48=_0x14be45;_0x3bfd3e=0xc8;}else{_0x3bfd3e=0xce;}_0x41c865[_0x9388('0x32')](_0x3bfd3e);return _0x41c865[_0x9388('0x33')](_0x9388('0x34'),_0x267e03+'-'+_0x515a48+'/'+_0x14be45)[_0x9388('0x2e')](_0x4def03);}return null;};}function patchUpdates(_0x1c6fd9){return function(_0x55a9ab){try{jsonpatch[_0x9388('0x35')](_0x55a9ab,_0x1c6fd9,!![]);}catch(_0x322f0a){return BPromise[_0x9388('0x36')](_0x322f0a);}return _0x55a9ab[_0x9388('0x37')]();};}function saveUpdates(_0x38d29f,_0x47d113){return function(_0x437ce6){if(_0x437ce6){return _0x437ce6[_0x9388('0x38')](_0x38d29f)[_0x9388('0x39')](function(_0x185082){return _0x185082;});}return null;};}function removeEntity(_0x34efa5,_0x5ef4fb){return function(_0x1c0b80){if(_0x1c0b80){return _0x1c0b80[_0x9388('0x3a')]()[_0x9388('0x39')](function(){var _0x15d62a=_0x1c0b80[_0x9388('0x3b')]({'plain':!![]});var _0x28169e=_0x9388('0x3c');return db[_0x9388('0x3d')][_0x9388('0x3a')]({'where':{'type':_0x28169e,'resourceId':_0x15d62a['id']}})['then'](function(){return _0x1c0b80;});})['then'](function(){_0x34efa5['status'](0xcc)['end']();});}};}function handleEntityNotFound(_0x32405c,_0x24cae1){return function(_0x4660d0){if(!_0x4660d0){_0x32405c['sendStatus'](0x194);}return _0x4660d0;};}function handleError(_0x3e5563,_0x3baf3e){_0x3baf3e=_0x3baf3e||0x1f4;return function(_0x1e1c38){logger[_0x9388('0x27')](_0x1e1c38[_0x9388('0x3e')]);if(_0x1e1c38[_0x9388('0x3f')]){delete _0x1e1c38[_0x9388('0x3f')];}_0x3e5563[_0x9388('0x32')](_0x3baf3e)[_0x9388('0x40')](_0x1e1c38);};}exports[_0x9388('0x41')]=function(_0x4a6184,_0x87e31b){var _0x3b2f46={'include':[{'model':db[_0x9388('0x42')],'as':_0x9388('0x43')}]},_0x27d373={},_0x5ce189={'count':0x0,'rows':[]};var _0x4502e0=_[_0x9388('0x44')](db[_0x9388('0x45')]['rawAttributes'],function(_0x2e8af8){return{'name':_0x2e8af8['fieldName'],'type':_0x2e8af8[_0x9388('0x46')][_0x9388('0x47')]};});_0x27d373[_0x9388('0x48')]=_['map'](_0x4502e0,_0x9388('0x3f'));_0x27d373[_0x9388('0x49')]=_['keys'](_0x4a6184[_0x9388('0x49')]);_0x27d373['filters']=_[_0x9388('0x4a')](_0x27d373[_0x9388('0x48')],_0x27d373[_0x9388('0x49')]);_0x3b2f46['attributes']=_[_0x9388('0x4a')](_0x27d373['model'],qs[_0x9388('0x4b')](_0x4a6184[_0x9388('0x49')]['fields']));_0x3b2f46['attributes']=_0x3b2f46[_0x9388('0x4c')][_0x9388('0x4d')]?_0x3b2f46[_0x9388('0x4c')]:_0x27d373[_0x9388('0x48')];if(!_0x4a6184[_0x9388('0x49')][_0x9388('0x4e')](_0x9388('0x4f'))){_0x3b2f46['limit']=qs[_0x9388('0x31')](_0x4a6184[_0x9388('0x49')][_0x9388('0x31')]);_0x3b2f46[_0x9388('0x30')]=qs[_0x9388('0x30')](_0x4a6184['query'][_0x9388('0x30')]);}_0x3b2f46[_0x9388('0x50')]=qs['sort'](_0x4a6184['query'][_0x9388('0x51')]);_0x3b2f46[_0x9388('0x52')]=qs[_0x9388('0x53')](_[_0x9388('0x54')](_0x4a6184[_0x9388('0x49')],_0x27d373[_0x9388('0x53')]),_0x4502e0);if(_0x4a6184['query'][_0x9388('0x55')]){_0x3b2f46[_0x9388('0x52')]=_[_0x9388('0x56')](_0x3b2f46[_0x9388('0x52')],{'$or':_[_0x9388('0x44')](_0x4502e0,function(_0x36718c){if(_0x36718c['type']!==_0x9388('0x57')){var _0x483291={};_0x483291[_0x36718c['name']]={'$like':'%'+_0x4a6184['query'][_0x9388('0x55')]+'%'};return _0x483291;}})});}_0x3b2f46=_[_0x9388('0x56')]({},_0x3b2f46,_0x4a6184[_0x9388('0x58')]);var _0x2dbac0={'where':_0x3b2f46[_0x9388('0x52')]};return db['OpenchannelAccount']['count'](_0x2dbac0)[_0x9388('0x39')](function(_0x2be2d2){_0x5ce189[_0x9388('0x2f')]=_0x2be2d2;if(_0x4a6184['query']['includeAll']){_0x3b2f46[_0x9388('0x59')]=[{'all':!![]}];}return db[_0x9388('0x45')]['findAll'](_0x3b2f46);})[_0x9388('0x39')](function(_0x53a9d4){_0x5ce189[_0x9388('0x5a')]=_0x53a9d4;return _0x5ce189;})['then'](respondWithFilteredResult(_0x87e31b,_0x3b2f46))[_0x9388('0x2b')](handleError(_0x87e31b,null));};exports['show']=function(_0x4cee5e,_0x36d530){var _0x3a5caa={'raw':![],'where':{'id':_0x4cee5e[_0x9388('0x5b')]['id']},'include':[{'model':db['Pause'],'as':'mandatoryDispositionPause'}]},_0xda713f={};_0xda713f[_0x9388('0x48')]=_[_0x9388('0x5c')](db[_0x9388('0x45')][_0x9388('0x5d')]);_0xda713f['query']=_['keys'](_0x4cee5e[_0x9388('0x49')]);_0xda713f[_0x9388('0x53')]=_[_0x9388('0x4a')](_0xda713f[_0x9388('0x48')],_0xda713f['query']);_0x3a5caa['attributes']=_['intersection'](_0xda713f[_0x9388('0x48')],qs[_0x9388('0x4b')](_0x4cee5e[_0x9388('0x49')][_0x9388('0x4b')]));_0x3a5caa[_0x9388('0x4c')]=_0x3a5caa[_0x9388('0x4c')][_0x9388('0x4d')]?_0x3a5caa[_0x9388('0x4c')]:_0xda713f[_0x9388('0x48')];if(_0x4cee5e[_0x9388('0x49')][_0x9388('0x5e')]){_0x3a5caa[_0x9388('0x59')]=[{'all':!![]}];}_0x3a5caa=_[_0x9388('0x56')]({},_0x3a5caa,_0x4cee5e[_0x9388('0x58')]);return db['OpenchannelAccount'][_0x9388('0x5f')](_0x3a5caa)[_0x9388('0x39')](handleEntityNotFound(_0x36d530,null))[_0x9388('0x39')](respondWithResult(_0x36d530,null))[_0x9388('0x2b')](handleError(_0x36d530,null));};exports[_0x9388('0x60')]=function(_0x401fb0,_0x543b66){return db['OpenchannelAccount'][_0x9388('0x60')](_0x401fb0['body'],{})[_0x9388('0x39')](function(_0x399226){var _0x4e19e1=_0x401fb0[_0x9388('0x61')][_0x9388('0x3b')]({'plain':!![]});if(!_0x4e19e1)throw new Error(_0x9388('0x62'));if(_0x4e19e1[_0x9388('0x63')]===_0x9388('0x61')){var _0x3c5f0d=_0x399226[_0x9388('0x3b')]({'plain':!![]});var _0x823768=_0x9388('0x3c');return db['UserProfileSection'][_0x9388('0x5f')]({'where':{'name':_0x823768,'userProfileId':_0x4e19e1['userProfileId']},'raw':!![]})[_0x9388('0x39')](function(_0x143c3a){if(_0x143c3a&&_0x143c3a['autoAssociation']===0x0){return db[_0x9388('0x3d')]['create']({'name':_0x3c5f0d[_0x9388('0x3f')],'resourceId':_0x3c5f0d['id'],'type':_0x143c3a['name'],'sectionId':_0x143c3a['id']},{})[_0x9388('0x39')](function(){return _0x399226;});}else{return _0x399226;}})[_0x9388('0x2b')](function(_0x450aa6){logger[_0x9388('0x27')](_0x9388('0x64'),_0x450aa6);throw _0x450aa6;});}return _0x399226;})[_0x9388('0x39')](respondWithResult(_0x543b66,0xc9))[_0x9388('0x2b')](handleError(_0x543b66,null));};exports[_0x9388('0x38')]=function(_0x31f11b,_0x469bd2){if(_0x31f11b[_0x9388('0x65')]['id']){delete _0x31f11b[_0x9388('0x65')]['id'];}return db[_0x9388('0x45')]['find']({'where':{'id':_0x31f11b[_0x9388('0x5b')]['id']},'include':[{'model':db[_0x9388('0x42')],'as':_0x9388('0x43')}]})[_0x9388('0x39')](handleEntityNotFound(_0x469bd2,null))['then'](saveUpdates(_0x31f11b['body'],null))[_0x9388('0x39')](respondWithResult(_0x469bd2,null))['catch'](handleError(_0x469bd2,null));};exports[_0x9388('0x3a')]=function(_0x4d973d,_0x563132){return db[_0x9388('0x45')][_0x9388('0x5f')]({'where':{'id':_0x4d973d[_0x9388('0x5b')]['id']}})[_0x9388('0x39')](handleEntityNotFound(_0x563132,null))['then'](removeEntity(_0x563132,null))[_0x9388('0x2b')](handleError(_0x563132,null));};exports[_0x9388('0x66')]=function(_0x21db17,_0x2fe586){return db[_0x9388('0x45')]['describe']()[_0x9388('0x39')](respondWithResult(_0x2fe586,null))[_0x9388('0x2b')](handleError(_0x2fe586,null));};exports[_0x9388('0x67')]=function(_0x2387f5,_0x45d858,_0x285c29){if(_0x2387f5[_0x9388('0x65')]['id']){delete _0x2387f5[_0x9388('0x65')]['id'];}return db[_0x9388('0x45')][_0x9388('0x5f')]({'where':{'id':_0x2387f5[_0x9388('0x5b')]['id']}})[_0x9388('0x39')](handleEntityNotFound(_0x45d858,null))[_0x9388('0x39')](function(_0x2ae698){if(_0x2ae698){_0x2387f5[_0x9388('0x65')]['OpenchannelAccountId']=_0x2ae698['id'];return db[_0x9388('0x68')][_0x9388('0x60')](_0x2387f5[_0x9388('0x65')]);}})[_0x9388('0x39')](respondWithResult(_0x45d858,null))[_0x9388('0x2b')](handleError(_0x45d858,null));};exports[_0x9388('0x69')]=function(_0x31042f,_0x314ce0,_0x623a90){var _0x3fb3aa={'raw':![],'where':{}};var _0x401a5c={};var _0x451794={'count':0x0,'rows':[]};return db[_0x9388('0x45')][_0x9388('0x6a')]({'where':{'id':_0x31042f[_0x9388('0x5b')]['id']}})['then'](handleEntityNotFound(_0x314ce0,null))[_0x9388('0x39')](function(_0x198f0a){if(_0x198f0a){_0x401a5c[_0x9388('0x48')]=_[_0x9388('0x5c')](db[_0x9388('0x68')][_0x9388('0x5d')]);_0x401a5c[_0x9388('0x49')]=_[_0x9388('0x5c')](_0x31042f[_0x9388('0x49')]);_0x401a5c['filters']=_[_0x9388('0x4a')](_0x401a5c[_0x9388('0x48')],_0x401a5c['query']);_0x3fb3aa[_0x9388('0x4c')]=_[_0x9388('0x4a')](_0x401a5c[_0x9388('0x48')],qs['fields'](_0x31042f[_0x9388('0x49')][_0x9388('0x4b')]));_0x3fb3aa[_0x9388('0x4c')]=_0x3fb3aa[_0x9388('0x4c')][_0x9388('0x4d')]?_0x3fb3aa[_0x9388('0x4c')]:_0x401a5c[_0x9388('0x48')];if(!_0x31042f[_0x9388('0x49')][_0x9388('0x4e')](_0x9388('0x4f'))){_0x3fb3aa['limit']=qs[_0x9388('0x31')](_0x31042f[_0x9388('0x49')]['limit']);_0x3fb3aa[_0x9388('0x30')]=qs[_0x9388('0x30')](_0x31042f[_0x9388('0x49')][_0x9388('0x30')]);}_0x3fb3aa[_0x9388('0x50')]=qs['sort'](_0x31042f[_0x9388('0x49')][_0x9388('0x51')]);_0x3fb3aa[_0x9388('0x52')]=qs[_0x9388('0x53')](_['pick'](_0x31042f[_0x9388('0x49')],_0x401a5c[_0x9388('0x53')]));_0x3fb3aa[_0x9388('0x52')][_0x9388('0x6b')]=_0x198f0a['id'];if(_0x31042f['query'][_0x9388('0x55')]){_0x3fb3aa[_0x9388('0x52')]=_[_0x9388('0x56')](_0x3fb3aa['where'],{'$or':_['map'](_0x3fb3aa[_0x9388('0x4c')],function(_0x18a00b){var _0x126d92={};_0x126d92[_0x18a00b]={'$like':'%'+_0x31042f[_0x9388('0x49')]['filter']+'%'};return _0x126d92;})});}_0x3fb3aa=_['merge']({},_0x3fb3aa,_0x31042f[_0x9388('0x58')]);return db[_0x9388('0x68')][_0x9388('0x2f')]({'where':_0x3fb3aa[_0x9388('0x52')]})[_0x9388('0x39')](function(_0x3f5579){_0x451794['count']=_0x3f5579;if(_0x31042f[_0x9388('0x49')][_0x9388('0x5e')]){_0x3fb3aa[_0x9388('0x59')]=[{'all':!![]}];}return db[_0x9388('0x68')][_0x9388('0x6c')](_0x3fb3aa);})['then'](function(_0x548a07){_0x451794[_0x9388('0x5a')]=_0x548a07;return _0x451794;});}})[_0x9388('0x39')](respondWithFilteredResult(_0x314ce0,_0x3fb3aa))[_0x9388('0x2b')](handleError(_0x314ce0,null));};exports[_0x9388('0x6d')]=function(_0x2e75c6,_0x2eb70e,_0x15a2e2){return db[_0x9388('0x45')][_0x9388('0x5f')]({'where':{'id':_0x2e75c6[_0x9388('0x5b')]['id']}})[_0x9388('0x39')](handleEntityNotFound(_0x2eb70e,null))[_0x9388('0x39')](function(_0x4d731b){if(_0x4d731b){return _0x4d731b[_0x9388('0x6d')](_0x2e75c6['query'][_0x9388('0x6e')]);}})[_0x9388('0x39')](respondWithStatusCode(_0x2eb70e,null))[_0x9388('0x2b')](handleError(_0x2eb70e,null));};exports['addAnswer']=function(_0xaee2a7,_0x24a48f,_0xb6c716){if(_0xaee2a7[_0x9388('0x65')]['id']){delete _0xaee2a7[_0x9388('0x65')]['id'];}return db[_0x9388('0x45')][_0x9388('0x5f')]({'where':{'id':_0xaee2a7[_0x9388('0x5b')]['id']}})[_0x9388('0x39')](handleEntityNotFound(_0x24a48f,null))['then'](function(_0x2ae9a2){if(_0x2ae9a2){_0xaee2a7[_0x9388('0x65')][_0x9388('0x6b')]=_0x2ae9a2['id'];return db[_0x9388('0x6f')]['create'](_0xaee2a7['body']);}})[_0x9388('0x39')](respondWithResult(_0x24a48f,null))['catch'](handleError(_0x24a48f,null));};exports[_0x9388('0x70')]=function(_0x63f41a,_0x5b551f,_0x33cc76){var _0xb37ab9={'raw':![],'where':{}};var _0x574283={};var _0x98d1e7={'count':0x0,'rows':[]};return db[_0x9388('0x45')][_0x9388('0x6a')]({'where':{'id':_0x63f41a[_0x9388('0x5b')]['id']}})[_0x9388('0x39')](handleEntityNotFound(_0x5b551f,null))[_0x9388('0x39')](function(_0x5096b5){if(_0x5096b5){_0x574283['model']=_[_0x9388('0x5c')](db[_0x9388('0x6f')]['rawAttributes']);_0x574283[_0x9388('0x49')]=_[_0x9388('0x5c')](_0x63f41a['query']);_0x574283['filters']=_[_0x9388('0x4a')](_0x574283[_0x9388('0x48')],_0x574283[_0x9388('0x49')]);_0xb37ab9[_0x9388('0x4c')]=_[_0x9388('0x4a')](_0x574283[_0x9388('0x48')],qs[_0x9388('0x4b')](_0x63f41a[_0x9388('0x49')][_0x9388('0x4b')]));_0xb37ab9[_0x9388('0x4c')]=_0xb37ab9['attributes']['length']?_0xb37ab9['attributes']:_0x574283[_0x9388('0x48')];if(!_0x63f41a[_0x9388('0x49')][_0x9388('0x4e')](_0x9388('0x4f'))){_0xb37ab9[_0x9388('0x31')]=qs['limit'](_0x63f41a[_0x9388('0x49')][_0x9388('0x31')]);_0xb37ab9[_0x9388('0x30')]=qs['offset'](_0x63f41a[_0x9388('0x49')]['offset']);}_0xb37ab9[_0x9388('0x50')]=qs[_0x9388('0x51')](_0x63f41a['query'][_0x9388('0x51')]);_0xb37ab9[_0x9388('0x52')]=qs['filters'](_[_0x9388('0x54')](_0x63f41a['query'],_0x574283[_0x9388('0x53')]));_0xb37ab9[_0x9388('0x52')][_0x9388('0x6b')]=_0x5096b5['id'];if(_0x63f41a['query'][_0x9388('0x55')]){_0xb37ab9[_0x9388('0x52')]=_['merge'](_0xb37ab9[_0x9388('0x52')],{'$or':_[_0x9388('0x44')](_0xb37ab9[_0x9388('0x4c')],function(_0x1e3665){var _0x20524a={};_0x20524a[_0x1e3665]={'$like':'%'+_0x63f41a[_0x9388('0x49')][_0x9388('0x55')]+'%'};return _0x20524a;})});}_0xb37ab9=_['merge']({},_0xb37ab9,_0x63f41a[_0x9388('0x58')]);return db['CannedAnswer']['count']({'where':_0xb37ab9[_0x9388('0x52')]})[_0x9388('0x39')](function(_0x1b0136){_0x98d1e7[_0x9388('0x2f')]=_0x1b0136;if(_0x63f41a[_0x9388('0x49')][_0x9388('0x5e')]){_0xb37ab9['include']=[{'all':!![]}];}return db[_0x9388('0x6f')]['findAll'](_0xb37ab9);})['then'](function(_0xeba126){_0x98d1e7[_0x9388('0x5a')]=_0xeba126;return _0x98d1e7;});}})[_0x9388('0x39')](respondWithFilteredResult(_0x5b551f,_0xb37ab9))[_0x9388('0x2b')](handleError(_0x5b551f,null));};exports[_0x9388('0x71')]=function(_0x513911,_0x3321b7,_0x5b6a6d){return db[_0x9388('0x45')][_0x9388('0x5f')]({'where':{'id':_0x513911[_0x9388('0x5b')]['id']}})[_0x9388('0x39')](handleEntityNotFound(_0x3321b7,null))[_0x9388('0x39')](function(_0x3fc88b){if(_0x3fc88b){return _0x3fc88b[_0x9388('0x71')](_0x513911[_0x9388('0x49')][_0x9388('0x6e')]);}})[_0x9388('0x39')](respondWithStatusCode(_0x3321b7,null))[_0x9388('0x2b')](handleError(_0x3321b7,null));};exports[_0x9388('0x72')]=function(_0x3b4079,_0x30d422,_0x26279b){var _0x4c385b={'body':_0x3b4079['body'],'channel':'openchannel'};var _0x216100=[];var _0x5ec104=[];var _0x126029={};var _0x4a6af7=![];return db['CmContact'][_0x9388('0x66')]()[_0x9388('0x39')](function(_0x26a97f){if(!_0x26a97f){throw new db[(_0x9388('0x73'))][(_0x9388('0x74'))]('no\x20available\x20attributes');}_0x216100=_[_0x9388('0x75')](_['keys'](_0x26a97f),[_0x9388('0x76'),'updatedAt']);_0x5ec104=_[_0x9388('0x75')](_['keys'](_0x26a97f),[_0x9388('0x76'),_0x9388('0x77'),'CompanyId',_0x9388('0x78')]);if(_0x3b4079[_0x9388('0x65')]['id']){delete _0x3b4079[_0x9388('0x65')]['id'];}if(_[_0x9388('0x79')](_0x3b4079[_0x9388('0x65')][_0x9388('0x7a')])){throw new db[(_0x9388('0x73'))][(_0x9388('0x74'))](_0x9388('0x7b'));}if(_['isNil'](_0x3b4079['body'][_0x9388('0x65')])||_0x3b4079[_0x9388('0x65')][_0x9388('0x65')]===''){throw new db['Sequelize'][(_0x9388('0x74'))](_0x9388('0x7c'));}if(_[_0x9388('0x79')](_0x3b4079[_0x9388('0x65')][_0x9388('0x7d')])){throw new db[(_0x9388('0x73'))][(_0x9388('0x74'))](_0x9388('0x7e')+_0x5ec104);}if(!_[_0x9388('0x7f')](_0x5ec104,_0x3b4079['body'][_0x9388('0x7d')])){throw new db[(_0x9388('0x73'))]['ValidationError'](_0x9388('0x80')+_0x5ec104);}_0x126029[_0x3b4079[_0x9388('0x65')][_0x9388('0x7d')]]=_0x3b4079[_0x9388('0x65')]['from'];})[_0x9388('0x39')](function(){return db[_0x9388('0x45')][_0x9388('0x5f')]({'where':{'id':_0x3b4079[_0x9388('0x5b')]['id']},'include':[{'model':db[_0x9388('0x81')],'as':_0x9388('0x82'),'include':[{'model':db[_0x9388('0x83')],'as':_0x9388('0x84'),'where':_0x126029,'limit':0x1,'order':[[_0x9388('0x77'),_0x9388('0x85')]]}]},{'model':db[_0x9388('0x86')],'as':_0x9388('0x87')}]});})[_0x9388('0x39')](handleEntityNotFound(_0x30d422,null))[_0x9388('0x39')](function(_0x73e571){if(_0x73e571&&_0x73e571[_0x9388('0x82')]){_0x4c385b[_0x9388('0x88')]=_0x73e571;_0x4c385b[_0x9388('0x89')]=_0x73e571[_0x9388('0x87')];_0x4c385b[_0x9388('0x8a')]=_0x73e571[_0x9388('0x82')];_0x4c385b[_0x9388('0x89')]=_[_0x9388('0x8b')](_0x4c385b[_0x9388('0x89')],['priority'],['asc']);if(_0x4c385b[_0x9388('0x88')]['Applications']){delete _0x4c385b['account'][_0x9388('0x87')];}if(_0x4c385b[_0x9388('0x88')]['List']&&_0x4c385b['account'][_0x9388('0x82')][_0x9388('0x84')][_0x9388('0x4d')]){return _0x4c385b['account'][_0x9388('0x82')][_0x9388('0x84')][0x0];}var _0x4bdb41=_['defaults'](_0x3b4079[_0x9388('0x65')],{'firstName':_0x3b4079['body'][_0x9388('0x7a')],'ListId':_0x73e571[_0x9388('0x78')]});_0x4bdb41[_0x3b4079['body'][_0x9388('0x7d')]]=_0x3b4079[_0x9388('0x65')]['from'];return db['CmContact'][_0x9388('0x60')](_0x4bdb41,{'fields':_0x216100,'raw':!![]});}})['then'](handleEntityNotFound(_0x30d422,null))[_0x9388('0x39')](function(_0x28404c){_0x4c385b[_0x9388('0x8c')]=_0x28404c;if(_0x28404c){var _0x4f67c6={'ContactId':_0x28404c['id'],'OpenchannelAccountId':_0x3b4079[_0x9388('0x5b')]['id'],'from':(_0x28404c[_0x9388('0x8d')]||'')+'\x20'+(_0x28404c[_0x9388('0x8e')]||'')};var _0x2b1448={'OpenchannelAccountId':_0x3b4079[_0x9388('0x5b')]['id'],'closed':![]};if(_0x3b4079[_0x9388('0x65')][_0x9388('0x8f')]){_0x2b1448[_0x9388('0x8f')]=_0x3b4079['body'][_0x9388('0x8f')];return db[_0x9388('0x90')][_0x9388('0x5f')]({'where':_0x2b1448})[_0x9388('0x39')](function(_0x436581){if(_0x436581){return[_0x436581,![]];}_0x4f67c6['threadId']=_0x3b4079[_0x9388('0x65')][_0x9388('0x8f')];_0x4f67c6[_0x9388('0x91')]=_0x3b4079['body'][_0x9388('0x91')];return db[_0x9388('0x90')][_0x9388('0x60')](_0x4f67c6)[_0x9388('0x39')](function(_0x17bc8d){return[_0x17bc8d,!![]];});});}else{_0x2b1448[_0x9388('0x8f')]=null;}_0x2b1448[_0x9388('0x92')]=_0x28404c['id'];return db[_0x9388('0x90')][_0x9388('0x5f')]({'where':_0x2b1448})[_0x9388('0x39')](function(_0x22c4a9){if(_0x22c4a9){return[_0x22c4a9,![]];}return db[_0x9388('0x90')][_0x9388('0x60')](_0x4f67c6)[_0x9388('0x39')](function(_0x2a14ae){return[_0x2a14ae,!![]];});});}})[_0x9388('0x93')](function(_0x18aaeb,_0x4d4a50){if(_0x18aaeb){_0x4a6af7=_0x4d4a50;if(!_0x4d4a50){var _0x158bb9={'from':(_0x4c385b[_0x9388('0x8c')]['firstName']||'')+'\x20'+(_0x4c385b[_0x9388('0x8c')][_0x9388('0x8e')]||'')};if(_0x3b4079[_0x9388('0x65')][_0x9388('0x8f')]&&_0x3b4079[_0x9388('0x65')][_0x9388('0x94')]&&_0x3b4079[_0x9388('0x65')][_0x9388('0x8f')]!=_0x3b4079['body'][_0x9388('0x94')]){_0x158bb9[_0x9388('0x8f')]=_0x3b4079[_0x9388('0x65')][_0x9388('0x94')];}return _0x18aaeb[_0x9388('0x38')](_0x158bb9);}else{return _0x18aaeb;}}})[_0x9388('0x39')](function(_0xeabc39){_0x4c385b[_0x9388('0x95')]=_0xeabc39['get']({'plain':!![]});_0x4c385b[_0x9388('0x95')][_0x9388('0x96')]=_0x4a6af7;if(_0x4c385b['interaction'][_0x9388('0x96')]){if(_0x4c385b[_0x9388('0x88')]['autoclose']){_0x4c385b['applications'][_0x9388('0x97')]({'id':0x0,'priority':_0x4c385b[_0x9388('0x89')][_0x9388('0x4d')]+0x1,'app':_0x9388('0x98'),'appdata':_0x9388('0x99'),'interval':_0x9388('0x9a')});}}return db[_0x9388('0x9b')][_0x9388('0x60')]({'body':_0x3b4079[_0x9388('0x65')][_0x9388('0x65')],'OpenchannelAccountId':_0x3b4079[_0x9388('0x5b')]['id'],'OpenchannelInteractionId':_0xeabc39['id'],'direction':'in','ContactId':_0x4c385b[_0x9388('0x8c')]['id'],'AttachmentId':_0x3b4079['body'][_0x9388('0x9c')]});})[_0x9388('0x39')](function(_0x22bb30){_0x4c385b['message']=_0x22bb30;if(_0x4c385b['interaction'][_0x9388('0x9d')]){return db[_0x9388('0x9e')][_0x9388('0x5f')]({'attributes':['id','name'],'where':{'id':_0x4c385b[_0x9388('0x95')][_0x9388('0x9d')]}})[_0x9388('0x39')](function(_0x1f76e4){if(_0x1f76e4){_0x4c385b['applications'][_0x9388('0x9f')]({'id':0x0,'priority':0x0,'app':_0x9388('0xa0'),'appdata':_0x1f76e4[_0x9388('0x3f')]+','+(_0x4c385b[_0x9388('0x88')][_0x9388('0xa1')]||0xa),'interval':_0x9388('0x9a')});_0x4c385b[_0x9388('0xa2')]=![];}return respondWithRpcPromise(_0x9388('0xa3'),_0x9388('0xa4'),_0x4c385b);});}return respondWithRpcPromise(_0x9388('0xa3'),'startRouting',_0x4c385b);})[_0x9388('0x39')](function(_0x26a6d6){respondWithRpcPromise('EventManager','EventManager',{'event':'notify','message':_0x26a6d6},client9002);return _0x26a6d6;})['then'](respondWithResult(_0x30d422,null))['catch'](handleError(_0x30d422,null));};exports[_0x9388('0xa5')]=function(_0x3389f5,_0x5d99a1,_0xb17a7c){return db[_0x9388('0x45')][_0x9388('0x6a')]({'where':{'id':_0x3389f5[_0x9388('0x5b')]['id']}})[_0x9388('0x39')](handleEntityNotFound(_0x5d99a1,null))[_0x9388('0x39')](function(_0x131bc9){if(_0x131bc9){return db['sequelize'][_0x9388('0xa6')](function(_0x294673){return db['OpenchannelApplication']['destroy']({'where':{'OpenchannelAccountId':_0x3389f5['params']['id']},'transaction':_0x294673})[_0x9388('0x39')](function(_0x38e52c){var _0x720657=_[_0x9388('0x44')](_0x3389f5['body'],function(_0x2bc973){_0x2bc973[_0x9388('0x6b')]=_0x3389f5[_0x9388('0x5b')]['id'];return _0x2bc973;});return db[_0x9388('0x86')]['bulkCreate'](_0x720657,{'transaction':_0x294673});});})['then'](function(){return db[_0x9388('0x86')][_0x9388('0xa7')]({'where':{'OpenchannelAccountId':_0x3389f5[_0x9388('0x5b')]['id']},'order':'priority'});});}})['then'](respondWithResult(_0x5d99a1,null))[_0x9388('0x2b')](handleError(_0x5d99a1,null));};exports[_0x9388('0xa8')]=function(_0x40c69f,_0x3119e6,_0x3cc327){var _0x3b6ae1={};var _0x3bf5a2={};var _0x34cca0;var _0xa32bce;return db[_0x9388('0x45')][_0x9388('0x6a')]({'where':{'id':_0x40c69f['params']['id']}})['then'](handleEntityNotFound(_0x3119e6,null))[_0x9388('0x39')](function(_0xa6c22){if(_0xa6c22){_0x34cca0=_0xa6c22;_0x3bf5a2[_0x9388('0x48')]=_[_0x9388('0x5c')](db[_0x9388('0x86')][_0x9388('0x5d')]);_0x3bf5a2[_0x9388('0x49')]=_[_0x9388('0x5c')](_0x40c69f['query']);_0x3bf5a2[_0x9388('0x53')]=_['intersection'](_0x3bf5a2['model'],_0x3bf5a2[_0x9388('0x49')]);_0x3b6ae1['attributes']=_[_0x9388('0x4a')](_0x3bf5a2[_0x9388('0x48')],qs[_0x9388('0x4b')](_0x40c69f[_0x9388('0x49')][_0x9388('0x4b')]));_0x3b6ae1['attributes']=_0x3b6ae1[_0x9388('0x4c')]['length']?_0x3b6ae1[_0x9388('0x4c')]:_0x3bf5a2[_0x9388('0x48')];_0x3b6ae1[_0x9388('0x50')]=qs[_0x9388('0x51')](_0x40c69f[_0x9388('0x49')]['sort']);_0x3b6ae1[_0x9388('0x52')]=qs[_0x9388('0x53')](_[_0x9388('0x54')](_0x40c69f[_0x9388('0x49')],_0x3bf5a2[_0x9388('0x53')]));if(_0x40c69f[_0x9388('0x49')][_0x9388('0x55')]){_0x3b6ae1['where']=_[_0x9388('0x56')](_0x3b6ae1[_0x9388('0x52')],{'$or':_[_0x9388('0x44')](_0x3b6ae1[_0x9388('0x4c')],function(_0x120e5d){var _0x172fd4={};_0x172fd4[_0x120e5d]={'$like':'%'+_0x40c69f['query'][_0x9388('0x55')]+'%'};return _0x172fd4;})});}_0x3b6ae1=_['merge']({},_0x3b6ae1,_0x40c69f['options']);return _0x34cca0[_0x9388('0xa8')](_0x3b6ae1);}})[_0x9388('0x39')](function(_0x7bd2f){if(_0x7bd2f){_0xa32bce=_0x7bd2f[_0x9388('0x4d')];if(!_0x40c69f[_0x9388('0x49')][_0x9388('0x4e')](_0x9388('0x4f'))){_0x3b6ae1[_0x9388('0x31')]=qs[_0x9388('0x31')](_0x40c69f[_0x9388('0x49')][_0x9388('0x31')]);_0x3b6ae1['offset']=qs[_0x9388('0x30')](_0x40c69f['query'][_0x9388('0x30')]);}return _0x34cca0[_0x9388('0xa8')](_0x3b6ae1);}})['then'](function(_0x4f2801){if(_0x4f2801){return _0x4f2801?{'count':_0xa32bce,'rows':_0x4f2801}:null;}})[_0x9388('0x39')](respondWithResult(_0x3119e6,null))[_0x9388('0x2b')](handleError(_0x3119e6,null));};exports[_0x9388('0xa9')]=function(_0x115a4a,_0x5dd256,_0x231e2a){var _0x55b4b4={'raw':![],'where':{}};var _0x271363={};var _0x128d04={'count':0x0,'rows':[]};return db[_0x9388('0x45')][_0x9388('0x6a')]({'where':{'id':_0x115a4a[_0x9388('0x5b')]['id']}})['then'](handleEntityNotFound(_0x5dd256,null))[_0x9388('0x39')](function(_0x250d3e){if(_0x250d3e){_0x271363[_0x9388('0x48')]=_[_0x9388('0x5c')](db[_0x9388('0x90')]['rawAttributes']);_0x271363[_0x9388('0x49')]=_[_0x9388('0x5c')](_0x115a4a[_0x9388('0x49')]);_0x271363['filters']=_['intersection'](_0x271363[_0x9388('0x48')],_0x271363[_0x9388('0x49')]);_0x55b4b4[_0x9388('0x4c')]=_[_0x9388('0x4a')](_0x271363['model'],qs[_0x9388('0x4b')](_0x115a4a[_0x9388('0x49')]['fields']));_0x55b4b4[_0x9388('0x4c')]=_0x55b4b4[_0x9388('0x4c')][_0x9388('0x4d')]?_0x55b4b4[_0x9388('0x4c')]:_0x271363[_0x9388('0x48')];if(!_0x115a4a['query'][_0x9388('0x4e')](_0x9388('0x4f'))){_0x55b4b4['limit']=qs[_0x9388('0x31')](_0x115a4a['query'][_0x9388('0x31')]);_0x55b4b4[_0x9388('0x30')]=qs['offset'](_0x115a4a['query']['offset']);}_0x55b4b4[_0x9388('0x50')]=qs['sort'](_0x115a4a[_0x9388('0x49')][_0x9388('0x51')]);_0x55b4b4[_0x9388('0x52')]=qs[_0x9388('0x53')](_[_0x9388('0x54')](_0x115a4a[_0x9388('0x49')],_0x271363[_0x9388('0x53')]));_0x55b4b4[_0x9388('0x52')]['OpenchannelAccountId']=_0x250d3e['id'];if(_0x115a4a[_0x9388('0x49')][_0x9388('0x55')]){_0x55b4b4[_0x9388('0x52')]=_['merge'](_0x55b4b4[_0x9388('0x52')],{'$or':_[_0x9388('0x44')](_0x55b4b4['attributes'],function(_0x5a14ed){var _0x2c33fa={};_0x2c33fa[_0x5a14ed]={'$like':'%'+_0x115a4a[_0x9388('0x49')][_0x9388('0x55')]+'%'};return _0x2c33fa;})});}_0x55b4b4=_[_0x9388('0x56')]({},_0x55b4b4,_0x115a4a[_0x9388('0x58')]);return db[_0x9388('0x90')][_0x9388('0x2f')]({'where':_0x55b4b4[_0x9388('0x52')]})[_0x9388('0x39')](function(_0x1afa44){_0x128d04[_0x9388('0x2f')]=_0x1afa44;if(_0x115a4a[_0x9388('0x49')][_0x9388('0x5e')]){_0x55b4b4[_0x9388('0x59')]=[{'model':db[_0x9388('0x83')],'as':_0x9388('0xaa'),'required':![]},{'model':db['User'],'as':_0x9388('0xab'),'attributes':[_0x9388('0x3f'),_0x9388('0xac'),_0x9388('0xad')],'required':![]},{'model':db['Tag'],'as':_0x9388('0xae'),'attributes':['id',_0x9388('0x3f'),'color'],'where':_0x115a4a[_0x9388('0x49')][_0x9388('0xaf')]?{'id':_0x115a4a[_0x9388('0x49')][_0x9388('0xaf')]}:undefined,'required':_0x115a4a[_0x9388('0x49')][_0x9388('0xaf')]?!![]:![]}];}return db[_0x9388('0x90')][_0x9388('0x6c')](_0x55b4b4);})['then'](function(_0x116536){_0x128d04['rows']=_0x116536;return _0x128d04;});}})[_0x9388('0x39')](respondWithFilteredResult(_0x5dd256,_0x55b4b4))[_0x9388('0x2b')](handleError(_0x5dd256,null));};exports['addAgents']=function(_0x5a460a,_0x55bc6b,_0x51e6e6){return db[_0x9388('0x45')]['find']({'where':{'id':_0x5a460a['params']['id']}})[_0x9388('0x39')](handleEntityNotFound(_0x55bc6b,null))['then'](function(_0x2d2d0d){if(_0x2d2d0d){return _0x2d2d0d[_0x9388('0xb0')](_0x5a460a['body'][_0x9388('0x6e')],_[_0x9388('0xb1')](_0x5a460a[_0x9388('0x65')],[_0x9388('0x6e'),'id'])||{})['spread'](function(_0x2dc909){for(var _0xc9043b=0x0;_0xc9043b<_0x5a460a[_0x9388('0x65')][_0x9388('0x6e')][_0x9388('0x4d')];_0xc9043b+=0x1){socket[_0x9388('0xb2')](_0x9388('0xb3'),{'UserId':_0x5a460a['body'][_0x9388('0x6e')][_0xc9043b],'OpenchannelAccountId':_0x5a460a[_0x9388('0x5b')]['id']});}return _0x2dc909;});}})[_0x9388('0x39')](respondWithResult(_0x55bc6b,null))['catch'](handleError(_0x55bc6b,null));};exports[_0x9388('0xb4')]=function(_0x339514,_0xc4476f,_0x5af4cf){return db[_0x9388('0x45')][_0x9388('0x5f')]({'where':{'id':_0x339514[_0x9388('0x5b')]['id']}})['then'](handleEntityNotFound(_0xc4476f,null))['then'](function(_0x33bbfd){if(_0x33bbfd){return _0x33bbfd[_0x9388('0xb4')](_0x339514[_0x9388('0x49')][_0x9388('0x6e')])['then'](function(){if(_[_0x9388('0xb5')](_0x339514['query']['ids'])){for(var _0x3b2a6f=0x0;_0x3b2a6f<_0x339514[_0x9388('0x49')]['ids'][_0x9388('0x4d')];_0x3b2a6f+=0x1){socket['emit'](_0x9388('0xb6'),{'UserId':Number(_0x339514[_0x9388('0x49')]['ids'][_0x3b2a6f]),'OpenchannelAccountId':Number(_0x339514['params']['id'])});}}else{socket[_0x9388('0xb2')](_0x9388('0xb6'),{'UserId':Number(_0x339514[_0x9388('0x49')][_0x9388('0x6e')]),'OpenchannelAccountId':Number(_0x339514['params']['id'])});}});}})[_0x9388('0x39')](respondWithStatusCode(_0xc4476f,null))['catch'](handleError(_0xc4476f,null));};exports['getAgents']=function(_0x2e1160,_0x2e077a,_0xf986ce){var _0x343c94={};var _0x4f0cbc={};var _0x556985;var _0x81eada;return db[_0x9388('0x45')][_0x9388('0x6a')]({'where':{'id':_0x2e1160[_0x9388('0x5b')]['id']}})[_0x9388('0x39')](handleEntityNotFound(_0x2e077a,null))[_0x9388('0x39')](function(_0x4615ed){if(_0x4615ed){_0x556985=_0x4615ed;_0x4f0cbc[_0x9388('0x48')]=_[_0x9388('0x5c')](db['User'][_0x9388('0x5d')]);_0x4f0cbc[_0x9388('0x49')]=_['keys'](_0x2e1160['query']);_0x4f0cbc[_0x9388('0x53')]=_[_0x9388('0x4a')](_0x4f0cbc[_0x9388('0x48')],_0x4f0cbc[_0x9388('0x49')]);_0x343c94['attributes']=_[_0x9388('0x4a')](_0x4f0cbc['model'],qs['fields'](_0x2e1160[_0x9388('0x49')][_0x9388('0x4b')]));_0x343c94['attributes']=_0x343c94[_0x9388('0x4c')]['length']?_0x343c94[_0x9388('0x4c')]:_0x4f0cbc['model'];_0x343c94[_0x9388('0x50')]=qs[_0x9388('0x51')](_0x2e1160['query'][_0x9388('0x51')]);_0x343c94[_0x9388('0x52')]=qs[_0x9388('0x53')](_['pick'](_0x2e1160[_0x9388('0x49')],_0x4f0cbc['filters']));if(_0x2e1160[_0x9388('0x49')][_0x9388('0x55')]){_0x343c94[_0x9388('0x52')]=_['merge'](_0x343c94[_0x9388('0x52')],{'$or':_[_0x9388('0x44')](_0x343c94[_0x9388('0x4c')],function(_0x587a4c){var _0x572815={};_0x572815[_0x587a4c]={'$like':'%'+_0x2e1160[_0x9388('0x49')][_0x9388('0x55')]+'%'};return _0x572815;})});}_0x343c94=_[_0x9388('0x56')]({},_0x343c94,_0x2e1160[_0x9388('0x58')]);return _0x556985[_0x9388('0xb7')](_0x343c94);}})[_0x9388('0x39')](function(_0x27e113){if(_0x27e113){_0x81eada=_0x27e113[_0x9388('0x4d')];if(!_0x2e1160[_0x9388('0x49')][_0x9388('0x4e')](_0x9388('0x4f'))){_0x343c94[_0x9388('0x31')]=qs[_0x9388('0x31')](_0x2e1160[_0x9388('0x49')][_0x9388('0x31')]);_0x343c94['offset']=qs[_0x9388('0x30')](_0x2e1160[_0x9388('0x49')][_0x9388('0x30')]);}return _0x556985['getAgents'](_0x343c94);}})['then'](function(_0x5c1788){if(_0x5c1788){return _0x5c1788?{'count':_0x81eada,'rows':_0x5c1788}:null;}})[_0x9388('0x39')](respondWithResult(_0x2e077a,null))[_0x9388('0x2b')](handleError(_0x2e077a,null));};exports[_0x9388('0x40')]=function(_0x169ccb,_0x13dc8c,_0x4a42b5){var _0x2172b2,_0x436f4f,_0xe0bc6d;if(_['isNil'](_0x169ccb['body'][_0x9388('0x65')])||_0x169ccb[_0x9388('0x65')][_0x9388('0x65')]===''){throw new db['Sequelize']['ValidationError'](_0x9388('0x7c'));}if(_[_0x9388('0x79')](_0x169ccb['body']['to'])){}_0x2172b2=_0x169ccb['body']['to'];return db[_0x9388('0x45')]['findOne']({'where':{'id':_0x169ccb[_0x9388('0x5b')]['id']}})[_0x9388('0x39')](handleEntityNotFound(_0x13dc8c,null))[_0x9388('0x39')](function(_0x564794){if(_0x564794){return db[_0x9388('0x45')][_0x9388('0x5f')]({'where':{'id':_0x564794['id']},'include':[{'model':db[_0x9388('0x81')],'as':_0x9388('0x82'),'include':[{'model':db[_0x9388('0x83')],'as':'Contacts','where':{[_0x564794[_0x9388('0x7d')]]:_0x2172b2},'limit':0x1,'order':[[_0x9388('0x77'),_0x9388('0x85')]]}]}]})[_0x9388('0x39')](handleEntityNotFound(_0x13dc8c,null))[_0x9388('0x39')](function(_0x5310f8){if(_0x5310f8&&_0x5310f8[_0x9388('0x82')]){_0x436f4f=_0x5310f8[_0x9388('0x3b')]({'plain':!![]});if(_0x436f4f[_0x9388('0x82')]&&_0x436f4f[_0x9388('0x82')][_0x9388('0x84')]['length']){return _0x436f4f[_0x9388('0x82')][_0x9388('0x84')][0x0];}return db[_0x9388('0x83')][_0x9388('0x60')](_[_0x9388('0x18')](_0x169ccb['body'],{'firstName':_0x2172b2,[_0x5310f8[_0x9388('0x7d')]]:_0x2172b2,'phone':_0x2172b2,'ListId':_0x436f4f[_0x9388('0x78')]}));}})[_0x9388('0x39')](handleEntityNotFound(_0x13dc8c,null))[_0x9388('0x39')](function(_0x58bb71){if(_0x58bb71){_0xe0bc6d=_0x58bb71;return db[_0x9388('0x90')]['find']({'where':{'ContactId':_0xe0bc6d['id'],'closed':![],'OpenchannelAccountId':_0x436f4f['id']}})[_0x9388('0x39')](function(_0x55e1e0){if(_0x55e1e0){return[_0x55e1e0,![]];}return db['OpenchannelInteraction'][_0x9388('0x60')]({'UserId':_0x169ccb[_0x9388('0x61')]['id'],'ContactId':_0xe0bc6d['id'],'OpenchannelAccountId':_0x436f4f['id'],'lastMsgDirection':'out','Messages':[_[_0x9388('0x56')](_0x169ccb[_0x9388('0x65')],{'read':![],'body':_0x169ccb[_0x9388('0x65')][_0x9388('0x65')],'OpenchannelAccountId':_0x436f4f['id'],'UserId':_0x169ccb['user']['id'],'ContactId':_0xe0bc6d['id']})]},{'include':[{'model':db[_0x9388('0x9b')],'as':_0x9388('0xb8')}]})[_0x9388('0x39')](function(_0x2a15e2){return[_0x2a15e2,!![]];});});}})[_0x9388('0x93')](function(_0x49bfb4,_0x4fa0c4){if(_0x4fa0c4){return _0x49bfb4;}return db[_0x9388('0x9b')][_0x9388('0x60')](_[_0x9388('0x56')](_0x169ccb[_0x9388('0x65')],{'read':![],'body':_0x169ccb[_0x9388('0x65')]['body'],'OpenchannelAccountId':_0x436f4f['id'],'OpenchannelInteractionId':_0x49bfb4['id'],'UserId':_0x169ccb['user']['id'],'ContactId':_0xe0bc6d['id']}))['then'](function(_0x25cccc){_0x49bfb4[_0x9388('0xb9')][_0x9388('0xb8')]=[];_0x49bfb4[_0x9388('0xb9')][_0x9388('0xb8')][_0x9388('0x97')](_0x25cccc[_0x9388('0xb9')]);return _0x49bfb4;});});}})[_0x9388('0x39')](respondWithResult(_0x13dc8c,null))[_0x9388('0x2b')](handleError(_0x13dc8c,null));};