Built motion from commit 00bf23f6.|2.6.16
[motion2.git] / server / api / openchannelInteraction / openchannelInteraction.controller.js
index 5220cb6..99a014d 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 _0x6215=['tmp','attachments','transcript-%d-%s.zip','push','User','fullname','CmContact','Contact','firstName','lastName','Attachment','Messages','secret','read','Account','Owner','get','mkdirSync','Openchannel','N.A.','createdAt','YYYY-MM-DD\x20HH:mm:ss','toString','Public','Private','basename','existsSync','createReadStream','createWriteStream','direction','System','out','value','views','transcript-','.pdf','createPdfFromHTML','Unable\x20to\x20delete\x20zip\x20file','unlinkSync','zip-dir','util','path','ejs','lodash','../../components/interaction/service','../../components/parsers/qs','../../config/logger','api','../../config/environment','../../mysqldb','redis','defaults','localhost','socket.io-emitter','./openchannelInteraction.socket','register','sendStatus','status','end','json','offset','undefined','limit','count','update','then','destroy','error','stack','name','send','index','OpenchannelInteraction','findAll','openchannel','query','catch','show','params','model','rawAttributes','filters','intersection','fields','attributes','length','include','merge','options','create','body','find','describe','OpenchannelMessage','addMessage','omit','ids','findOne','hasOwnProperty','order','sort','where','pick','OpenchannelInteractionId','filter','map','$gte','split','format','addTags','setTags','spread','Tag','color','emit','removeTags','download','join','root','server','files'];(function(_0x1de511,_0x3763b9){var _0xdee9e4=function(_0x2260ea){while(--_0x2260ea){_0x1de511['push'](_0x1de511['shift']());}};_0xdee9e4(++_0x3763b9);}(_0x6215,0x119));var _0x5621=function(_0x3dd15e,_0x1f0015){_0x3dd15e=_0x3dd15e-0x0;var _0x231fd0=_0x6215[_0x3dd15e];return _0x231fd0;};'use strict';var rimraf=require('rimraf');var zipdir=require(_0x5621('0x0'));var moment=require('moment');var util=require(_0x5621('0x1'));var path=require(_0x5621('0x2'));var ejs=require(_0x5621('0x3'));var fs=require('fs');var _=require(_0x5621('0x4'));var Redis=require('ioredis');var interaction=require(_0x5621('0x5'));var qs=require(_0x5621('0x6'));var pdf=require('../../components/export/pdf');var logger=require(_0x5621('0x7'))(_0x5621('0x8'));var config=require(_0x5621('0x9'));var db=require(_0x5621('0xa'))['db'];config[_0x5621('0xb')]=_[_0x5621('0xc')](config['redis'],{'host':_0x5621('0xd'),'port':0x18eb});var socket=require(_0x5621('0xe'))(new Redis(config[_0x5621('0xb')]));require(_0x5621('0xf'))[_0x5621('0x10')](socket);function respondWithStatusCode(_0x57ccae,_0xf5e389){_0xf5e389=_0xf5e389||0xcc;return function(_0x4cfb95){if(_0x4cfb95){return _0x57ccae[_0x5621('0x11')](_0xf5e389);}return _0x57ccae[_0x5621('0x12')](_0xf5e389)[_0x5621('0x13')]();};}function respondWithResult(_0xfc032c,_0x50ffd0){_0x50ffd0=_0x50ffd0||0xc8;return function(_0x3e59db){if(_0x3e59db){return _0xfc032c[_0x5621('0x12')](_0x50ffd0)[_0x5621('0x14')](_0x3e59db);}};}function respondWithFilteredResult(_0x46b591,_0xf00432){return function(_0x5905c4){if(_0x5905c4){var _0x40ee84=typeof _0xf00432[_0x5621('0x15')]===_0x5621('0x16')&&typeof _0xf00432[_0x5621('0x17')]==='undefined';var _0x17ac2f=_0x5905c4[_0x5621('0x18')];var _0x16fc45=_0x40ee84?0x0:_0xf00432[_0x5621('0x15')];var _0x504807=_0x40ee84?_0x5905c4[_0x5621('0x18')]:_0xf00432[_0x5621('0x15')]+_0xf00432[_0x5621('0x17')];var _0x56ddba;if(_0x504807>=_0x17ac2f){_0x504807=_0x17ac2f;_0x56ddba=0xc8;}else{_0x56ddba=0xce;}_0x46b591[_0x5621('0x12')](_0x56ddba);return _0x46b591['set']('Content-Range',_0x16fc45+'-'+_0x504807+'/'+_0x17ac2f)[_0x5621('0x14')](_0x5905c4);}return null;};}function saveUpdates(_0x2b484f){return function(_0x2f8764){if(_0x2f8764){return _0x2f8764[_0x5621('0x19')](_0x2b484f)[_0x5621('0x1a')](function(_0x50afc1){return _0x50afc1;});}return null;};}function removeEntity(_0x3d33d2){return function(_0x1bd37f){if(_0x1bd37f){return _0x1bd37f[_0x5621('0x1b')]()[_0x5621('0x1a')](function(){_0x3d33d2[_0x5621('0x12')](0xcc)[_0x5621('0x13')]();});}};}function handleEntityNotFound(_0x332353){return function(_0x1cb840){if(!_0x1cb840){_0x332353[_0x5621('0x11')](0x194);}return _0x1cb840;};}function handleError(_0x5345bd,_0x54496d){_0x54496d=_0x54496d||0x1f4;return function(_0x20d508){logger[_0x5621('0x1c')](_0x20d508[_0x5621('0x1d')]);if(_0x20d508[_0x5621('0x1e')]){delete _0x20d508[_0x5621('0x1e')];}_0x5345bd[_0x5621('0x12')](_0x54496d)[_0x5621('0x1f')](_0x20d508);};}exports[_0x5621('0x20')]=function(_0x40701b,_0x153efb){var _0x50ff2a={};var _0x520559=_['map'](db[_0x5621('0x21')]['rawAttributes'],function(_0x584484){return{'name':_0x584484['fieldName'],'type':_0x584484['type']['key']};});_0x50ff2a=qs['getOptions'](_0x520559,_0x40701b);return interaction[_0x5621('0x22')](_0x5621('0x23'),_0x40701b[_0x5621('0x24')],_0x40701b['user'],_0x50ff2a,_0x520559)[_0x5621('0x1a')](respondWithFilteredResult(_0x153efb,_0x50ff2a))[_0x5621('0x25')](handleError(_0x153efb,null));};exports[_0x5621('0x26')]=function(_0x293e78,_0x462856){var _0x29904d={};if(_0x293e78[_0x5621('0x24')]['type']&&_0x293e78['query']['type']==='from'){_0x29904d['from']=_0x293e78[_0x5621('0x27')]['id'];}else{_0x29904d['id']=_0x293e78[_0x5621('0x27')]['id'];}var _0xcd22fb={'raw':![],'where':_0x29904d},_0x20d3a4={};_0x20d3a4[_0x5621('0x28')]=_['keys'](db[_0x5621('0x21')][_0x5621('0x29')]);_0x20d3a4['query']=_['keys'](_0x293e78[_0x5621('0x24')]);_0x20d3a4[_0x5621('0x2a')]=_['intersection'](_0x20d3a4[_0x5621('0x28')],_0x20d3a4['query']);_0xcd22fb['attributes']=_[_0x5621('0x2b')](_0x20d3a4[_0x5621('0x28')],qs['fields'](_0x293e78['query'][_0x5621('0x2c')]));_0xcd22fb[_0x5621('0x2d')]=_0xcd22fb[_0x5621('0x2d')][_0x5621('0x2e')]?_0xcd22fb[_0x5621('0x2d')]:_0x20d3a4[_0x5621('0x28')];if(_0x293e78[_0x5621('0x24')]['includeAll']){_0xcd22fb[_0x5621('0x2f')]=[{'all':!![]}];}_0xcd22fb=_[_0x5621('0x30')]({},_0xcd22fb,_0x293e78[_0x5621('0x31')]);return db['OpenchannelInteraction']['find'](_0xcd22fb)['then'](handleEntityNotFound(_0x462856,null))[_0x5621('0x1a')](respondWithResult(_0x462856,null))[_0x5621('0x25')](handleError(_0x462856,null));};exports[_0x5621('0x32')]=function(_0x5093d6,_0x2aa3e0){return db[_0x5621('0x21')]['create'](_0x5093d6[_0x5621('0x33')],{})[_0x5621('0x1a')](respondWithResult(_0x2aa3e0,0xc9))[_0x5621('0x25')](handleError(_0x2aa3e0,null));};exports[_0x5621('0x19')]=function(_0x2d99f2,_0x55f212){if(_0x2d99f2[_0x5621('0x33')]['id']){delete _0x2d99f2[_0x5621('0x33')]['id'];}return db[_0x5621('0x21')][_0x5621('0x34')]({'where':{'id':_0x2d99f2['params']['id']}})[_0x5621('0x1a')](handleEntityNotFound(_0x55f212,null))[_0x5621('0x1a')](saveUpdates(_0x2d99f2[_0x5621('0x33')],null))[_0x5621('0x1a')](respondWithResult(_0x55f212,null))[_0x5621('0x25')](handleError(_0x55f212,null));};exports['destroy']=function(_0x274c9b,_0xb14c37){return db[_0x5621('0x21')][_0x5621('0x34')]({'where':{'id':_0x274c9b[_0x5621('0x27')]['id']}})[_0x5621('0x1a')](handleEntityNotFound(_0xb14c37,null))[_0x5621('0x1a')](removeEntity(_0xb14c37,null))['catch'](handleError(_0xb14c37,null));};exports[_0x5621('0x35')]=function(_0x4e1172,_0x3d62e6){return db[_0x5621('0x21')][_0x5621('0x35')]()['then'](respondWithResult(_0x3d62e6,null))['catch'](handleError(_0x3d62e6,null));};exports['addMessage']=function(_0x545364,_0xb53e47){return db[_0x5621('0x36')][_0x5621('0x34')]({'where':{'id':_0x545364[_0x5621('0x27')]['id']}})[_0x5621('0x1a')](handleEntityNotFound(_0xb53e47,null))[_0x5621('0x1a')](function(_0x4f6834){if(_0x4f6834){return _0x4f6834[_0x5621('0x37')](_0x545364[_0x5621('0x33')]['ids'],_[_0x5621('0x38')](_0x545364['body'],[_0x5621('0x39'),'id'])||{});}})[_0x5621('0x1a')](respondWithResult(_0xb53e47,null))['catch'](handleError(_0xb53e47,null));};exports['getMessages']=function(_0x146167,_0x3de0ad){var _0x2834e8={'raw':![],'where':{}};var _0x5ccf95={};var _0x102c3a={'count':0x0,'rows':[]};return db[_0x5621('0x21')][_0x5621('0x3a')]({'where':{'id':_0x146167['params']['id']}})[_0x5621('0x1a')](handleEntityNotFound(_0x3de0ad,null))[_0x5621('0x1a')](function(_0x3b8059){if(_0x3b8059){_0x5ccf95[_0x5621('0x28')]=_['keys'](db[_0x5621('0x36')]['rawAttributes']);_0x5ccf95[_0x5621('0x24')]=_['keys'](_0x146167[_0x5621('0x24')]);_0x5ccf95[_0x5621('0x2a')]=_[_0x5621('0x2b')](_0x5ccf95[_0x5621('0x28')],_0x5ccf95['query']);_0x2834e8[_0x5621('0x2d')]=_['intersection'](_0x5ccf95[_0x5621('0x28')],qs[_0x5621('0x2c')](_0x146167[_0x5621('0x24')][_0x5621('0x2c')]));_0x2834e8[_0x5621('0x2d')]=_0x2834e8[_0x5621('0x2d')][_0x5621('0x2e')]?_0x2834e8[_0x5621('0x2d')]:_0x5ccf95['model'];if(!_0x146167[_0x5621('0x24')][_0x5621('0x3b')]('nolimit')){_0x2834e8[_0x5621('0x17')]=qs[_0x5621('0x17')](_0x146167[_0x5621('0x24')]['limit']);_0x2834e8[_0x5621('0x15')]=qs[_0x5621('0x15')](_0x146167[_0x5621('0x24')][_0x5621('0x15')]);}_0x2834e8[_0x5621('0x3c')]=qs[_0x5621('0x3d')](_0x146167['query']['sort']);_0x2834e8[_0x5621('0x3e')]=qs[_0x5621('0x2a')](_[_0x5621('0x3f')](_0x146167['query'],_0x5ccf95['filters']));_0x2834e8[_0x5621('0x3e')][_0x5621('0x40')]=_0x3b8059['id'];if(_0x146167['query'][_0x5621('0x41')]){_0x2834e8[_0x5621('0x3e')]=_['merge'](_0x2834e8['where'],{'$or':_[_0x5621('0x42')](_0x2834e8['attributes'],function(_0x4e332c){var _0x3c41b3={};_0x3c41b3[_0x4e332c]={'$like':'%'+_0x146167[_0x5621('0x24')]['filter']+'%'};return _0x3c41b3;})});}if(_0x146167['query']['$gte']){var _0x1dd009=_0x146167[_0x5621('0x24')][_0x5621('0x43')][_0x5621('0x44')](',');var _0x26b08f={};_0x26b08f[_0x1dd009[0x0]]={'$gte':moment(_0x1dd009[0x1])[_0x5621('0x45')]('YYYY-MM-DD\x20HH:mm:ss')};_0x2834e8['where']=_[_0x5621('0x30')](_0x2834e8[_0x5621('0x3e')],_0x26b08f);}_0x2834e8=_[_0x5621('0x30')]({},_0x2834e8,_0x146167[_0x5621('0x31')]);return db[_0x5621('0x36')][_0x5621('0x18')]({'where':_0x2834e8[_0x5621('0x3e')]})[_0x5621('0x1a')](function(_0x279c84){_0x102c3a[_0x5621('0x18')]=_0x279c84;if(_0x146167[_0x5621('0x24')]['includeAll']){_0x2834e8[_0x5621('0x2f')]=[{'all':!![]}];}return db[_0x5621('0x36')][_0x5621('0x22')](_0x2834e8);})[_0x5621('0x1a')](function(_0xf0142e){_0x102c3a['rows']=_0xf0142e;return _0x102c3a;});}})['then'](respondWithFilteredResult(_0x3de0ad,_0x2834e8))[_0x5621('0x25')](handleError(_0x3de0ad,null));};exports[_0x5621('0x46')]=function(_0x410e8a,_0x2c6131){return db[_0x5621('0x21')][_0x5621('0x34')]({'where':{'id':_0x410e8a['params']['id']}})['then'](handleEntityNotFound(_0x2c6131,null))[_0x5621('0x1a')](function(_0x2f946d){if(_0x2f946d){return _0x2f946d[_0x5621('0x47')](_0x410e8a['body']['ids'],_[_0x5621('0x38')](_0x410e8a[_0x5621('0x33')],[_0x5621('0x39'),'id'])||{})[_0x5621('0x48')](function(){return db[_0x5621('0x49')][_0x5621('0x22')]({'attributes':['id',_0x5621('0x1e'),_0x5621('0x4a')],'where':{'id':_0x410e8a['body'][_0x5621('0x39')]}});})['then'](function(_0x37081f){socket[_0x5621('0x4b')]('openchannelInteractionTags:save',{'id':Number(_0x410e8a[_0x5621('0x27')]['id']),'tags':_0x37081f||[]});return{'id':Number(_0x410e8a[_0x5621('0x27')]['id']),'tags':_0x37081f||[]};});}})[_0x5621('0x1a')](respondWithResult(_0x2c6131,null))[_0x5621('0x25')](handleError(_0x2c6131,null));};exports[_0x5621('0x4c')]=function(_0x2841c0,_0xbfdceb){return db[_0x5621('0x21')]['find']({'where':{'id':_0x2841c0[_0x5621('0x27')]['id']}})['then'](handleEntityNotFound(_0xbfdceb,null))[_0x5621('0x1a')](function(_0x24ff20){if(_0x24ff20){return _0x24ff20['removeTags'](_0x2841c0['query']['ids']);}})[_0x5621('0x1a')](respondWithStatusCode(_0xbfdceb,null))[_0x5621('0x25')](handleError(_0xbfdceb,null));};exports[_0x5621('0x4d')]=function(_0x46b92b,_0x12b6db){var _0x4ed883=moment()['unix']()['toString']();var _0x6f901a=path[_0x5621('0x4e')](config[_0x5621('0x4f')],_0x5621('0x50'),_0x5621('0x51'),_0x5621('0x52'));var _0x46f8a9=path[_0x5621('0x4e')](config[_0x5621('0x4f')],_0x5621('0x50'),_0x5621('0x51'),_0x5621('0x53'));var _0xad63df=path[_0x5621('0x4e')](_0x6f901a,_0x4ed883);var _0x15b6a0=util[_0x5621('0x45')](_0x5621('0x54'),_0x46b92b[_0x5621('0x27')]['id'],_0x4ed883);var _0x3bacc9=path['join'](_0x6f901a,_0x15b6a0);var _0x13c72c=[];_0x13c72c[_0x5621('0x55')]({'model':db[_0x5621('0x56')],'as':_0x5621('0x56'),'attributes':['id',_0x5621('0x57')],'raw':!![]});_0x13c72c[_0x5621('0x55')]({'model':db[_0x5621('0x58')],'as':_0x5621('0x59'),'attributes':['id',_0x5621('0x5a'),_0x5621('0x5b')],'raw':!![]});if(_0x46b92b[_0x5621('0x24')][_0x5621('0x53')]){_0x13c72c[_0x5621('0x55')]({'model':db[_0x5621('0x5c')],'as':'Attachment','raw':!![]});}var _0x4feb05=[{'model':db[_0x5621('0x36')],'as':_0x5621('0x5d'),'attributes':['id','body','createdAt','direction',_0x5621('0x5e'),_0x5621('0x5f')],'include':_0x13c72c}];_0x4feb05[_0x5621('0x55')]({'model':db['OpenchannelAccount'],'as':_0x5621('0x60'),'attributes':['id','name']});_0x4feb05[_0x5621('0x55')]({'model':db[_0x5621('0x56')],'as':_0x5621('0x61'),'attributes':['id',_0x5621('0x57')]});return db['OpenchannelInteraction'][_0x5621('0x34')]({'where':{'id':_0x46b92b[_0x5621('0x27')]['id']},'include':_0x4feb05})['then'](handleEntityNotFound(_0x12b6db,null))[_0x5621('0x1a')](function(_0x4b71c9){if(_0x4b71c9){var _0x381ffa=_0x4b71c9[_0x5621('0x62')]({'plain':!![]});fs[_0x5621('0x63')](_0xad63df);var _0x210dd1={'channel':_0x5621('0x64'),'account':_0x381ffa['Account']['name'],'agent':_0x381ffa['Owner']?_0x381ffa[_0x5621('0x61')][_0x5621('0x57')]:_0x5621('0x65'),'createdAt':moment(_0x381ffa[_0x5621('0x66')])[_0x5621('0x45')](_0x5621('0x67'))[_0x5621('0x68')](),'closedAt':_0x381ffa['closed']?moment(_0x381ffa['closedAt'])[_0x5621('0x45')](_0x5621('0x67'))['toString']():'','disposition':_0x381ffa['disposition'],'visibility':_0x381ffa['threadId']?_0x5621('0x69'):_0x5621('0x6a'),'messages':_(_0x381ffa[_0x5621('0x5d')])['filter']({'secret':![]})[_0x5621('0x42')](function(_0x36c4d0){if(_0x36c4d0[_0x5621('0x5c')]){var _0xacda22=path[_0x5621('0x4e')](_0x46f8a9,_0x36c4d0[_0x5621('0x5c')][_0x5621('0x6b')]);if(fs[_0x5621('0x6c')](_0xacda22)){fs[_0x5621('0x6d')](_0xacda22)['pipe'](fs[_0x5621('0x6e')](path[_0x5621('0x4e')](_0xad63df,_0x36c4d0[_0x5621('0x5c')][_0x5621('0x6b')])));}}return{'date':moment(_0x36c4d0[_0x5621('0x66')])[_0x5621('0x45')](_0x5621('0x67'))['toString'](),'sender':_0x36c4d0[_0x5621('0x6f')]==='out'?_0x36c4d0[_0x5621('0x56')]?_0x36c4d0[_0x5621('0x56')]['fullname']:_0x5621('0x70'):_0x36c4d0[_0x5621('0x59')][_0x5621('0x5a')]+(_0x36c4d0[_0x5621('0x59')][_0x5621('0x5b')]?'\x20'+_0x36c4d0['Contact'][_0x5621('0x5b')]:''),'body':_0x36c4d0['Attachment']?_0x36c4d0[_0x5621('0x5c')][_0x5621('0x6b')]:_0x36c4d0[_0x5621('0x33')],'direction':_0x36c4d0[_0x5621('0x6f')]===_0x5621('0x71')?'A':'C','secret':_0x36c4d0[_0x5621('0x5e')],'read':_0x36c4d0[_0x5621('0x5f')],'attachment':_0x36c4d0['Attachment']};})[_0x5621('0x72')]()};return ejs['renderFile'](path[_0x5621('0x4e')](config[_0x5621('0x4f')],_0x5621('0x50'),_0x5621('0x73'),'downloadInteraction.ejs'),{'interaction':_0x210dd1})['then'](function(_0xcc4822){var _0x5bda79=path[_0x5621('0x4e')](_0xad63df,_0x5621('0x74')+_0x381ffa['id']+'-'+_0x4ed883+_0x5621('0x75'));var _0x476877={'path':_0x5bda79,'channel':_0x5621('0x64'),'interactionId':_0x381ffa['id']};return pdf[_0x5621('0x76')](_0xcc4822,_0x476877);})['then'](function(){return new Promise(function(_0x2a651e,_0x15ccb9){zipdir(_0xad63df,{'saveTo':_0x3bacc9},function(_0x48cdbe,_0x241ac8){if(_0x48cdbe)return _0x15ccb9(_0x48cdbe);return _0x2a651e(_0x241ac8);});})[_0x5621('0x1a')](function(){return new Promise(function(_0x3f409c,_0x34e50c){rimraf(_0xad63df,function(_0x214116){if(_0x214116)_0x34e50c(_0x214116);return _0x3f409c();});});})[_0x5621('0x1a')](function(){return _0x12b6db[_0x5621('0x4d')](_0x3bacc9,_0x15b6a0,function(_0x3eefc9){if(_0x3eefc9){logger[_0x5621('0x1c')](_0x5621('0x77'),_0x3eefc9);}else{fs[_0x5621('0x78')](_0x3bacc9);}});});});}else{return _0x12b6db[_0x5621('0x11')](0xc8);}})[_0x5621('0x25')](handleError(_0x12b6db,null));};
\ No newline at end of file