e6b7b054724ae3f580c19b583c967d79357ae1a7
[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 _0x5065=['externalUrl','spread','messageId','interaction','created','autoclose','push','close','unmanaged','*,*,*,*','OpenchannelMessage','AttachmentId','UserId','User','unshift','agent','waitForTheAssignedAgent','forcedOwnership','startRouting','EventManager','addApplications','transaction','bulkCreate','findAndCountAll','getApplications','getInteractions','Contact','Owner','fullname','Tag','Tags','tag','addAgents','omit','emit','removeAgents','isArray','userOpenchannelAccount:remove','getAgents','out','Messages','dataValues','html-pdf','eml-format','rimraf','fast-json-patch','request-promise','moment','mustache','sox','to-csv','lodash','squel','crypto','jsforce','querystring','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','redis','defaults','localhost','socket.io-emitter','./openchannelAccount.socket','jayson/promise','client','http','request','then','OpenchannelAccount,\x20%s,\x20%s','OpenchannelAccount,\x20%s,\x20%s,\x20%s','request\x20sent','stringify','error','message','info','result','catch','sendStatus','status','end','json','count','offset','limit','set','Content-Range','apply','reject','save','update','destroy','get','OpenchannelAccounts','stack','name','send','index','Pause','mandatoryDispositionPause','map','rawAttributes','fieldName','type','model','keys','query','filters','intersection','attributes','fields','length','hasOwnProperty','order','sort','where','filter','VIRTUAL','include','OpenchannelAccount','show','params','merge','options','find','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','autoAssociation','UserProfileResource','create','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','body','describe','OpenchannelAccountId','getDispositions','findOne','Disposition','nolimit','pick','includeAll','findAll','rows','removeDispositions','ids','addAnswer','CannedAnswer','getAnswers','removeAnswers','notify','openchannel','Sequelize','difference','createdAt','updatedAt','CompanyId','isNil','ValidationError','from\x20is\x20mandatory','body\x20is\x20mandatory\x20and\x20not\x20empty','mapKey','mapKey\x20is\x20mandatory,\x20please\x20use\x20one\x20of\x20these:\x20','includes','from','List','CmContact','DESC','OpenchannelApplication','Applications','account','list','applications','priority','asc','Contacts','ListId','contact','firstName','lastName','threadId','OpenchannelInteraction'];(function(_0xd948e7,_0x2f9dd1){var _0x323d00=function(_0x4a3b72){while(--_0x4a3b72){_0xd948e7['push'](_0xd948e7['shift']());}};_0x323d00(++_0x2f9dd1);}(_0x5065,0x19e));var _0x5506=function(_0xe3d617,_0x1c6305){_0xe3d617=_0xe3d617-0x0;var _0x51955a=_0x5065[_0xe3d617];return _0x51955a;};'use strict';var pdf=require(_0x5506('0x0'));var emlformat=require(_0x5506('0x1'));var rimraf=require(_0x5506('0x2'));var zipdir=require('zip-dir');var jsonpatch=require(_0x5506('0x3'));var rp=require(_0x5506('0x4'));var moment=require(_0x5506('0x5'));var BPromise=require('bluebird');var Mustache=require(_0x5506('0x6'));var util=require('util');var path=require('path');var sox=require(_0x5506('0x7'));var csv=require(_0x5506('0x8'));var ejs=require('ejs');var fs=require('fs');var _=require(_0x5506('0x9'));var squel=require(_0x5506('0xa'));var crypto=require(_0x5506('0xb'));var jsforce=require(_0x5506('0xc'));var deskjs=require('desk.js');var toCsv=require(_0x5506('0x8'));var querystring=require(_0x5506('0xd'));var Papa=require('papaparse');var Redis=require('ioredis');var authService=require('../../components/auth/service');var qs=require(_0x5506('0xe'));var as=require(_0x5506('0xf'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x5506('0x10'))('api');var utils=require(_0x5506('0x11'));var config=require(_0x5506('0x12'));var licenseUtil=require(_0x5506('0x13'));var db=require(_0x5506('0x14'))['db'];config[_0x5506('0x15')]=_[_0x5506('0x16')](config['redis'],{'host':_0x5506('0x17'),'port':0x18eb});var socket=require(_0x5506('0x18'))(new Redis(config[_0x5506('0x15')]));require(_0x5506('0x19'))['register'](socket);var jayson=require(_0x5506('0x1a'));var client=jayson[_0x5506('0x1b')][_0x5506('0x1c')]({'port':0x232c});var client9002=jayson['client']['http']({'port':0x232a});function respondWithRpcPromise(_0x9477c1,_0x36168a,_0x27b692,_0x8d60c6){return new BPromise(function(_0x41a068,_0x47922a){var _0x19db25=_0x8d60c6||client;return _0x19db25[_0x5506('0x1d')](_0x9477c1,_0x27b692)[_0x5506('0x1e')](function(_0x24d02a){logger['info'](_0x5506('0x1f'),_0x36168a,'request\x20sent');logger['debug'](_0x5506('0x20'),_0x36168a,_0x5506('0x21'),JSON[_0x5506('0x22')](_0x24d02a));if(_0x24d02a[_0x5506('0x23')]){if(_0x24d02a['error']['code']===0x1f4){logger[_0x5506('0x23')](_0x5506('0x1f'),_0x36168a,_0x24d02a['error'][_0x5506('0x24')]);return _0x47922a(_0x24d02a[_0x5506('0x23')][_0x5506('0x24')]);}logger[_0x5506('0x23')](_0x5506('0x1f'),_0x36168a,_0x24d02a[_0x5506('0x23')][_0x5506('0x24')]);return _0x41a068(_0x24d02a[_0x5506('0x23')][_0x5506('0x24')]);}else{logger[_0x5506('0x25')]('OpenchannelAccount,\x20%s,\x20%s',_0x36168a,_0x5506('0x21'));_0x41a068(_0x24d02a[_0x5506('0x26')]['message']);}})[_0x5506('0x27')](function(_0x5c0258){logger[_0x5506('0x23')](_0x5506('0x1f'),_0x36168a,_0x5c0258);_0x47922a(_0x5c0258);});});}function respondWithStatusCode(_0x34f6d9,_0x4bf13e){_0x4bf13e=_0x4bf13e||0xcc;return function(_0x5d9e13){if(_0x5d9e13){return _0x34f6d9[_0x5506('0x28')](_0x4bf13e);}return _0x34f6d9[_0x5506('0x29')](_0x4bf13e)[_0x5506('0x2a')]();};}function respondWithResult(_0x400dd6,_0xc8267c){_0xc8267c=_0xc8267c||0xc8;return function(_0x4cb3c3){if(_0x4cb3c3){return _0x400dd6[_0x5506('0x29')](_0xc8267c)[_0x5506('0x2b')](_0x4cb3c3);}};}function respondWithFilteredResult(_0x4a2abe,_0x14283b){return function(_0x83f26d){if(_0x83f26d){var _0x281a57=_0x83f26d[_0x5506('0x2c')],_0x54c131=_0x14283b['offset'],_0x62b215=_0x14283b[_0x5506('0x2d')]+_0x14283b[_0x5506('0x2e')],_0x90fd6;if(_0x62b215>=_0x281a57){_0x62b215=_0x281a57;_0x90fd6=0xc8;}else{_0x90fd6=0xce;}_0x4a2abe[_0x5506('0x29')](_0x90fd6);return _0x4a2abe[_0x5506('0x2f')](_0x5506('0x30'),_0x54c131+'-'+_0x62b215+'/'+_0x281a57)['json'](_0x83f26d);}return null;};}function patchUpdates(_0x25146d){return function(_0x468c71){try{jsonpatch[_0x5506('0x31')](_0x468c71,_0x25146d,!![]);}catch(_0x195aea){return BPromise[_0x5506('0x32')](_0x195aea);}return _0x468c71[_0x5506('0x33')]();};}function saveUpdates(_0x2711e4,_0x57e91e){return function(_0x207746){if(_0x207746){return _0x207746[_0x5506('0x34')](_0x2711e4)[_0x5506('0x1e')](function(_0x16ecd9){return _0x16ecd9;});}return null;};}function removeEntity(_0x4ebdca,_0x1cdaed){return function(_0x1456fd){if(_0x1456fd){return _0x1456fd[_0x5506('0x35')]()[_0x5506('0x1e')](function(){var _0x3eaede=_0x1456fd[_0x5506('0x36')]({'plain':!![]});var _0x5e41c1=_0x5506('0x37');return db['UserProfileResource'][_0x5506('0x35')]({'where':{'type':_0x5e41c1,'resourceId':_0x3eaede['id']}})[_0x5506('0x1e')](function(){return _0x1456fd;});})[_0x5506('0x1e')](function(){_0x4ebdca[_0x5506('0x29')](0xcc)[_0x5506('0x2a')]();});}};}function handleEntityNotFound(_0x2b5596,_0x19c071){return function(_0x5ca8b9){if(!_0x5ca8b9){_0x2b5596['sendStatus'](0x194);}return _0x5ca8b9;};}function handleError(_0x1a39ba,_0x15158a){_0x15158a=_0x15158a||0x1f4;return function(_0x3b3ca0){logger[_0x5506('0x23')](_0x3b3ca0[_0x5506('0x38')]);if(_0x3b3ca0[_0x5506('0x39')]){delete _0x3b3ca0[_0x5506('0x39')];}_0x1a39ba[_0x5506('0x29')](_0x15158a)[_0x5506('0x3a')](_0x3b3ca0);};}exports[_0x5506('0x3b')]=function(_0x239443,_0x496a44){var _0x18ea4a={'include':[{'model':db[_0x5506('0x3c')],'as':_0x5506('0x3d')}]},_0x4aa461={},_0x5617bd={'count':0x0,'rows':[]};var _0xcc061e=_[_0x5506('0x3e')](db['OpenchannelAccount'][_0x5506('0x3f')],function(_0x4cc2bb){return{'name':_0x4cc2bb[_0x5506('0x40')],'type':_0x4cc2bb[_0x5506('0x41')]['key']};});_0x4aa461[_0x5506('0x42')]=_[_0x5506('0x3e')](_0xcc061e,_0x5506('0x39'));_0x4aa461['query']=_[_0x5506('0x43')](_0x239443[_0x5506('0x44')]);_0x4aa461[_0x5506('0x45')]=_[_0x5506('0x46')](_0x4aa461[_0x5506('0x42')],_0x4aa461['query']);_0x18ea4a[_0x5506('0x47')]=_[_0x5506('0x46')](_0x4aa461[_0x5506('0x42')],qs['fields'](_0x239443['query'][_0x5506('0x48')]));_0x18ea4a[_0x5506('0x47')]=_0x18ea4a['attributes'][_0x5506('0x49')]?_0x18ea4a[_0x5506('0x47')]:_0x4aa461['model'];if(!_0x239443[_0x5506('0x44')][_0x5506('0x4a')]('nolimit')){_0x18ea4a[_0x5506('0x2e')]=qs['limit'](_0x239443[_0x5506('0x44')][_0x5506('0x2e')]);_0x18ea4a['offset']=qs[_0x5506('0x2d')](_0x239443[_0x5506('0x44')][_0x5506('0x2d')]);}_0x18ea4a[_0x5506('0x4b')]=qs[_0x5506('0x4c')](_0x239443[_0x5506('0x44')][_0x5506('0x4c')]);_0x18ea4a[_0x5506('0x4d')]=qs['filters'](_['pick'](_0x239443[_0x5506('0x44')],_0x4aa461[_0x5506('0x45')]),_0xcc061e);if(_0x239443[_0x5506('0x44')][_0x5506('0x4e')]){_0x18ea4a['where']=_['merge'](_0x18ea4a[_0x5506('0x4d')],{'$or':_[_0x5506('0x3e')](_0xcc061e,function(_0x834e83){if(_0x834e83[_0x5506('0x41')]!==_0x5506('0x4f')){var _0x290727={};_0x290727[_0x834e83[_0x5506('0x39')]]={'$like':'%'+_0x239443[_0x5506('0x44')][_0x5506('0x4e')]+'%'};return _0x290727;}})});}_0x18ea4a=_['merge']({},_0x18ea4a,_0x239443['options']);var _0x4fdc3c={'where':_0x18ea4a['where']};return db['OpenchannelAccount'][_0x5506('0x2c')](_0x4fdc3c)[_0x5506('0x1e')](function(_0x810e8e){_0x5617bd[_0x5506('0x2c')]=_0x810e8e;if(_0x239443[_0x5506('0x44')]['includeAll']){_0x18ea4a[_0x5506('0x50')]=[{'all':!![]}];}return db[_0x5506('0x51')]['findAll'](_0x18ea4a);})[_0x5506('0x1e')](function(_0x2300a2){_0x5617bd['rows']=_0x2300a2;return _0x5617bd;})[_0x5506('0x1e')](respondWithFilteredResult(_0x496a44,_0x18ea4a))[_0x5506('0x27')](handleError(_0x496a44,null));};exports[_0x5506('0x52')]=function(_0x392829,_0x487a89){var _0xe192b2={'raw':![],'where':{'id':_0x392829[_0x5506('0x53')]['id']},'include':[{'model':db[_0x5506('0x3c')],'as':_0x5506('0x3d')}]},_0x46feda={};_0x46feda['model']=_['keys'](db[_0x5506('0x51')][_0x5506('0x3f')]);_0x46feda['query']=_[_0x5506('0x43')](_0x392829[_0x5506('0x44')]);_0x46feda[_0x5506('0x45')]=_['intersection'](_0x46feda['model'],_0x46feda[_0x5506('0x44')]);_0xe192b2[_0x5506('0x47')]=_[_0x5506('0x46')](_0x46feda[_0x5506('0x42')],qs[_0x5506('0x48')](_0x392829[_0x5506('0x44')]['fields']));_0xe192b2['attributes']=_0xe192b2['attributes'][_0x5506('0x49')]?_0xe192b2[_0x5506('0x47')]:_0x46feda[_0x5506('0x42')];if(_0x392829[_0x5506('0x44')]['includeAll']){_0xe192b2['include']=[{'all':!![]}];}_0xe192b2=_[_0x5506('0x54')]({},_0xe192b2,_0x392829[_0x5506('0x55')]);return db[_0x5506('0x51')][_0x5506('0x56')](_0xe192b2)['then'](handleEntityNotFound(_0x487a89,null))['then'](respondWithResult(_0x487a89,null))[_0x5506('0x27')](handleError(_0x487a89,null));};exports['create']=function(_0x6d25d1,_0x555bad){return db['OpenchannelAccount']['create'](_0x6d25d1['body'],{})['then'](function(_0x2be9c6){var _0x59b1c7=_0x6d25d1[_0x5506('0x57')][_0x5506('0x36')]({'plain':!![]});if(!_0x59b1c7)throw new Error(_0x5506('0x58'));if(_0x59b1c7[_0x5506('0x59')]==='user'){var _0x26acd9=_0x2be9c6[_0x5506('0x36')]({'plain':!![]});var _0x103f9d=_0x5506('0x37');return db[_0x5506('0x5a')]['find']({'where':{'name':_0x103f9d,'userProfileId':_0x59b1c7['userProfileId']},'raw':!![]})[_0x5506('0x1e')](function(_0x193521){if(_0x193521&&_0x193521[_0x5506('0x5b')]===0x0){return db[_0x5506('0x5c')][_0x5506('0x5d')]({'name':_0x26acd9[_0x5506('0x39')],'resourceId':_0x26acd9['id'],'type':_0x193521[_0x5506('0x39')],'sectionId':_0x193521['id']},{})[_0x5506('0x1e')](function(){return _0x2be9c6;});}else{return _0x2be9c6;}})[_0x5506('0x27')](function(_0x554507){logger['error'](_0x5506('0x5e'),_0x554507);throw _0x554507;});}return _0x2be9c6;})['then'](respondWithResult(_0x555bad,0xc9))[_0x5506('0x27')](handleError(_0x555bad,null));};exports[_0x5506('0x34')]=function(_0xbcf994,_0x128b90){if(_0xbcf994['body']['id']){delete _0xbcf994[_0x5506('0x5f')]['id'];}return db[_0x5506('0x51')]['find']({'where':{'id':_0xbcf994['params']['id']},'include':[{'model':db[_0x5506('0x3c')],'as':_0x5506('0x3d')}]})[_0x5506('0x1e')](handleEntityNotFound(_0x128b90,null))['then'](saveUpdates(_0xbcf994['body'],null))['then'](respondWithResult(_0x128b90,null))[_0x5506('0x27')](handleError(_0x128b90,null));};exports[_0x5506('0x35')]=function(_0x503a38,_0x2d953c){return db[_0x5506('0x51')]['find']({'where':{'id':_0x503a38['params']['id']}})[_0x5506('0x1e')](handleEntityNotFound(_0x2d953c,null))['then'](removeEntity(_0x2d953c,null))[_0x5506('0x27')](handleError(_0x2d953c,null));};exports[_0x5506('0x60')]=function(_0x12d516,_0x21b1a6){return db[_0x5506('0x51')][_0x5506('0x60')]()[_0x5506('0x1e')](respondWithResult(_0x21b1a6,null))['catch'](handleError(_0x21b1a6,null));};exports['addDisposition']=function(_0x567d8e,_0x2493b8,_0x5c3e30){if(_0x567d8e[_0x5506('0x5f')]['id']){delete _0x567d8e[_0x5506('0x5f')]['id'];}return db['OpenchannelAccount'][_0x5506('0x56')]({'where':{'id':_0x567d8e[_0x5506('0x53')]['id']}})[_0x5506('0x1e')](handleEntityNotFound(_0x2493b8,null))[_0x5506('0x1e')](function(_0x4c46b2){if(_0x4c46b2){_0x567d8e[_0x5506('0x5f')][_0x5506('0x61')]=_0x4c46b2['id'];return db['Disposition'][_0x5506('0x5d')](_0x567d8e[_0x5506('0x5f')]);}})[_0x5506('0x1e')](respondWithResult(_0x2493b8,null))[_0x5506('0x27')](handleError(_0x2493b8,null));};exports[_0x5506('0x62')]=function(_0x1c782e,_0x3cb41d,_0x356cac){var _0x1fa6b7={'raw':![],'where':{}};var _0x1d2f3e={};var _0x1d81de={'count':0x0,'rows':[]};return db[_0x5506('0x51')][_0x5506('0x63')]({'where':{'id':_0x1c782e['params']['id']}})[_0x5506('0x1e')](handleEntityNotFound(_0x3cb41d,null))['then'](function(_0x4094a9){if(_0x4094a9){_0x1d2f3e[_0x5506('0x42')]=_[_0x5506('0x43')](db[_0x5506('0x64')]['rawAttributes']);_0x1d2f3e['query']=_['keys'](_0x1c782e[_0x5506('0x44')]);_0x1d2f3e[_0x5506('0x45')]=_['intersection'](_0x1d2f3e[_0x5506('0x42')],_0x1d2f3e[_0x5506('0x44')]);_0x1fa6b7[_0x5506('0x47')]=_[_0x5506('0x46')](_0x1d2f3e['model'],qs['fields'](_0x1c782e[_0x5506('0x44')][_0x5506('0x48')]));_0x1fa6b7[_0x5506('0x47')]=_0x1fa6b7['attributes'][_0x5506('0x49')]?_0x1fa6b7[_0x5506('0x47')]:_0x1d2f3e[_0x5506('0x42')];if(!_0x1c782e[_0x5506('0x44')][_0x5506('0x4a')](_0x5506('0x65'))){_0x1fa6b7['limit']=qs[_0x5506('0x2e')](_0x1c782e[_0x5506('0x44')]['limit']);_0x1fa6b7['offset']=qs[_0x5506('0x2d')](_0x1c782e[_0x5506('0x44')][_0x5506('0x2d')]);}_0x1fa6b7[_0x5506('0x4b')]=qs['sort'](_0x1c782e[_0x5506('0x44')][_0x5506('0x4c')]);_0x1fa6b7[_0x5506('0x4d')]=qs[_0x5506('0x45')](_[_0x5506('0x66')](_0x1c782e['query'],_0x1d2f3e[_0x5506('0x45')]));_0x1fa6b7[_0x5506('0x4d')][_0x5506('0x61')]=_0x4094a9['id'];if(_0x1c782e['query'][_0x5506('0x4e')]){_0x1fa6b7['where']=_['merge'](_0x1fa6b7[_0x5506('0x4d')],{'$or':_['map'](_0x1fa6b7[_0x5506('0x47')],function(_0x40da13){var _0x162288={};_0x162288[_0x40da13]={'$like':'%'+_0x1c782e[_0x5506('0x44')]['filter']+'%'};return _0x162288;})});}_0x1fa6b7=_[_0x5506('0x54')]({},_0x1fa6b7,_0x1c782e[_0x5506('0x55')]);return db[_0x5506('0x64')]['count']({'where':_0x1fa6b7['where']})['then'](function(_0x1e544d){_0x1d81de['count']=_0x1e544d;if(_0x1c782e[_0x5506('0x44')][_0x5506('0x67')]){_0x1fa6b7['include']=[{'all':!![]}];}return db['Disposition'][_0x5506('0x68')](_0x1fa6b7);})[_0x5506('0x1e')](function(_0x1fcace){_0x1d81de[_0x5506('0x69')]=_0x1fcace;return _0x1d81de;});}})[_0x5506('0x1e')](respondWithFilteredResult(_0x3cb41d,_0x1fa6b7))[_0x5506('0x27')](handleError(_0x3cb41d,null));};exports[_0x5506('0x6a')]=function(_0xc0e516,_0x23b2f4,_0xfff95){return db[_0x5506('0x51')][_0x5506('0x56')]({'where':{'id':_0xc0e516[_0x5506('0x53')]['id']}})['then'](handleEntityNotFound(_0x23b2f4,null))[_0x5506('0x1e')](function(_0x58b223){if(_0x58b223){return _0x58b223[_0x5506('0x6a')](_0xc0e516[_0x5506('0x44')][_0x5506('0x6b')]);}})[_0x5506('0x1e')](respondWithStatusCode(_0x23b2f4,null))[_0x5506('0x27')](handleError(_0x23b2f4,null));};exports[_0x5506('0x6c')]=function(_0x10cc02,_0x5b3a53,_0x37ab41){if(_0x10cc02['body']['id']){delete _0x10cc02['body']['id'];}return db[_0x5506('0x51')][_0x5506('0x56')]({'where':{'id':_0x10cc02[_0x5506('0x53')]['id']}})[_0x5506('0x1e')](handleEntityNotFound(_0x5b3a53,null))[_0x5506('0x1e')](function(_0x554ded){if(_0x554ded){_0x10cc02[_0x5506('0x5f')][_0x5506('0x61')]=_0x554ded['id'];return db[_0x5506('0x6d')][_0x5506('0x5d')](_0x10cc02[_0x5506('0x5f')]);}})[_0x5506('0x1e')](respondWithResult(_0x5b3a53,null))['catch'](handleError(_0x5b3a53,null));};exports[_0x5506('0x6e')]=function(_0x4b5ecc,_0x5a5c8c,_0x27bbbe){var _0x499d2c={'raw':![],'where':{}};var _0x4c13bc={};var _0x37965f={'count':0x0,'rows':[]};return db[_0x5506('0x51')][_0x5506('0x63')]({'where':{'id':_0x4b5ecc[_0x5506('0x53')]['id']}})[_0x5506('0x1e')](handleEntityNotFound(_0x5a5c8c,null))['then'](function(_0x472852){if(_0x472852){_0x4c13bc['model']=_[_0x5506('0x43')](db[_0x5506('0x6d')]['rawAttributes']);_0x4c13bc[_0x5506('0x44')]=_[_0x5506('0x43')](_0x4b5ecc[_0x5506('0x44')]);_0x4c13bc[_0x5506('0x45')]=_[_0x5506('0x46')](_0x4c13bc[_0x5506('0x42')],_0x4c13bc[_0x5506('0x44')]);_0x499d2c[_0x5506('0x47')]=_[_0x5506('0x46')](_0x4c13bc[_0x5506('0x42')],qs[_0x5506('0x48')](_0x4b5ecc[_0x5506('0x44')][_0x5506('0x48')]));_0x499d2c[_0x5506('0x47')]=_0x499d2c[_0x5506('0x47')]['length']?_0x499d2c[_0x5506('0x47')]:_0x4c13bc[_0x5506('0x42')];if(!_0x4b5ecc[_0x5506('0x44')][_0x5506('0x4a')](_0x5506('0x65'))){_0x499d2c[_0x5506('0x2e')]=qs[_0x5506('0x2e')](_0x4b5ecc[_0x5506('0x44')][_0x5506('0x2e')]);_0x499d2c[_0x5506('0x2d')]=qs[_0x5506('0x2d')](_0x4b5ecc[_0x5506('0x44')]['offset']);}_0x499d2c[_0x5506('0x4b')]=qs[_0x5506('0x4c')](_0x4b5ecc['query'][_0x5506('0x4c')]);_0x499d2c[_0x5506('0x4d')]=qs[_0x5506('0x45')](_[_0x5506('0x66')](_0x4b5ecc[_0x5506('0x44')],_0x4c13bc[_0x5506('0x45')]));_0x499d2c[_0x5506('0x4d')][_0x5506('0x61')]=_0x472852['id'];if(_0x4b5ecc[_0x5506('0x44')][_0x5506('0x4e')]){_0x499d2c[_0x5506('0x4d')]=_[_0x5506('0x54')](_0x499d2c[_0x5506('0x4d')],{'$or':_[_0x5506('0x3e')](_0x499d2c[_0x5506('0x47')],function(_0x176e7f){var _0xee2494={};_0xee2494[_0x176e7f]={'$like':'%'+_0x4b5ecc[_0x5506('0x44')][_0x5506('0x4e')]+'%'};return _0xee2494;})});}_0x499d2c=_[_0x5506('0x54')]({},_0x499d2c,_0x4b5ecc[_0x5506('0x55')]);return db['CannedAnswer'][_0x5506('0x2c')]({'where':_0x499d2c[_0x5506('0x4d')]})[_0x5506('0x1e')](function(_0x4a8bfd){_0x37965f[_0x5506('0x2c')]=_0x4a8bfd;if(_0x4b5ecc[_0x5506('0x44')][_0x5506('0x67')]){_0x499d2c[_0x5506('0x50')]=[{'all':!![]}];}return db['CannedAnswer'][_0x5506('0x68')](_0x499d2c);})[_0x5506('0x1e')](function(_0x18db22){_0x37965f[_0x5506('0x69')]=_0x18db22;return _0x37965f;});}})[_0x5506('0x1e')](respondWithFilteredResult(_0x5a5c8c,_0x499d2c))['catch'](handleError(_0x5a5c8c,null));};exports[_0x5506('0x6f')]=function(_0x108443,_0x45fa27,_0x6fd3a9){return db[_0x5506('0x51')][_0x5506('0x56')]({'where':{'id':_0x108443['params']['id']}})[_0x5506('0x1e')](handleEntityNotFound(_0x45fa27,null))[_0x5506('0x1e')](function(_0xf975b0){if(_0xf975b0){return _0xf975b0['removeAnswers'](_0x108443[_0x5506('0x44')][_0x5506('0x6b')]);}})[_0x5506('0x1e')](respondWithStatusCode(_0x45fa27,null))['catch'](handleError(_0x45fa27,null));};exports[_0x5506('0x70')]=function(_0x5f45fa,_0x2078d4,_0x5f1aae){var _0x395009={'body':_0x5f45fa[_0x5506('0x5f')],'channel':_0x5506('0x71')};var _0x2b39e9=[];var _0x2c2fd3=[];var _0x1a097a={};var _0x342736=![];return db['CmContact'][_0x5506('0x60')]()[_0x5506('0x1e')](function(_0x4cbbc5){if(!_0x4cbbc5){throw new db[(_0x5506('0x72'))]['ValidationError']('no\x20available\x20attributes');}_0x2b39e9=_[_0x5506('0x73')](_[_0x5506('0x43')](_0x4cbbc5),[_0x5506('0x74'),_0x5506('0x75')]);_0x2c2fd3=_['difference'](_[_0x5506('0x43')](_0x4cbbc5),[_0x5506('0x74'),_0x5506('0x75'),_0x5506('0x76'),'ListId']);if(_0x5f45fa[_0x5506('0x5f')]['id']){delete _0x5f45fa[_0x5506('0x5f')]['id'];}if(_[_0x5506('0x77')](_0x5f45fa['body']['from'])){throw new db[(_0x5506('0x72'))][(_0x5506('0x78'))](_0x5506('0x79'));}if(_[_0x5506('0x77')](_0x5f45fa[_0x5506('0x5f')][_0x5506('0x5f')])||_0x5f45fa[_0x5506('0x5f')][_0x5506('0x5f')]===''){throw new db['Sequelize']['ValidationError'](_0x5506('0x7a'));}if(_[_0x5506('0x77')](_0x5f45fa[_0x5506('0x5f')][_0x5506('0x7b')])){throw new db[(_0x5506('0x72'))][(_0x5506('0x78'))](_0x5506('0x7c')+_0x2c2fd3);}if(!_[_0x5506('0x7d')](_0x2c2fd3,_0x5f45fa['body']['mapKey'])){throw new db[(_0x5506('0x72'))]['ValidationError']('mapKey\x20invalid,\x20please\x20use\x20one\x20of\x20these:\x20'+_0x2c2fd3);}_0x1a097a[_0x5f45fa[_0x5506('0x5f')][_0x5506('0x7b')]]=_0x5f45fa[_0x5506('0x5f')][_0x5506('0x7e')];})[_0x5506('0x1e')](function(){return db[_0x5506('0x51')][_0x5506('0x56')]({'where':{'id':_0x5f45fa['params']['id']},'include':[{'model':db['CmList'],'as':_0x5506('0x7f'),'include':[{'model':db[_0x5506('0x80')],'as':'Contacts','where':_0x1a097a,'limit':0x1,'order':[[_0x5506('0x75'),_0x5506('0x81')]]}]},{'model':db[_0x5506('0x82')],'as':_0x5506('0x83')}]});})['then'](handleEntityNotFound(_0x2078d4,null))['then'](function(_0x1f7ef4){if(_0x1f7ef4&&_0x1f7ef4['List']){_0x395009[_0x5506('0x84')]=_0x1f7ef4;_0x395009['applications']=_0x1f7ef4['Applications'];_0x395009[_0x5506('0x85')]=_0x1f7ef4[_0x5506('0x7f')];_0x395009[_0x5506('0x86')]=_['orderBy'](_0x395009['applications'],[_0x5506('0x87')],[_0x5506('0x88')]);if(_0x395009[_0x5506('0x84')][_0x5506('0x83')]){delete _0x395009['account'][_0x5506('0x83')];}if(_0x395009[_0x5506('0x84')][_0x5506('0x7f')]&&_0x395009[_0x5506('0x84')][_0x5506('0x7f')][_0x5506('0x89')][_0x5506('0x49')]){return _0x395009[_0x5506('0x84')][_0x5506('0x7f')][_0x5506('0x89')][0x0];}var _0xeb3944=_[_0x5506('0x16')](_0x5f45fa[_0x5506('0x5f')],{'firstName':_0x5f45fa[_0x5506('0x5f')][_0x5506('0x7e')],'ListId':_0x1f7ef4[_0x5506('0x8a')]});_0xeb3944[_0x5f45fa[_0x5506('0x5f')][_0x5506('0x7b')]]=_0x5f45fa['body'][_0x5506('0x7e')];return db[_0x5506('0x80')]['create'](_0xeb3944,{'fields':_0x2b39e9,'raw':!![]});}})[_0x5506('0x1e')](handleEntityNotFound(_0x2078d4,null))[_0x5506('0x1e')](function(_0x451fbf){_0x395009[_0x5506('0x8b')]=_0x451fbf;if(_0x451fbf){var _0x17131b={'ContactId':_0x451fbf['id'],'OpenchannelAccountId':_0x5f45fa[_0x5506('0x53')]['id'],'from':(_0x451fbf[_0x5506('0x8c')]||'')+'\x20'+(_0x451fbf[_0x5506('0x8d')]||'')};var _0x57a996={'OpenchannelAccountId':_0x5f45fa[_0x5506('0x53')]['id'],'closed':![]};if(_0x5f45fa[_0x5506('0x5f')][_0x5506('0x8e')]){_0x57a996[_0x5506('0x8e')]=_0x5f45fa['body'][_0x5506('0x8e')];return db[_0x5506('0x8f')][_0x5506('0x56')]({'where':_0x57a996})[_0x5506('0x1e')](function(_0x5b7cf4){if(_0x5b7cf4){return[_0x5b7cf4,![]];}_0x17131b[_0x5506('0x8e')]=_0x5f45fa[_0x5506('0x5f')][_0x5506('0x8e')];_0x17131b[_0x5506('0x90')]=_0x5f45fa[_0x5506('0x5f')][_0x5506('0x90')];return db[_0x5506('0x8f')][_0x5506('0x5d')](_0x17131b)[_0x5506('0x1e')](function(_0x4537a1){return[_0x4537a1,!![]];});});}else{_0x57a996[_0x5506('0x8e')]=null;}_0x57a996['ContactId']=_0x451fbf['id'];return db[_0x5506('0x8f')]['find']({'where':_0x57a996})[_0x5506('0x1e')](function(_0x40d6d4){if(_0x40d6d4){return[_0x40d6d4,![]];}return db[_0x5506('0x8f')][_0x5506('0x5d')](_0x17131b)[_0x5506('0x1e')](function(_0x4c357c){return[_0x4c357c,!![]];});});}})[_0x5506('0x91')](function(_0x1d20d1,_0x39e89d){if(_0x1d20d1){_0x342736=_0x39e89d;if(!_0x39e89d){var _0x483481={'from':(_0x395009[_0x5506('0x8b')][_0x5506('0x8c')]||'')+'\x20'+(_0x395009[_0x5506('0x8b')][_0x5506('0x8d')]||'')};if(_0x5f45fa[_0x5506('0x5f')][_0x5506('0x8e')]&&_0x5f45fa['body'][_0x5506('0x92')]&&_0x5f45fa[_0x5506('0x5f')][_0x5506('0x8e')]!=_0x5f45fa[_0x5506('0x5f')][_0x5506('0x92')]){_0x483481[_0x5506('0x8e')]=_0x5f45fa[_0x5506('0x5f')][_0x5506('0x92')];}return _0x1d20d1[_0x5506('0x34')](_0x483481);}else{return _0x1d20d1;}}})[_0x5506('0x1e')](function(_0x39c4e8){_0x395009[_0x5506('0x93')]=_0x39c4e8[_0x5506('0x36')]({'plain':!![]});_0x395009[_0x5506('0x93')][_0x5506('0x94')]=_0x342736;if(_0x395009[_0x5506('0x93')][_0x5506('0x94')]){if(_0x395009[_0x5506('0x84')][_0x5506('0x95')]){_0x395009['applications'][_0x5506('0x96')]({'id':0x0,'priority':_0x395009[_0x5506('0x86')][_0x5506('0x49')]+0x1,'app':_0x5506('0x97'),'appdata':_0x5506('0x98'),'interval':_0x5506('0x99')});}}return db[_0x5506('0x9a')]['create']({'body':_0x5f45fa['body']['body'],'OpenchannelAccountId':_0x5f45fa[_0x5506('0x53')]['id'],'OpenchannelInteractionId':_0x39c4e8['id'],'direction':'in','ContactId':_0x395009[_0x5506('0x8b')]['id'],'AttachmentId':_0x5f45fa['body'][_0x5506('0x9b')]});})[_0x5506('0x1e')](function(_0x34e607){_0x395009[_0x5506('0x24')]=_0x34e607;if(_0x395009[_0x5506('0x93')][_0x5506('0x9c')]){return db[_0x5506('0x9d')][_0x5506('0x56')]({'attributes':['id',_0x5506('0x39')],'where':{'id':_0x395009['interaction'][_0x5506('0x9c')]}})[_0x5506('0x1e')](function(_0x43a523){if(_0x43a523){_0x395009[_0x5506('0x86')][_0x5506('0x9e')]({'id':0x0,'priority':0x0,'app':_0x5506('0x9f'),'appdata':_0x43a523[_0x5506('0x39')]+','+(_0x395009[_0x5506('0x84')][_0x5506('0xa0')]||0xa),'interval':_0x5506('0x99')});_0x395009[_0x5506('0xa1')]=![];}return respondWithRpcPromise('Start','startRouting',_0x395009);});}return respondWithRpcPromise('Start',_0x5506('0xa2'),_0x395009);})[_0x5506('0x1e')](function(_0x35988e){respondWithRpcPromise('EventManager',_0x5506('0xa3'),{'event':_0x5506('0x70'),'message':_0x35988e},client9002);return _0x35988e;})['then'](respondWithResult(_0x2078d4,null))[_0x5506('0x27')](handleError(_0x2078d4,null));};exports[_0x5506('0xa4')]=function(_0x4c19bc,_0x1531f8,_0x8caa37){return db[_0x5506('0x51')][_0x5506('0x63')]({'where':{'id':_0x4c19bc['params']['id']}})[_0x5506('0x1e')](handleEntityNotFound(_0x1531f8,null))['then'](function(_0x5363db){if(_0x5363db){return db['sequelize'][_0x5506('0xa5')](function(_0x485ae3){return db[_0x5506('0x82')][_0x5506('0x35')]({'where':{'OpenchannelAccountId':_0x4c19bc[_0x5506('0x53')]['id']},'transaction':_0x485ae3})[_0x5506('0x1e')](function(_0x22e154){var _0xdef75b=_[_0x5506('0x3e')](_0x4c19bc[_0x5506('0x5f')],function(_0x3fca10){_0x3fca10[_0x5506('0x61')]=_0x4c19bc[_0x5506('0x53')]['id'];return _0x3fca10;});return db[_0x5506('0x82')][_0x5506('0xa6')](_0xdef75b,{'transaction':_0x485ae3});});})['then'](function(){return db['OpenchannelApplication'][_0x5506('0xa7')]({'where':{'OpenchannelAccountId':_0x4c19bc[_0x5506('0x53')]['id']},'order':_0x5506('0x87')});});}})[_0x5506('0x1e')](respondWithResult(_0x1531f8,null))[_0x5506('0x27')](handleError(_0x1531f8,null));};exports['getApplications']=function(_0x580502,_0x34a6d7,_0xad9d1c){var _0x3e010c={};var _0x28bda9={};var _0x389429;var _0x5b25ad;return db[_0x5506('0x51')][_0x5506('0x63')]({'where':{'id':_0x580502['params']['id']}})['then'](handleEntityNotFound(_0x34a6d7,null))[_0x5506('0x1e')](function(_0x1a8964){if(_0x1a8964){_0x389429=_0x1a8964;_0x28bda9[_0x5506('0x42')]=_[_0x5506('0x43')](db['OpenchannelApplication'][_0x5506('0x3f')]);_0x28bda9[_0x5506('0x44')]=_[_0x5506('0x43')](_0x580502['query']);_0x28bda9['filters']=_[_0x5506('0x46')](_0x28bda9['model'],_0x28bda9[_0x5506('0x44')]);_0x3e010c[_0x5506('0x47')]=_['intersection'](_0x28bda9[_0x5506('0x42')],qs['fields'](_0x580502[_0x5506('0x44')]['fields']));_0x3e010c['attributes']=_0x3e010c[_0x5506('0x47')][_0x5506('0x49')]?_0x3e010c['attributes']:_0x28bda9['model'];_0x3e010c[_0x5506('0x4b')]=qs[_0x5506('0x4c')](_0x580502['query'][_0x5506('0x4c')]);_0x3e010c[_0x5506('0x4d')]=qs['filters'](_['pick'](_0x580502[_0x5506('0x44')],_0x28bda9[_0x5506('0x45')]));if(_0x580502[_0x5506('0x44')][_0x5506('0x4e')]){_0x3e010c[_0x5506('0x4d')]=_[_0x5506('0x54')](_0x3e010c[_0x5506('0x4d')],{'$or':_[_0x5506('0x3e')](_0x3e010c['attributes'],function(_0x395782){var _0xe52856={};_0xe52856[_0x395782]={'$like':'%'+_0x580502[_0x5506('0x44')]['filter']+'%'};return _0xe52856;})});}_0x3e010c=_[_0x5506('0x54')]({},_0x3e010c,_0x580502[_0x5506('0x55')]);return _0x389429[_0x5506('0xa8')](_0x3e010c);}})[_0x5506('0x1e')](function(_0x4e0284){if(_0x4e0284){_0x5b25ad=_0x4e0284[_0x5506('0x49')];if(!_0x580502[_0x5506('0x44')][_0x5506('0x4a')](_0x5506('0x65'))){_0x3e010c[_0x5506('0x2e')]=qs[_0x5506('0x2e')](_0x580502[_0x5506('0x44')]['limit']);_0x3e010c[_0x5506('0x2d')]=qs[_0x5506('0x2d')](_0x580502[_0x5506('0x44')][_0x5506('0x2d')]);}return _0x389429[_0x5506('0xa8')](_0x3e010c);}})[_0x5506('0x1e')](function(_0x1b0268){if(_0x1b0268){return _0x1b0268?{'count':_0x5b25ad,'rows':_0x1b0268}:null;}})[_0x5506('0x1e')](respondWithResult(_0x34a6d7,null))[_0x5506('0x27')](handleError(_0x34a6d7,null));};exports[_0x5506('0xa9')]=function(_0x597a0e,_0x13da08,_0x327aef){var _0x2d2aa6={'raw':![],'where':{}};var _0x169c73={};var _0x4b68e0={'count':0x0,'rows':[]};return db[_0x5506('0x51')][_0x5506('0x63')]({'where':{'id':_0x597a0e[_0x5506('0x53')]['id']}})[_0x5506('0x1e')](handleEntityNotFound(_0x13da08,null))[_0x5506('0x1e')](function(_0x3a32f1){if(_0x3a32f1){_0x169c73['model']=_[_0x5506('0x43')](db[_0x5506('0x8f')][_0x5506('0x3f')]);_0x169c73['query']=_[_0x5506('0x43')](_0x597a0e['query']);_0x169c73[_0x5506('0x45')]=_[_0x5506('0x46')](_0x169c73['model'],_0x169c73[_0x5506('0x44')]);_0x2d2aa6[_0x5506('0x47')]=_[_0x5506('0x46')](_0x169c73[_0x5506('0x42')],qs['fields'](_0x597a0e[_0x5506('0x44')][_0x5506('0x48')]));_0x2d2aa6[_0x5506('0x47')]=_0x2d2aa6[_0x5506('0x47')][_0x5506('0x49')]?_0x2d2aa6[_0x5506('0x47')]:_0x169c73[_0x5506('0x42')];if(!_0x597a0e[_0x5506('0x44')][_0x5506('0x4a')](_0x5506('0x65'))){_0x2d2aa6[_0x5506('0x2e')]=qs['limit'](_0x597a0e[_0x5506('0x44')]['limit']);_0x2d2aa6[_0x5506('0x2d')]=qs['offset'](_0x597a0e['query']['offset']);}_0x2d2aa6[_0x5506('0x4b')]=qs[_0x5506('0x4c')](_0x597a0e['query'][_0x5506('0x4c')]);_0x2d2aa6[_0x5506('0x4d')]=qs[_0x5506('0x45')](_[_0x5506('0x66')](_0x597a0e[_0x5506('0x44')],_0x169c73[_0x5506('0x45')]));_0x2d2aa6[_0x5506('0x4d')][_0x5506('0x61')]=_0x3a32f1['id'];if(_0x597a0e[_0x5506('0x44')][_0x5506('0x4e')]){_0x2d2aa6[_0x5506('0x4d')]=_[_0x5506('0x54')](_0x2d2aa6[_0x5506('0x4d')],{'$or':_['map'](_0x2d2aa6[_0x5506('0x47')],function(_0x302a13){var _0x32ea72={};_0x32ea72[_0x302a13]={'$like':'%'+_0x597a0e[_0x5506('0x44')][_0x5506('0x4e')]+'%'};return _0x32ea72;})});}_0x2d2aa6=_[_0x5506('0x54')]({},_0x2d2aa6,_0x597a0e['options']);return db[_0x5506('0x8f')][_0x5506('0x2c')]({'where':_0x2d2aa6['where']})['then'](function(_0x300474){_0x4b68e0[_0x5506('0x2c')]=_0x300474;if(_0x597a0e['query']['includeAll']){_0x2d2aa6[_0x5506('0x50')]=[{'model':db['CmContact'],'as':_0x5506('0xaa'),'required':![]},{'model':db['User'],'as':_0x5506('0xab'),'attributes':[_0x5506('0x39'),_0x5506('0xac'),'internal'],'required':![]},{'model':db[_0x5506('0xad')],'as':_0x5506('0xae'),'attributes':['id',_0x5506('0x39'),'color'],'where':_0x597a0e[_0x5506('0x44')][_0x5506('0xaf')]?{'id':_0x597a0e[_0x5506('0x44')][_0x5506('0xaf')]}:undefined,'required':_0x597a0e['query'][_0x5506('0xaf')]?!![]:![]}];}return db[_0x5506('0x8f')][_0x5506('0x68')](_0x2d2aa6);})[_0x5506('0x1e')](function(_0x5e9fb9){_0x4b68e0[_0x5506('0x69')]=_0x5e9fb9;return _0x4b68e0;});}})[_0x5506('0x1e')](respondWithFilteredResult(_0x13da08,_0x2d2aa6))[_0x5506('0x27')](handleError(_0x13da08,null));};exports['addAgents']=function(_0x57f6b3,_0x596dc2,_0x2d57bb){return db['OpenchannelAccount'][_0x5506('0x56')]({'where':{'id':_0x57f6b3[_0x5506('0x53')]['id']}})['then'](handleEntityNotFound(_0x596dc2,null))[_0x5506('0x1e')](function(_0x202113){if(_0x202113){return _0x202113[_0x5506('0xb0')](_0x57f6b3[_0x5506('0x5f')][_0x5506('0x6b')],_[_0x5506('0xb1')](_0x57f6b3[_0x5506('0x5f')],[_0x5506('0x6b'),'id'])||{})[_0x5506('0x91')](function(_0x2ab2f3){for(var _0x27bda2=0x0;_0x27bda2<_0x57f6b3[_0x5506('0x5f')][_0x5506('0x6b')][_0x5506('0x49')];_0x27bda2+=0x1){socket[_0x5506('0xb2')]('userOpenchannelAccount:save',{'UserId':_0x57f6b3[_0x5506('0x5f')][_0x5506('0x6b')][_0x27bda2],'OpenchannelAccountId':_0x57f6b3[_0x5506('0x53')]['id']});}return _0x2ab2f3;});}})[_0x5506('0x1e')](respondWithResult(_0x596dc2,null))['catch'](handleError(_0x596dc2,null));};exports[_0x5506('0xb3')]=function(_0x3ab056,_0x47c457,_0x590abf){return db[_0x5506('0x51')][_0x5506('0x56')]({'where':{'id':_0x3ab056[_0x5506('0x53')]['id']}})[_0x5506('0x1e')](handleEntityNotFound(_0x47c457,null))[_0x5506('0x1e')](function(_0x23c298){if(_0x23c298){return _0x23c298[_0x5506('0xb3')](_0x3ab056['query'][_0x5506('0x6b')])[_0x5506('0x1e')](function(){if(_[_0x5506('0xb4')](_0x3ab056[_0x5506('0x44')][_0x5506('0x6b')])){for(var _0x55528d=0x0;_0x55528d<_0x3ab056[_0x5506('0x44')][_0x5506('0x6b')][_0x5506('0x49')];_0x55528d+=0x1){socket['emit'](_0x5506('0xb5'),{'UserId':Number(_0x3ab056[_0x5506('0x44')]['ids'][_0x55528d]),'OpenchannelAccountId':Number(_0x3ab056[_0x5506('0x53')]['id'])});}}else{socket['emit'](_0x5506('0xb5'),{'UserId':Number(_0x3ab056['query'][_0x5506('0x6b')]),'OpenchannelAccountId':Number(_0x3ab056[_0x5506('0x53')]['id'])});}});}})[_0x5506('0x1e')](respondWithStatusCode(_0x47c457,null))[_0x5506('0x27')](handleError(_0x47c457,null));};exports['getAgents']=function(_0x5cdc55,_0x4e46d6,_0x315faa){var _0x2bdaa6={};var _0x424cfd={};var _0x33777a;var _0x343a53;return db['OpenchannelAccount'][_0x5506('0x63')]({'where':{'id':_0x5cdc55[_0x5506('0x53')]['id']}})[_0x5506('0x1e')](handleEntityNotFound(_0x4e46d6,null))[_0x5506('0x1e')](function(_0x45b102){if(_0x45b102){_0x33777a=_0x45b102;_0x424cfd[_0x5506('0x42')]=_[_0x5506('0x43')](db[_0x5506('0x9d')]['rawAttributes']);_0x424cfd[_0x5506('0x44')]=_[_0x5506('0x43')](_0x5cdc55[_0x5506('0x44')]);_0x424cfd[_0x5506('0x45')]=_[_0x5506('0x46')](_0x424cfd[_0x5506('0x42')],_0x424cfd['query']);_0x2bdaa6[_0x5506('0x47')]=_[_0x5506('0x46')](_0x424cfd[_0x5506('0x42')],qs[_0x5506('0x48')](_0x5cdc55[_0x5506('0x44')][_0x5506('0x48')]));_0x2bdaa6[_0x5506('0x47')]=_0x2bdaa6[_0x5506('0x47')][_0x5506('0x49')]?_0x2bdaa6[_0x5506('0x47')]:_0x424cfd[_0x5506('0x42')];_0x2bdaa6[_0x5506('0x4b')]=qs[_0x5506('0x4c')](_0x5cdc55['query'][_0x5506('0x4c')]);_0x2bdaa6[_0x5506('0x4d')]=qs['filters'](_[_0x5506('0x66')](_0x5cdc55['query'],_0x424cfd[_0x5506('0x45')]));if(_0x5cdc55[_0x5506('0x44')][_0x5506('0x4e')]){_0x2bdaa6['where']=_[_0x5506('0x54')](_0x2bdaa6[_0x5506('0x4d')],{'$or':_['map'](_0x2bdaa6[_0x5506('0x47')],function(_0x1c5d35){var _0xb7e53d={};_0xb7e53d[_0x1c5d35]={'$like':'%'+_0x5cdc55['query'][_0x5506('0x4e')]+'%'};return _0xb7e53d;})});}_0x2bdaa6=_[_0x5506('0x54')]({},_0x2bdaa6,_0x5cdc55[_0x5506('0x55')]);return _0x33777a[_0x5506('0xb6')](_0x2bdaa6);}})[_0x5506('0x1e')](function(_0x5d3414){if(_0x5d3414){_0x343a53=_0x5d3414[_0x5506('0x49')];if(!_0x5cdc55[_0x5506('0x44')][_0x5506('0x4a')](_0x5506('0x65'))){_0x2bdaa6[_0x5506('0x2e')]=qs[_0x5506('0x2e')](_0x5cdc55['query']['limit']);_0x2bdaa6[_0x5506('0x2d')]=qs[_0x5506('0x2d')](_0x5cdc55[_0x5506('0x44')][_0x5506('0x2d')]);}return _0x33777a[_0x5506('0xb6')](_0x2bdaa6);}})['then'](function(_0x2aa286){if(_0x2aa286){return _0x2aa286?{'count':_0x343a53,'rows':_0x2aa286}:null;}})[_0x5506('0x1e')](respondWithResult(_0x4e46d6,null))[_0x5506('0x27')](handleError(_0x4e46d6,null));};exports[_0x5506('0x3a')]=function(_0x21852f,_0x1569d7,_0xf5658e){var _0x21a329,_0x3a58b7,_0x4de9c4;if(_['isNil'](_0x21852f[_0x5506('0x5f')][_0x5506('0x5f')])||_0x21852f[_0x5506('0x5f')][_0x5506('0x5f')]===''){throw new db[(_0x5506('0x72'))]['ValidationError'](_0x5506('0x7a'));}if(_[_0x5506('0x77')](_0x21852f['body']['to'])){}_0x21a329=_0x21852f['body']['to'];return db[_0x5506('0x51')][_0x5506('0x63')]({'where':{'id':_0x21852f[_0x5506('0x53')]['id']}})[_0x5506('0x1e')](handleEntityNotFound(_0x1569d7,null))['then'](function(_0x47d82b){if(_0x47d82b){return db['OpenchannelAccount']['find']({'where':{'id':_0x47d82b['id']},'include':[{'model':db['CmList'],'as':_0x5506('0x7f'),'include':[{'model':db['CmContact'],'as':_0x5506('0x89'),'where':{[_0x47d82b[_0x5506('0x7b')]]:_0x21a329},'limit':0x1,'order':[[_0x5506('0x75'),'DESC']]}]}]})['then'](handleEntityNotFound(_0x1569d7,null))[_0x5506('0x1e')](function(_0x1235cc){if(_0x1235cc&&_0x1235cc[_0x5506('0x7f')]){_0x3a58b7=_0x1235cc[_0x5506('0x36')]({'plain':!![]});if(_0x3a58b7[_0x5506('0x7f')]&&_0x3a58b7[_0x5506('0x7f')]['Contacts'][_0x5506('0x49')]){return _0x3a58b7['List'][_0x5506('0x89')][0x0];}return db[_0x5506('0x80')][_0x5506('0x5d')](_[_0x5506('0x16')](_0x21852f[_0x5506('0x5f')],{'firstName':_0x21a329,[_0x1235cc[_0x5506('0x7b')]]:_0x21a329,'phone':_0x21a329,'ListId':_0x3a58b7[_0x5506('0x8a')]}));}})[_0x5506('0x1e')](handleEntityNotFound(_0x1569d7,null))[_0x5506('0x1e')](function(_0x4bb27b){if(_0x4bb27b){_0x4de9c4=_0x4bb27b;return db['OpenchannelInteraction'][_0x5506('0x56')]({'where':{'ContactId':_0x4de9c4['id'],'closed':![],'OpenchannelAccountId':_0x3a58b7['id']}})['then'](function(_0x3ccadd){if(_0x3ccadd){return[_0x3ccadd,![]];}return db['OpenchannelInteraction']['create']({'UserId':_0x21852f[_0x5506('0x57')]['id'],'ContactId':_0x4de9c4['id'],'OpenchannelAccountId':_0x3a58b7['id'],'lastMsgDirection':_0x5506('0xb7'),'Messages':[_[_0x5506('0x54')](_0x21852f['body'],{'read':![],'body':_0x21852f[_0x5506('0x5f')][_0x5506('0x5f')],'OpenchannelAccountId':_0x3a58b7['id'],'UserId':_0x21852f[_0x5506('0x57')]['id'],'ContactId':_0x4de9c4['id']})]},{'include':[{'model':db[_0x5506('0x9a')],'as':_0x5506('0xb8')}]})[_0x5506('0x1e')](function(_0x34d31c){return[_0x34d31c,!![]];});});}})['spread'](function(_0x5f4f3a,_0x3c5daa){if(_0x3c5daa){return _0x5f4f3a;}return db[_0x5506('0x9a')]['create'](_['merge'](_0x21852f[_0x5506('0x5f')],{'read':![],'body':_0x21852f[_0x5506('0x5f')][_0x5506('0x5f')],'OpenchannelAccountId':_0x3a58b7['id'],'OpenchannelInteractionId':_0x5f4f3a['id'],'UserId':_0x21852f[_0x5506('0x57')]['id'],'ContactId':_0x4de9c4['id']}))[_0x5506('0x1e')](function(_0x1cb7b2){_0x5f4f3a[_0x5506('0xb9')][_0x5506('0xb8')]=[];_0x5f4f3a['dataValues']['Messages']['push'](_0x1cb7b2[_0x5506('0xb9')]);return _0x5f4f3a;});});}})['then'](respondWithResult(_0x1569d7,null))['catch'](handleError(_0x1569d7,null));};