09543ab63ff07f5f8684eb21a2ee008c1c57b904
[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 _0x613a=['dataValues','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','ejs','lodash','squel','crypto','jsforce','desk.js','to-csv','querystring','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','defaults','redis','localhost','./openchannelAccount.socket','register','jayson/promise','client','http','request','then','info','OpenchannelAccount,\x20%s,\x20%s','request\x20sent','debug','OpenchannelAccount,\x20%s,\x20%s,\x20%s','stringify','error','code','message','result','catch','sendStatus','status','end','count','offset','Content-Range','json','reject','update','destroy','get','OpenchannelAccounts','UserProfileResource','stack','name','send','index','map','OpenchannelAccount','fieldName','type','key','model','query','intersection','attributes','fields','length','hasOwnProperty','limit','sort','where','merge','filter','options','includeAll','include','rows','show','params','Pause','mandatoryDispositionPause','keys','filters','find','create','role','user','UserProfileSection','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','body','describe','addDisposition','OpenchannelAccountId','getDispositions','findOne','Disposition','rawAttributes','order','findAll','removeDispositions','ids','addAnswer','CannedAnswer','getAnswers','nolimit','removeAnswers','notify','CmContact','Sequelize','ValidationError','no\x20available\x20attributes','createdAt','difference','updatedAt','CompanyId','ListId','isNil','from\x20is\x20mandatory','mapKey','mapKey\x20invalid,\x20please\x20use\x20one\x20of\x20these:\x20','List','Contacts','OpenchannelApplication','Applications','applications','orderBy','asc','account','from','contact','threadId','externalUrl','ContactId','OpenchannelInteraction','spread','lastName','messageId','interaction','created','push','close','unmanaged','OpenchannelMessage','AttachmentId','User','UserId','unshift','agent','*,*,*,*','Start','startRouting','EventManager','addApplications','transaction','getApplications','pick','getInteractions','Contact','Owner','fullname','internal','Tag','Tags','color','tag','addAgents','omit','emit','removeAgents','userOpenchannelAccount:remove','getAgents','out','Messages'];(function(_0x4d520a,_0x6be7c9){var _0x207f5a=function(_0x25bfe9){while(--_0x25bfe9){_0x4d520a['push'](_0x4d520a['shift']());}};_0x207f5a(++_0x6be7c9);}(_0x613a,0xba));var _0xa613=function(_0x3c9cae,_0x41b2d4){_0x3c9cae=_0x3c9cae-0x0;var _0x9e2aed=_0x613a[_0x3c9cae];return _0x9e2aed;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0xa613('0x0'));var rimraf=require(_0xa613('0x1'));var zipdir=require(_0xa613('0x2'));var jsonpatch=require(_0xa613('0x3'));var rp=require(_0xa613('0x4'));var moment=require(_0xa613('0x5'));var BPromise=require(_0xa613('0x6'));var Mustache=require(_0xa613('0x7'));var util=require(_0xa613('0x8'));var path=require(_0xa613('0x9'));var sox=require(_0xa613('0xa'));var csv=require('to-csv');var ejs=require(_0xa613('0xb'));var fs=require('fs');var _=require(_0xa613('0xc'));var squel=require(_0xa613('0xd'));var crypto=require(_0xa613('0xe'));var jsforce=require(_0xa613('0xf'));var deskjs=require(_0xa613('0x10'));var toCsv=require(_0xa613('0x11'));var querystring=require(_0xa613('0x12'));var Papa=require('papaparse');var Redis=require(_0xa613('0x13'));var authService=require('../../components/auth/service');var qs=require(_0xa613('0x14'));var as=require(_0xa613('0x15'));var hardwareService=require('../../config/license/hardware');var logger=require(_0xa613('0x16'))(_0xa613('0x17'));var utils=require(_0xa613('0x18'));var config=require(_0xa613('0x19'));var licenseUtil=require('../../config/license/util');var db=require(_0xa613('0x1a'))['db'];config['redis']=_[_0xa613('0x1b')](config[_0xa613('0x1c')],{'host':_0xa613('0x1d'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0xa613('0x1c')]));require(_0xa613('0x1e'))[_0xa613('0x1f')](socket);var jayson=require(_0xa613('0x20'));var client=jayson[_0xa613('0x21')][_0xa613('0x22')]({'port':0x232c});var client9002=jayson[_0xa613('0x21')][_0xa613('0x22')]({'port':0x232a});function respondWithRpcPromise(_0x142602,_0x2fd432,_0x401c13,_0x247fdc){return new BPromise(function(_0x4f0722,_0x37bef2){var _0x45b687=_0x247fdc||client;return _0x45b687[_0xa613('0x23')](_0x142602,_0x401c13)[_0xa613('0x24')](function(_0x3e71a4){logger[_0xa613('0x25')](_0xa613('0x26'),_0x2fd432,_0xa613('0x27'));logger[_0xa613('0x28')](_0xa613('0x29'),_0x2fd432,_0xa613('0x27'),JSON[_0xa613('0x2a')](_0x3e71a4));if(_0x3e71a4['error']){if(_0x3e71a4[_0xa613('0x2b')][_0xa613('0x2c')]===0x1f4){logger[_0xa613('0x2b')]('OpenchannelAccount,\x20%s,\x20%s',_0x2fd432,_0x3e71a4[_0xa613('0x2b')][_0xa613('0x2d')]);return _0x37bef2(_0x3e71a4[_0xa613('0x2b')][_0xa613('0x2d')]);}logger[_0xa613('0x2b')](_0xa613('0x26'),_0x2fd432,_0x3e71a4['error']['message']);return _0x4f0722(_0x3e71a4['error'][_0xa613('0x2d')]);}else{logger[_0xa613('0x25')](_0xa613('0x26'),_0x2fd432,_0xa613('0x27'));_0x4f0722(_0x3e71a4[_0xa613('0x2e')][_0xa613('0x2d')]);}})[_0xa613('0x2f')](function(_0x3046ae){logger[_0xa613('0x2b')]('OpenchannelAccount,\x20%s,\x20%s',_0x2fd432,_0x3046ae);_0x37bef2(_0x3046ae);});});}function respondWithStatusCode(_0x256f51,_0x2537ac){_0x2537ac=_0x2537ac||0xcc;return function(_0x8ac55c){if(_0x8ac55c){return _0x256f51[_0xa613('0x30')](_0x2537ac);}return _0x256f51[_0xa613('0x31')](_0x2537ac)[_0xa613('0x32')]();};}function respondWithResult(_0x4058ca,_0x5bc39e){_0x5bc39e=_0x5bc39e||0xc8;return function(_0x27a440){if(_0x27a440){return _0x4058ca['status'](_0x5bc39e)['json'](_0x27a440);}};}function respondWithFilteredResult(_0xec768f,_0x5a15a){return function(_0x55ffea){if(_0x55ffea){var _0x407c86=_0x55ffea[_0xa613('0x33')],_0x47cb2a=_0x5a15a[_0xa613('0x34')],_0x279f01=_0x5a15a[_0xa613('0x34')]+_0x5a15a['limit'],_0x33ec46;if(_0x279f01>=_0x407c86){_0x279f01=_0x407c86;_0x33ec46=0xc8;}else{_0x33ec46=0xce;}_0xec768f[_0xa613('0x31')](_0x33ec46);return _0xec768f['set'](_0xa613('0x35'),_0x47cb2a+'-'+_0x279f01+'/'+_0x407c86)[_0xa613('0x36')](_0x55ffea);}return null;};}function patchUpdates(_0x593c76){return function(_0x243c20){try{jsonpatch['apply'](_0x243c20,_0x593c76,!![]);}catch(_0x485735){return BPromise[_0xa613('0x37')](_0x485735);}return _0x243c20['save']();};}function saveUpdates(_0x515110,_0x37f6d7){return function(_0x781c0d){if(_0x781c0d){return _0x781c0d[_0xa613('0x38')](_0x515110)[_0xa613('0x24')](function(_0xe2f21a){return _0xe2f21a;});}return null;};}function removeEntity(_0x3911ce,_0xb04ff6){return function(_0x3d5dd1){if(_0x3d5dd1){return _0x3d5dd1[_0xa613('0x39')]()[_0xa613('0x24')](function(){var _0x33a427=_0x3d5dd1[_0xa613('0x3a')]({'plain':!![]});var _0x13aec0=_0xa613('0x3b');return db[_0xa613('0x3c')][_0xa613('0x39')]({'where':{'type':_0x13aec0,'resourceId':_0x33a427['id']}})[_0xa613('0x24')](function(){return _0x3d5dd1;});})[_0xa613('0x24')](function(){_0x3911ce[_0xa613('0x31')](0xcc)[_0xa613('0x32')]();});}};}function handleEntityNotFound(_0x3f4ca5,_0x21eb6d){return function(_0x3f1979){if(!_0x3f1979){_0x3f4ca5[_0xa613('0x30')](0x194);}return _0x3f1979;};}function handleError(_0x4d7479,_0x45fccc){_0x45fccc=_0x45fccc||0x1f4;return function(_0x1c3b57){logger['error'](_0x1c3b57[_0xa613('0x3d')]);if(_0x1c3b57['name']){delete _0x1c3b57[_0xa613('0x3e')];}_0x4d7479[_0xa613('0x31')](_0x45fccc)[_0xa613('0x3f')](_0x1c3b57);};}exports[_0xa613('0x40')]=function(_0x1701d9,_0x51d9c7){var _0x265ba5={'include':[{'model':db['Pause'],'as':'mandatoryDispositionPause'}]},_0x2584e6={},_0x12beae={'count':0x0,'rows':[]};var _0x25a556=_[_0xa613('0x41')](db[_0xa613('0x42')]['rawAttributes'],function(_0x48ebb5){return{'name':_0x48ebb5[_0xa613('0x43')],'type':_0x48ebb5[_0xa613('0x44')][_0xa613('0x45')]};});_0x2584e6[_0xa613('0x46')]=_['map'](_0x25a556,_0xa613('0x3e'));_0x2584e6[_0xa613('0x47')]=_['keys'](_0x1701d9['query']);_0x2584e6['filters']=_[_0xa613('0x48')](_0x2584e6[_0xa613('0x46')],_0x2584e6[_0xa613('0x47')]);_0x265ba5[_0xa613('0x49')]=_[_0xa613('0x48')](_0x2584e6[_0xa613('0x46')],qs[_0xa613('0x4a')](_0x1701d9['query'][_0xa613('0x4a')]));_0x265ba5[_0xa613('0x49')]=_0x265ba5[_0xa613('0x49')][_0xa613('0x4b')]?_0x265ba5['attributes']:_0x2584e6['model'];if(!_0x1701d9[_0xa613('0x47')][_0xa613('0x4c')]('nolimit')){_0x265ba5['limit']=qs['limit'](_0x1701d9[_0xa613('0x47')][_0xa613('0x4d')]);_0x265ba5[_0xa613('0x34')]=qs[_0xa613('0x34')](_0x1701d9[_0xa613('0x47')][_0xa613('0x34')]);}_0x265ba5['order']=qs[_0xa613('0x4e')](_0x1701d9[_0xa613('0x47')]['sort']);_0x265ba5[_0xa613('0x4f')]=qs['filters'](_['pick'](_0x1701d9[_0xa613('0x47')],_0x2584e6['filters']),_0x25a556);if(_0x1701d9[_0xa613('0x47')]['filter']){_0x265ba5[_0xa613('0x4f')]=_[_0xa613('0x50')](_0x265ba5[_0xa613('0x4f')],{'$or':_['map'](_0x25a556,function(_0x183b0d){if(_0x183b0d[_0xa613('0x44')]!=='VIRTUAL'){var _0x13b7aa={};_0x13b7aa[_0x183b0d[_0xa613('0x3e')]]={'$like':'%'+_0x1701d9[_0xa613('0x47')][_0xa613('0x51')]+'%'};return _0x13b7aa;}})});}_0x265ba5=_[_0xa613('0x50')]({},_0x265ba5,_0x1701d9[_0xa613('0x52')]);var _0x47cd40={'where':_0x265ba5[_0xa613('0x4f')]};return db[_0xa613('0x42')][_0xa613('0x33')](_0x47cd40)[_0xa613('0x24')](function(_0x3e7f20){_0x12beae[_0xa613('0x33')]=_0x3e7f20;if(_0x1701d9[_0xa613('0x47')][_0xa613('0x53')]){_0x265ba5[_0xa613('0x54')]=[{'all':!![]}];}return db['OpenchannelAccount']['findAll'](_0x265ba5);})['then'](function(_0xf8c24f){_0x12beae[_0xa613('0x55')]=_0xf8c24f;return _0x12beae;})[_0xa613('0x24')](respondWithFilteredResult(_0x51d9c7,_0x265ba5))[_0xa613('0x2f')](handleError(_0x51d9c7,null));};exports[_0xa613('0x56')]=function(_0x5ec74d,_0x328a4f){var _0x4008b3={'raw':![],'where':{'id':_0x5ec74d[_0xa613('0x57')]['id']},'include':[{'model':db[_0xa613('0x58')],'as':_0xa613('0x59')}]},_0x4a0787={};_0x4a0787[_0xa613('0x46')]=_[_0xa613('0x5a')](db[_0xa613('0x42')]['rawAttributes']);_0x4a0787['query']=_[_0xa613('0x5a')](_0x5ec74d[_0xa613('0x47')]);_0x4a0787[_0xa613('0x5b')]=_['intersection'](_0x4a0787[_0xa613('0x46')],_0x4a0787[_0xa613('0x47')]);_0x4008b3[_0xa613('0x49')]=_[_0xa613('0x48')](_0x4a0787[_0xa613('0x46')],qs[_0xa613('0x4a')](_0x5ec74d[_0xa613('0x47')][_0xa613('0x4a')]));_0x4008b3[_0xa613('0x49')]=_0x4008b3[_0xa613('0x49')][_0xa613('0x4b')]?_0x4008b3['attributes']:_0x4a0787[_0xa613('0x46')];if(_0x5ec74d['query'][_0xa613('0x53')]){_0x4008b3[_0xa613('0x54')]=[{'all':!![]}];}_0x4008b3=_[_0xa613('0x50')]({},_0x4008b3,_0x5ec74d[_0xa613('0x52')]);return db[_0xa613('0x42')][_0xa613('0x5c')](_0x4008b3)[_0xa613('0x24')](handleEntityNotFound(_0x328a4f,null))['then'](respondWithResult(_0x328a4f,null))[_0xa613('0x2f')](handleError(_0x328a4f,null));};exports[_0xa613('0x5d')]=function(_0x45386e,_0x1d879d){return db['OpenchannelAccount'][_0xa613('0x5d')](_0x45386e['body'],{})[_0xa613('0x24')](function(_0x29fe4e){var _0x112cf9=_0x45386e['user'][_0xa613('0x3a')]({'plain':!![]});if(!_0x112cf9)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x112cf9[_0xa613('0x5e')]===_0xa613('0x5f')){var _0x4f4935=_0x29fe4e['get']({'plain':!![]});var _0x4d7f38=_0xa613('0x3b');return db[_0xa613('0x60')]['find']({'where':{'name':_0x4d7f38,'userProfileId':_0x112cf9[_0xa613('0x61')]},'raw':!![]})['then'](function(_0x38dfb8){if(_0x38dfb8&&_0x38dfb8[_0xa613('0x62')]===0x0){return db['UserProfileResource'][_0xa613('0x5d')]({'name':_0x4f4935[_0xa613('0x3e')],'resourceId':_0x4f4935['id'],'type':_0x38dfb8[_0xa613('0x3e')],'sectionId':_0x38dfb8['id']},{})['then'](function(){return _0x29fe4e;});}else{return _0x29fe4e;}})['catch'](function(_0x2bd782){logger['error'](_0xa613('0x63'),_0x2bd782);throw _0x2bd782;});}return _0x29fe4e;})[_0xa613('0x24')](respondWithResult(_0x1d879d,0xc9))['catch'](handleError(_0x1d879d,null));};exports[_0xa613('0x38')]=function(_0x2516be,_0x1a8729){if(_0x2516be[_0xa613('0x64')]['id']){delete _0x2516be[_0xa613('0x64')]['id'];}return db['OpenchannelAccount'][_0xa613('0x5c')]({'where':{'id':_0x2516be['params']['id']},'include':[{'model':db['Pause'],'as':'mandatoryDispositionPause'}]})[_0xa613('0x24')](handleEntityNotFound(_0x1a8729,null))[_0xa613('0x24')](saveUpdates(_0x2516be[_0xa613('0x64')],null))[_0xa613('0x24')](respondWithResult(_0x1a8729,null))[_0xa613('0x2f')](handleError(_0x1a8729,null));};exports[_0xa613('0x39')]=function(_0x3d9728,_0x2d8919){return db[_0xa613('0x42')][_0xa613('0x5c')]({'where':{'id':_0x3d9728['params']['id']}})['then'](handleEntityNotFound(_0x2d8919,null))['then'](removeEntity(_0x2d8919,null))['catch'](handleError(_0x2d8919,null));};exports['describe']=function(_0x403215,_0xed75d1){return db[_0xa613('0x42')][_0xa613('0x65')]()['then'](respondWithResult(_0xed75d1,null))[_0xa613('0x2f')](handleError(_0xed75d1,null));};exports[_0xa613('0x66')]=function(_0x59295d,_0x32fa6d,_0x27beb8){if(_0x59295d[_0xa613('0x64')]['id']){delete _0x59295d[_0xa613('0x64')]['id'];}return db[_0xa613('0x42')][_0xa613('0x5c')]({'where':{'id':_0x59295d[_0xa613('0x57')]['id']}})[_0xa613('0x24')](handleEntityNotFound(_0x32fa6d,null))['then'](function(_0x3e8087){if(_0x3e8087){_0x59295d[_0xa613('0x64')][_0xa613('0x67')]=_0x3e8087['id'];return db['Disposition']['create'](_0x59295d[_0xa613('0x64')]);}})[_0xa613('0x24')](respondWithResult(_0x32fa6d,null))[_0xa613('0x2f')](handleError(_0x32fa6d,null));};exports[_0xa613('0x68')]=function(_0x1efeb4,_0x31372c,_0x1c1caa){var _0x1d9499={'raw':![],'where':{}};var _0xa99069={};var _0x305b8c={'count':0x0,'rows':[]};return db[_0xa613('0x42')][_0xa613('0x69')]({'where':{'id':_0x1efeb4[_0xa613('0x57')]['id']}})['then'](handleEntityNotFound(_0x31372c,null))[_0xa613('0x24')](function(_0x57745c){if(_0x57745c){_0xa99069[_0xa613('0x46')]=_[_0xa613('0x5a')](db[_0xa613('0x6a')][_0xa613('0x6b')]);_0xa99069[_0xa613('0x47')]=_[_0xa613('0x5a')](_0x1efeb4['query']);_0xa99069[_0xa613('0x5b')]=_[_0xa613('0x48')](_0xa99069[_0xa613('0x46')],_0xa99069[_0xa613('0x47')]);_0x1d9499[_0xa613('0x49')]=_[_0xa613('0x48')](_0xa99069['model'],qs[_0xa613('0x4a')](_0x1efeb4[_0xa613('0x47')][_0xa613('0x4a')]));_0x1d9499[_0xa613('0x49')]=_0x1d9499[_0xa613('0x49')][_0xa613('0x4b')]?_0x1d9499['attributes']:_0xa99069['model'];if(!_0x1efeb4['query']['hasOwnProperty']('nolimit')){_0x1d9499['limit']=qs[_0xa613('0x4d')](_0x1efeb4['query'][_0xa613('0x4d')]);_0x1d9499[_0xa613('0x34')]=qs[_0xa613('0x34')](_0x1efeb4[_0xa613('0x47')]['offset']);}_0x1d9499[_0xa613('0x6c')]=qs[_0xa613('0x4e')](_0x1efeb4[_0xa613('0x47')][_0xa613('0x4e')]);_0x1d9499[_0xa613('0x4f')]=qs['filters'](_['pick'](_0x1efeb4[_0xa613('0x47')],_0xa99069[_0xa613('0x5b')]));_0x1d9499['where'][_0xa613('0x67')]=_0x57745c['id'];if(_0x1efeb4[_0xa613('0x47')][_0xa613('0x51')]){_0x1d9499[_0xa613('0x4f')]=_[_0xa613('0x50')](_0x1d9499[_0xa613('0x4f')],{'$or':_[_0xa613('0x41')](_0x1d9499[_0xa613('0x49')],function(_0x5b974b){var _0x4b4e96={};_0x4b4e96[_0x5b974b]={'$like':'%'+_0x1efeb4[_0xa613('0x47')]['filter']+'%'};return _0x4b4e96;})});}_0x1d9499=_[_0xa613('0x50')]({},_0x1d9499,_0x1efeb4['options']);return db[_0xa613('0x6a')][_0xa613('0x33')]({'where':_0x1d9499[_0xa613('0x4f')]})[_0xa613('0x24')](function(_0xaea700){_0x305b8c[_0xa613('0x33')]=_0xaea700;if(_0x1efeb4[_0xa613('0x47')][_0xa613('0x53')]){_0x1d9499[_0xa613('0x54')]=[{'all':!![]}];}return db[_0xa613('0x6a')][_0xa613('0x6d')](_0x1d9499);})[_0xa613('0x24')](function(_0xbc4daa){_0x305b8c[_0xa613('0x55')]=_0xbc4daa;return _0x305b8c;});}})[_0xa613('0x24')](respondWithFilteredResult(_0x31372c,_0x1d9499))[_0xa613('0x2f')](handleError(_0x31372c,null));};exports[_0xa613('0x6e')]=function(_0x440b14,_0x28360f,_0x444cc0){return db['OpenchannelAccount'][_0xa613('0x5c')]({'where':{'id':_0x440b14[_0xa613('0x57')]['id']}})[_0xa613('0x24')](handleEntityNotFound(_0x28360f,null))[_0xa613('0x24')](function(_0x10df22){if(_0x10df22){return _0x10df22['removeDispositions'](_0x440b14[_0xa613('0x47')][_0xa613('0x6f')]);}})[_0xa613('0x24')](respondWithStatusCode(_0x28360f,null))[_0xa613('0x2f')](handleError(_0x28360f,null));};exports[_0xa613('0x70')]=function(_0x2476ee,_0x442eea,_0x13b6ad){if(_0x2476ee[_0xa613('0x64')]['id']){delete _0x2476ee['body']['id'];}return db[_0xa613('0x42')]['find']({'where':{'id':_0x2476ee[_0xa613('0x57')]['id']}})[_0xa613('0x24')](handleEntityNotFound(_0x442eea,null))['then'](function(_0x4a61dc){if(_0x4a61dc){_0x2476ee[_0xa613('0x64')][_0xa613('0x67')]=_0x4a61dc['id'];return db[_0xa613('0x71')]['create'](_0x2476ee[_0xa613('0x64')]);}})[_0xa613('0x24')](respondWithResult(_0x442eea,null))[_0xa613('0x2f')](handleError(_0x442eea,null));};exports[_0xa613('0x72')]=function(_0xc267b1,_0x5d17c7,_0x51660b){var _0xc127be={'raw':![],'where':{}};var _0x3f3605={};var _0x9ce484={'count':0x0,'rows':[]};return db['OpenchannelAccount']['findOne']({'where':{'id':_0xc267b1[_0xa613('0x57')]['id']}})[_0xa613('0x24')](handleEntityNotFound(_0x5d17c7,null))[_0xa613('0x24')](function(_0x5c8127){if(_0x5c8127){_0x3f3605['model']=_[_0xa613('0x5a')](db[_0xa613('0x71')][_0xa613('0x6b')]);_0x3f3605[_0xa613('0x47')]=_[_0xa613('0x5a')](_0xc267b1['query']);_0x3f3605[_0xa613('0x5b')]=_[_0xa613('0x48')](_0x3f3605['model'],_0x3f3605[_0xa613('0x47')]);_0xc127be['attributes']=_[_0xa613('0x48')](_0x3f3605[_0xa613('0x46')],qs['fields'](_0xc267b1[_0xa613('0x47')][_0xa613('0x4a')]));_0xc127be[_0xa613('0x49')]=_0xc127be['attributes'][_0xa613('0x4b')]?_0xc127be[_0xa613('0x49')]:_0x3f3605[_0xa613('0x46')];if(!_0xc267b1[_0xa613('0x47')][_0xa613('0x4c')](_0xa613('0x73'))){_0xc127be[_0xa613('0x4d')]=qs['limit'](_0xc267b1['query'][_0xa613('0x4d')]);_0xc127be[_0xa613('0x34')]=qs[_0xa613('0x34')](_0xc267b1['query']['offset']);}_0xc127be[_0xa613('0x6c')]=qs[_0xa613('0x4e')](_0xc267b1['query'][_0xa613('0x4e')]);_0xc127be[_0xa613('0x4f')]=qs['filters'](_['pick'](_0xc267b1[_0xa613('0x47')],_0x3f3605['filters']));_0xc127be[_0xa613('0x4f')]['OpenchannelAccountId']=_0x5c8127['id'];if(_0xc267b1[_0xa613('0x47')][_0xa613('0x51')]){_0xc127be[_0xa613('0x4f')]=_[_0xa613('0x50')](_0xc127be[_0xa613('0x4f')],{'$or':_[_0xa613('0x41')](_0xc127be[_0xa613('0x49')],function(_0x4fc06a){var _0x3d77a1={};_0x3d77a1[_0x4fc06a]={'$like':'%'+_0xc267b1[_0xa613('0x47')][_0xa613('0x51')]+'%'};return _0x3d77a1;})});}_0xc127be=_[_0xa613('0x50')]({},_0xc127be,_0xc267b1[_0xa613('0x52')]);return db[_0xa613('0x71')]['count']({'where':_0xc127be['where']})['then'](function(_0x1fbb0e){_0x9ce484['count']=_0x1fbb0e;if(_0xc267b1[_0xa613('0x47')]['includeAll']){_0xc127be['include']=[{'all':!![]}];}return db[_0xa613('0x71')]['findAll'](_0xc127be);})[_0xa613('0x24')](function(_0x28cc5a){_0x9ce484[_0xa613('0x55')]=_0x28cc5a;return _0x9ce484;});}})['then'](respondWithFilteredResult(_0x5d17c7,_0xc127be))[_0xa613('0x2f')](handleError(_0x5d17c7,null));};exports[_0xa613('0x74')]=function(_0xc91556,_0x12bea5,_0xdad431){return db[_0xa613('0x42')][_0xa613('0x5c')]({'where':{'id':_0xc91556['params']['id']}})[_0xa613('0x24')](handleEntityNotFound(_0x12bea5,null))[_0xa613('0x24')](function(_0x3d08d5){if(_0x3d08d5){return _0x3d08d5[_0xa613('0x74')](_0xc91556[_0xa613('0x47')][_0xa613('0x6f')]);}})[_0xa613('0x24')](respondWithStatusCode(_0x12bea5,null))[_0xa613('0x2f')](handleError(_0x12bea5,null));};exports[_0xa613('0x75')]=function(_0x19d2dc,_0x2dbcc0,_0x495623){var _0x21494f={'body':_0x19d2dc[_0xa613('0x64')],'channel':'openchannel'};var _0x222f2f=[];var _0x468ef4=[];var _0x18ea7a={};var _0x39cdb1=![];return db[_0xa613('0x76')][_0xa613('0x65')]()[_0xa613('0x24')](function(_0x4c30b5){if(!_0x4c30b5){throw new db[(_0xa613('0x77'))][(_0xa613('0x78'))](_0xa613('0x79'));}_0x222f2f=_['difference'](_[_0xa613('0x5a')](_0x4c30b5),[_0xa613('0x7a'),'updatedAt']);_0x468ef4=_[_0xa613('0x7b')](_[_0xa613('0x5a')](_0x4c30b5),[_0xa613('0x7a'),_0xa613('0x7c'),_0xa613('0x7d'),_0xa613('0x7e')]);if(_0x19d2dc[_0xa613('0x64')]['id']){delete _0x19d2dc[_0xa613('0x64')]['id'];}if(_[_0xa613('0x7f')](_0x19d2dc[_0xa613('0x64')]['from'])){throw new db['Sequelize'][(_0xa613('0x78'))](_0xa613('0x80'));}if(_[_0xa613('0x7f')](_0x19d2dc[_0xa613('0x64')][_0xa613('0x64')])||_0x19d2dc['body'][_0xa613('0x64')]===''){throw new db['Sequelize'][(_0xa613('0x78'))]('body\x20is\x20mandatory\x20and\x20not\x20empty');}if(_[_0xa613('0x7f')](_0x19d2dc[_0xa613('0x64')][_0xa613('0x81')])){throw new db[(_0xa613('0x77'))][(_0xa613('0x78'))]('mapKey\x20is\x20mandatory,\x20please\x20use\x20one\x20of\x20these:\x20'+_0x468ef4);}if(!_['includes'](_0x468ef4,_0x19d2dc[_0xa613('0x64')][_0xa613('0x81')])){throw new db['Sequelize']['ValidationError'](_0xa613('0x82')+_0x468ef4);}_0x18ea7a[_0x19d2dc['body']['mapKey']]=_0x19d2dc['body']['from'];})[_0xa613('0x24')](function(){return db['OpenchannelAccount'][_0xa613('0x5c')]({'where':{'id':_0x19d2dc[_0xa613('0x57')]['id']},'include':[{'model':db['CmList'],'as':_0xa613('0x83'),'include':[{'model':db[_0xa613('0x76')],'as':_0xa613('0x84'),'where':_0x18ea7a,'limit':0x1,'order':[[_0xa613('0x7c'),'DESC']]}]},{'model':db[_0xa613('0x85')],'as':_0xa613('0x86')}]});})[_0xa613('0x24')](handleEntityNotFound(_0x2dbcc0,null))[_0xa613('0x24')](function(_0x378cef){if(_0x378cef&&_0x378cef[_0xa613('0x83')]){_0x21494f['account']=_0x378cef;_0x21494f[_0xa613('0x87')]=_0x378cef['Applications'];_0x21494f['list']=_0x378cef['List'];_0x21494f[_0xa613('0x87')]=_[_0xa613('0x88')](_0x21494f[_0xa613('0x87')],['priority'],[_0xa613('0x89')]);if(_0x21494f['account'][_0xa613('0x86')]){delete _0x21494f[_0xa613('0x8a')][_0xa613('0x86')];}if(_0x21494f[_0xa613('0x8a')][_0xa613('0x83')]&&_0x21494f[_0xa613('0x8a')][_0xa613('0x83')][_0xa613('0x84')][_0xa613('0x4b')]){return _0x21494f[_0xa613('0x8a')]['List'][_0xa613('0x84')][0x0];}var _0xc25cac=_[_0xa613('0x1b')](_0x19d2dc[_0xa613('0x64')],{'firstName':_0x19d2dc[_0xa613('0x64')][_0xa613('0x8b')],'ListId':_0x378cef[_0xa613('0x7e')]});_0xc25cac[_0x19d2dc[_0xa613('0x64')][_0xa613('0x81')]]=_0x19d2dc['body'][_0xa613('0x8b')];return db[_0xa613('0x76')][_0xa613('0x5d')](_0xc25cac,{'fields':_0x222f2f,'raw':!![]});}})['then'](handleEntityNotFound(_0x2dbcc0,null))[_0xa613('0x24')](function(_0x4f9afc){_0x21494f[_0xa613('0x8c')]=_0x4f9afc;if(_0x4f9afc){var _0x19422b={'ContactId':_0x4f9afc['id'],'OpenchannelAccountId':_0x19d2dc[_0xa613('0x57')]['id'],'from':(_0x4f9afc['firstName']||'')+'\x20'+(_0x4f9afc['lastName']||'')};var _0x146f72={'OpenchannelAccountId':_0x19d2dc[_0xa613('0x57')]['id'],'closed':![]};if(_0x19d2dc[_0xa613('0x64')]['threadId']){_0x146f72[_0xa613('0x8d')]=_0x19d2dc['body'][_0xa613('0x8d')];return db['OpenchannelInteraction'][_0xa613('0x5c')]({'where':_0x146f72})[_0xa613('0x24')](function(_0x16b8cd){if(_0x16b8cd){return[_0x16b8cd,![]];}_0x19422b['threadId']=_0x19d2dc[_0xa613('0x64')]['threadId'];_0x19422b['externalUrl']=_0x19d2dc[_0xa613('0x64')][_0xa613('0x8e')];return db['OpenchannelInteraction']['create'](_0x19422b)[_0xa613('0x24')](function(_0x3764a5){return[_0x3764a5,!![]];});});}else{_0x146f72[_0xa613('0x8d')]=null;}_0x146f72[_0xa613('0x8f')]=_0x4f9afc['id'];return db['OpenchannelInteraction'][_0xa613('0x5c')]({'where':_0x146f72})[_0xa613('0x24')](function(_0x11289f){if(_0x11289f){return[_0x11289f,![]];}return db[_0xa613('0x90')][_0xa613('0x5d')](_0x19422b)['then'](function(_0x58b12a){return[_0x58b12a,!![]];});});}})[_0xa613('0x91')](function(_0x12ba92,_0x2b5205){if(_0x12ba92){_0x39cdb1=_0x2b5205;if(!_0x2b5205){var _0x4d2c55={'from':(_0x21494f[_0xa613('0x8c')]['firstName']||'')+'\x20'+(_0x21494f[_0xa613('0x8c')][_0xa613('0x92')]||'')};if(_0x19d2dc[_0xa613('0x64')]['threadId']&&_0x19d2dc[_0xa613('0x64')][_0xa613('0x93')]&&_0x19d2dc[_0xa613('0x64')][_0xa613('0x8d')]!=_0x19d2dc['body'][_0xa613('0x93')]){_0x4d2c55[_0xa613('0x8d')]=_0x19d2dc['body'][_0xa613('0x93')];}return _0x12ba92[_0xa613('0x38')](_0x4d2c55);}else{return _0x12ba92;}}})[_0xa613('0x24')](function(_0x453102){_0x21494f[_0xa613('0x94')]=_0x453102[_0xa613('0x3a')]({'plain':!![]});_0x21494f[_0xa613('0x94')][_0xa613('0x95')]=_0x39cdb1;if(_0x21494f[_0xa613('0x94')]['created']){if(_0x21494f['account']['autoclose']){_0x21494f[_0xa613('0x87')][_0xa613('0x96')]({'id':0x0,'priority':_0x21494f[_0xa613('0x87')][_0xa613('0x4b')]+0x1,'app':_0xa613('0x97'),'appdata':_0xa613('0x98'),'interval':'*,*,*,*'});}}return db[_0xa613('0x99')][_0xa613('0x5d')]({'body':_0x19d2dc['body'][_0xa613('0x64')],'OpenchannelAccountId':_0x19d2dc[_0xa613('0x57')]['id'],'OpenchannelInteractionId':_0x453102['id'],'direction':'in','ContactId':_0x21494f[_0xa613('0x8c')]['id'],'AttachmentId':_0x19d2dc[_0xa613('0x64')][_0xa613('0x9a')]});})['then'](function(_0x5132c2){_0x21494f[_0xa613('0x2d')]=_0x5132c2;if(_0x21494f[_0xa613('0x94')]['UserId']){return db[_0xa613('0x9b')][_0xa613('0x5c')]({'attributes':['id',_0xa613('0x3e')],'where':{'id':_0x21494f[_0xa613('0x94')][_0xa613('0x9c')]}})[_0xa613('0x24')](function(_0x176728){if(_0x176728){_0x21494f['applications'][_0xa613('0x9d')]({'id':0x0,'priority':0x0,'app':_0xa613('0x9e'),'appdata':_0x176728[_0xa613('0x3e')]+','+(_0x21494f[_0xa613('0x8a')]['waitForTheAssignedAgent']||0xa),'interval':_0xa613('0x9f')});_0x21494f['forcedOwnership']=![];}return respondWithRpcPromise('Start','startRouting',_0x21494f);});}return respondWithRpcPromise(_0xa613('0xa0'),_0xa613('0xa1'),_0x21494f);})[_0xa613('0x24')](function(_0x2a1aef){respondWithRpcPromise(_0xa613('0xa2'),'EventManager',{'event':_0xa613('0x75'),'message':_0x2a1aef},client9002);return _0x2a1aef;})[_0xa613('0x24')](respondWithResult(_0x2dbcc0,null))['catch'](handleError(_0x2dbcc0,null));};exports[_0xa613('0xa3')]=function(_0x49eb5b,_0xd4c743,_0x575792){return db[_0xa613('0x42')][_0xa613('0x69')]({'where':{'id':_0x49eb5b[_0xa613('0x57')]['id']}})[_0xa613('0x24')](handleEntityNotFound(_0xd4c743,null))[_0xa613('0x24')](function(_0x1ec065){if(_0x1ec065){return db['sequelize'][_0xa613('0xa4')](function(_0x49a131){return db[_0xa613('0x85')][_0xa613('0x39')]({'where':{'OpenchannelAccountId':_0x49eb5b[_0xa613('0x57')]['id']},'transaction':_0x49a131})['then'](function(_0x27498f){var _0x3940a5=_[_0xa613('0x41')](_0x49eb5b[_0xa613('0x64')],function(_0xc29d11){_0xc29d11[_0xa613('0x67')]=_0x49eb5b['params']['id'];return _0xc29d11;});return db[_0xa613('0x85')]['bulkCreate'](_0x3940a5,{'transaction':_0x49a131});});})[_0xa613('0x24')](function(){return db[_0xa613('0x85')]['findAndCountAll']({'where':{'OpenchannelAccountId':_0x49eb5b[_0xa613('0x57')]['id']},'order':'priority'});});}})['then'](respondWithResult(_0xd4c743,null))[_0xa613('0x2f')](handleError(_0xd4c743,null));};exports[_0xa613('0xa5')]=function(_0x1c3be5,_0x3c5ed8,_0x4d4c34){var _0x3f377a={};var _0x23946b={};var _0x216208;var _0x5dd0eb;return db[_0xa613('0x42')][_0xa613('0x69')]({'where':{'id':_0x1c3be5[_0xa613('0x57')]['id']}})['then'](handleEntityNotFound(_0x3c5ed8,null))[_0xa613('0x24')](function(_0x44c9ac){if(_0x44c9ac){_0x216208=_0x44c9ac;_0x23946b[_0xa613('0x46')]=_[_0xa613('0x5a')](db[_0xa613('0x85')][_0xa613('0x6b')]);_0x23946b[_0xa613('0x47')]=_['keys'](_0x1c3be5[_0xa613('0x47')]);_0x23946b[_0xa613('0x5b')]=_['intersection'](_0x23946b[_0xa613('0x46')],_0x23946b[_0xa613('0x47')]);_0x3f377a['attributes']=_[_0xa613('0x48')](_0x23946b[_0xa613('0x46')],qs[_0xa613('0x4a')](_0x1c3be5[_0xa613('0x47')][_0xa613('0x4a')]));_0x3f377a['attributes']=_0x3f377a[_0xa613('0x49')][_0xa613('0x4b')]?_0x3f377a[_0xa613('0x49')]:_0x23946b[_0xa613('0x46')];_0x3f377a['order']=qs[_0xa613('0x4e')](_0x1c3be5[_0xa613('0x47')]['sort']);_0x3f377a[_0xa613('0x4f')]=qs['filters'](_[_0xa613('0xa6')](_0x1c3be5[_0xa613('0x47')],_0x23946b['filters']));if(_0x1c3be5[_0xa613('0x47')][_0xa613('0x51')]){_0x3f377a[_0xa613('0x4f')]=_[_0xa613('0x50')](_0x3f377a[_0xa613('0x4f')],{'$or':_[_0xa613('0x41')](_0x3f377a[_0xa613('0x49')],function(_0x432ca6){var _0x1b6e87={};_0x1b6e87[_0x432ca6]={'$like':'%'+_0x1c3be5[_0xa613('0x47')][_0xa613('0x51')]+'%'};return _0x1b6e87;})});}_0x3f377a=_[_0xa613('0x50')]({},_0x3f377a,_0x1c3be5[_0xa613('0x52')]);return _0x216208[_0xa613('0xa5')](_0x3f377a);}})[_0xa613('0x24')](function(_0x382e25){if(_0x382e25){_0x5dd0eb=_0x382e25['length'];if(!_0x1c3be5[_0xa613('0x47')][_0xa613('0x4c')](_0xa613('0x73'))){_0x3f377a[_0xa613('0x4d')]=qs[_0xa613('0x4d')](_0x1c3be5['query'][_0xa613('0x4d')]);_0x3f377a['offset']=qs['offset'](_0x1c3be5['query']['offset']);}return _0x216208[_0xa613('0xa5')](_0x3f377a);}})[_0xa613('0x24')](function(_0x3a075a){if(_0x3a075a){return _0x3a075a?{'count':_0x5dd0eb,'rows':_0x3a075a}:null;}})[_0xa613('0x24')](respondWithResult(_0x3c5ed8,null))[_0xa613('0x2f')](handleError(_0x3c5ed8,null));};exports[_0xa613('0xa7')]=function(_0x536b35,_0x2ddca5,_0x363e39){var _0x273936={'raw':![],'where':{}};var _0x229ed7={};var _0x1237cc={'count':0x0,'rows':[]};return db['OpenchannelAccount']['findOne']({'where':{'id':_0x536b35[_0xa613('0x57')]['id']}})[_0xa613('0x24')](handleEntityNotFound(_0x2ddca5,null))['then'](function(_0x1949eb){if(_0x1949eb){_0x229ed7[_0xa613('0x46')]=_[_0xa613('0x5a')](db[_0xa613('0x90')][_0xa613('0x6b')]);_0x229ed7[_0xa613('0x47')]=_[_0xa613('0x5a')](_0x536b35[_0xa613('0x47')]);_0x229ed7[_0xa613('0x5b')]=_[_0xa613('0x48')](_0x229ed7[_0xa613('0x46')],_0x229ed7[_0xa613('0x47')]);_0x273936['attributes']=_['intersection'](_0x229ed7[_0xa613('0x46')],qs[_0xa613('0x4a')](_0x536b35[_0xa613('0x47')]['fields']));_0x273936[_0xa613('0x49')]=_0x273936[_0xa613('0x49')][_0xa613('0x4b')]?_0x273936[_0xa613('0x49')]:_0x229ed7[_0xa613('0x46')];if(!_0x536b35[_0xa613('0x47')][_0xa613('0x4c')]('nolimit')){_0x273936[_0xa613('0x4d')]=qs[_0xa613('0x4d')](_0x536b35[_0xa613('0x47')][_0xa613('0x4d')]);_0x273936['offset']=qs[_0xa613('0x34')](_0x536b35['query']['offset']);}_0x273936[_0xa613('0x6c')]=qs[_0xa613('0x4e')](_0x536b35[_0xa613('0x47')][_0xa613('0x4e')]);_0x273936['where']=qs['filters'](_[_0xa613('0xa6')](_0x536b35[_0xa613('0x47')],_0x229ed7[_0xa613('0x5b')]));_0x273936['where'][_0xa613('0x67')]=_0x1949eb['id'];if(_0x536b35[_0xa613('0x47')]['filter']){_0x273936['where']=_[_0xa613('0x50')](_0x273936['where'],{'$or':_[_0xa613('0x41')](_0x273936['attributes'],function(_0x56591c){var _0x29e585={};_0x29e585[_0x56591c]={'$like':'%'+_0x536b35[_0xa613('0x47')][_0xa613('0x51')]+'%'};return _0x29e585;})});}_0x273936=_[_0xa613('0x50')]({},_0x273936,_0x536b35[_0xa613('0x52')]);return db['OpenchannelInteraction']['count']({'where':_0x273936[_0xa613('0x4f')]})[_0xa613('0x24')](function(_0x2ac937){_0x1237cc[_0xa613('0x33')]=_0x2ac937;if(_0x536b35[_0xa613('0x47')]['includeAll']){_0x273936[_0xa613('0x54')]=[{'model':db[_0xa613('0x76')],'as':_0xa613('0xa8'),'required':![]},{'model':db[_0xa613('0x9b')],'as':_0xa613('0xa9'),'attributes':[_0xa613('0x3e'),_0xa613('0xaa'),_0xa613('0xab')],'required':![]},{'model':db[_0xa613('0xac')],'as':_0xa613('0xad'),'attributes':['id',_0xa613('0x3e'),_0xa613('0xae')],'where':_0x536b35['query']['tag']?{'id':_0x536b35[_0xa613('0x47')][_0xa613('0xaf')]}:undefined,'required':_0x536b35[_0xa613('0x47')][_0xa613('0xaf')]?!![]:![]}];}return db[_0xa613('0x90')][_0xa613('0x6d')](_0x273936);})[_0xa613('0x24')](function(_0x437258){_0x1237cc[_0xa613('0x55')]=_0x437258;return _0x1237cc;});}})[_0xa613('0x24')](respondWithFilteredResult(_0x2ddca5,_0x273936))[_0xa613('0x2f')](handleError(_0x2ddca5,null));};exports[_0xa613('0xb0')]=function(_0x3251e0,_0x51ce19,_0x356677){return db['OpenchannelAccount'][_0xa613('0x5c')]({'where':{'id':_0x3251e0['params']['id']}})['then'](handleEntityNotFound(_0x51ce19,null))[_0xa613('0x24')](function(_0x3290bf){if(_0x3290bf){return _0x3290bf[_0xa613('0xb0')](_0x3251e0[_0xa613('0x64')][_0xa613('0x6f')],_[_0xa613('0xb1')](_0x3251e0[_0xa613('0x64')],[_0xa613('0x6f'),'id'])||{})[_0xa613('0x91')](function(_0x529e21){for(var _0x15244e=0x0;_0x15244e<_0x3251e0[_0xa613('0x64')][_0xa613('0x6f')][_0xa613('0x4b')];_0x15244e+=0x1){socket[_0xa613('0xb2')]('userOpenchannelAccount:save',{'UserId':_0x3251e0[_0xa613('0x64')]['ids'][_0x15244e],'OpenchannelAccountId':_0x3251e0[_0xa613('0x57')]['id']});}return _0x529e21;});}})[_0xa613('0x24')](respondWithResult(_0x51ce19,null))[_0xa613('0x2f')](handleError(_0x51ce19,null));};exports[_0xa613('0xb3')]=function(_0x5b4e56,_0xcc6ea0,_0x1c5364){return db[_0xa613('0x42')][_0xa613('0x5c')]({'where':{'id':_0x5b4e56[_0xa613('0x57')]['id']}})[_0xa613('0x24')](handleEntityNotFound(_0xcc6ea0,null))['then'](function(_0x2baf6e){if(_0x2baf6e){return _0x2baf6e['removeAgents'](_0x5b4e56[_0xa613('0x47')][_0xa613('0x6f')])[_0xa613('0x24')](function(){if(_['isArray'](_0x5b4e56[_0xa613('0x47')][_0xa613('0x6f')])){for(var _0x5d1079=0x0;_0x5d1079<_0x5b4e56[_0xa613('0x47')][_0xa613('0x6f')][_0xa613('0x4b')];_0x5d1079+=0x1){socket[_0xa613('0xb2')](_0xa613('0xb4'),{'UserId':Number(_0x5b4e56[_0xa613('0x47')]['ids'][_0x5d1079]),'OpenchannelAccountId':Number(_0x5b4e56[_0xa613('0x57')]['id'])});}}else{socket[_0xa613('0xb2')](_0xa613('0xb4'),{'UserId':Number(_0x5b4e56[_0xa613('0x47')]['ids']),'OpenchannelAccountId':Number(_0x5b4e56['params']['id'])});}});}})['then'](respondWithStatusCode(_0xcc6ea0,null))[_0xa613('0x2f')](handleError(_0xcc6ea0,null));};exports['getAgents']=function(_0xf246ad,_0x29555a,_0x15c29c){var _0x175987={};var _0x361cb8={};var _0x27377e;var _0x5ddf11;return db[_0xa613('0x42')]['findOne']({'where':{'id':_0xf246ad[_0xa613('0x57')]['id']}})[_0xa613('0x24')](handleEntityNotFound(_0x29555a,null))['then'](function(_0x5333a4){if(_0x5333a4){_0x27377e=_0x5333a4;_0x361cb8[_0xa613('0x46')]=_[_0xa613('0x5a')](db[_0xa613('0x9b')][_0xa613('0x6b')]);_0x361cb8[_0xa613('0x47')]=_[_0xa613('0x5a')](_0xf246ad[_0xa613('0x47')]);_0x361cb8[_0xa613('0x5b')]=_[_0xa613('0x48')](_0x361cb8[_0xa613('0x46')],_0x361cb8[_0xa613('0x47')]);_0x175987[_0xa613('0x49')]=_['intersection'](_0x361cb8['model'],qs[_0xa613('0x4a')](_0xf246ad['query'][_0xa613('0x4a')]));_0x175987[_0xa613('0x49')]=_0x175987[_0xa613('0x49')][_0xa613('0x4b')]?_0x175987[_0xa613('0x49')]:_0x361cb8['model'];_0x175987['order']=qs['sort'](_0xf246ad[_0xa613('0x47')][_0xa613('0x4e')]);_0x175987[_0xa613('0x4f')]=qs[_0xa613('0x5b')](_[_0xa613('0xa6')](_0xf246ad['query'],_0x361cb8[_0xa613('0x5b')]));if(_0xf246ad['query'][_0xa613('0x51')]){_0x175987['where']=_[_0xa613('0x50')](_0x175987['where'],{'$or':_[_0xa613('0x41')](_0x175987[_0xa613('0x49')],function(_0x49de29){var _0x386436={};_0x386436[_0x49de29]={'$like':'%'+_0xf246ad[_0xa613('0x47')][_0xa613('0x51')]+'%'};return _0x386436;})});}_0x175987=_[_0xa613('0x50')]({},_0x175987,_0xf246ad[_0xa613('0x52')]);return _0x27377e['getAgents'](_0x175987);}})[_0xa613('0x24')](function(_0x5f5c6e){if(_0x5f5c6e){_0x5ddf11=_0x5f5c6e[_0xa613('0x4b')];if(!_0xf246ad[_0xa613('0x47')]['hasOwnProperty'](_0xa613('0x73'))){_0x175987['limit']=qs[_0xa613('0x4d')](_0xf246ad[_0xa613('0x47')][_0xa613('0x4d')]);_0x175987[_0xa613('0x34')]=qs[_0xa613('0x34')](_0xf246ad[_0xa613('0x47')][_0xa613('0x34')]);}return _0x27377e[_0xa613('0xb5')](_0x175987);}})[_0xa613('0x24')](function(_0x3e7df7){if(_0x3e7df7){return _0x3e7df7?{'count':_0x5ddf11,'rows':_0x3e7df7}:null;}})[_0xa613('0x24')](respondWithResult(_0x29555a,null))['catch'](handleError(_0x29555a,null));};exports[_0xa613('0x3f')]=function(_0x181a6c,_0x4393b2,_0x1cce8d){var _0x55512f,_0x484a76,_0x505873;if(_[_0xa613('0x7f')](_0x181a6c['body'][_0xa613('0x64')])||_0x181a6c['body'][_0xa613('0x64')]===''){throw new db[(_0xa613('0x77'))]['ValidationError']('body\x20is\x20mandatory\x20and\x20not\x20empty');}if(_['isNil'](_0x181a6c[_0xa613('0x64')]['to'])){}_0x55512f=_0x181a6c[_0xa613('0x64')]['to'];return db[_0xa613('0x42')][_0xa613('0x69')]({'where':{'id':_0x181a6c['params']['id']}})[_0xa613('0x24')](handleEntityNotFound(_0x4393b2,null))['then'](function(_0x7206ff){if(_0x7206ff){return db[_0xa613('0x42')][_0xa613('0x5c')]({'where':{'id':_0x7206ff['id']},'include':[{'model':db['CmList'],'as':_0xa613('0x83'),'include':[{'model':db[_0xa613('0x76')],'as':'Contacts','where':{[_0x7206ff[_0xa613('0x81')]]:_0x55512f},'limit':0x1,'order':[[_0xa613('0x7c'),'DESC']]}]}]})[_0xa613('0x24')](handleEntityNotFound(_0x4393b2,null))['then'](function(_0x2f83aa){if(_0x2f83aa&&_0x2f83aa[_0xa613('0x83')]){_0x484a76=_0x2f83aa['get']({'plain':!![]});if(_0x484a76[_0xa613('0x83')]&&_0x484a76[_0xa613('0x83')][_0xa613('0x84')][_0xa613('0x4b')]){return _0x484a76[_0xa613('0x83')][_0xa613('0x84')][0x0];}return db['CmContact'][_0xa613('0x5d')](_[_0xa613('0x1b')](_0x181a6c[_0xa613('0x64')],{'firstName':_0x55512f,[_0x2f83aa['mapKey']]:_0x55512f,'phone':_0x55512f,'ListId':_0x484a76[_0xa613('0x7e')]}));}})['then'](handleEntityNotFound(_0x4393b2,null))[_0xa613('0x24')](function(_0x393aac){if(_0x393aac){_0x505873=_0x393aac;return db[_0xa613('0x90')][_0xa613('0x5c')]({'where':{'ContactId':_0x505873['id'],'closed':![],'OpenchannelAccountId':_0x484a76['id']}})['then'](function(_0x4dfa65){if(_0x4dfa65){return[_0x4dfa65,![]];}return db[_0xa613('0x90')][_0xa613('0x5d')]({'UserId':_0x181a6c[_0xa613('0x5f')]['id'],'ContactId':_0x505873['id'],'OpenchannelAccountId':_0x484a76['id'],'lastMsgDirection':_0xa613('0xb6'),'Messages':[_[_0xa613('0x50')](_0x181a6c[_0xa613('0x64')],{'read':![],'body':_0x181a6c[_0xa613('0x64')][_0xa613('0x64')],'OpenchannelAccountId':_0x484a76['id'],'UserId':_0x181a6c[_0xa613('0x5f')]['id'],'ContactId':_0x505873['id']})]},{'include':[{'model':db[_0xa613('0x99')],'as':_0xa613('0xb7')}]})[_0xa613('0x24')](function(_0x87368f){return[_0x87368f,!![]];});});}})[_0xa613('0x91')](function(_0x14a82f,_0x4120ab){if(_0x4120ab){return _0x14a82f;}return db[_0xa613('0x99')][_0xa613('0x5d')](_[_0xa613('0x50')](_0x181a6c['body'],{'read':![],'body':_0x181a6c[_0xa613('0x64')][_0xa613('0x64')],'OpenchannelAccountId':_0x484a76['id'],'OpenchannelInteractionId':_0x14a82f['id'],'UserId':_0x181a6c['user']['id'],'ContactId':_0x505873['id']}))[_0xa613('0x24')](function(_0x2e36e6){_0x14a82f[_0xa613('0xb8')][_0xa613('0xb7')]=[];_0x14a82f['dataValues']['Messages']['push'](_0x2e36e6['dataValues']);return _0x14a82f;});});}})['then'](respondWithResult(_0x4393b2,null))[_0xa613('0x2f')](handleError(_0x4393b2,null));};