2542ec235b168945ecf6d90118000fc35f723706
[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 _0xf31c=['DESC','OpenchannelApplication','Applications','account','applications','orderBy','priority','asc','contact','firstName','lastName','threadId','externalUrl','OpenchannelInteraction','ContactId','spread','messageId','interaction','created','autoclose','push','close','OpenchannelMessage','AttachmentId','UserId','unshift','agent','*,*,*,*','forcedOwnership','Start','startRouting','EventManager','addApplications','transaction','bulkCreate','findAndCountAll','getApplications','getInteractions','Contact','User','Owner','fullname','internal','Tag','Tags','color','tag','addAgents','emit','userOpenchannelAccount:save','removeAgents','userOpenchannelAccount:remove','getAgents','send','out','dataValues','Messages','html-pdf','eml-format','rimraf','request-promise','moment','mustache','util','path','sox','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js','papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','../../mysqldb','redis','defaults','socket.io-emitter','./openchannelAccount.socket','register','jayson/promise','client','http','test','The\x20password\x20must\x20be\x20at\x20least\x208\x20characters\x20long\x20and\x20have\x201\x20lowercase\x20character,\x201\x20uppercase\x20character,\x201\x20number\x20and\x201\x20special\x20character\x20~!@#$%^&-_=+[{]}.','request','then','info','request\x20sent','debug','OpenchannelAccount,\x20%s,\x20%s,\x20%s','stringify','error','code','OpenchannelAccount,\x20%s,\x20%s','message','result','catch','status','json','count','offset','Content-Range','save','update','destroy','UserProfileResource','end','sendStatus','stack','name','index','Pause','mandatoryDispositionPause','map','OpenchannelAccount','rawAttributes','fieldName','key','model','query','intersection','fields','attributes','length','hasOwnProperty','nolimit','limit','sort','filters','where','merge','type','VIRTUAL','filter','includeAll','include','findAll','rows','show','params','keys','options','find','create','user','get','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','OpenchannelAccounts','UserProfileSection','body','describe','addDisposition','OpnechannelAccountId','Disposition','findOne','order','pick','removeDispositions','ids','addAnswer','OpenchannelAccountId','CannedAnswer','notify','CmContact','Sequelize','no\x20available\x20attributes','difference','createdAt','updatedAt','ListId','isNil','ValidationError','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','from','List','Contacts'];(function(_0x4b7f28,_0x27d23a){var _0xf5b553=function(_0x1cb9c1){while(--_0x1cb9c1){_0x4b7f28['push'](_0x4b7f28['shift']());}};_0xf5b553(++_0x27d23a);}(_0xf31c,0x1b3));var _0xcf31=function(_0x1992f1,_0x5c61f0){_0x1992f1=_0x1992f1-0x0;var _0x413dfe=_0xf31c[_0x1992f1];return _0x413dfe;};'use strict';var pdf=require(_0xcf31('0x0'));var emlformat=require(_0xcf31('0x1'));var rimraf=require(_0xcf31('0x2'));var zipdir=require('zip-dir');var jsonpatch=require('fast-json-patch');var rp=require(_0xcf31('0x3'));var moment=require(_0xcf31('0x4'));var BPromise=require('bluebird');var Mustache=require(_0xcf31('0x5'));var util=require(_0xcf31('0x6'));var path=require(_0xcf31('0x7'));var sox=require(_0xcf31('0x8'));var csv=require(_0xcf31('0x9'));var ejs=require(_0xcf31('0xa'));var fs=require('fs');var _=require(_0xcf31('0xb'));var squel=require(_0xcf31('0xc'));var crypto=require(_0xcf31('0xd'));var jsforce=require(_0xcf31('0xe'));var deskjs=require(_0xcf31('0xf'));var toCsv=require(_0xcf31('0x9'));var querystring=require('querystring');var Papa=require(_0xcf31('0x10'));var Redis=require(_0xcf31('0x11'));var authService=require(_0xcf31('0x12'));var qs=require('../../components/parsers/qs');var as=require(_0xcf31('0x13'));var hardwareService=require(_0xcf31('0x14'));var logger=require(_0xcf31('0x15'))('api');var utils=require(_0xcf31('0x16'));var config=require(_0xcf31('0x17'));var db=require(_0xcf31('0x18'))['db'];config[_0xcf31('0x19')]=_[_0xcf31('0x1a')](config[_0xcf31('0x19')],{'host':'localhost','port':0x18eb});var socket=require(_0xcf31('0x1b'))(new Redis(config[_0xcf31('0x19')]));require(_0xcf31('0x1c'))[_0xcf31('0x1d')](socket);var jayson=require(_0xcf31('0x1e'));var client=jayson[_0xcf31('0x1f')][_0xcf31('0x20')]({'port':0x232c});var client9002=jayson[_0xcf31('0x1f')][_0xcf31('0x20')]({'port':0x232a});function checkPasswordPattern(_0x11b97f,_0x220650,_0x43abb5){if(_0x43abb5){var _0x568056=new RegExp(/(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[?!@#\$%\^&\*~\-_=+[{\]\}])(?=.{8,})/);if(_0x568056[_0xcf31('0x21')](_0x220650)){return _0x11b97f;}else{throw new db['Sequelize']['ValidationError'](_0xcf31('0x22'));}}else{return _0x11b97f;}}function respondWithRpcPromise(_0x5cdd27,_0x4a3436,_0x359113,_0x1ec8a7){return new BPromise(function(_0x5a58e0,_0x10d456){var _0x1039b5=_0x1ec8a7||client;return _0x1039b5[_0xcf31('0x23')](_0x5cdd27,_0x359113)[_0xcf31('0x24')](function(_0x46a111){logger[_0xcf31('0x25')]('OpenchannelAccount,\x20%s,\x20%s',_0x4a3436,_0xcf31('0x26'));logger[_0xcf31('0x27')](_0xcf31('0x28'),_0x4a3436,'request\x20sent',JSON[_0xcf31('0x29')](_0x46a111));if(_0x46a111[_0xcf31('0x2a')]){if(_0x46a111[_0xcf31('0x2a')][_0xcf31('0x2b')]===0x1f4){logger[_0xcf31('0x2a')](_0xcf31('0x2c'),_0x4a3436,_0x46a111[_0xcf31('0x2a')][_0xcf31('0x2d')]);return _0x10d456(_0x46a111[_0xcf31('0x2a')][_0xcf31('0x2d')]);}logger[_0xcf31('0x2a')](_0xcf31('0x2c'),_0x4a3436,_0x46a111[_0xcf31('0x2a')][_0xcf31('0x2d')]);return _0x5a58e0(_0x46a111[_0xcf31('0x2a')]['message']);}else{logger[_0xcf31('0x25')]('OpenchannelAccount,\x20%s,\x20%s',_0x4a3436,'request\x20sent');_0x5a58e0(_0x46a111[_0xcf31('0x2e')][_0xcf31('0x2d')]);}})[_0xcf31('0x2f')](function(_0x54cb92){logger['error'](_0xcf31('0x2c'),_0x4a3436,_0x54cb92);_0x10d456(_0x54cb92);});});}function respondWithStatusCode(_0x54b469,_0xed5a90){_0xed5a90=_0xed5a90||0xcc;return function(_0x10305a){if(_0x10305a){return _0x54b469['sendStatus'](_0xed5a90);}return _0x54b469[_0xcf31('0x30')](_0xed5a90)['end']();};}function respondWithResult(_0x2b204d,_0x14b7fc){_0x14b7fc=_0x14b7fc||0xc8;return function(_0xb2c94c){if(_0xb2c94c){return _0x2b204d[_0xcf31('0x30')](_0x14b7fc)[_0xcf31('0x31')](_0xb2c94c);}};}function respondWithFilteredResult(_0x486c0a,_0x4f775d){return function(_0x519263){if(_0x519263){var _0x5b88d6=_0x519263[_0xcf31('0x32')],_0x22ccc8=_0x4f775d[_0xcf31('0x33')],_0x5cedbe=_0x4f775d[_0xcf31('0x33')]+_0x4f775d['limit'],_0x1a386e;if(_0x5cedbe>=_0x5b88d6){_0x5cedbe=_0x5b88d6;_0x1a386e=0xc8;}else{_0x1a386e=0xce;}_0x486c0a['status'](_0x1a386e);return _0x486c0a['set'](_0xcf31('0x34'),_0x22ccc8+'-'+_0x5cedbe+'/'+_0x5b88d6)[_0xcf31('0x31')](_0x519263);}return null;};}function patchUpdates(_0x55a139){return function(_0x284d81){try{jsonpatch['apply'](_0x284d81,_0x55a139,!![]);}catch(_0x47368d){return BPromise['reject'](_0x47368d);}return _0x284d81[_0xcf31('0x35')]();};}function saveUpdates(_0x592654,_0x133ef0){return function(_0x219d2d){if(_0x219d2d){return _0x219d2d[_0xcf31('0x36')](_0x592654)['then'](function(_0x16848a){return _0x16848a;});}return null;};}function removeEntity(_0x123581,_0x450930){return function(_0x135b1a){if(_0x135b1a){return _0x135b1a[_0xcf31('0x37')]()[_0xcf31('0x24')](function(){var _0x40eb99=_0x135b1a['get']({'plain':!![]});var _0x13e903='OpenchannelAccounts';return db[_0xcf31('0x38')]['destroy']({'where':{'type':_0x13e903,'resourceId':_0x40eb99['id']}})['then'](function(){return _0x135b1a;});})[_0xcf31('0x24')](function(){_0x123581['status'](0xcc)[_0xcf31('0x39')]();});}};}function handleEntityNotFound(_0x33770b,_0x7417eb){return function(_0x525a1c){if(!_0x525a1c){_0x33770b[_0xcf31('0x3a')](0x194);}return _0x525a1c;};}function handleError(_0xe4f8b2,_0x1bad78){_0x1bad78=_0x1bad78||0x1f4;return function(_0x49cfa8){logger['error'](_0x49cfa8[_0xcf31('0x3b')]);if(_0x49cfa8[_0xcf31('0x3c')]){delete _0x49cfa8[_0xcf31('0x3c')];}_0xe4f8b2['status'](_0x1bad78)['send'](_0x49cfa8);};}exports[_0xcf31('0x3d')]=function(_0x43d7a8,_0x2f7e6b){var _0x1b2d96={'include':[{'model':db[_0xcf31('0x3e')],'as':_0xcf31('0x3f')}]},_0xe486d1={},_0x4f5a3a={'count':0x0,'rows':[]};var _0x41de4d=_[_0xcf31('0x40')](db[_0xcf31('0x41')][_0xcf31('0x42')],function(_0x56175c){return{'name':_0x56175c[_0xcf31('0x43')],'type':_0x56175c['type'][_0xcf31('0x44')]};});_0xe486d1[_0xcf31('0x45')]=_['map'](_0x41de4d,_0xcf31('0x3c'));_0xe486d1[_0xcf31('0x46')]=_['keys'](_0x43d7a8['query']);_0xe486d1['filters']=_['intersection'](_0xe486d1[_0xcf31('0x45')],_0xe486d1[_0xcf31('0x46')]);_0x1b2d96['attributes']=_[_0xcf31('0x47')](_0xe486d1[_0xcf31('0x45')],qs[_0xcf31('0x48')](_0x43d7a8[_0xcf31('0x46')][_0xcf31('0x48')]));_0x1b2d96[_0xcf31('0x49')]=_0x1b2d96['attributes'][_0xcf31('0x4a')]?_0x1b2d96[_0xcf31('0x49')]:_0xe486d1[_0xcf31('0x45')];if(!_0x43d7a8[_0xcf31('0x46')][_0xcf31('0x4b')](_0xcf31('0x4c'))){_0x1b2d96[_0xcf31('0x4d')]=qs[_0xcf31('0x4d')](_0x43d7a8[_0xcf31('0x46')]['limit']);_0x1b2d96[_0xcf31('0x33')]=qs['offset'](_0x43d7a8[_0xcf31('0x46')][_0xcf31('0x33')]);}_0x1b2d96['order']=qs[_0xcf31('0x4e')](_0x43d7a8[_0xcf31('0x46')][_0xcf31('0x4e')]);_0x1b2d96['where']=qs['filters'](_['pick'](_0x43d7a8[_0xcf31('0x46')],_0xe486d1[_0xcf31('0x4f')]),_0x41de4d);if(_0x43d7a8[_0xcf31('0x46')]['filter']){_0x1b2d96[_0xcf31('0x50')]=_[_0xcf31('0x51')](_0x1b2d96[_0xcf31('0x50')],{'$or':_[_0xcf31('0x40')](_0x41de4d,function(_0x29c1b3){if(_0x29c1b3[_0xcf31('0x52')]!==_0xcf31('0x53')){var _0x38448d={};_0x38448d[_0x29c1b3[_0xcf31('0x3c')]]={'$like':'%'+_0x43d7a8['query'][_0xcf31('0x54')]+'%'};return _0x38448d;}})});}_0x1b2d96=_[_0xcf31('0x51')]({},_0x1b2d96,_0x43d7a8['options']);var _0x577868={'where':_0x1b2d96[_0xcf31('0x50')]};return db[_0xcf31('0x41')][_0xcf31('0x32')](_0x577868)[_0xcf31('0x24')](function(_0x1033ec){_0x4f5a3a[_0xcf31('0x32')]=_0x1033ec;if(_0x43d7a8[_0xcf31('0x46')][_0xcf31('0x55')]){_0x1b2d96[_0xcf31('0x56')]=[{'all':!![]}];}return db[_0xcf31('0x41')][_0xcf31('0x57')](_0x1b2d96);})['then'](function(_0x58b41d){_0x4f5a3a[_0xcf31('0x58')]=_0x58b41d;return _0x4f5a3a;})['then'](respondWithFilteredResult(_0x2f7e6b,_0x1b2d96))[_0xcf31('0x2f')](handleError(_0x2f7e6b,null));};exports[_0xcf31('0x59')]=function(_0x4b2492,_0x4a5940){var _0x10be4d={'raw':![],'where':{'id':_0x4b2492[_0xcf31('0x5a')]['id']},'include':[{'model':db['Pause'],'as':'mandatoryDispositionPause'}]},_0x5d969e={};_0x5d969e[_0xcf31('0x45')]=_['keys'](db[_0xcf31('0x41')][_0xcf31('0x42')]);_0x5d969e[_0xcf31('0x46')]=_[_0xcf31('0x5b')](_0x4b2492[_0xcf31('0x46')]);_0x5d969e['filters']=_['intersection'](_0x5d969e['model'],_0x5d969e[_0xcf31('0x46')]);_0x10be4d['attributes']=_[_0xcf31('0x47')](_0x5d969e['model'],qs[_0xcf31('0x48')](_0x4b2492['query'][_0xcf31('0x48')]));_0x10be4d[_0xcf31('0x49')]=_0x10be4d['attributes'][_0xcf31('0x4a')]?_0x10be4d[_0xcf31('0x49')]:_0x5d969e[_0xcf31('0x45')];if(_0x4b2492[_0xcf31('0x46')][_0xcf31('0x55')]){_0x10be4d[_0xcf31('0x56')]=[{'all':!![]}];}_0x10be4d=_[_0xcf31('0x51')]({},_0x10be4d,_0x4b2492[_0xcf31('0x5c')]);return db[_0xcf31('0x41')][_0xcf31('0x5d')](_0x10be4d)[_0xcf31('0x24')](handleEntityNotFound(_0x4a5940,null))['then'](respondWithResult(_0x4a5940,null))['catch'](handleError(_0x4a5940,null));};exports['create']=function(_0x104110,_0x3318ea){return db[_0xcf31('0x41')][_0xcf31('0x5e')](_0x104110['body'],{})[_0xcf31('0x24')](function(_0x24166e){var _0x4b3073=_0x104110[_0xcf31('0x5f')][_0xcf31('0x60')]({'plain':!![]});if(!_0x4b3073)throw new Error(_0xcf31('0x61'));if(_0x4b3073[_0xcf31('0x62')]===_0xcf31('0x5f')){var _0x46bf20=_0x24166e[_0xcf31('0x60')]({'plain':!![]});var _0x52497a=_0xcf31('0x63');return db[_0xcf31('0x64')][_0xcf31('0x5d')]({'where':{'name':_0x52497a,'userProfileId':_0x4b3073['userProfileId']},'raw':!![]})[_0xcf31('0x24')](function(_0x55d9d0){if(_0x55d9d0&&_0x55d9d0['autoAssociation']===0x0){return db[_0xcf31('0x38')]['create']({'name':_0x46bf20['name'],'resourceId':_0x46bf20['id'],'type':_0x55d9d0[_0xcf31('0x3c')],'sectionId':_0x55d9d0['id']},{})[_0xcf31('0x24')](function(){return _0x24166e;});}else{return _0x24166e;}})[_0xcf31('0x2f')](function(_0x15ac1e){logger[_0xcf31('0x2a')]('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0x15ac1e);throw _0x15ac1e;});}return _0x24166e;})['then'](respondWithResult(_0x3318ea,0xc9))[_0xcf31('0x2f')](handleError(_0x3318ea,null));};exports[_0xcf31('0x36')]=function(_0xd9ba83,_0x4de143){if(_0xd9ba83[_0xcf31('0x65')]['id']){delete _0xd9ba83[_0xcf31('0x65')]['id'];}return db[_0xcf31('0x41')][_0xcf31('0x5d')]({'where':{'id':_0xd9ba83[_0xcf31('0x5a')]['id']},'include':[{'model':db[_0xcf31('0x3e')],'as':'mandatoryDispositionPause'}]})[_0xcf31('0x24')](handleEntityNotFound(_0x4de143,null))[_0xcf31('0x24')](saveUpdates(_0xd9ba83['body'],null))['then'](respondWithResult(_0x4de143,null))[_0xcf31('0x2f')](handleError(_0x4de143,null));};exports[_0xcf31('0x37')]=function(_0x47b0ec,_0x2b226d){return db[_0xcf31('0x41')]['find']({'where':{'id':_0x47b0ec[_0xcf31('0x5a')]['id']}})[_0xcf31('0x24')](handleEntityNotFound(_0x2b226d,null))[_0xcf31('0x24')](removeEntity(_0x2b226d,null))[_0xcf31('0x2f')](handleError(_0x2b226d,null));};exports[_0xcf31('0x66')]=function(_0x1d8c4a,_0x3b27b3){return db['OpenchannelAccount'][_0xcf31('0x66')]()[_0xcf31('0x24')](respondWithResult(_0x3b27b3,null))[_0xcf31('0x2f')](handleError(_0x3b27b3,null));};exports[_0xcf31('0x67')]=function(_0x4d733f,_0x3ba47b,_0xe8db7a){if(_0x4d733f[_0xcf31('0x65')]['id']){delete _0x4d733f['body']['id'];}return db[_0xcf31('0x41')][_0xcf31('0x5d')]({'where':{'id':_0x4d733f[_0xcf31('0x5a')]['id']}})[_0xcf31('0x24')](handleEntityNotFound(_0x3ba47b,null))[_0xcf31('0x24')](function(_0x2b3098){if(_0x2b3098){_0x4d733f[_0xcf31('0x65')][_0xcf31('0x68')]=_0x2b3098['id'];return db[_0xcf31('0x69')][_0xcf31('0x5e')](_0x4d733f[_0xcf31('0x65')]);}})['then'](respondWithResult(_0x3ba47b,null))['catch'](handleError(_0x3ba47b,null));};exports['getDispositions']=function(_0x4e8ee3,_0x88d40f,_0x32fd89){var _0x5a5b9a={'raw':![],'where':{}};var _0x5071a6={};var _0x238c78={'count':0x0,'rows':[]};return db[_0xcf31('0x41')][_0xcf31('0x6a')]({'where':{'id':_0x4e8ee3[_0xcf31('0x5a')]['id']}})[_0xcf31('0x24')](handleEntityNotFound(_0x88d40f,null))[_0xcf31('0x24')](function(_0x294c8b){if(_0x294c8b){_0x5071a6['model']=_[_0xcf31('0x5b')](db[_0xcf31('0x69')]['rawAttributes']);_0x5071a6['query']=_[_0xcf31('0x5b')](_0x4e8ee3[_0xcf31('0x46')]);_0x5071a6['filters']=_[_0xcf31('0x47')](_0x5071a6['model'],_0x5071a6[_0xcf31('0x46')]);_0x5a5b9a[_0xcf31('0x49')]=_[_0xcf31('0x47')](_0x5071a6[_0xcf31('0x45')],qs[_0xcf31('0x48')](_0x4e8ee3[_0xcf31('0x46')][_0xcf31('0x48')]));_0x5a5b9a[_0xcf31('0x49')]=_0x5a5b9a[_0xcf31('0x49')][_0xcf31('0x4a')]?_0x5a5b9a[_0xcf31('0x49')]:_0x5071a6[_0xcf31('0x45')];if(!_0x4e8ee3[_0xcf31('0x46')][_0xcf31('0x4b')]('nolimit')){_0x5a5b9a[_0xcf31('0x4d')]=qs['limit'](_0x4e8ee3[_0xcf31('0x46')]['limit']);_0x5a5b9a[_0xcf31('0x33')]=qs[_0xcf31('0x33')](_0x4e8ee3[_0xcf31('0x46')][_0xcf31('0x33')]);}_0x5a5b9a[_0xcf31('0x6b')]=qs['sort'](_0x4e8ee3['query'][_0xcf31('0x4e')]);_0x5a5b9a[_0xcf31('0x50')]=qs['filters'](_[_0xcf31('0x6c')](_0x4e8ee3[_0xcf31('0x46')],_0x5071a6[_0xcf31('0x4f')]));_0x5a5b9a['where']['OpenchannelAccountId']=_0x294c8b['id'];if(_0x4e8ee3[_0xcf31('0x46')][_0xcf31('0x54')]){_0x5a5b9a[_0xcf31('0x50')]=_[_0xcf31('0x51')](_0x5a5b9a[_0xcf31('0x50')],{'$or':_[_0xcf31('0x40')](_0x5a5b9a[_0xcf31('0x49')],function(_0x682ae8){var _0x260544={};_0x260544[_0x682ae8]={'$like':'%'+_0x4e8ee3[_0xcf31('0x46')][_0xcf31('0x54')]+'%'};return _0x260544;})});}_0x5a5b9a=_[_0xcf31('0x51')]({},_0x5a5b9a,_0x4e8ee3[_0xcf31('0x5c')]);return db[_0xcf31('0x69')][_0xcf31('0x32')]({'where':_0x5a5b9a[_0xcf31('0x50')]})['then'](function(_0x37455b){_0x238c78[_0xcf31('0x32')]=_0x37455b;if(_0x4e8ee3['query']['includeAll']){_0x5a5b9a[_0xcf31('0x56')]=[{'all':!![]}];}return db[_0xcf31('0x69')]['findAll'](_0x5a5b9a);})[_0xcf31('0x24')](function(_0x39eec2){_0x238c78[_0xcf31('0x58')]=_0x39eec2;return _0x238c78;});}})[_0xcf31('0x24')](respondWithFilteredResult(_0x88d40f,_0x5a5b9a))[_0xcf31('0x2f')](handleError(_0x88d40f,null));};exports[_0xcf31('0x6d')]=function(_0x3dd0e2,_0xdb38e0,_0x1bad4d){return db['OpenchannelAccount'][_0xcf31('0x5d')]({'where':{'id':_0x3dd0e2[_0xcf31('0x5a')]['id']}})['then'](handleEntityNotFound(_0xdb38e0,null))['then'](function(_0x52a22c){if(_0x52a22c){return _0x52a22c[_0xcf31('0x6d')](_0x3dd0e2[_0xcf31('0x46')][_0xcf31('0x6e')]);}})[_0xcf31('0x24')](respondWithStatusCode(_0xdb38e0,null))[_0xcf31('0x2f')](handleError(_0xdb38e0,null));};exports[_0xcf31('0x6f')]=function(_0x29438d,_0x471ed6,_0x4869d0){if(_0x29438d['body']['id']){delete _0x29438d['body']['id'];}return db[_0xcf31('0x41')]['find']({'where':{'id':_0x29438d[_0xcf31('0x5a')]['id']}})[_0xcf31('0x24')](handleEntityNotFound(_0x471ed6,null))[_0xcf31('0x24')](function(_0x53b497){if(_0x53b497){_0x29438d[_0xcf31('0x65')][_0xcf31('0x70')]=_0x53b497['id'];return db['CannedAnswer']['create'](_0x29438d[_0xcf31('0x65')]);}})[_0xcf31('0x24')](respondWithResult(_0x471ed6,null))[_0xcf31('0x2f')](handleError(_0x471ed6,null));};exports['getAnswers']=function(_0x34686d,_0x21520b,_0x3868ae){var _0xf4a945={'raw':![],'where':{}};var _0x2c923f={};var _0x45f2b8={'count':0x0,'rows':[]};return db[_0xcf31('0x41')][_0xcf31('0x6a')]({'where':{'id':_0x34686d[_0xcf31('0x5a')]['id']}})['then'](handleEntityNotFound(_0x21520b,null))[_0xcf31('0x24')](function(_0x4e2060){if(_0x4e2060){_0x2c923f[_0xcf31('0x45')]=_[_0xcf31('0x5b')](db['CannedAnswer'][_0xcf31('0x42')]);_0x2c923f[_0xcf31('0x46')]=_[_0xcf31('0x5b')](_0x34686d[_0xcf31('0x46')]);_0x2c923f[_0xcf31('0x4f')]=_[_0xcf31('0x47')](_0x2c923f['model'],_0x2c923f[_0xcf31('0x46')]);_0xf4a945[_0xcf31('0x49')]=_[_0xcf31('0x47')](_0x2c923f['model'],qs['fields'](_0x34686d['query']['fields']));_0xf4a945[_0xcf31('0x49')]=_0xf4a945[_0xcf31('0x49')][_0xcf31('0x4a')]?_0xf4a945[_0xcf31('0x49')]:_0x2c923f[_0xcf31('0x45')];if(!_0x34686d[_0xcf31('0x46')]['hasOwnProperty'](_0xcf31('0x4c'))){_0xf4a945[_0xcf31('0x4d')]=qs[_0xcf31('0x4d')](_0x34686d[_0xcf31('0x46')]['limit']);_0xf4a945[_0xcf31('0x33')]=qs[_0xcf31('0x33')](_0x34686d['query'][_0xcf31('0x33')]);}_0xf4a945[_0xcf31('0x6b')]=qs[_0xcf31('0x4e')](_0x34686d[_0xcf31('0x46')][_0xcf31('0x4e')]);_0xf4a945[_0xcf31('0x50')]=qs[_0xcf31('0x4f')](_[_0xcf31('0x6c')](_0x34686d[_0xcf31('0x46')],_0x2c923f[_0xcf31('0x4f')]));_0xf4a945[_0xcf31('0x50')][_0xcf31('0x70')]=_0x4e2060['id'];if(_0x34686d[_0xcf31('0x46')][_0xcf31('0x54')]){_0xf4a945['where']=_['merge'](_0xf4a945['where'],{'$or':_[_0xcf31('0x40')](_0xf4a945[_0xcf31('0x49')],function(_0x26a457){var _0x6a6340={};_0x6a6340[_0x26a457]={'$like':'%'+_0x34686d[_0xcf31('0x46')]['filter']+'%'};return _0x6a6340;})});}_0xf4a945=_['merge']({},_0xf4a945,_0x34686d[_0xcf31('0x5c')]);return db[_0xcf31('0x71')][_0xcf31('0x32')]({'where':_0xf4a945[_0xcf31('0x50')]})[_0xcf31('0x24')](function(_0x5633a9){_0x45f2b8['count']=_0x5633a9;if(_0x34686d[_0xcf31('0x46')][_0xcf31('0x55')]){_0xf4a945[_0xcf31('0x56')]=[{'all':!![]}];}return db[_0xcf31('0x71')][_0xcf31('0x57')](_0xf4a945);})[_0xcf31('0x24')](function(_0x4cb90f){_0x45f2b8[_0xcf31('0x58')]=_0x4cb90f;return _0x45f2b8;});}})[_0xcf31('0x24')](respondWithFilteredResult(_0x21520b,_0xf4a945))[_0xcf31('0x2f')](handleError(_0x21520b,null));};exports['removeAnswers']=function(_0x12411a,_0x1aaede,_0x5cfc2f){return db['OpenchannelAccount'][_0xcf31('0x5d')]({'where':{'id':_0x12411a[_0xcf31('0x5a')]['id']}})[_0xcf31('0x24')](handleEntityNotFound(_0x1aaede,null))[_0xcf31('0x24')](function(_0x28b0c){if(_0x28b0c){return _0x28b0c['removeAnswers'](_0x12411a[_0xcf31('0x46')][_0xcf31('0x6e')]);}})['then'](respondWithStatusCode(_0x1aaede,null))['catch'](handleError(_0x1aaede,null));};exports[_0xcf31('0x72')]=function(_0x1c0e2e,_0x1a59b4,_0x877b38){var _0x5ea208={'body':_0x1c0e2e['body'],'channel':'openchannel'};var _0x42816c=[];var _0xb9ea62=[];var _0x3a0887={};var _0x19c216=![];return db[_0xcf31('0x73')][_0xcf31('0x66')]()[_0xcf31('0x24')](function(_0x360ea0){if(!_0x360ea0){throw new db[(_0xcf31('0x74'))]['ValidationError'](_0xcf31('0x75'));}_0x42816c=_[_0xcf31('0x76')](_[_0xcf31('0x5b')](_0x360ea0),[_0xcf31('0x77'),_0xcf31('0x78')]);_0xb9ea62=_[_0xcf31('0x76')](_[_0xcf31('0x5b')](_0x360ea0),[_0xcf31('0x77'),_0xcf31('0x78'),'CompanyId',_0xcf31('0x79')]);if(_0x1c0e2e[_0xcf31('0x65')]['id']){delete _0x1c0e2e[_0xcf31('0x65')]['id'];}if(_[_0xcf31('0x7a')](_0x1c0e2e[_0xcf31('0x65')]['from'])){throw new db[(_0xcf31('0x74'))][(_0xcf31('0x7b'))]('from\x20is\x20mandatory');}if(_[_0xcf31('0x7a')](_0x1c0e2e[_0xcf31('0x65')][_0xcf31('0x65')])||_0x1c0e2e['body'][_0xcf31('0x65')]===''){throw new db['Sequelize']['ValidationError'](_0xcf31('0x7c'));}if(_[_0xcf31('0x7a')](_0x1c0e2e['body'][_0xcf31('0x7d')])){throw new db['Sequelize'][(_0xcf31('0x7b'))](_0xcf31('0x7e')+_0xb9ea62);}if(!_[_0xcf31('0x7f')](_0xb9ea62,_0x1c0e2e['body'][_0xcf31('0x7d')])){throw new db['Sequelize'][(_0xcf31('0x7b'))](_0xcf31('0x80')+_0xb9ea62);}_0x3a0887[_0x1c0e2e[_0xcf31('0x65')][_0xcf31('0x7d')]]=_0x1c0e2e[_0xcf31('0x65')][_0xcf31('0x81')];})['then'](function(){return db['OpenchannelAccount'][_0xcf31('0x5d')]({'where':{'id':_0x1c0e2e[_0xcf31('0x5a')]['id']},'include':[{'model':db['CmList'],'as':_0xcf31('0x82'),'include':[{'model':db[_0xcf31('0x73')],'as':_0xcf31('0x83'),'where':_0x3a0887,'limit':0x1,'order':[['updatedAt',_0xcf31('0x84')]]}]},{'model':db[_0xcf31('0x85')],'as':_0xcf31('0x86')}]});})[_0xcf31('0x24')](handleEntityNotFound(_0x1a59b4,null))[_0xcf31('0x24')](function(_0x1012e3){if(_0x1012e3&&_0x1012e3['List']){_0x5ea208[_0xcf31('0x87')]=_0x1012e3;_0x5ea208[_0xcf31('0x88')]=_0x1012e3['Applications'];_0x5ea208['list']=_0x1012e3[_0xcf31('0x82')];_0x5ea208[_0xcf31('0x88')]=_[_0xcf31('0x89')](_0x5ea208[_0xcf31('0x88')],[_0xcf31('0x8a')],[_0xcf31('0x8b')]);if(_0x5ea208['account']['Applications']){delete _0x5ea208[_0xcf31('0x87')][_0xcf31('0x86')];}if(_0x5ea208[_0xcf31('0x87')][_0xcf31('0x82')]&&_0x5ea208[_0xcf31('0x87')][_0xcf31('0x82')]['Contacts'][_0xcf31('0x4a')]){return _0x5ea208[_0xcf31('0x87')][_0xcf31('0x82')][_0xcf31('0x83')][0x0];}var _0x466c96=_['defaults'](_0x1c0e2e[_0xcf31('0x65')],{'firstName':_0x1c0e2e[_0xcf31('0x65')][_0xcf31('0x81')],'ListId':_0x1012e3[_0xcf31('0x79')]});_0x466c96[_0x1c0e2e[_0xcf31('0x65')][_0xcf31('0x7d')]]=_0x1c0e2e[_0xcf31('0x65')][_0xcf31('0x81')];return db[_0xcf31('0x73')][_0xcf31('0x5e')](_0x466c96,{'fields':_0x42816c,'raw':!![]});}})['then'](handleEntityNotFound(_0x1a59b4,null))[_0xcf31('0x24')](function(_0x37d29e){_0x5ea208[_0xcf31('0x8c')]=_0x37d29e;if(_0x37d29e){var _0x4adb7d={'ContactId':_0x37d29e['id'],'OpenchannelAccountId':_0x1c0e2e[_0xcf31('0x5a')]['id'],'from':(_0x37d29e[_0xcf31('0x8d')]||'')+'\x20'+(_0x37d29e[_0xcf31('0x8e')]||'')};var _0x171163={'OpenchannelAccountId':_0x1c0e2e[_0xcf31('0x5a')]['id'],'closed':![]};if(_0x1c0e2e[_0xcf31('0x65')][_0xcf31('0x8f')]){_0x171163[_0xcf31('0x8f')]=_0x1c0e2e[_0xcf31('0x65')][_0xcf31('0x8f')];return db['OpenchannelInteraction'][_0xcf31('0x5d')]({'where':_0x171163})['then'](function(_0x338b1f){if(_0x338b1f){return[_0x338b1f,![]];}_0x4adb7d[_0xcf31('0x8f')]=_0x1c0e2e[_0xcf31('0x65')]['threadId'];_0x4adb7d[_0xcf31('0x90')]=_0x1c0e2e[_0xcf31('0x65')][_0xcf31('0x90')];return db[_0xcf31('0x91')][_0xcf31('0x5e')](_0x4adb7d)[_0xcf31('0x24')](function(_0x25ca63){return[_0x25ca63,!![]];});});}else{_0x171163['threadId']=null;}_0x171163[_0xcf31('0x92')]=_0x37d29e['id'];return db[_0xcf31('0x91')][_0xcf31('0x5d')]({'where':_0x171163})[_0xcf31('0x24')](function(_0x2d2ede){if(_0x2d2ede){return[_0x2d2ede,![]];}return db['OpenchannelInteraction'][_0xcf31('0x5e')](_0x4adb7d)[_0xcf31('0x24')](function(_0x41c6e8){return[_0x41c6e8,!![]];});});}})[_0xcf31('0x93')](function(_0x5f36a1,_0x204a3a){if(_0x5f36a1){_0x19c216=_0x204a3a;if(!_0x204a3a){var _0x4883dc={'from':(_0x5ea208[_0xcf31('0x8c')]['firstName']||'')+'\x20'+(_0x5ea208['contact'][_0xcf31('0x8e')]||'')};if(_0x1c0e2e[_0xcf31('0x65')][_0xcf31('0x8f')]&&_0x1c0e2e[_0xcf31('0x65')]['messageId']&&_0x1c0e2e['body'][_0xcf31('0x8f')]!=_0x1c0e2e['body']['messageId']){_0x4883dc['threadId']=_0x1c0e2e[_0xcf31('0x65')][_0xcf31('0x94')];}return _0x5f36a1['update'](_0x4883dc);}else{return _0x5f36a1;}}})[_0xcf31('0x24')](function(_0x41b20c){_0x5ea208[_0xcf31('0x95')]=_0x41b20c[_0xcf31('0x60')]({'plain':!![]});_0x5ea208['interaction'][_0xcf31('0x96')]=_0x19c216;if(_0x5ea208[_0xcf31('0x95')][_0xcf31('0x96')]){if(_0x5ea208[_0xcf31('0x87')][_0xcf31('0x97')]){_0x5ea208[_0xcf31('0x88')][_0xcf31('0x98')]({'id':0x0,'priority':_0x5ea208['applications'][_0xcf31('0x4a')]+0x1,'app':_0xcf31('0x99'),'appdata':'unmanaged','interval':'*,*,*,*'});}}return db[_0xcf31('0x9a')][_0xcf31('0x5e')]({'body':_0x1c0e2e[_0xcf31('0x65')][_0xcf31('0x65')],'OpenchannelAccountId':_0x1c0e2e[_0xcf31('0x5a')]['id'],'OpenchannelInteractionId':_0x41b20c['id'],'direction':'in','ContactId':_0x5ea208[_0xcf31('0x8c')]['id'],'AttachmentId':_0x1c0e2e[_0xcf31('0x65')][_0xcf31('0x9b')]});})[_0xcf31('0x24')](function(_0x486324){_0x5ea208['message']=_0x486324;if(_0x5ea208[_0xcf31('0x95')][_0xcf31('0x9c')]){return db['User'][_0xcf31('0x5d')]({'attributes':['id','name'],'where':{'id':_0x5ea208[_0xcf31('0x95')][_0xcf31('0x9c')]}})['then'](function(_0x496430){if(_0x496430){_0x5ea208[_0xcf31('0x88')][_0xcf31('0x9d')]({'id':0x0,'priority':0x0,'app':_0xcf31('0x9e'),'appdata':_0x496430['name']+','+(_0x5ea208[_0xcf31('0x87')]['waitForTheAssignedAgent']||0xa),'interval':_0xcf31('0x9f')});_0x5ea208[_0xcf31('0xa0')]=![];}return respondWithRpcPromise(_0xcf31('0xa1'),'startRouting',_0x5ea208);});}return respondWithRpcPromise(_0xcf31('0xa1'),_0xcf31('0xa2'),_0x5ea208);})[_0xcf31('0x24')](function(_0x9728d4){respondWithRpcPromise('EventManager',_0xcf31('0xa3'),{'event':_0xcf31('0x72'),'message':_0x9728d4},client9002);return _0x9728d4;})[_0xcf31('0x24')](respondWithResult(_0x1a59b4,null))[_0xcf31('0x2f')](handleError(_0x1a59b4,null));};exports[_0xcf31('0xa4')]=function(_0x1e2859,_0x3591f5,_0x465074){return db[_0xcf31('0x41')][_0xcf31('0x6a')]({'where':{'id':_0x1e2859[_0xcf31('0x5a')]['id']}})['then'](handleEntityNotFound(_0x3591f5,null))['then'](function(_0x50ea5d){if(_0x50ea5d){return db['sequelize'][_0xcf31('0xa5')](function(_0x2a8485){return db['OpenchannelApplication'][_0xcf31('0x37')]({'where':{'OpenchannelAccountId':_0x1e2859[_0xcf31('0x5a')]['id']},'transaction':_0x2a8485})['then'](function(_0x1374bb){var _0x2661e8=_[_0xcf31('0x40')](_0x1e2859[_0xcf31('0x65')],function(_0x5de166){_0x5de166[_0xcf31('0x70')]=_0x1e2859[_0xcf31('0x5a')]['id'];return _0x5de166;});return db[_0xcf31('0x85')][_0xcf31('0xa6')](_0x2661e8,{'transaction':_0x2a8485});});})[_0xcf31('0x24')](function(){return db[_0xcf31('0x85')][_0xcf31('0xa7')]({'where':{'OpenchannelAccountId':_0x1e2859['params']['id']},'order':_0xcf31('0x8a')});});}})[_0xcf31('0x24')](respondWithResult(_0x3591f5,null))[_0xcf31('0x2f')](handleError(_0x3591f5,null));};exports[_0xcf31('0xa8')]=function(_0x393666,_0x4b5d57,_0x4656a0){var _0x569696={};var _0x3a939b={};var _0x1f2e38;var _0x304c1b;return db[_0xcf31('0x41')][_0xcf31('0x6a')]({'where':{'id':_0x393666[_0xcf31('0x5a')]['id']}})['then'](handleEntityNotFound(_0x4b5d57,null))['then'](function(_0x3ff3fe){if(_0x3ff3fe){_0x1f2e38=_0x3ff3fe;_0x3a939b[_0xcf31('0x45')]=_[_0xcf31('0x5b')](db[_0xcf31('0x85')][_0xcf31('0x42')]);_0x3a939b[_0xcf31('0x46')]=_[_0xcf31('0x5b')](_0x393666[_0xcf31('0x46')]);_0x3a939b[_0xcf31('0x4f')]=_['intersection'](_0x3a939b[_0xcf31('0x45')],_0x3a939b['query']);_0x569696[_0xcf31('0x49')]=_[_0xcf31('0x47')](_0x3a939b['model'],qs[_0xcf31('0x48')](_0x393666['query']['fields']));_0x569696[_0xcf31('0x49')]=_0x569696['attributes'][_0xcf31('0x4a')]?_0x569696[_0xcf31('0x49')]:_0x3a939b[_0xcf31('0x45')];_0x569696[_0xcf31('0x6b')]=qs[_0xcf31('0x4e')](_0x393666[_0xcf31('0x46')][_0xcf31('0x4e')]);_0x569696[_0xcf31('0x50')]=qs[_0xcf31('0x4f')](_['pick'](_0x393666[_0xcf31('0x46')],_0x3a939b[_0xcf31('0x4f')]));if(_0x393666[_0xcf31('0x46')][_0xcf31('0x54')]){_0x569696['where']=_[_0xcf31('0x51')](_0x569696[_0xcf31('0x50')],{'$or':_['map'](_0x569696[_0xcf31('0x49')],function(_0x565709){var _0x1f273d={};_0x1f273d[_0x565709]={'$like':'%'+_0x393666[_0xcf31('0x46')][_0xcf31('0x54')]+'%'};return _0x1f273d;})});}_0x569696=_[_0xcf31('0x51')]({},_0x569696,_0x393666[_0xcf31('0x5c')]);return _0x1f2e38[_0xcf31('0xa8')](_0x569696);}})[_0xcf31('0x24')](function(_0x3a8a46){if(_0x3a8a46){_0x304c1b=_0x3a8a46[_0xcf31('0x4a')];if(!_0x393666[_0xcf31('0x46')][_0xcf31('0x4b')](_0xcf31('0x4c'))){_0x569696[_0xcf31('0x4d')]=qs[_0xcf31('0x4d')](_0x393666[_0xcf31('0x46')][_0xcf31('0x4d')]);_0x569696[_0xcf31('0x33')]=qs['offset'](_0x393666[_0xcf31('0x46')]['offset']);}return _0x1f2e38[_0xcf31('0xa8')](_0x569696);}})[_0xcf31('0x24')](function(_0x30b780){if(_0x30b780){return _0x30b780?{'count':_0x304c1b,'rows':_0x30b780}:null;}})['then'](respondWithResult(_0x4b5d57,null))[_0xcf31('0x2f')](handleError(_0x4b5d57,null));};exports[_0xcf31('0xa9')]=function(_0x1ffe59,_0x561210,_0xec77ce){var _0x799a50={'raw':![],'where':{}};var _0x41b94b={};var _0x52164f={'count':0x0,'rows':[]};return db['OpenchannelAccount']['findOne']({'where':{'id':_0x1ffe59[_0xcf31('0x5a')]['id']}})[_0xcf31('0x24')](handleEntityNotFound(_0x561210,null))[_0xcf31('0x24')](function(_0x1e5e56){if(_0x1e5e56){_0x41b94b['model']=_['keys'](db[_0xcf31('0x91')][_0xcf31('0x42')]);_0x41b94b[_0xcf31('0x46')]=_[_0xcf31('0x5b')](_0x1ffe59[_0xcf31('0x46')]);_0x41b94b['filters']=_[_0xcf31('0x47')](_0x41b94b[_0xcf31('0x45')],_0x41b94b[_0xcf31('0x46')]);_0x799a50['attributes']=_[_0xcf31('0x47')](_0x41b94b[_0xcf31('0x45')],qs[_0xcf31('0x48')](_0x1ffe59[_0xcf31('0x46')][_0xcf31('0x48')]));_0x799a50[_0xcf31('0x49')]=_0x799a50[_0xcf31('0x49')][_0xcf31('0x4a')]?_0x799a50[_0xcf31('0x49')]:_0x41b94b['model'];if(!_0x1ffe59['query'][_0xcf31('0x4b')](_0xcf31('0x4c'))){_0x799a50[_0xcf31('0x4d')]=qs[_0xcf31('0x4d')](_0x1ffe59[_0xcf31('0x46')][_0xcf31('0x4d')]);_0x799a50[_0xcf31('0x33')]=qs['offset'](_0x1ffe59[_0xcf31('0x46')][_0xcf31('0x33')]);}_0x799a50[_0xcf31('0x6b')]=qs[_0xcf31('0x4e')](_0x1ffe59[_0xcf31('0x46')][_0xcf31('0x4e')]);_0x799a50[_0xcf31('0x50')]=qs['filters'](_[_0xcf31('0x6c')](_0x1ffe59[_0xcf31('0x46')],_0x41b94b[_0xcf31('0x4f')]));_0x799a50['where'][_0xcf31('0x70')]=_0x1e5e56['id'];if(_0x1ffe59[_0xcf31('0x46')]['filter']){_0x799a50['where']=_[_0xcf31('0x51')](_0x799a50[_0xcf31('0x50')],{'$or':_[_0xcf31('0x40')](_0x799a50[_0xcf31('0x49')],function(_0x42c65c){var _0x402a44={};_0x402a44[_0x42c65c]={'$like':'%'+_0x1ffe59[_0xcf31('0x46')]['filter']+'%'};return _0x402a44;})});}_0x799a50=_['merge']({},_0x799a50,_0x1ffe59[_0xcf31('0x5c')]);return db['OpenchannelInteraction']['count']({'where':_0x799a50[_0xcf31('0x50')]})[_0xcf31('0x24')](function(_0x3a8a2e){_0x52164f[_0xcf31('0x32')]=_0x3a8a2e;if(_0x1ffe59[_0xcf31('0x46')][_0xcf31('0x55')]){_0x799a50[_0xcf31('0x56')]=[{'model':db[_0xcf31('0x73')],'as':_0xcf31('0xaa'),'required':![]},{'model':db[_0xcf31('0xab')],'as':_0xcf31('0xac'),'attributes':[_0xcf31('0x3c'),_0xcf31('0xad'),_0xcf31('0xae')],'required':![]},{'model':db[_0xcf31('0xaf')],'as':_0xcf31('0xb0'),'attributes':['id',_0xcf31('0x3c'),_0xcf31('0xb1')],'where':_0x1ffe59[_0xcf31('0x46')][_0xcf31('0xb2')]?{'id':_0x1ffe59[_0xcf31('0x46')][_0xcf31('0xb2')]}:undefined,'required':_0x1ffe59[_0xcf31('0x46')]['tag']?!![]:![]}];}return db[_0xcf31('0x91')][_0xcf31('0x57')](_0x799a50);})['then'](function(_0x1e821b){_0x52164f[_0xcf31('0x58')]=_0x1e821b;return _0x52164f;});}})['then'](respondWithFilteredResult(_0x561210,_0x799a50))['catch'](handleError(_0x561210,null));};exports[_0xcf31('0xb3')]=function(_0x46c912,_0x10127f,_0x3224c0){return db[_0xcf31('0x41')][_0xcf31('0x5d')]({'where':{'id':_0x46c912[_0xcf31('0x5a')]['id']}})[_0xcf31('0x24')](handleEntityNotFound(_0x10127f,null))[_0xcf31('0x24')](function(_0x39fc80){if(_0x39fc80){return _0x39fc80[_0xcf31('0xb3')](_0x46c912[_0xcf31('0x65')][_0xcf31('0x6e')],_['omit'](_0x46c912[_0xcf31('0x65')],[_0xcf31('0x6e'),'id'])||{})[_0xcf31('0x93')](function(_0x5a1ab9){for(var _0x4c6d46=0x0;_0x4c6d46<_0x46c912[_0xcf31('0x65')][_0xcf31('0x6e')][_0xcf31('0x4a')];_0x4c6d46+=0x1){socket[_0xcf31('0xb4')](_0xcf31('0xb5'),{'UserId':_0x46c912[_0xcf31('0x65')]['ids'][_0x4c6d46],'OpenchannelAccountId':_0x46c912['params']['id']});}return _0x5a1ab9;});}})['then'](respondWithResult(_0x10127f,null))[_0xcf31('0x2f')](handleError(_0x10127f,null));};exports['removeAgents']=function(_0x1b11e8,_0x37d1f3,_0x5e323c){return db[_0xcf31('0x41')][_0xcf31('0x5d')]({'where':{'id':_0x1b11e8[_0xcf31('0x5a')]['id']}})['then'](handleEntityNotFound(_0x37d1f3,null))['then'](function(_0x342884){if(_0x342884){return _0x342884[_0xcf31('0xb6')](_0x1b11e8[_0xcf31('0x46')][_0xcf31('0x6e')])[_0xcf31('0x24')](function(){if(_['isArray'](_0x1b11e8['query'][_0xcf31('0x6e')])){for(var _0x4c9b94=0x0;_0x4c9b94<_0x1b11e8[_0xcf31('0x46')]['ids'][_0xcf31('0x4a')];_0x4c9b94+=0x1){socket['emit']('userOpenchannelAccount:remove',{'UserId':Number(_0x1b11e8[_0xcf31('0x46')]['ids'][_0x4c9b94]),'OpenchannelAccountId':Number(_0x1b11e8[_0xcf31('0x5a')]['id'])});}}else{socket[_0xcf31('0xb4')](_0xcf31('0xb7'),{'UserId':Number(_0x1b11e8[_0xcf31('0x46')][_0xcf31('0x6e')]),'OpenchannelAccountId':Number(_0x1b11e8[_0xcf31('0x5a')]['id'])});}});}})[_0xcf31('0x24')](respondWithStatusCode(_0x37d1f3,null))[_0xcf31('0x2f')](handleError(_0x37d1f3,null));};exports['getAgents']=function(_0x47d4d1,_0x282c5d,_0x3ca1e0){var _0x360213={};var _0x4eafd1={};var _0x146c3b;var _0x183a39;return db['OpenchannelAccount'][_0xcf31('0x6a')]({'where':{'id':_0x47d4d1[_0xcf31('0x5a')]['id']}})[_0xcf31('0x24')](handleEntityNotFound(_0x282c5d,null))[_0xcf31('0x24')](function(_0xe3d91a){if(_0xe3d91a){_0x146c3b=_0xe3d91a;_0x4eafd1[_0xcf31('0x45')]=_[_0xcf31('0x5b')](db[_0xcf31('0xab')][_0xcf31('0x42')]);_0x4eafd1['query']=_[_0xcf31('0x5b')](_0x47d4d1[_0xcf31('0x46')]);_0x4eafd1['filters']=_[_0xcf31('0x47')](_0x4eafd1[_0xcf31('0x45')],_0x4eafd1[_0xcf31('0x46')]);_0x360213['attributes']=_[_0xcf31('0x47')](_0x4eafd1['model'],qs[_0xcf31('0x48')](_0x47d4d1[_0xcf31('0x46')][_0xcf31('0x48')]));_0x360213[_0xcf31('0x49')]=_0x360213[_0xcf31('0x49')]['length']?_0x360213['attributes']:_0x4eafd1[_0xcf31('0x45')];_0x360213['order']=qs[_0xcf31('0x4e')](_0x47d4d1[_0xcf31('0x46')][_0xcf31('0x4e')]);_0x360213[_0xcf31('0x50')]=qs[_0xcf31('0x4f')](_['pick'](_0x47d4d1[_0xcf31('0x46')],_0x4eafd1['filters']));if(_0x47d4d1[_0xcf31('0x46')][_0xcf31('0x54')]){_0x360213[_0xcf31('0x50')]=_['merge'](_0x360213[_0xcf31('0x50')],{'$or':_[_0xcf31('0x40')](_0x360213[_0xcf31('0x49')],function(_0x55a1e0){var _0x431d6f={};_0x431d6f[_0x55a1e0]={'$like':'%'+_0x47d4d1[_0xcf31('0x46')]['filter']+'%'};return _0x431d6f;})});}_0x360213=_[_0xcf31('0x51')]({},_0x360213,_0x47d4d1[_0xcf31('0x5c')]);return _0x146c3b[_0xcf31('0xb8')](_0x360213);}})[_0xcf31('0x24')](function(_0x4ee0cf){if(_0x4ee0cf){_0x183a39=_0x4ee0cf[_0xcf31('0x4a')];if(!_0x47d4d1[_0xcf31('0x46')][_0xcf31('0x4b')](_0xcf31('0x4c'))){_0x360213[_0xcf31('0x4d')]=qs[_0xcf31('0x4d')](_0x47d4d1[_0xcf31('0x46')][_0xcf31('0x4d')]);_0x360213[_0xcf31('0x33')]=qs[_0xcf31('0x33')](_0x47d4d1[_0xcf31('0x46')][_0xcf31('0x33')]);}return _0x146c3b[_0xcf31('0xb8')](_0x360213);}})[_0xcf31('0x24')](function(_0x2b16e1){if(_0x2b16e1){return _0x2b16e1?{'count':_0x183a39,'rows':_0x2b16e1}:null;}})[_0xcf31('0x24')](respondWithResult(_0x282c5d,null))[_0xcf31('0x2f')](handleError(_0x282c5d,null));};exports[_0xcf31('0xb9')]=function(_0x19ff38,_0x21adb7,_0x476b54){var _0x50d5d1,_0x5e279d,_0x3656c4;if(_[_0xcf31('0x7a')](_0x19ff38['body']['body'])||_0x19ff38[_0xcf31('0x65')]['body']===''){throw new db[(_0xcf31('0x74'))][(_0xcf31('0x7b'))]('body\x20is\x20mandatory\x20and\x20not\x20empty');}if(_[_0xcf31('0x7a')](_0x19ff38[_0xcf31('0x65')]['to'])){}_0x50d5d1=_0x19ff38[_0xcf31('0x65')]['to'];return db['OpenchannelAccount'][_0xcf31('0x6a')]({'where':{'id':_0x19ff38[_0xcf31('0x5a')]['id']}})[_0xcf31('0x24')](handleEntityNotFound(_0x21adb7,null))[_0xcf31('0x24')](function(_0xf708d9){if(_0xf708d9){return db[_0xcf31('0x41')][_0xcf31('0x5d')]({'where':{'id':_0xf708d9['id']},'include':[{'model':db['CmList'],'as':_0xcf31('0x82'),'include':[{'model':db[_0xcf31('0x73')],'as':'Contacts','where':{[_0xf708d9['mapKey']]:_0x50d5d1},'limit':0x1,'order':[[_0xcf31('0x78'),'DESC']]}]}]})['then'](handleEntityNotFound(_0x21adb7,null))[_0xcf31('0x24')](function(_0xa77c35){if(_0xa77c35&&_0xa77c35['List']){_0x5e279d=_0xa77c35['get']({'plain':!![]});if(_0x5e279d[_0xcf31('0x82')]&&_0x5e279d[_0xcf31('0x82')][_0xcf31('0x83')][_0xcf31('0x4a')]){return _0x5e279d[_0xcf31('0x82')][_0xcf31('0x83')][0x0];}return db[_0xcf31('0x73')][_0xcf31('0x5e')](_[_0xcf31('0x1a')](_0x19ff38[_0xcf31('0x65')],{'firstName':_0x50d5d1,[_0xa77c35[_0xcf31('0x7d')]]:_0x50d5d1,'phone':_0x50d5d1,'ListId':_0x5e279d[_0xcf31('0x79')]}));}})[_0xcf31('0x24')](handleEntityNotFound(_0x21adb7,null))['then'](function(_0x8565aa){if(_0x8565aa){_0x3656c4=_0x8565aa;return db[_0xcf31('0x91')][_0xcf31('0x5d')]({'where':{'ContactId':_0x3656c4['id'],'closed':![],'OpenchannelAccountId':_0x5e279d['id']}})[_0xcf31('0x24')](function(_0x5c30d9){if(_0x5c30d9){return[_0x5c30d9,![]];}return db['OpenchannelInteraction']['create']({'UserId':_0x19ff38[_0xcf31('0x5f')]['id'],'ContactId':_0x3656c4['id'],'OpenchannelAccountId':_0x5e279d['id'],'lastMsgDirection':_0xcf31('0xba'),'Messages':[_['merge'](_0x19ff38[_0xcf31('0x65')],{'read':![],'body':_0x19ff38[_0xcf31('0x65')][_0xcf31('0x65')],'OpenchannelAccountId':_0x5e279d['id'],'UserId':_0x19ff38[_0xcf31('0x5f')]['id'],'ContactId':_0x3656c4['id']})]},{'include':[{'model':db['OpenchannelMessage'],'as':'Messages'}]})['then'](function(_0x23daf9){return[_0x23daf9,!![]];});});}})['spread'](function(_0x489379,_0x295463){if(_0x295463){return _0x489379;}return db[_0xcf31('0x9a')][_0xcf31('0x5e')](_[_0xcf31('0x51')](_0x19ff38[_0xcf31('0x65')],{'read':![],'body':_0x19ff38[_0xcf31('0x65')][_0xcf31('0x65')],'OpenchannelAccountId':_0x5e279d['id'],'OpenchannelInteractionId':_0x489379['id'],'UserId':_0x19ff38[_0xcf31('0x5f')]['id'],'ContactId':_0x3656c4['id']}))[_0xcf31('0x24')](function(_0x426494){_0x489379[_0xcf31('0xbb')][_0xcf31('0xbc')]=[];_0x489379[_0xcf31('0xbb')][_0xcf31('0xbc')][_0xcf31('0x98')](_0x426494[_0xcf31('0xbb')]);return _0x489379;});});}})[_0xcf31('0x24')](respondWithResult(_0x21adb7,null))[_0xcf31('0x2f')](handleError(_0x21adb7,null));};