Built motion from commit c738b9ac.|2.6.25
[motion2.git] / server / api / whatsappInteraction / whatsappInteraction.controller.js
index 8f391da..4635347 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x8f58=['moment','bluebird','util','path','ejs','lodash','ioredis','../../components/parsers/qs','../../config/logger','api','defaults','redis','localhost','socket.io-emitter','register','sendStatus','status','end','json','offset','limit','undefined','count','set','Content-Range','then','destroy','stack','name','send','index','map','WhatsappInteraction','rawAttributes','fieldName','type','key','getOptions','findAll','query','catch','show','params','model','keys','filters','intersection','attributes','fields','includeAll','include','merge','find','create','body','describe','addMessage','ids','omit','findOne','WhatsappMessage','length','hasOwnProperty','nolimit','sort','pick','where','filter','$gte','split','format','YYYY-MM-DD\x20HH:mm:ss','options','addTags','setTags','spread','Tag','emit','whatsappInteractionTags:save','removeTags','unix','toString','server','files','tmp','join','root','attachments','transcript-%d-%s.zip','push','User','fullname','Contact','firstName','lastName','Attachment','Messages','direction','secret','read','WhatsappAccount','Owner','get','mkdirSync','Whatsapp','Account','N.A.','createdAt','closedAt','basename','existsSync','pipe','out','System','value','renderFile','transcript-','createPdfFromHTML','download','log','unlinkSync'];(function(_0x44d5f2,_0x36f41e){var _0x322e65=function(_0x1f4365){while(--_0x1f4365){_0x44d5f2['push'](_0x44d5f2['shift']());}};_0x322e65(++_0x36f41e);}(_0x8f58,0x79));var _0x88f5=function(_0x1657e2,_0x2e40a6){_0x1657e2=_0x1657e2-0x0;var _0x489415=_0x8f58[_0x1657e2];return _0x489415;};'use strict';var rimraf=require('rimraf');var zipdir=require('zip-dir');var moment=require(_0x88f5('0x0'));var BPromise=require(_0x88f5('0x1'));var util=require(_0x88f5('0x2'));var path=require(_0x88f5('0x3'));var ejs=require(_0x88f5('0x4'));var fs=require('fs');var _=require(_0x88f5('0x5'));var Redis=require(_0x88f5('0x6'));var interaction=require('../../components/interaction/service');var qs=require(_0x88f5('0x7'));var pdf=require('../../components/export/pdf');var logger=require(_0x88f5('0x8'))(_0x88f5('0x9'));var config=require('../../config/environment');var db=require('../../mysqldb')['db'];config['redis']=_[_0x88f5('0xa')](config[_0x88f5('0xb')],{'host':_0x88f5('0xc'),'port':0x18eb});var socket=require(_0x88f5('0xd'))(new Redis(config[_0x88f5('0xb')]));require('./whatsappInteraction.socket')[_0x88f5('0xe')](socket);function respondWithStatusCode(_0x2ea5db,_0x4a3e1c){_0x4a3e1c=_0x4a3e1c||0xcc;return function(_0x3f6aa8){if(_0x3f6aa8){return _0x2ea5db[_0x88f5('0xf')](_0x4a3e1c);}return _0x2ea5db[_0x88f5('0x10')](_0x4a3e1c)[_0x88f5('0x11')]();};}function respondWithResult(_0x38f637,_0x5e9751){_0x5e9751=_0x5e9751||0xc8;return function(_0x53b94a){if(_0x53b94a){return _0x38f637[_0x88f5('0x10')](_0x5e9751)[_0x88f5('0x12')](_0x53b94a);}};}function respondWithFilteredResult(_0x288feb,_0x3b1754){return function(_0x1307a0){if(_0x1307a0){var _0xffe6a5=typeof _0x3b1754[_0x88f5('0x13')]==='undefined'&&typeof _0x3b1754[_0x88f5('0x14')]===_0x88f5('0x15');var _0x38ded4=_0x1307a0[_0x88f5('0x16')];var _0x4009d9=_0xffe6a5?0x0:_0x3b1754['offset'];var _0x56f44d=_0xffe6a5?_0x1307a0[_0x88f5('0x16')]:_0x3b1754[_0x88f5('0x13')]+_0x3b1754['limit'];var _0x34eac6;if(_0x56f44d>=_0x38ded4){_0x56f44d=_0x38ded4;_0x34eac6=0xc8;}else{_0x34eac6=0xce;}_0x288feb[_0x88f5('0x10')](_0x34eac6);return _0x288feb[_0x88f5('0x17')](_0x88f5('0x18'),_0x4009d9+'-'+_0x56f44d+'/'+_0x38ded4)['json'](_0x1307a0);}return null;};}function saveUpdates(_0x115f52){return function(_0x5eb830){if(_0x5eb830){return _0x5eb830['update'](_0x115f52)[_0x88f5('0x19')](function(_0x509a3f){return _0x509a3f;});}return null;};}function removeEntity(_0x17f1f8){return function(_0x21e116){if(_0x21e116){return _0x21e116[_0x88f5('0x1a')]()[_0x88f5('0x19')](function(){_0x17f1f8[_0x88f5('0x10')](0xcc)[_0x88f5('0x11')]();});}};}function handleEntityNotFound(_0x5e513e){return function(_0x51c3b1){if(!_0x51c3b1){_0x5e513e['sendStatus'](0x194);}return _0x51c3b1;};}function handleError(_0x557a96,_0x3708e2){_0x3708e2=_0x3708e2||0x1f4;return function(_0x3c423e){logger['error'](_0x3c423e[_0x88f5('0x1b')]);if(_0x3c423e[_0x88f5('0x1c')]){delete _0x3c423e[_0x88f5('0x1c')];}_0x557a96['status'](_0x3708e2)[_0x88f5('0x1d')](_0x3c423e);};}exports[_0x88f5('0x1e')]=function(_0x2842a8,_0x14ee06){var _0x539447={};var _0x14f159=_[_0x88f5('0x1f')](db[_0x88f5('0x20')][_0x88f5('0x21')],function(_0x3bdd2d){return{'name':_0x3bdd2d[_0x88f5('0x22')],'type':_0x3bdd2d[_0x88f5('0x23')][_0x88f5('0x24')]};});_0x539447=qs[_0x88f5('0x25')](_0x14f159,_0x2842a8);return interaction[_0x88f5('0x26')]('whatsapp',_0x2842a8[_0x88f5('0x27')],_0x2842a8['user'],_0x539447,_0x14f159)[_0x88f5('0x19')](respondWithFilteredResult(_0x14ee06,_0x539447))[_0x88f5('0x28')](handleError(_0x14ee06,null));};exports[_0x88f5('0x29')]=function(_0x1b7e66,_0x535daa){var _0x1209a4={'raw':![],'where':{'id':_0x1b7e66[_0x88f5('0x2a')]['id']}},_0x218bd4={};_0x218bd4[_0x88f5('0x2b')]=_['keys'](db['WhatsappInteraction'][_0x88f5('0x21')]);_0x218bd4[_0x88f5('0x27')]=_[_0x88f5('0x2c')](_0x1b7e66[_0x88f5('0x27')]);_0x218bd4[_0x88f5('0x2d')]=_[_0x88f5('0x2e')](_0x218bd4[_0x88f5('0x2b')],_0x218bd4[_0x88f5('0x27')]);_0x1209a4[_0x88f5('0x2f')]=_[_0x88f5('0x2e')](_0x218bd4['model'],qs[_0x88f5('0x30')](_0x1b7e66[_0x88f5('0x27')][_0x88f5('0x30')]));_0x1209a4[_0x88f5('0x2f')]=_0x1209a4[_0x88f5('0x2f')]['length']?_0x1209a4['attributes']:_0x218bd4[_0x88f5('0x2b')];if(_0x1b7e66[_0x88f5('0x27')][_0x88f5('0x31')]){_0x1209a4[_0x88f5('0x32')]=[{'all':!![]}];}_0x1209a4=_[_0x88f5('0x33')]({},_0x1209a4,_0x1b7e66['options']);return db[_0x88f5('0x20')][_0x88f5('0x34')](_0x1209a4)['then'](handleEntityNotFound(_0x535daa,null))[_0x88f5('0x19')](respondWithResult(_0x535daa,null))['catch'](handleError(_0x535daa,null));};exports[_0x88f5('0x35')]=function(_0x4bfdf6,_0x5a0639){return db[_0x88f5('0x20')][_0x88f5('0x35')](_0x4bfdf6['body'],{})[_0x88f5('0x19')](respondWithResult(_0x5a0639,0xc9))[_0x88f5('0x28')](handleError(_0x5a0639,null));};exports['update']=function(_0x59cc70,_0x7d017a){if(_0x59cc70[_0x88f5('0x36')]['id']){delete _0x59cc70['body']['id'];}return db[_0x88f5('0x20')][_0x88f5('0x34')]({'where':{'id':_0x59cc70[_0x88f5('0x2a')]['id']}})[_0x88f5('0x19')](handleEntityNotFound(_0x7d017a,null))[_0x88f5('0x19')](saveUpdates(_0x59cc70['body'],null))[_0x88f5('0x19')](respondWithResult(_0x7d017a,null))[_0x88f5('0x28')](handleError(_0x7d017a,null));};exports[_0x88f5('0x1a')]=function(_0x58d810,_0x3944ac){return db[_0x88f5('0x20')]['find']({'where':{'id':_0x58d810[_0x88f5('0x2a')]['id']}})['then'](handleEntityNotFound(_0x3944ac,null))[_0x88f5('0x19')](removeEntity(_0x3944ac,null))[_0x88f5('0x28')](handleError(_0x3944ac,null));};exports['describe']=function(_0x5c226a,_0x2d0632){return db[_0x88f5('0x20')][_0x88f5('0x37')]()[_0x88f5('0x19')](respondWithResult(_0x2d0632,null))[_0x88f5('0x28')](handleError(_0x2d0632,null));};exports[_0x88f5('0x38')]=function(_0x353f11,_0x369380){return db['WhatsappMessage']['find']({'where':{'id':_0x353f11['params']['id']}})[_0x88f5('0x19')](handleEntityNotFound(_0x369380,null))[_0x88f5('0x19')](function(_0x20dc21){if(_0x20dc21){return _0x20dc21[_0x88f5('0x38')](_0x353f11[_0x88f5('0x36')][_0x88f5('0x39')],_[_0x88f5('0x3a')](_0x353f11[_0x88f5('0x36')],[_0x88f5('0x39'),'id'])||{});}})[_0x88f5('0x19')](respondWithResult(_0x369380,null))[_0x88f5('0x28')](handleError(_0x369380,null));};exports['getMessages']=function(_0x2cd402,_0x2a0b0c){var _0x4625ea={'raw':![],'where':{}};var _0x2cc0f8={};var _0x4725e9={'count':0x0,'rows':[]};return db['WhatsappInteraction'][_0x88f5('0x3b')]({'where':{'id':_0x2cd402['params']['id']}})[_0x88f5('0x19')](handleEntityNotFound(_0x2a0b0c,null))[_0x88f5('0x19')](function(_0x573c29){if(_0x573c29){_0x2cc0f8[_0x88f5('0x2b')]=_['keys'](db[_0x88f5('0x3c')][_0x88f5('0x21')]);_0x2cc0f8[_0x88f5('0x27')]=_['keys'](_0x2cd402[_0x88f5('0x27')]);_0x2cc0f8[_0x88f5('0x2d')]=_[_0x88f5('0x2e')](_0x2cc0f8[_0x88f5('0x2b')],_0x2cc0f8[_0x88f5('0x27')]);_0x4625ea[_0x88f5('0x2f')]=_[_0x88f5('0x2e')](_0x2cc0f8[_0x88f5('0x2b')],qs[_0x88f5('0x30')](_0x2cd402[_0x88f5('0x27')]['fields']));_0x4625ea[_0x88f5('0x2f')]=_0x4625ea[_0x88f5('0x2f')][_0x88f5('0x3d')]?_0x4625ea['attributes']:_0x2cc0f8[_0x88f5('0x2b')];if(!_0x2cd402[_0x88f5('0x27')][_0x88f5('0x3e')](_0x88f5('0x3f'))){_0x4625ea[_0x88f5('0x14')]=qs[_0x88f5('0x14')](_0x2cd402['query']['limit']);_0x4625ea[_0x88f5('0x13')]=qs[_0x88f5('0x13')](_0x2cd402[_0x88f5('0x27')][_0x88f5('0x13')]);}_0x4625ea['order']=qs[_0x88f5('0x40')](_0x2cd402['query']['sort']);_0x4625ea['where']=qs[_0x88f5('0x2d')](_[_0x88f5('0x41')](_0x2cd402[_0x88f5('0x27')],_0x2cc0f8[_0x88f5('0x2d')]));_0x4625ea[_0x88f5('0x42')]['WhatsappInteractionId']=_0x573c29['id'];if(_0x2cd402[_0x88f5('0x27')][_0x88f5('0x43')]){_0x4625ea['where']=_['merge'](_0x4625ea['where'],{'$or':_[_0x88f5('0x1f')](_0x4625ea[_0x88f5('0x2f')],function(_0x1b3314){var _0x3f0ce8={};_0x3f0ce8[_0x1b3314]={'$like':'%'+_0x2cd402[_0x88f5('0x27')][_0x88f5('0x43')]+'%'};return _0x3f0ce8;})});}if(_0x2cd402[_0x88f5('0x27')][_0x88f5('0x44')]){var _0x556c3d=_0x2cd402[_0x88f5('0x27')][_0x88f5('0x44')][_0x88f5('0x45')](',');var _0x5270c6={};_0x5270c6[_0x556c3d[0x0]]={'$gte':moment(_0x556c3d[0x1])[_0x88f5('0x46')](_0x88f5('0x47'))};_0x4625ea[_0x88f5('0x42')]=_[_0x88f5('0x33')](_0x4625ea[_0x88f5('0x42')],_0x5270c6);}_0x4625ea=_['merge']({},_0x4625ea,_0x2cd402[_0x88f5('0x48')]);return db[_0x88f5('0x3c')][_0x88f5('0x16')]({'where':_0x4625ea[_0x88f5('0x42')]})[_0x88f5('0x19')](function(_0x421da3){_0x4725e9[_0x88f5('0x16')]=_0x421da3;if(_0x2cd402['query']['includeAll']){_0x4625ea[_0x88f5('0x32')]=[{'all':!![]}];}return db[_0x88f5('0x3c')]['findAll'](_0x4625ea);})[_0x88f5('0x19')](function(_0x3d974d){_0x4725e9['rows']=_0x3d974d;return _0x4725e9;});}})[_0x88f5('0x19')](respondWithFilteredResult(_0x2a0b0c,_0x4625ea))['catch'](handleError(_0x2a0b0c,null));};exports[_0x88f5('0x49')]=function(_0x575709,_0x31f77e){return db['WhatsappInteraction'][_0x88f5('0x34')]({'where':{'id':_0x575709[_0x88f5('0x2a')]['id']}})['then'](handleEntityNotFound(_0x31f77e,null))[_0x88f5('0x19')](function(_0x174d44){if(_0x174d44){return _0x174d44[_0x88f5('0x4a')](_0x575709[_0x88f5('0x36')][_0x88f5('0x39')],_[_0x88f5('0x3a')](_0x575709[_0x88f5('0x36')],['ids','id'])||{})[_0x88f5('0x4b')](function(){return db[_0x88f5('0x4c')][_0x88f5('0x26')]({'attributes':['id',_0x88f5('0x1c'),'color'],'where':{'id':_0x575709[_0x88f5('0x36')][_0x88f5('0x39')]}});})[_0x88f5('0x19')](function(_0x188844){socket[_0x88f5('0x4d')](_0x88f5('0x4e'),{'id':Number(_0x575709[_0x88f5('0x2a')]['id']),'tags':_0x188844||[]});return{'id':Number(_0x575709[_0x88f5('0x2a')]['id']),'tags':_0x188844||[]};});}})[_0x88f5('0x19')](respondWithResult(_0x31f77e,null))[_0x88f5('0x28')](handleError(_0x31f77e,null));};exports[_0x88f5('0x4f')]=function(_0x1f1fef,_0x2e2492){return db['WhatsappInteraction']['find']({'where':{'id':_0x1f1fef[_0x88f5('0x2a')]['id']}})[_0x88f5('0x19')](handleEntityNotFound(_0x2e2492,null))[_0x88f5('0x19')](function(_0xc8e854){if(_0xc8e854){return _0xc8e854['removeTags'](_0x1f1fef['query']['ids']);}})[_0x88f5('0x19')](respondWithStatusCode(_0x2e2492,null))[_0x88f5('0x28')](handleError(_0x2e2492,null));};exports['download']=function(_0x22436c,_0x235b09){var _0x4802d1=moment()[_0x88f5('0x50')]()[_0x88f5('0x51')]();var _0x2b8b1d=path['join'](config['root'],_0x88f5('0x52'),_0x88f5('0x53'),_0x88f5('0x54'));var _0x422531=path[_0x88f5('0x55')](config[_0x88f5('0x56')],_0x88f5('0x52'),_0x88f5('0x53'),_0x88f5('0x57'));var _0x17ca79=path[_0x88f5('0x55')](_0x2b8b1d,_0x4802d1);var _0x49fa42=util['format'](_0x88f5('0x58'),_0x22436c[_0x88f5('0x2a')]['id'],_0x4802d1);var _0x184d95=path['join'](_0x2b8b1d,_0x49fa42);var _0x1bca68=[];_0x1bca68[_0x88f5('0x59')]({'model':db[_0x88f5('0x5a')],'as':'User','attributes':['id',_0x88f5('0x5b')],'raw':!![]});_0x1bca68['push']({'model':db['CmContact'],'as':_0x88f5('0x5c'),'attributes':['id',_0x88f5('0x5d'),_0x88f5('0x5e')],'raw':!![]});if(_0x22436c['query'][_0x88f5('0x57')]){_0x1bca68[_0x88f5('0x59')]({'model':db[_0x88f5('0x5f')],'as':_0x88f5('0x5f'),'raw':!![]});}var _0x4ccab9=[{'model':db[_0x88f5('0x3c')],'as':_0x88f5('0x60'),'attributes':['id',_0x88f5('0x36'),'createdAt',_0x88f5('0x61'),_0x88f5('0x62'),_0x88f5('0x63')],'include':_0x1bca68}];_0x4ccab9['push']({'model':db[_0x88f5('0x64')],'as':'Account','attributes':['id',_0x88f5('0x1c')]});_0x4ccab9['push']({'model':db[_0x88f5('0x5a')],'as':_0x88f5('0x65'),'attributes':['id','fullname']});return db[_0x88f5('0x20')]['find']({'where':{'id':_0x22436c[_0x88f5('0x2a')]['id']},'include':_0x4ccab9})[_0x88f5('0x19')](handleEntityNotFound(_0x235b09,null))[_0x88f5('0x19')](function(_0x1f263e){if(_0x1f263e){var _0x2f9a5b=_0x1f263e[_0x88f5('0x66')]({'plain':!![]});fs[_0x88f5('0x67')](_0x17ca79);var _0x171cda={'channel':_0x88f5('0x68'),'account':_0x2f9a5b[_0x88f5('0x69')]['name'],'agent':_0x2f9a5b[_0x88f5('0x65')]?_0x2f9a5b['Owner']['fullname']:_0x88f5('0x6a'),'createdAt':moment(_0x2f9a5b[_0x88f5('0x6b')])[_0x88f5('0x46')](_0x88f5('0x47'))['toString'](),'closedAt':_0x2f9a5b['closed']?moment(_0x2f9a5b[_0x88f5('0x6c')])[_0x88f5('0x46')]('YYYY-MM-DD\x20HH:mm:ss')[_0x88f5('0x51')]():'','disposition':_0x2f9a5b['disposition'],'messages':_(_0x2f9a5b['Messages'])['filter']({'secret':![]})['map'](function(_0x5baefa){if(_0x5baefa['Attachment']){var _0x31ff36=path[_0x88f5('0x55')](_0x422531,_0x5baefa[_0x88f5('0x5f')][_0x88f5('0x6d')]);if(fs[_0x88f5('0x6e')](_0x31ff36)){fs['createReadStream'](_0x31ff36)[_0x88f5('0x6f')](fs['createWriteStream'](path[_0x88f5('0x55')](_0x17ca79,_0x5baefa['Attachment'][_0x88f5('0x6d')])));}}return{'date':moment(_0x5baefa['createdAt'])[_0x88f5('0x46')]('YYYY-MM-DD\x20HH:mm:ss')[_0x88f5('0x51')](),'sender':_0x5baefa['direction']===_0x88f5('0x70')?_0x5baefa[_0x88f5('0x5a')]?_0x5baefa[_0x88f5('0x5a')][_0x88f5('0x5b')]:_0x88f5('0x71'):_0x5baefa[_0x88f5('0x5c')][_0x88f5('0x5d')]+(_0x5baefa[_0x88f5('0x5c')]['lastName']?'\x20'+_0x5baefa[_0x88f5('0x5c')][_0x88f5('0x5e')]:''),'body':_0x5baefa['Attachment']?_0x5baefa[_0x88f5('0x5f')][_0x88f5('0x6d')]:_0x5baefa['body'],'direction':_0x5baefa[_0x88f5('0x61')]==='out'?'A':'C','secret':_0x5baefa[_0x88f5('0x62')],'read':_0x5baefa[_0x88f5('0x63')],'attachment':_0x5baefa['Attachment']};})[_0x88f5('0x72')]()};return ejs[_0x88f5('0x73')](path['join'](config['root'],_0x88f5('0x52'),'views','downloadInteraction.ejs'),{'interaction':_0x171cda})[_0x88f5('0x19')](function(_0x8aaebd){var _0x5714e6=path[_0x88f5('0x55')](_0x17ca79,_0x88f5('0x74')+_0x2f9a5b['id']+'-'+_0x4802d1+'.pdf');var _0x13341c={'path':_0x5714e6,'channel':_0x88f5('0x68'),'interactionId':_0x2f9a5b['id']};return pdf[_0x88f5('0x75')](_0x8aaebd,_0x13341c);})[_0x88f5('0x19')](function(){return new BPromise(function(_0x19ea55,_0x36e703){zipdir(_0x17ca79,{'saveTo':_0x184d95},function(_0x2fcbcb,_0xecbac){if(_0x2fcbcb)return _0x36e703(_0x2fcbcb);return _0x19ea55(_0xecbac);});})[_0x88f5('0x19')](function(){return new BPromise(function(_0x14f87e,_0x26582a){rimraf(_0x17ca79,function(_0x586952){if(_0x586952)_0x26582a(_0x586952);return _0x14f87e();});});})[_0x88f5('0x19')](function(){return _0x235b09[_0x88f5('0x76')](_0x184d95,_0x49fa42,function(_0x5c06b7){if(_0x5c06b7){console[_0x88f5('0x77')]('err',_0x5c06b7);}else{fs[_0x88f5('0x78')](_0x184d95);}});});});}else{return _0x235b09[_0x88f5('0xf')](0xc8);}})[_0x88f5('0x28')](handleError(_0x235b09,null));};
\ No newline at end of file
+var _0x2f28=['lodash','../../components/interaction/service','../../components/parsers/qs','../../config/logger','api','../../config/environment','../../mysqldb','defaults','redis','localhost','./whatsappInteraction.socket','register','sendStatus','status','end','json','offset','undefined','count','set','Content-Range','update','destroy','then','name','send','index','map','fieldName','type','key','getOptions','findAll','whatsapp','query','user','params','model','WhatsappInteraction','rawAttributes','keys','attributes','length','includeAll','include','merge','options','find','create','body','catch','addMessage','WhatsappMessage','omit','ids','findOne','intersection','fields','hasOwnProperty','limit','order','sort','where','filters','filter','$gte','split','format','YYYY-MM-DD\x20HH:mm:ss','rows','addTags','Tag','color','whatsappInteractionTags:save','removeTags','download','unix','toString','join','root','server','files','transcript-%d-%s.zip','User','fullname','push','Contact','firstName','lastName','attachments','Attachment','createdAt','direction','secret','WhatsappAccount','Account','Owner','mkdirSync','Whatsapp','N.A.','closed','closedAt','disposition','Messages','createReadStream','pipe','out','System','basename','read','value','downloadInteraction.ejs','transcript-','.pdf','createPdfFromHTML','log','zip-dir','moment','bluebird'];(function(_0x12ff57,_0x343e6b){var _0x5f0255=function(_0x4cecd4){while(--_0x4cecd4){_0x12ff57['push'](_0x12ff57['shift']());}};_0x5f0255(++_0x343e6b);}(_0x2f28,0x162));var _0x82f2=function(_0x51dada,_0x4ddb59){_0x51dada=_0x51dada-0x0;var _0x209d74=_0x2f28[_0x51dada];return _0x209d74;};'use strict';var rimraf=require('rimraf');var zipdir=require(_0x82f2('0x0'));var moment=require(_0x82f2('0x1'));var BPromise=require(_0x82f2('0x2'));var util=require('util');var path=require('path');var ejs=require('ejs');var fs=require('fs');var _=require(_0x82f2('0x3'));var Redis=require('ioredis');var interaction=require(_0x82f2('0x4'));var qs=require(_0x82f2('0x5'));var pdf=require('../../components/export/pdf');var logger=require(_0x82f2('0x6'))(_0x82f2('0x7'));var config=require(_0x82f2('0x8'));var db=require(_0x82f2('0x9'))['db'];config['redis']=_[_0x82f2('0xa')](config[_0x82f2('0xb')],{'host':_0x82f2('0xc'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x82f2('0xb')]));require(_0x82f2('0xd'))[_0x82f2('0xe')](socket);function respondWithStatusCode(_0x206691,_0x5bdb86){_0x5bdb86=_0x5bdb86||0xcc;return function(_0x178ffe){if(_0x178ffe){return _0x206691[_0x82f2('0xf')](_0x5bdb86);}return _0x206691[_0x82f2('0x10')](_0x5bdb86)[_0x82f2('0x11')]();};}function respondWithResult(_0x40bb04,_0x4bf59f){_0x4bf59f=_0x4bf59f||0xc8;return function(_0x2cf56a){if(_0x2cf56a){return _0x40bb04[_0x82f2('0x10')](_0x4bf59f)[_0x82f2('0x12')](_0x2cf56a);}};}function respondWithFilteredResult(_0x53349d,_0x595f99){return function(_0x3515a0){if(_0x3515a0){var _0x3e9695=typeof _0x595f99[_0x82f2('0x13')]==='undefined'&&typeof _0x595f99['limit']===_0x82f2('0x14');var _0x17a2ed=_0x3515a0[_0x82f2('0x15')];var _0x518880=_0x3e9695?0x0:_0x595f99[_0x82f2('0x13')];var _0x23ad6c=_0x3e9695?_0x3515a0['count']:_0x595f99['offset']+_0x595f99['limit'];var _0x1d0f6b;if(_0x23ad6c>=_0x17a2ed){_0x23ad6c=_0x17a2ed;_0x1d0f6b=0xc8;}else{_0x1d0f6b=0xce;}_0x53349d[_0x82f2('0x10')](_0x1d0f6b);return _0x53349d[_0x82f2('0x16')](_0x82f2('0x17'),_0x518880+'-'+_0x23ad6c+'/'+_0x17a2ed)['json'](_0x3515a0);}return null;};}function saveUpdates(_0x40fdce){return function(_0x310111){if(_0x310111){return _0x310111[_0x82f2('0x18')](_0x40fdce)['then'](function(_0x2e7d93){return _0x2e7d93;});}return null;};}function removeEntity(_0x2b248f){return function(_0x5034ac){if(_0x5034ac){return _0x5034ac[_0x82f2('0x19')]()[_0x82f2('0x1a')](function(){_0x2b248f[_0x82f2('0x10')](0xcc)[_0x82f2('0x11')]();});}};}function handleEntityNotFound(_0x366d56){return function(_0x48fc2e){if(!_0x48fc2e){_0x366d56['sendStatus'](0x194);}return _0x48fc2e;};}function handleError(_0x3ef13e,_0x57c68c){_0x57c68c=_0x57c68c||0x1f4;return function(_0x38c0f6){logger['error'](_0x38c0f6['stack']);if(_0x38c0f6['name']){delete _0x38c0f6[_0x82f2('0x1b')];}_0x3ef13e['status'](_0x57c68c)[_0x82f2('0x1c')](_0x38c0f6);};}exports[_0x82f2('0x1d')]=function(_0xd59d94,_0x40b696){var _0x41231d={};var _0x5b651d=_[_0x82f2('0x1e')](db['WhatsappInteraction']['rawAttributes'],function(_0x3d4a86){return{'name':_0x3d4a86[_0x82f2('0x1f')],'type':_0x3d4a86[_0x82f2('0x20')][_0x82f2('0x21')]};});_0x41231d=qs[_0x82f2('0x22')](_0x5b651d,_0xd59d94);return interaction[_0x82f2('0x23')](_0x82f2('0x24'),_0xd59d94[_0x82f2('0x25')],_0xd59d94[_0x82f2('0x26')],_0x41231d,_0x5b651d)[_0x82f2('0x1a')](respondWithFilteredResult(_0x40b696,_0x41231d))['catch'](handleError(_0x40b696,null));};exports['show']=function(_0x134760,_0x5673ce){var _0x2797df={'raw':![],'where':{'id':_0x134760[_0x82f2('0x27')]['id']}},_0x141bef={};_0x141bef[_0x82f2('0x28')]=_['keys'](db[_0x82f2('0x29')][_0x82f2('0x2a')]);_0x141bef[_0x82f2('0x25')]=_[_0x82f2('0x2b')](_0x134760[_0x82f2('0x25')]);_0x141bef['filters']=_['intersection'](_0x141bef[_0x82f2('0x28')],_0x141bef[_0x82f2('0x25')]);_0x2797df[_0x82f2('0x2c')]=_['intersection'](_0x141bef[_0x82f2('0x28')],qs['fields'](_0x134760[_0x82f2('0x25')]['fields']));_0x2797df[_0x82f2('0x2c')]=_0x2797df['attributes'][_0x82f2('0x2d')]?_0x2797df[_0x82f2('0x2c')]:_0x141bef[_0x82f2('0x28')];if(_0x134760[_0x82f2('0x25')][_0x82f2('0x2e')]){_0x2797df[_0x82f2('0x2f')]=[{'all':!![]}];}_0x2797df=_[_0x82f2('0x30')]({},_0x2797df,_0x134760[_0x82f2('0x31')]);return db[_0x82f2('0x29')][_0x82f2('0x32')](_0x2797df)[_0x82f2('0x1a')](handleEntityNotFound(_0x5673ce,null))[_0x82f2('0x1a')](respondWithResult(_0x5673ce,null))['catch'](handleError(_0x5673ce,null));};exports[_0x82f2('0x33')]=function(_0x54c64d,_0x4bbae9){return db[_0x82f2('0x29')][_0x82f2('0x33')](_0x54c64d[_0x82f2('0x34')],{})['then'](respondWithResult(_0x4bbae9,0xc9))[_0x82f2('0x35')](handleError(_0x4bbae9,null));};exports['update']=function(_0x64353e,_0x3ba9df){if(_0x64353e['body']['id']){delete _0x64353e[_0x82f2('0x34')]['id'];}return db[_0x82f2('0x29')][_0x82f2('0x32')]({'where':{'id':_0x64353e['params']['id']}})[_0x82f2('0x1a')](handleEntityNotFound(_0x3ba9df,null))[_0x82f2('0x1a')](saveUpdates(_0x64353e[_0x82f2('0x34')],null))[_0x82f2('0x1a')](respondWithResult(_0x3ba9df,null))[_0x82f2('0x35')](handleError(_0x3ba9df,null));};exports[_0x82f2('0x19')]=function(_0x9299d9,_0xb8c5d0){return db[_0x82f2('0x29')][_0x82f2('0x32')]({'where':{'id':_0x9299d9[_0x82f2('0x27')]['id']}})[_0x82f2('0x1a')](handleEntityNotFound(_0xb8c5d0,null))[_0x82f2('0x1a')](removeEntity(_0xb8c5d0,null))['catch'](handleError(_0xb8c5d0,null));};exports['describe']=function(_0x148d63,_0x444785){return db['WhatsappInteraction']['describe']()[_0x82f2('0x1a')](respondWithResult(_0x444785,null))[_0x82f2('0x35')](handleError(_0x444785,null));};exports[_0x82f2('0x36')]=function(_0x1888a8,_0x17891f){return db[_0x82f2('0x37')][_0x82f2('0x32')]({'where':{'id':_0x1888a8[_0x82f2('0x27')]['id']}})[_0x82f2('0x1a')](handleEntityNotFound(_0x17891f,null))[_0x82f2('0x1a')](function(_0x1dff17){if(_0x1dff17){return _0x1dff17[_0x82f2('0x36')](_0x1888a8[_0x82f2('0x34')]['ids'],_[_0x82f2('0x38')](_0x1888a8[_0x82f2('0x34')],[_0x82f2('0x39'),'id'])||{});}})[_0x82f2('0x1a')](respondWithResult(_0x17891f,null))[_0x82f2('0x35')](handleError(_0x17891f,null));};exports['getMessages']=function(_0x2fbd07,_0x4e51d9){var _0x14f9f7={'raw':![],'where':{}};var _0x1bfd73={};var _0x5589ce={'count':0x0,'rows':[]};return db[_0x82f2('0x29')][_0x82f2('0x3a')]({'where':{'id':_0x2fbd07[_0x82f2('0x27')]['id']}})[_0x82f2('0x1a')](handleEntityNotFound(_0x4e51d9,null))[_0x82f2('0x1a')](function(_0x7c352b){if(_0x7c352b){_0x1bfd73['model']=_[_0x82f2('0x2b')](db[_0x82f2('0x37')][_0x82f2('0x2a')]);_0x1bfd73[_0x82f2('0x25')]=_[_0x82f2('0x2b')](_0x2fbd07[_0x82f2('0x25')]);_0x1bfd73['filters']=_[_0x82f2('0x3b')](_0x1bfd73['model'],_0x1bfd73[_0x82f2('0x25')]);_0x14f9f7[_0x82f2('0x2c')]=_[_0x82f2('0x3b')](_0x1bfd73[_0x82f2('0x28')],qs[_0x82f2('0x3c')](_0x2fbd07['query'][_0x82f2('0x3c')]));_0x14f9f7[_0x82f2('0x2c')]=_0x14f9f7['attributes'][_0x82f2('0x2d')]?_0x14f9f7[_0x82f2('0x2c')]:_0x1bfd73['model'];if(!_0x2fbd07[_0x82f2('0x25')][_0x82f2('0x3d')]('nolimit')){_0x14f9f7[_0x82f2('0x3e')]=qs[_0x82f2('0x3e')](_0x2fbd07[_0x82f2('0x25')][_0x82f2('0x3e')]);_0x14f9f7['offset']=qs[_0x82f2('0x13')](_0x2fbd07[_0x82f2('0x25')][_0x82f2('0x13')]);}_0x14f9f7[_0x82f2('0x3f')]=qs[_0x82f2('0x40')](_0x2fbd07[_0x82f2('0x25')]['sort']);_0x14f9f7[_0x82f2('0x41')]=qs[_0x82f2('0x42')](_['pick'](_0x2fbd07[_0x82f2('0x25')],_0x1bfd73[_0x82f2('0x42')]));_0x14f9f7[_0x82f2('0x41')]['WhatsappInteractionId']=_0x7c352b['id'];if(_0x2fbd07[_0x82f2('0x25')][_0x82f2('0x43')]){_0x14f9f7[_0x82f2('0x41')]=_[_0x82f2('0x30')](_0x14f9f7[_0x82f2('0x41')],{'$or':_[_0x82f2('0x1e')](_0x14f9f7['attributes'],function(_0x262d21){var _0x1119b5={};_0x1119b5[_0x262d21]={'$like':'%'+_0x2fbd07[_0x82f2('0x25')]['filter']+'%'};return _0x1119b5;})});}if(_0x2fbd07['query'][_0x82f2('0x44')]){var _0x37e4da=_0x2fbd07[_0x82f2('0x25')][_0x82f2('0x44')][_0x82f2('0x45')](',');var _0x12a4d3={};_0x12a4d3[_0x37e4da[0x0]]={'$gte':moment(_0x37e4da[0x1])[_0x82f2('0x46')](_0x82f2('0x47'))};_0x14f9f7[_0x82f2('0x41')]=_[_0x82f2('0x30')](_0x14f9f7[_0x82f2('0x41')],_0x12a4d3);}_0x14f9f7=_[_0x82f2('0x30')]({},_0x14f9f7,_0x2fbd07[_0x82f2('0x31')]);return db[_0x82f2('0x37')][_0x82f2('0x15')]({'where':_0x14f9f7[_0x82f2('0x41')]})[_0x82f2('0x1a')](function(_0x456469){_0x5589ce[_0x82f2('0x15')]=_0x456469;if(_0x2fbd07['query']['includeAll']){_0x14f9f7[_0x82f2('0x2f')]=[{'all':!![]}];}return db['WhatsappMessage']['findAll'](_0x14f9f7);})['then'](function(_0x5e8a44){_0x5589ce[_0x82f2('0x48')]=_0x5e8a44;return _0x5589ce;});}})['then'](respondWithFilteredResult(_0x4e51d9,_0x14f9f7))[_0x82f2('0x35')](handleError(_0x4e51d9,null));};exports[_0x82f2('0x49')]=function(_0x44b224,_0x433ac0){return db[_0x82f2('0x29')][_0x82f2('0x32')]({'where':{'id':_0x44b224[_0x82f2('0x27')]['id']}})[_0x82f2('0x1a')](handleEntityNotFound(_0x433ac0,null))[_0x82f2('0x1a')](function(_0xacc2ff){if(_0xacc2ff){return _0xacc2ff['setTags'](_0x44b224[_0x82f2('0x34')]['ids'],_[_0x82f2('0x38')](_0x44b224[_0x82f2('0x34')],['ids','id'])||{})['spread'](function(){return db[_0x82f2('0x4a')][_0x82f2('0x23')]({'attributes':['id',_0x82f2('0x1b'),_0x82f2('0x4b')],'where':{'id':_0x44b224[_0x82f2('0x34')][_0x82f2('0x39')]}});})['then'](function(_0xfc3ce8){socket['emit'](_0x82f2('0x4c'),{'id':Number(_0x44b224[_0x82f2('0x27')]['id']),'tags':_0xfc3ce8||[]});return{'id':Number(_0x44b224[_0x82f2('0x27')]['id']),'tags':_0xfc3ce8||[]};});}})[_0x82f2('0x1a')](respondWithResult(_0x433ac0,null))[_0x82f2('0x35')](handleError(_0x433ac0,null));};exports[_0x82f2('0x4d')]=function(_0x5cd102,_0x2d9cbb){return db[_0x82f2('0x29')][_0x82f2('0x32')]({'where':{'id':_0x5cd102[_0x82f2('0x27')]['id']}})[_0x82f2('0x1a')](handleEntityNotFound(_0x2d9cbb,null))['then'](function(_0x2eef32){if(_0x2eef32){return _0x2eef32['removeTags'](_0x5cd102[_0x82f2('0x25')][_0x82f2('0x39')]);}})[_0x82f2('0x1a')](respondWithStatusCode(_0x2d9cbb,null))[_0x82f2('0x35')](handleError(_0x2d9cbb,null));};exports[_0x82f2('0x4e')]=function(_0x1b2c37,_0x42efb7){var _0x24b7bf=moment()[_0x82f2('0x4f')]()[_0x82f2('0x50')]();var _0x40debb=path[_0x82f2('0x51')](config[_0x82f2('0x52')],_0x82f2('0x53'),'files','tmp');var _0x1da9da=path[_0x82f2('0x51')](config[_0x82f2('0x52')],_0x82f2('0x53'),_0x82f2('0x54'),'attachments');var _0x512c29=path[_0x82f2('0x51')](_0x40debb,_0x24b7bf);var _0xdb2321=util['format'](_0x82f2('0x55'),_0x1b2c37[_0x82f2('0x27')]['id'],_0x24b7bf);var _0x24adb7=path[_0x82f2('0x51')](_0x40debb,_0xdb2321);var _0x1fd2c4=[];_0x1fd2c4['push']({'model':db[_0x82f2('0x56')],'as':'User','attributes':['id',_0x82f2('0x57')],'raw':!![]});_0x1fd2c4[_0x82f2('0x58')]({'model':db['CmContact'],'as':_0x82f2('0x59'),'attributes':['id',_0x82f2('0x5a'),_0x82f2('0x5b')],'raw':!![]});if(_0x1b2c37[_0x82f2('0x25')][_0x82f2('0x5c')]){_0x1fd2c4[_0x82f2('0x58')]({'model':db[_0x82f2('0x5d')],'as':_0x82f2('0x5d'),'raw':!![]});}var _0x5b4918=[{'model':db[_0x82f2('0x37')],'as':'Messages','attributes':['id','body',_0x82f2('0x5e'),_0x82f2('0x5f'),_0x82f2('0x60'),'read'],'include':_0x1fd2c4}];_0x5b4918[_0x82f2('0x58')]({'model':db[_0x82f2('0x61')],'as':_0x82f2('0x62'),'attributes':['id','name']});_0x5b4918[_0x82f2('0x58')]({'model':db[_0x82f2('0x56')],'as':_0x82f2('0x63'),'attributes':['id',_0x82f2('0x57')]});return db[_0x82f2('0x29')]['find']({'where':{'id':_0x1b2c37[_0x82f2('0x27')]['id']},'include':_0x5b4918})['then'](handleEntityNotFound(_0x42efb7,null))[_0x82f2('0x1a')](function(_0x319bf1){if(_0x319bf1){var _0x1e5ec3=_0x319bf1['get']({'plain':!![]});fs[_0x82f2('0x64')](_0x512c29);var _0x4f0136={'channel':_0x82f2('0x65'),'account':_0x1e5ec3[_0x82f2('0x62')][_0x82f2('0x1b')],'agent':_0x1e5ec3[_0x82f2('0x63')]?_0x1e5ec3[_0x82f2('0x63')][_0x82f2('0x57')]:_0x82f2('0x66'),'createdAt':moment(_0x1e5ec3[_0x82f2('0x5e')])[_0x82f2('0x46')](_0x82f2('0x47'))[_0x82f2('0x50')](),'closedAt':_0x1e5ec3[_0x82f2('0x67')]?moment(_0x1e5ec3[_0x82f2('0x68')])[_0x82f2('0x46')](_0x82f2('0x47'))[_0x82f2('0x50')]():'','disposition':_0x1e5ec3[_0x82f2('0x69')],'messages':_(_0x1e5ec3[_0x82f2('0x6a')])[_0x82f2('0x43')]({'secret':![]})[_0x82f2('0x1e')](function(_0xb1f597){if(_0xb1f597[_0x82f2('0x5d')]){var _0xc3d488=path['join'](_0x1da9da,_0xb1f597['Attachment']['basename']);if(fs['existsSync'](_0xc3d488)){fs[_0x82f2('0x6b')](_0xc3d488)[_0x82f2('0x6c')](fs['createWriteStream'](path[_0x82f2('0x51')](_0x512c29,_0xb1f597[_0x82f2('0x5d')]['basename'])));}}return{'date':moment(_0xb1f597[_0x82f2('0x5e')])[_0x82f2('0x46')]('YYYY-MM-DD\x20HH:mm:ss')['toString'](),'sender':_0xb1f597['direction']===_0x82f2('0x6d')?_0xb1f597['User']?_0xb1f597[_0x82f2('0x56')][_0x82f2('0x57')]:_0x82f2('0x6e'):_0xb1f597[_0x82f2('0x59')]['firstName']+(_0xb1f597[_0x82f2('0x59')]['lastName']?'\x20'+_0xb1f597[_0x82f2('0x59')][_0x82f2('0x5b')]:''),'body':_0xb1f597[_0x82f2('0x5d')]?_0xb1f597[_0x82f2('0x5d')][_0x82f2('0x6f')]:_0xb1f597[_0x82f2('0x34')],'direction':_0xb1f597[_0x82f2('0x5f')]===_0x82f2('0x6d')?'A':'C','secret':_0xb1f597['secret'],'read':_0xb1f597[_0x82f2('0x70')],'attachment':_0xb1f597[_0x82f2('0x5d')]};})[_0x82f2('0x71')]()};return ejs['renderFile'](path[_0x82f2('0x51')](config[_0x82f2('0x52')],_0x82f2('0x53'),'views',_0x82f2('0x72')),{'interaction':_0x4f0136})[_0x82f2('0x1a')](function(_0x25a4e1){var _0x55d6af=path[_0x82f2('0x51')](_0x512c29,_0x82f2('0x73')+_0x1e5ec3['id']+'-'+_0x24b7bf+_0x82f2('0x74'));var _0x3fa315={'path':_0x55d6af,'channel':_0x82f2('0x65'),'interactionId':_0x1e5ec3['id']};return pdf[_0x82f2('0x75')](_0x25a4e1,_0x3fa315);})[_0x82f2('0x1a')](function(){return new BPromise(function(_0xdbd794,_0x3364fe){zipdir(_0x512c29,{'saveTo':_0x24adb7},function(_0x42da79,_0x3ba4f6){if(_0x42da79)return _0x3364fe(_0x42da79);return _0xdbd794(_0x3ba4f6);});})[_0x82f2('0x1a')](function(){return new BPromise(function(_0x5a24f7,_0x1ffb17){rimraf(_0x512c29,function(_0x5d147e){if(_0x5d147e)_0x1ffb17(_0x5d147e);return _0x5a24f7();});});})['then'](function(){return _0x42efb7['download'](_0x24adb7,_0xdb2321,function(_0x524583){if(_0x524583){console[_0x82f2('0x76')]('err',_0x524583);}else{fs['unlinkSync'](_0x24adb7);}});});});}else{return _0x42efb7[_0x82f2('0xf')](0xc8);}})[_0x82f2('0x35')](handleError(_0x42efb7,null));};
\ No newline at end of file