Built motion from commit d5e4af8c.|2.6.23
[motion2.git] / server / api / openchannelInteraction / openchannelInteraction.controller.js
index 5220cb6..6a7bcbb 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xd716=['offset','count','set','Content-Range','update','then','destroy','end','error','stack','name','send','index','OpenchannelInteraction','rawAttributes','fieldName','key','getOptions','findAll','openchannel','query','user','type','from','params','model','keys','filters','intersection','attributes','fields','options','find','create','body','catch','describe','OpenchannelMessage','addMessage','omit','getMessages','findOne','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','$gte','split','format','YYYY-MM-DD\x20HH:mm:ss','merge','includeAll','include','setTags','ids','spread','Tag','removeTags','download','unix','toString','join','root','server','tmp','User','fullname','firstName','push','Attachment','Messages','createdAt','direction','secret','read','OpenchannelAccount','Account','get','Owner','N.A.','closed','closedAt','disposition','threadId','Public','map','basename','existsSync','createReadStream','pipe','createWriteStream','out','Contact','lastName','renderFile','views','downloadInteraction.ejs','.pdf','Openchannel','createPdfFromHTML','Unable\x20to\x20delete\x20zip\x20file','unlinkSync','util','path','lodash','ioredis','../../components/interaction/service','../../components/export/pdf','../../config/logger','../../config/environment','../../mysqldb','redis','localhost','socket.io-emitter','./openchannelInteraction.socket','register','sendStatus','status','json','undefined','limit'];(function(_0x302866,_0x59a9cf){var _0x129112=function(_0x3bc39f){while(--_0x3bc39f){_0x302866['push'](_0x302866['shift']());}};_0x129112(++_0x59a9cf);}(_0xd716,0x1e1));var _0x6d71=function(_0x33f54b,_0x41df7d){_0x33f54b=_0x33f54b-0x0;var _0x191255=_0xd716[_0x33f54b];return _0x191255;};'use strict';var rimraf=require('rimraf');var zipdir=require('zip-dir');var moment=require('moment');var util=require(_0x6d71('0x0'));var path=require(_0x6d71('0x1'));var ejs=require('ejs');var fs=require('fs');var _=require(_0x6d71('0x2'));var Redis=require(_0x6d71('0x3'));var interaction=require(_0x6d71('0x4'));var qs=require('../../components/parsers/qs');var pdf=require(_0x6d71('0x5'));var logger=require(_0x6d71('0x6'))('api');var config=require(_0x6d71('0x7'));var db=require(_0x6d71('0x8'))['db'];config[_0x6d71('0x9')]=_['defaults'](config[_0x6d71('0x9')],{'host':_0x6d71('0xa'),'port':0x18eb});var socket=require(_0x6d71('0xb'))(new Redis(config['redis']));require(_0x6d71('0xc'))[_0x6d71('0xd')](socket);function respondWithStatusCode(_0x417485,_0x2a0120){_0x2a0120=_0x2a0120||0xcc;return function(_0x2efe08){if(_0x2efe08){return _0x417485[_0x6d71('0xe')](_0x2a0120);}return _0x417485[_0x6d71('0xf')](_0x2a0120)['end']();};}function respondWithResult(_0x36086e,_0xf5f8d8){_0xf5f8d8=_0xf5f8d8||0xc8;return function(_0x34bd92){if(_0x34bd92){return _0x36086e['status'](_0xf5f8d8)[_0x6d71('0x10')](_0x34bd92);}};}function respondWithFilteredResult(_0x362b11,_0x2b83f3){return function(_0x57c25d){if(_0x57c25d){var _0x643ce5=typeof _0x2b83f3['offset']===_0x6d71('0x11')&&typeof _0x2b83f3[_0x6d71('0x12')]==='undefined';var _0xb4fb0b=_0x57c25d['count'];var _0x48c7bb=_0x643ce5?0x0:_0x2b83f3[_0x6d71('0x13')];var _0x530850=_0x643ce5?_0x57c25d[_0x6d71('0x14')]:_0x2b83f3['offset']+_0x2b83f3[_0x6d71('0x12')];var _0x2b6818;if(_0x530850>=_0xb4fb0b){_0x530850=_0xb4fb0b;_0x2b6818=0xc8;}else{_0x2b6818=0xce;}_0x362b11[_0x6d71('0xf')](_0x2b6818);return _0x362b11[_0x6d71('0x15')](_0x6d71('0x16'),_0x48c7bb+'-'+_0x530850+'/'+_0xb4fb0b)[_0x6d71('0x10')](_0x57c25d);}return null;};}function saveUpdates(_0x563d17){return function(_0x4ed551){if(_0x4ed551){return _0x4ed551[_0x6d71('0x17')](_0x563d17)[_0x6d71('0x18')](function(_0x1184b9){return _0x1184b9;});}return null;};}function removeEntity(_0x4fbdc2){return function(_0x36611b){if(_0x36611b){return _0x36611b[_0x6d71('0x19')]()[_0x6d71('0x18')](function(){_0x4fbdc2['status'](0xcc)[_0x6d71('0x1a')]();});}};}function handleEntityNotFound(_0x202dcd){return function(_0x3d48b0){if(!_0x3d48b0){_0x202dcd[_0x6d71('0xe')](0x194);}return _0x3d48b0;};}function handleError(_0x1c38ae,_0x2d10b3){_0x2d10b3=_0x2d10b3||0x1f4;return function(_0x22b97a){logger[_0x6d71('0x1b')](_0x22b97a[_0x6d71('0x1c')]);if(_0x22b97a[_0x6d71('0x1d')]){delete _0x22b97a[_0x6d71('0x1d')];}_0x1c38ae[_0x6d71('0xf')](_0x2d10b3)[_0x6d71('0x1e')](_0x22b97a);};}exports[_0x6d71('0x1f')]=function(_0x499d55,_0x544cb5){var _0x1a5608={};var _0x51dc69=_['map'](db[_0x6d71('0x20')][_0x6d71('0x21')],function(_0x4f5a32){return{'name':_0x4f5a32[_0x6d71('0x22')],'type':_0x4f5a32['type'][_0x6d71('0x23')]};});_0x1a5608=qs[_0x6d71('0x24')](_0x51dc69,_0x499d55);return interaction[_0x6d71('0x25')](_0x6d71('0x26'),_0x499d55[_0x6d71('0x27')],_0x499d55[_0x6d71('0x28')],_0x1a5608,_0x51dc69)[_0x6d71('0x18')](respondWithFilteredResult(_0x544cb5,_0x1a5608))['catch'](handleError(_0x544cb5,null));};exports['show']=function(_0x4a2021,_0x4139a4){var _0x537733={};if(_0x4a2021[_0x6d71('0x27')][_0x6d71('0x29')]&&_0x4a2021['query'][_0x6d71('0x29')]===_0x6d71('0x2a')){_0x537733[_0x6d71('0x2a')]=_0x4a2021[_0x6d71('0x2b')]['id'];}else{_0x537733['id']=_0x4a2021['params']['id'];}var _0x35eeb9={'raw':![],'where':_0x537733},_0x106027={};_0x106027[_0x6d71('0x2c')]=_[_0x6d71('0x2d')](db[_0x6d71('0x20')][_0x6d71('0x21')]);_0x106027['query']=_[_0x6d71('0x2d')](_0x4a2021['query']);_0x106027[_0x6d71('0x2e')]=_[_0x6d71('0x2f')](_0x106027['model'],_0x106027[_0x6d71('0x27')]);_0x35eeb9[_0x6d71('0x30')]=_[_0x6d71('0x2f')](_0x106027[_0x6d71('0x2c')],qs[_0x6d71('0x31')](_0x4a2021['query'][_0x6d71('0x31')]));_0x35eeb9[_0x6d71('0x30')]=_0x35eeb9[_0x6d71('0x30')]['length']?_0x35eeb9[_0x6d71('0x30')]:_0x106027[_0x6d71('0x2c')];if(_0x4a2021['query']['includeAll']){_0x35eeb9['include']=[{'all':!![]}];}_0x35eeb9=_['merge']({},_0x35eeb9,_0x4a2021[_0x6d71('0x32')]);return db['OpenchannelInteraction'][_0x6d71('0x33')](_0x35eeb9)[_0x6d71('0x18')](handleEntityNotFound(_0x4139a4,null))[_0x6d71('0x18')](respondWithResult(_0x4139a4,null))['catch'](handleError(_0x4139a4,null));};exports[_0x6d71('0x34')]=function(_0x47d3ee,_0x20032a){return db[_0x6d71('0x20')][_0x6d71('0x34')](_0x47d3ee['body'],{})[_0x6d71('0x18')](respondWithResult(_0x20032a,0xc9))['catch'](handleError(_0x20032a,null));};exports[_0x6d71('0x17')]=function(_0x270ff4,_0x1f478f){if(_0x270ff4[_0x6d71('0x35')]['id']){delete _0x270ff4['body']['id'];}return db['OpenchannelInteraction'][_0x6d71('0x33')]({'where':{'id':_0x270ff4['params']['id']}})[_0x6d71('0x18')](handleEntityNotFound(_0x1f478f,null))[_0x6d71('0x18')](saveUpdates(_0x270ff4['body'],null))[_0x6d71('0x18')](respondWithResult(_0x1f478f,null))[_0x6d71('0x36')](handleError(_0x1f478f,null));};exports[_0x6d71('0x19')]=function(_0x5b3577,_0x5bb0a9){return db[_0x6d71('0x20')]['find']({'where':{'id':_0x5b3577[_0x6d71('0x2b')]['id']}})['then'](handleEntityNotFound(_0x5bb0a9,null))['then'](removeEntity(_0x5bb0a9,null))['catch'](handleError(_0x5bb0a9,null));};exports[_0x6d71('0x37')]=function(_0x537d24,_0x11a852){return db[_0x6d71('0x20')][_0x6d71('0x37')]()[_0x6d71('0x18')](respondWithResult(_0x11a852,null))[_0x6d71('0x36')](handleError(_0x11a852,null));};exports['addMessage']=function(_0x7603b1,_0x3c3d7b){return db[_0x6d71('0x38')][_0x6d71('0x33')]({'where':{'id':_0x7603b1[_0x6d71('0x2b')]['id']}})[_0x6d71('0x18')](handleEntityNotFound(_0x3c3d7b,null))[_0x6d71('0x18')](function(_0x66f58a){if(_0x66f58a){return _0x66f58a[_0x6d71('0x39')](_0x7603b1['body']['ids'],_[_0x6d71('0x3a')](_0x7603b1[_0x6d71('0x35')],['ids','id'])||{});}})['then'](respondWithResult(_0x3c3d7b,null))['catch'](handleError(_0x3c3d7b,null));};exports[_0x6d71('0x3b')]=function(_0x5a6cf7,_0x29d1c5){var _0x37bde9={'raw':![],'where':{}};var _0x351393={};var _0x4b8780={'count':0x0,'rows':[]};return db[_0x6d71('0x20')][_0x6d71('0x3c')]({'where':{'id':_0x5a6cf7['params']['id']}})[_0x6d71('0x18')](handleEntityNotFound(_0x29d1c5,null))[_0x6d71('0x18')](function(_0x1906c9){if(_0x1906c9){_0x351393['model']=_[_0x6d71('0x2d')](db[_0x6d71('0x38')][_0x6d71('0x21')]);_0x351393[_0x6d71('0x27')]=_['keys'](_0x5a6cf7[_0x6d71('0x27')]);_0x351393['filters']=_[_0x6d71('0x2f')](_0x351393['model'],_0x351393[_0x6d71('0x27')]);_0x37bde9['attributes']=_[_0x6d71('0x2f')](_0x351393['model'],qs[_0x6d71('0x31')](_0x5a6cf7[_0x6d71('0x27')][_0x6d71('0x31')]));_0x37bde9[_0x6d71('0x30')]=_0x37bde9[_0x6d71('0x30')][_0x6d71('0x3d')]?_0x37bde9[_0x6d71('0x30')]:_0x351393[_0x6d71('0x2c')];if(!_0x5a6cf7[_0x6d71('0x27')][_0x6d71('0x3e')](_0x6d71('0x3f'))){_0x37bde9[_0x6d71('0x12')]=qs[_0x6d71('0x12')](_0x5a6cf7[_0x6d71('0x27')][_0x6d71('0x12')]);_0x37bde9[_0x6d71('0x13')]=qs[_0x6d71('0x13')](_0x5a6cf7[_0x6d71('0x27')][_0x6d71('0x13')]);}_0x37bde9[_0x6d71('0x40')]=qs['sort'](_0x5a6cf7[_0x6d71('0x27')][_0x6d71('0x41')]);_0x37bde9[_0x6d71('0x42')]=qs[_0x6d71('0x2e')](_[_0x6d71('0x43')](_0x5a6cf7[_0x6d71('0x27')],_0x351393[_0x6d71('0x2e')]));_0x37bde9[_0x6d71('0x42')]['OpenchannelInteractionId']=_0x1906c9['id'];if(_0x5a6cf7[_0x6d71('0x27')][_0x6d71('0x44')]){_0x37bde9['where']=_['merge'](_0x37bde9['where'],{'$or':_['map'](_0x37bde9['attributes'],function(_0x2c317b){var _0x2b1208={};_0x2b1208[_0x2c317b]={'$like':'%'+_0x5a6cf7['query']['filter']+'%'};return _0x2b1208;})});}if(_0x5a6cf7['query'][_0x6d71('0x45')]){var _0x30bc5c=_0x5a6cf7[_0x6d71('0x27')][_0x6d71('0x45')][_0x6d71('0x46')](',');var _0x14d961={};_0x14d961[_0x30bc5c[0x0]]={'$gte':moment(_0x30bc5c[0x1])[_0x6d71('0x47')](_0x6d71('0x48'))};_0x37bde9[_0x6d71('0x42')]=_[_0x6d71('0x49')](_0x37bde9['where'],_0x14d961);}_0x37bde9=_[_0x6d71('0x49')]({},_0x37bde9,_0x5a6cf7['options']);return db['OpenchannelMessage'][_0x6d71('0x14')]({'where':_0x37bde9[_0x6d71('0x42')]})[_0x6d71('0x18')](function(_0x33ebb7){_0x4b8780['count']=_0x33ebb7;if(_0x5a6cf7['query'][_0x6d71('0x4a')]){_0x37bde9[_0x6d71('0x4b')]=[{'all':!![]}];}return db[_0x6d71('0x38')][_0x6d71('0x25')](_0x37bde9);})[_0x6d71('0x18')](function(_0xb8f35a){_0x4b8780['rows']=_0xb8f35a;return _0x4b8780;});}})['then'](respondWithFilteredResult(_0x29d1c5,_0x37bde9))['catch'](handleError(_0x29d1c5,null));};exports['addTags']=function(_0x4579e2,_0x5d980d){return db[_0x6d71('0x20')][_0x6d71('0x33')]({'where':{'id':_0x4579e2['params']['id']}})['then'](handleEntityNotFound(_0x5d980d,null))[_0x6d71('0x18')](function(_0x12f0f6){if(_0x12f0f6){return _0x12f0f6[_0x6d71('0x4c')](_0x4579e2[_0x6d71('0x35')][_0x6d71('0x4d')],_[_0x6d71('0x3a')](_0x4579e2[_0x6d71('0x35')],[_0x6d71('0x4d'),'id'])||{})[_0x6d71('0x4e')](function(){return db[_0x6d71('0x4f')][_0x6d71('0x25')]({'attributes':['id',_0x6d71('0x1d'),'color'],'where':{'id':_0x4579e2[_0x6d71('0x35')]['ids']}});})[_0x6d71('0x18')](function(_0x4196cf){socket['emit']('openchannelInteractionTags:save',{'id':Number(_0x4579e2[_0x6d71('0x2b')]['id']),'tags':_0x4196cf||[]});return{'id':Number(_0x4579e2[_0x6d71('0x2b')]['id']),'tags':_0x4196cf||[]};});}})[_0x6d71('0x18')](respondWithResult(_0x5d980d,null))[_0x6d71('0x36')](handleError(_0x5d980d,null));};exports[_0x6d71('0x50')]=function(_0xafcf9b,_0x4ab1bb){return db[_0x6d71('0x20')][_0x6d71('0x33')]({'where':{'id':_0xafcf9b[_0x6d71('0x2b')]['id']}})[_0x6d71('0x18')](handleEntityNotFound(_0x4ab1bb,null))[_0x6d71('0x18')](function(_0x35735e){if(_0x35735e){return _0x35735e['removeTags'](_0xafcf9b[_0x6d71('0x27')]['ids']);}})['then'](respondWithStatusCode(_0x4ab1bb,null))[_0x6d71('0x36')](handleError(_0x4ab1bb,null));};exports[_0x6d71('0x51')]=function(_0x12e091,_0x838c86){var _0x4499f6=moment()[_0x6d71('0x52')]()[_0x6d71('0x53')]();var _0x4670b3=path[_0x6d71('0x54')](config[_0x6d71('0x55')],_0x6d71('0x56'),'files',_0x6d71('0x57'));var _0x5e92ed=path['join'](config['root'],_0x6d71('0x56'),'files','attachments');var _0x3fe1ac=path['join'](_0x4670b3,_0x4499f6);var _0x190131=util[_0x6d71('0x47')]('transcript-%d-%s.zip',_0x12e091[_0x6d71('0x2b')]['id'],_0x4499f6);var _0x38c105=path[_0x6d71('0x54')](_0x4670b3,_0x190131);var _0x14f216=[];_0x14f216['push']({'model':db['User'],'as':_0x6d71('0x58'),'attributes':['id',_0x6d71('0x59')],'raw':!![]});_0x14f216['push']({'model':db['CmContact'],'as':'Contact','attributes':['id',_0x6d71('0x5a'),'lastName'],'raw':!![]});if(_0x12e091[_0x6d71('0x27')]['attachments']){_0x14f216[_0x6d71('0x5b')]({'model':db[_0x6d71('0x5c')],'as':_0x6d71('0x5c'),'raw':!![]});}var _0x42e197=[{'model':db[_0x6d71('0x38')],'as':_0x6d71('0x5d'),'attributes':['id','body',_0x6d71('0x5e'),_0x6d71('0x5f'),_0x6d71('0x60'),_0x6d71('0x61')],'include':_0x14f216}];_0x42e197['push']({'model':db[_0x6d71('0x62')],'as':_0x6d71('0x63'),'attributes':['id','name']});_0x42e197[_0x6d71('0x5b')]({'model':db[_0x6d71('0x58')],'as':'Owner','attributes':['id','fullname']});return db[_0x6d71('0x20')][_0x6d71('0x33')]({'where':{'id':_0x12e091['params']['id']},'include':_0x42e197})[_0x6d71('0x18')](handleEntityNotFound(_0x838c86,null))[_0x6d71('0x18')](function(_0x194ed3){if(_0x194ed3){var _0x82139d=_0x194ed3[_0x6d71('0x64')]({'plain':!![]});fs['mkdirSync'](_0x3fe1ac);var _0xe01a16={'channel':'Openchannel','account':_0x82139d['Account'][_0x6d71('0x1d')],'agent':_0x82139d[_0x6d71('0x65')]?_0x82139d['Owner'][_0x6d71('0x59')]:_0x6d71('0x66'),'createdAt':moment(_0x82139d[_0x6d71('0x5e')])['format'](_0x6d71('0x48'))[_0x6d71('0x53')](),'closedAt':_0x82139d[_0x6d71('0x67')]?moment(_0x82139d[_0x6d71('0x68')])['format']('YYYY-MM-DD\x20HH:mm:ss')[_0x6d71('0x53')]():'','disposition':_0x82139d[_0x6d71('0x69')],'visibility':_0x82139d[_0x6d71('0x6a')]?_0x6d71('0x6b'):'Private','messages':_(_0x82139d[_0x6d71('0x5d')])[_0x6d71('0x44')]({'secret':![]})[_0x6d71('0x6c')](function(_0x23ee5c){if(_0x23ee5c[_0x6d71('0x5c')]){var _0x281d9c=path['join'](_0x5e92ed,_0x23ee5c[_0x6d71('0x5c')][_0x6d71('0x6d')]);if(fs[_0x6d71('0x6e')](_0x281d9c)){fs[_0x6d71('0x6f')](_0x281d9c)[_0x6d71('0x70')](fs[_0x6d71('0x71')](path[_0x6d71('0x54')](_0x3fe1ac,_0x23ee5c[_0x6d71('0x5c')][_0x6d71('0x6d')])));}}return{'date':moment(_0x23ee5c['createdAt'])['format']('YYYY-MM-DD\x20HH:mm:ss')[_0x6d71('0x53')](),'sender':_0x23ee5c[_0x6d71('0x5f')]===_0x6d71('0x72')?_0x23ee5c['User']?_0x23ee5c[_0x6d71('0x58')][_0x6d71('0x59')]:'System':_0x23ee5c['Contact'][_0x6d71('0x5a')]+(_0x23ee5c[_0x6d71('0x73')][_0x6d71('0x74')]?'\x20'+_0x23ee5c[_0x6d71('0x73')][_0x6d71('0x74')]:''),'body':_0x23ee5c['Attachment']?_0x23ee5c[_0x6d71('0x5c')][_0x6d71('0x6d')]:_0x23ee5c[_0x6d71('0x35')],'direction':_0x23ee5c[_0x6d71('0x5f')]==='out'?'A':'C','secret':_0x23ee5c['secret'],'read':_0x23ee5c[_0x6d71('0x61')],'attachment':_0x23ee5c[_0x6d71('0x5c')]};})['value']()};return ejs[_0x6d71('0x75')](path['join'](config['root'],'server',_0x6d71('0x76'),_0x6d71('0x77')),{'interaction':_0xe01a16})[_0x6d71('0x18')](function(_0x269fa4){var _0x162755=path['join'](_0x3fe1ac,'transcript-'+_0x82139d['id']+'-'+_0x4499f6+_0x6d71('0x78'));var _0x32b41d={'path':_0x162755,'channel':_0x6d71('0x79'),'interactionId':_0x82139d['id']};return pdf[_0x6d71('0x7a')](_0x269fa4,_0x32b41d);})[_0x6d71('0x18')](function(){return new Promise(function(_0x4ecd12,_0x9add2b){zipdir(_0x3fe1ac,{'saveTo':_0x38c105},function(_0x64089f,_0x710330){if(_0x64089f)return _0x9add2b(_0x64089f);return _0x4ecd12(_0x710330);});})[_0x6d71('0x18')](function(){return new Promise(function(_0x367a6b,_0x4e2795){rimraf(_0x3fe1ac,function(_0x207048){if(_0x207048)_0x4e2795(_0x207048);return _0x367a6b();});});})[_0x6d71('0x18')](function(){return _0x838c86[_0x6d71('0x51')](_0x38c105,_0x190131,function(_0x22794f){if(_0x22794f){logger[_0x6d71('0x1b')](_0x6d71('0x7b'),_0x22794f);}else{fs[_0x6d71('0x7c')](_0x38c105);}});});});}else{return _0x838c86[_0x6d71('0xe')](0xc8);}})[_0x6d71('0x36')](handleError(_0x838c86,null));};
\ No newline at end of file
+var _0x1eaa=['OpenchannelInteraction','rawAttributes','key','getOptions','findAll','openchannel','user','catch','query','type','from','params','model','filters','attributes','fields','length','includeAll','merge','create','body','find','describe','addMessage','OpenchannelMessage','omit','ids','keys','intersection','hasOwnProperty','nolimit','order','sort','where','OpenchannelInteractionId','filter','$gte','split','format','options','include','rows','addTags','setTags','spread','color','openchannelInteractionTags:save','removeTags','download','toString','join','root','server','files','tmp','attachments','transcript-%d-%s.zip','User','fullname','push','CmContact','firstName','lastName','Attachment','Messages','createdAt','direction','secret','read','Account','Owner','get','mkdirSync','Openchannel','N.A.','YYYY-MM-DD\x20HH:mm:ss','closed','closedAt','disposition','threadId','Private','existsSync','createWriteStream','basename','out','System','Contact','value','views','downloadInteraction.ejs','transcript-','.pdf','createPdfFromHTML','error','Unable\x20to\x20delete\x20zip\x20file','unlinkSync','sendStatus','rimraf','zip-dir','moment','util','path','ejs','ioredis','../../components/interaction/service','../../components/parsers/qs','../../components/export/pdf','../../config/logger','../../config/environment','../../mysqldb','redis','defaults','socket.io-emitter','./openchannelInteraction.socket','register','status','json','offset','undefined','limit','count','set','update','then','destroy','end','stack','name','index','map'];(function(_0x7f04ce,_0x51d650){var _0x5ee6c7=function(_0x36d23c){while(--_0x36d23c){_0x7f04ce['push'](_0x7f04ce['shift']());}};_0x5ee6c7(++_0x51d650);}(_0x1eaa,0x1e7));var _0xa1ea=function(_0x5c5f88,_0x429bf){_0x5c5f88=_0x5c5f88-0x0;var _0x501d56=_0x1eaa[_0x5c5f88];return _0x501d56;};'use strict';var rimraf=require(_0xa1ea('0x0'));var zipdir=require(_0xa1ea('0x1'));var moment=require(_0xa1ea('0x2'));var util=require(_0xa1ea('0x3'));var path=require(_0xa1ea('0x4'));var ejs=require(_0xa1ea('0x5'));var fs=require('fs');var _=require('lodash');var Redis=require(_0xa1ea('0x6'));var interaction=require(_0xa1ea('0x7'));var qs=require(_0xa1ea('0x8'));var pdf=require(_0xa1ea('0x9'));var logger=require(_0xa1ea('0xa'))('api');var config=require(_0xa1ea('0xb'));var db=require(_0xa1ea('0xc'))['db'];config[_0xa1ea('0xd')]=_[_0xa1ea('0xe')](config[_0xa1ea('0xd')],{'host':'localhost','port':0x18eb});var socket=require(_0xa1ea('0xf'))(new Redis(config[_0xa1ea('0xd')]));require(_0xa1ea('0x10'))[_0xa1ea('0x11')](socket);function respondWithStatusCode(_0x318f0f,_0x410e03){_0x410e03=_0x410e03||0xcc;return function(_0x3f7962){if(_0x3f7962){return _0x318f0f['sendStatus'](_0x410e03);}return _0x318f0f['status'](_0x410e03)['end']();};}function respondWithResult(_0x4d300d,_0x57b9e4){_0x57b9e4=_0x57b9e4||0xc8;return function(_0x3896f9){if(_0x3896f9){return _0x4d300d[_0xa1ea('0x12')](_0x57b9e4)[_0xa1ea('0x13')](_0x3896f9);}};}function respondWithFilteredResult(_0x3d4fe5,_0x5c6039){return function(_0x1129b7){if(_0x1129b7){var _0x59aac7=typeof _0x5c6039[_0xa1ea('0x14')]===_0xa1ea('0x15')&&typeof _0x5c6039[_0xa1ea('0x16')]==='undefined';var _0x3ea52d=_0x1129b7[_0xa1ea('0x17')];var _0x33cc68=_0x59aac7?0x0:_0x5c6039[_0xa1ea('0x14')];var _0x113f48=_0x59aac7?_0x1129b7['count']:_0x5c6039[_0xa1ea('0x14')]+_0x5c6039[_0xa1ea('0x16')];var _0x13856e;if(_0x113f48>=_0x3ea52d){_0x113f48=_0x3ea52d;_0x13856e=0xc8;}else{_0x13856e=0xce;}_0x3d4fe5[_0xa1ea('0x12')](_0x13856e);return _0x3d4fe5[_0xa1ea('0x18')]('Content-Range',_0x33cc68+'-'+_0x113f48+'/'+_0x3ea52d)[_0xa1ea('0x13')](_0x1129b7);}return null;};}function saveUpdates(_0x14ab5d){return function(_0x5cda82){if(_0x5cda82){return _0x5cda82[_0xa1ea('0x19')](_0x14ab5d)[_0xa1ea('0x1a')](function(_0x1c1345){return _0x1c1345;});}return null;};}function removeEntity(_0x73a73b){return function(_0x2d1470){if(_0x2d1470){return _0x2d1470[_0xa1ea('0x1b')]()[_0xa1ea('0x1a')](function(){_0x73a73b[_0xa1ea('0x12')](0xcc)[_0xa1ea('0x1c')]();});}};}function handleEntityNotFound(_0x2608e3){return function(_0x11a88f){if(!_0x11a88f){_0x2608e3['sendStatus'](0x194);}return _0x11a88f;};}function handleError(_0x5142c1,_0x370d25){_0x370d25=_0x370d25||0x1f4;return function(_0x420263){logger['error'](_0x420263[_0xa1ea('0x1d')]);if(_0x420263[_0xa1ea('0x1e')]){delete _0x420263[_0xa1ea('0x1e')];}_0x5142c1[_0xa1ea('0x12')](_0x370d25)['send'](_0x420263);};}exports[_0xa1ea('0x1f')]=function(_0x21f16b,_0x59cc90){var _0xf63e2d={};var _0x13a16e=_[_0xa1ea('0x20')](db[_0xa1ea('0x21')][_0xa1ea('0x22')],function(_0x39fc5d){return{'name':_0x39fc5d['fieldName'],'type':_0x39fc5d['type'][_0xa1ea('0x23')]};});_0xf63e2d=qs[_0xa1ea('0x24')](_0x13a16e,_0x21f16b);return interaction[_0xa1ea('0x25')](_0xa1ea('0x26'),_0x21f16b['query'],_0x21f16b[_0xa1ea('0x27')],_0xf63e2d,_0x13a16e)[_0xa1ea('0x1a')](respondWithFilteredResult(_0x59cc90,_0xf63e2d))[_0xa1ea('0x28')](handleError(_0x59cc90,null));};exports['show']=function(_0x4b3774,_0x5dde90){var _0x3e2392={};if(_0x4b3774[_0xa1ea('0x29')]['type']&&_0x4b3774[_0xa1ea('0x29')][_0xa1ea('0x2a')]===_0xa1ea('0x2b')){_0x3e2392[_0xa1ea('0x2b')]=_0x4b3774['params']['id'];}else{_0x3e2392['id']=_0x4b3774[_0xa1ea('0x2c')]['id'];}var _0x37faf1={'raw':![],'where':_0x3e2392},_0x54834b={};_0x54834b[_0xa1ea('0x2d')]=_['keys'](db[_0xa1ea('0x21')]['rawAttributes']);_0x54834b[_0xa1ea('0x29')]=_['keys'](_0x4b3774[_0xa1ea('0x29')]);_0x54834b[_0xa1ea('0x2e')]=_['intersection'](_0x54834b['model'],_0x54834b[_0xa1ea('0x29')]);_0x37faf1[_0xa1ea('0x2f')]=_['intersection'](_0x54834b[_0xa1ea('0x2d')],qs[_0xa1ea('0x30')](_0x4b3774[_0xa1ea('0x29')][_0xa1ea('0x30')]));_0x37faf1[_0xa1ea('0x2f')]=_0x37faf1['attributes'][_0xa1ea('0x31')]?_0x37faf1[_0xa1ea('0x2f')]:_0x54834b[_0xa1ea('0x2d')];if(_0x4b3774[_0xa1ea('0x29')][_0xa1ea('0x32')]){_0x37faf1['include']=[{'all':!![]}];}_0x37faf1=_[_0xa1ea('0x33')]({},_0x37faf1,_0x4b3774['options']);return db[_0xa1ea('0x21')]['find'](_0x37faf1)[_0xa1ea('0x1a')](handleEntityNotFound(_0x5dde90,null))[_0xa1ea('0x1a')](respondWithResult(_0x5dde90,null))[_0xa1ea('0x28')](handleError(_0x5dde90,null));};exports[_0xa1ea('0x34')]=function(_0xf7e92a,_0x236b03){return db['OpenchannelInteraction'][_0xa1ea('0x34')](_0xf7e92a[_0xa1ea('0x35')],{})[_0xa1ea('0x1a')](respondWithResult(_0x236b03,0xc9))['catch'](handleError(_0x236b03,null));};exports[_0xa1ea('0x19')]=function(_0x554d5d,_0x35ed84){if(_0x554d5d[_0xa1ea('0x35')]['id']){delete _0x554d5d[_0xa1ea('0x35')]['id'];}return db[_0xa1ea('0x21')]['find']({'where':{'id':_0x554d5d[_0xa1ea('0x2c')]['id']}})['then'](handleEntityNotFound(_0x35ed84,null))['then'](saveUpdates(_0x554d5d['body'],null))[_0xa1ea('0x1a')](respondWithResult(_0x35ed84,null))[_0xa1ea('0x28')](handleError(_0x35ed84,null));};exports[_0xa1ea('0x1b')]=function(_0x2be5fc,_0x3abde5){return db[_0xa1ea('0x21')][_0xa1ea('0x36')]({'where':{'id':_0x2be5fc[_0xa1ea('0x2c')]['id']}})['then'](handleEntityNotFound(_0x3abde5,null))[_0xa1ea('0x1a')](removeEntity(_0x3abde5,null))['catch'](handleError(_0x3abde5,null));};exports[_0xa1ea('0x37')]=function(_0x20c350,_0x23ff7f){return db[_0xa1ea('0x21')][_0xa1ea('0x37')]()[_0xa1ea('0x1a')](respondWithResult(_0x23ff7f,null))['catch'](handleError(_0x23ff7f,null));};exports[_0xa1ea('0x38')]=function(_0x5763a5,_0x1b2c96){return db[_0xa1ea('0x39')]['find']({'where':{'id':_0x5763a5[_0xa1ea('0x2c')]['id']}})[_0xa1ea('0x1a')](handleEntityNotFound(_0x1b2c96,null))[_0xa1ea('0x1a')](function(_0x313eaf){if(_0x313eaf){return _0x313eaf[_0xa1ea('0x38')](_0x5763a5[_0xa1ea('0x35')]['ids'],_[_0xa1ea('0x3a')](_0x5763a5['body'],[_0xa1ea('0x3b'),'id'])||{});}})[_0xa1ea('0x1a')](respondWithResult(_0x1b2c96,null))['catch'](handleError(_0x1b2c96,null));};exports['getMessages']=function(_0x291533,_0x5b3311){var _0x1c4f02={'raw':![],'where':{}};var _0x1e8167={};var _0xf42054={'count':0x0,'rows':[]};return db[_0xa1ea('0x21')]['findOne']({'where':{'id':_0x291533[_0xa1ea('0x2c')]['id']}})['then'](handleEntityNotFound(_0x5b3311,null))[_0xa1ea('0x1a')](function(_0x413694){if(_0x413694){_0x1e8167[_0xa1ea('0x2d')]=_[_0xa1ea('0x3c')](db['OpenchannelMessage'][_0xa1ea('0x22')]);_0x1e8167['query']=_[_0xa1ea('0x3c')](_0x291533[_0xa1ea('0x29')]);_0x1e8167[_0xa1ea('0x2e')]=_['intersection'](_0x1e8167[_0xa1ea('0x2d')],_0x1e8167[_0xa1ea('0x29')]);_0x1c4f02[_0xa1ea('0x2f')]=_[_0xa1ea('0x3d')](_0x1e8167[_0xa1ea('0x2d')],qs[_0xa1ea('0x30')](_0x291533['query'][_0xa1ea('0x30')]));_0x1c4f02[_0xa1ea('0x2f')]=_0x1c4f02[_0xa1ea('0x2f')][_0xa1ea('0x31')]?_0x1c4f02[_0xa1ea('0x2f')]:_0x1e8167[_0xa1ea('0x2d')];if(!_0x291533[_0xa1ea('0x29')][_0xa1ea('0x3e')](_0xa1ea('0x3f'))){_0x1c4f02[_0xa1ea('0x16')]=qs[_0xa1ea('0x16')](_0x291533['query'][_0xa1ea('0x16')]);_0x1c4f02[_0xa1ea('0x14')]=qs['offset'](_0x291533[_0xa1ea('0x29')][_0xa1ea('0x14')]);}_0x1c4f02[_0xa1ea('0x40')]=qs['sort'](_0x291533[_0xa1ea('0x29')][_0xa1ea('0x41')]);_0x1c4f02['where']=qs[_0xa1ea('0x2e')](_['pick'](_0x291533['query'],_0x1e8167['filters']));_0x1c4f02[_0xa1ea('0x42')][_0xa1ea('0x43')]=_0x413694['id'];if(_0x291533['query'][_0xa1ea('0x44')]){_0x1c4f02[_0xa1ea('0x42')]=_[_0xa1ea('0x33')](_0x1c4f02[_0xa1ea('0x42')],{'$or':_[_0xa1ea('0x20')](_0x1c4f02['attributes'],function(_0x13ac2d){var _0x4c76c4={};_0x4c76c4[_0x13ac2d]={'$like':'%'+_0x291533['query']['filter']+'%'};return _0x4c76c4;})});}if(_0x291533[_0xa1ea('0x29')][_0xa1ea('0x45')]){var _0x47cc44=_0x291533['query'][_0xa1ea('0x45')][_0xa1ea('0x46')](',');var _0x55d87c={};_0x55d87c[_0x47cc44[0x0]]={'$gte':moment(_0x47cc44[0x1])[_0xa1ea('0x47')]('YYYY-MM-DD\x20HH:mm:ss')};_0x1c4f02[_0xa1ea('0x42')]=_[_0xa1ea('0x33')](_0x1c4f02[_0xa1ea('0x42')],_0x55d87c);}_0x1c4f02=_['merge']({},_0x1c4f02,_0x291533[_0xa1ea('0x48')]);return db[_0xa1ea('0x39')][_0xa1ea('0x17')]({'where':_0x1c4f02[_0xa1ea('0x42')]})[_0xa1ea('0x1a')](function(_0xebcc98){_0xf42054[_0xa1ea('0x17')]=_0xebcc98;if(_0x291533[_0xa1ea('0x29')]['includeAll']){_0x1c4f02[_0xa1ea('0x49')]=[{'all':!![]}];}return db[_0xa1ea('0x39')][_0xa1ea('0x25')](_0x1c4f02);})[_0xa1ea('0x1a')](function(_0x155c89){_0xf42054[_0xa1ea('0x4a')]=_0x155c89;return _0xf42054;});}})[_0xa1ea('0x1a')](respondWithFilteredResult(_0x5b3311,_0x1c4f02))[_0xa1ea('0x28')](handleError(_0x5b3311,null));};exports[_0xa1ea('0x4b')]=function(_0x48d530,_0x329df3){return db[_0xa1ea('0x21')][_0xa1ea('0x36')]({'where':{'id':_0x48d530[_0xa1ea('0x2c')]['id']}})[_0xa1ea('0x1a')](handleEntityNotFound(_0x329df3,null))[_0xa1ea('0x1a')](function(_0x138326){if(_0x138326){return _0x138326[_0xa1ea('0x4c')](_0x48d530['body'][_0xa1ea('0x3b')],_['omit'](_0x48d530[_0xa1ea('0x35')],[_0xa1ea('0x3b'),'id'])||{})[_0xa1ea('0x4d')](function(){return db['Tag']['findAll']({'attributes':['id',_0xa1ea('0x1e'),_0xa1ea('0x4e')],'where':{'id':_0x48d530['body'][_0xa1ea('0x3b')]}});})[_0xa1ea('0x1a')](function(_0x52758f){socket['emit'](_0xa1ea('0x4f'),{'id':Number(_0x48d530[_0xa1ea('0x2c')]['id']),'tags':_0x52758f||[]});return{'id':Number(_0x48d530[_0xa1ea('0x2c')]['id']),'tags':_0x52758f||[]};});}})[_0xa1ea('0x1a')](respondWithResult(_0x329df3,null))[_0xa1ea('0x28')](handleError(_0x329df3,null));};exports[_0xa1ea('0x50')]=function(_0x5c755b,_0x5e47fa){return db['OpenchannelInteraction'][_0xa1ea('0x36')]({'where':{'id':_0x5c755b[_0xa1ea('0x2c')]['id']}})[_0xa1ea('0x1a')](handleEntityNotFound(_0x5e47fa,null))[_0xa1ea('0x1a')](function(_0x3fd8bf){if(_0x3fd8bf){return _0x3fd8bf[_0xa1ea('0x50')](_0x5c755b[_0xa1ea('0x29')][_0xa1ea('0x3b')]);}})['then'](respondWithStatusCode(_0x5e47fa,null))['catch'](handleError(_0x5e47fa,null));};exports[_0xa1ea('0x51')]=function(_0x2ca439,_0x55bc58){var _0x4fa04f=moment()['unix']()[_0xa1ea('0x52')]();var _0x48b237=path[_0xa1ea('0x53')](config[_0xa1ea('0x54')],_0xa1ea('0x55'),_0xa1ea('0x56'),_0xa1ea('0x57'));var _0x24e1fc=path[_0xa1ea('0x53')](config[_0xa1ea('0x54')],_0xa1ea('0x55'),_0xa1ea('0x56'),_0xa1ea('0x58'));var _0x365b89=path[_0xa1ea('0x53')](_0x48b237,_0x4fa04f);var _0x4a61f6=util[_0xa1ea('0x47')](_0xa1ea('0x59'),_0x2ca439[_0xa1ea('0x2c')]['id'],_0x4fa04f);var _0x30467d=path[_0xa1ea('0x53')](_0x48b237,_0x4a61f6);var _0xc50d15=[];_0xc50d15['push']({'model':db[_0xa1ea('0x5a')],'as':'User','attributes':['id',_0xa1ea('0x5b')],'raw':!![]});_0xc50d15[_0xa1ea('0x5c')]({'model':db[_0xa1ea('0x5d')],'as':'Contact','attributes':['id',_0xa1ea('0x5e'),_0xa1ea('0x5f')],'raw':!![]});if(_0x2ca439[_0xa1ea('0x29')][_0xa1ea('0x58')]){_0xc50d15[_0xa1ea('0x5c')]({'model':db[_0xa1ea('0x60')],'as':_0xa1ea('0x60'),'raw':!![]});}var _0x1a0aed=[{'model':db[_0xa1ea('0x39')],'as':_0xa1ea('0x61'),'attributes':['id','body',_0xa1ea('0x62'),_0xa1ea('0x63'),_0xa1ea('0x64'),_0xa1ea('0x65')],'include':_0xc50d15}];_0x1a0aed[_0xa1ea('0x5c')]({'model':db['OpenchannelAccount'],'as':_0xa1ea('0x66'),'attributes':['id',_0xa1ea('0x1e')]});_0x1a0aed['push']({'model':db['User'],'as':_0xa1ea('0x67'),'attributes':['id',_0xa1ea('0x5b')]});return db[_0xa1ea('0x21')][_0xa1ea('0x36')]({'where':{'id':_0x2ca439['params']['id']},'include':_0x1a0aed})['then'](handleEntityNotFound(_0x55bc58,null))[_0xa1ea('0x1a')](function(_0x20ef71){if(_0x20ef71){var _0x3df605=_0x20ef71[_0xa1ea('0x68')]({'plain':!![]});fs[_0xa1ea('0x69')](_0x365b89);var _0x20c634={'channel':_0xa1ea('0x6a'),'account':_0x3df605[_0xa1ea('0x66')][_0xa1ea('0x1e')],'agent':_0x3df605[_0xa1ea('0x67')]?_0x3df605[_0xa1ea('0x67')][_0xa1ea('0x5b')]:_0xa1ea('0x6b'),'createdAt':moment(_0x3df605['createdAt'])[_0xa1ea('0x47')](_0xa1ea('0x6c'))[_0xa1ea('0x52')](),'closedAt':_0x3df605[_0xa1ea('0x6d')]?moment(_0x3df605[_0xa1ea('0x6e')])[_0xa1ea('0x47')](_0xa1ea('0x6c'))[_0xa1ea('0x52')]():'','disposition':_0x3df605[_0xa1ea('0x6f')],'visibility':_0x3df605[_0xa1ea('0x70')]?'Public':_0xa1ea('0x71'),'messages':_(_0x3df605[_0xa1ea('0x61')])[_0xa1ea('0x44')]({'secret':![]})[_0xa1ea('0x20')](function(_0x55ea64){if(_0x55ea64[_0xa1ea('0x60')]){var _0x2e7b95=path[_0xa1ea('0x53')](_0x24e1fc,_0x55ea64[_0xa1ea('0x60')]['basename']);if(fs[_0xa1ea('0x72')](_0x2e7b95)){fs['createReadStream'](_0x2e7b95)['pipe'](fs[_0xa1ea('0x73')](path[_0xa1ea('0x53')](_0x365b89,_0x55ea64['Attachment'][_0xa1ea('0x74')])));}}return{'date':moment(_0x55ea64['createdAt'])[_0xa1ea('0x47')]('YYYY-MM-DD\x20HH:mm:ss')[_0xa1ea('0x52')](),'sender':_0x55ea64[_0xa1ea('0x63')]===_0xa1ea('0x75')?_0x55ea64['User']?_0x55ea64[_0xa1ea('0x5a')][_0xa1ea('0x5b')]:_0xa1ea('0x76'):_0x55ea64['Contact'][_0xa1ea('0x5e')]+(_0x55ea64[_0xa1ea('0x77')][_0xa1ea('0x5f')]?'\x20'+_0x55ea64[_0xa1ea('0x77')][_0xa1ea('0x5f')]:''),'body':_0x55ea64[_0xa1ea('0x60')]?_0x55ea64['Attachment'][_0xa1ea('0x74')]:_0x55ea64[_0xa1ea('0x35')],'direction':_0x55ea64[_0xa1ea('0x63')]===_0xa1ea('0x75')?'A':'C','secret':_0x55ea64[_0xa1ea('0x64')],'read':_0x55ea64['read'],'attachment':_0x55ea64[_0xa1ea('0x60')]};})[_0xa1ea('0x78')]()};return ejs['renderFile'](path['join'](config[_0xa1ea('0x54')],'server',_0xa1ea('0x79'),_0xa1ea('0x7a')),{'interaction':_0x20c634})[_0xa1ea('0x1a')](function(_0x187995){var _0x3f9a48=path[_0xa1ea('0x53')](_0x365b89,_0xa1ea('0x7b')+_0x3df605['id']+'-'+_0x4fa04f+_0xa1ea('0x7c'));var _0x2d43a4={'path':_0x3f9a48,'channel':_0xa1ea('0x6a'),'interactionId':_0x3df605['id']};return pdf[_0xa1ea('0x7d')](_0x187995,_0x2d43a4);})['then'](function(){return new Promise(function(_0x394588,_0xe61f9b){zipdir(_0x365b89,{'saveTo':_0x30467d},function(_0x4b5155,_0xd13023){if(_0x4b5155)return _0xe61f9b(_0x4b5155);return _0x394588(_0xd13023);});})['then'](function(){return new Promise(function(_0x1313bd,_0x3e56a3){rimraf(_0x365b89,function(_0x2badce){if(_0x2badce)_0x3e56a3(_0x2badce);return _0x1313bd();});});})['then'](function(){return _0x55bc58[_0xa1ea('0x51')](_0x30467d,_0x4a61f6,function(_0x1f1eb9){if(_0x1f1eb9){logger[_0xa1ea('0x7e')](_0xa1ea('0x7f'),_0x1f1eb9);}else{fs[_0xa1ea('0x80')](_0x30467d);}});});});}else{return _0x55bc58[_0xa1ea('0x81')](0xc8);}})['catch'](handleError(_0x55bc58,null));};
\ No newline at end of file