Built motion from commit c116dc8b.|2.6.30
[motion2.git] / server / api / whatsappInteraction / whatsappInteraction.controller.js
index 58f1462..52d0686 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xf442=['model','attributes','fields','length','include','merge','find','create','body','destroy','describe','addMessage','WhatsappMessage','omit','ids','getMessages','findOne','hasOwnProperty','sort','pick','where','filter','$gte','split','format','YYYY-MM-DD\x20HH:mm:ss','options','includeAll','rows','addTags','setTags','Tag','emit','whatsappInteractionTags:save','download','unix','toString','join','root','server','files','tmp','attachments','transcript-%d-%s.zip','push','User','Contact','firstName','lastName','Messages','createdAt','direction','secret','read','WhatsappAccount','Account','fullname','get','mkdirSync','Owner','closed','disposition','Attachment','basename','existsSync','createReadStream','pipe','createWriteStream','out','System','value','renderFile','downloadInteraction.ejs','.pdf','Whatsapp','createPdfFromHTML','log','err','unlinkSync','rimraf','zip-dir','moment','bluebird','util','path','ejs','ioredis','../../components/interaction/service','../../components/parsers/qs','../../components/export/pdf','../../config/logger','api','../../config/environment','../../mysqldb','defaults','localhost','socket.io-emitter','redis','./whatsappInteraction.socket','register','sendStatus','status','end','json','offset','undefined','limit','count','Content-Range','update','then','error','stack','name','send','map','type','key','findAll','query','user','catch','show','params','keys','WhatsappInteraction','rawAttributes','filters','intersection'];(function(_0x8706bb,_0x5b5fb4){var _0x5132f5=function(_0x5ebfba){while(--_0x5ebfba){_0x8706bb['push'](_0x8706bb['shift']());}};_0x5132f5(++_0x5b5fb4);}(_0xf442,0xd0));var _0x2f44=function(_0x1a0d69,_0x14c729){_0x1a0d69=_0x1a0d69-0x0;var _0x1214e2=_0xf442[_0x1a0d69];return _0x1214e2;};'use strict';var rimraf=require(_0x2f44('0x0'));var zipdir=require(_0x2f44('0x1'));var moment=require(_0x2f44('0x2'));var BPromise=require(_0x2f44('0x3'));var util=require(_0x2f44('0x4'));var path=require(_0x2f44('0x5'));var ejs=require(_0x2f44('0x6'));var fs=require('fs');var _=require('lodash');var Redis=require(_0x2f44('0x7'));var interaction=require(_0x2f44('0x8'));var qs=require(_0x2f44('0x9'));var pdf=require(_0x2f44('0xa'));var logger=require(_0x2f44('0xb'))(_0x2f44('0xc'));var config=require(_0x2f44('0xd'));var db=require(_0x2f44('0xe'))['db'];config['redis']=_[_0x2f44('0xf')](config['redis'],{'host':_0x2f44('0x10'),'port':0x18eb});var socket=require(_0x2f44('0x11'))(new Redis(config[_0x2f44('0x12')]));require(_0x2f44('0x13'))[_0x2f44('0x14')](socket);function respondWithStatusCode(_0xbdcc1,_0x2b67f6){_0x2b67f6=_0x2b67f6||0xcc;return function(_0x3054a6){if(_0x3054a6){return _0xbdcc1[_0x2f44('0x15')](_0x2b67f6);}return _0xbdcc1[_0x2f44('0x16')](_0x2b67f6)[_0x2f44('0x17')]();};}function respondWithResult(_0x485d0f,_0x460ad0){_0x460ad0=_0x460ad0||0xc8;return function(_0x26d138){if(_0x26d138){return _0x485d0f[_0x2f44('0x16')](_0x460ad0)[_0x2f44('0x18')](_0x26d138);}};}function respondWithFilteredResult(_0x1677bf,_0x317da0){return function(_0x44386e){if(_0x44386e){var _0x27c1c0=typeof _0x317da0[_0x2f44('0x19')]===_0x2f44('0x1a')&&typeof _0x317da0[_0x2f44('0x1b')]===_0x2f44('0x1a');var _0x47771e=_0x44386e['count'];var _0x362855=_0x27c1c0?0x0:_0x317da0['offset'];var _0x56ea58=_0x27c1c0?_0x44386e[_0x2f44('0x1c')]:_0x317da0['offset']+_0x317da0[_0x2f44('0x1b')];var _0x2c7912;if(_0x56ea58>=_0x47771e){_0x56ea58=_0x47771e;_0x2c7912=0xc8;}else{_0x2c7912=0xce;}_0x1677bf['status'](_0x2c7912);return _0x1677bf['set'](_0x2f44('0x1d'),_0x362855+'-'+_0x56ea58+'/'+_0x47771e)[_0x2f44('0x18')](_0x44386e);}return null;};}function saveUpdates(_0x4a28da){return function(_0x19d512){if(_0x19d512){return _0x19d512[_0x2f44('0x1e')](_0x4a28da)[_0x2f44('0x1f')](function(_0x5ab2ed){return _0x5ab2ed;});}return null;};}function removeEntity(_0x2778df){return function(_0x3d3e06){if(_0x3d3e06){return _0x3d3e06['destroy']()[_0x2f44('0x1f')](function(){_0x2778df[_0x2f44('0x16')](0xcc)[_0x2f44('0x17')]();});}};}function handleEntityNotFound(_0xd860c2){return function(_0x28a7e8){if(!_0x28a7e8){_0xd860c2[_0x2f44('0x15')](0x194);}return _0x28a7e8;};}function handleError(_0x426f93,_0x469eb0){_0x469eb0=_0x469eb0||0x1f4;return function(_0xa18f86){logger[_0x2f44('0x20')](_0xa18f86[_0x2f44('0x21')]);if(_0xa18f86[_0x2f44('0x22')]){delete _0xa18f86[_0x2f44('0x22')];}_0x426f93['status'](_0x469eb0)[_0x2f44('0x23')](_0xa18f86);};}exports['index']=function(_0x28bdf7,_0x50c704){var _0x55718e={};var _0x25a0af=_[_0x2f44('0x24')](db['WhatsappInteraction']['rawAttributes'],function(_0x8430ce){return{'name':_0x8430ce['fieldName'],'type':_0x8430ce[_0x2f44('0x25')][_0x2f44('0x26')]};});_0x55718e=qs['getOptions'](_0x25a0af,_0x28bdf7);return interaction[_0x2f44('0x27')]('whatsapp',_0x28bdf7[_0x2f44('0x28')],_0x28bdf7[_0x2f44('0x29')],_0x55718e,_0x25a0af)['then'](respondWithFilteredResult(_0x50c704,_0x55718e))[_0x2f44('0x2a')](handleError(_0x50c704,null));};exports[_0x2f44('0x2b')]=function(_0x34e6a8,_0x4a0733){var _0x9eb63c={'raw':![],'where':{'id':_0x34e6a8[_0x2f44('0x2c')]['id']}},_0x9179f8={};_0x9179f8['model']=_[_0x2f44('0x2d')](db[_0x2f44('0x2e')][_0x2f44('0x2f')]);_0x9179f8[_0x2f44('0x28')]=_[_0x2f44('0x2d')](_0x34e6a8[_0x2f44('0x28')]);_0x9179f8[_0x2f44('0x30')]=_[_0x2f44('0x31')](_0x9179f8[_0x2f44('0x32')],_0x9179f8[_0x2f44('0x28')]);_0x9eb63c[_0x2f44('0x33')]=_['intersection'](_0x9179f8['model'],qs[_0x2f44('0x34')](_0x34e6a8[_0x2f44('0x28')][_0x2f44('0x34')]));_0x9eb63c[_0x2f44('0x33')]=_0x9eb63c[_0x2f44('0x33')][_0x2f44('0x35')]?_0x9eb63c[_0x2f44('0x33')]:_0x9179f8[_0x2f44('0x32')];if(_0x34e6a8[_0x2f44('0x28')]['includeAll']){_0x9eb63c[_0x2f44('0x36')]=[{'all':!![]}];}_0x9eb63c=_[_0x2f44('0x37')]({},_0x9eb63c,_0x34e6a8['options']);return db['WhatsappInteraction'][_0x2f44('0x38')](_0x9eb63c)[_0x2f44('0x1f')](handleEntityNotFound(_0x4a0733,null))[_0x2f44('0x1f')](respondWithResult(_0x4a0733,null))['catch'](handleError(_0x4a0733,null));};exports[_0x2f44('0x39')]=function(_0x4fbed4,_0x24d574){return db[_0x2f44('0x2e')][_0x2f44('0x39')](_0x4fbed4[_0x2f44('0x3a')],{})['then'](respondWithResult(_0x24d574,0xc9))[_0x2f44('0x2a')](handleError(_0x24d574,null));};exports[_0x2f44('0x1e')]=function(_0x1bf518,_0x688bf){if(_0x1bf518[_0x2f44('0x3a')]['id']){delete _0x1bf518['body']['id'];}return db[_0x2f44('0x2e')]['find']({'where':{'id':_0x1bf518[_0x2f44('0x2c')]['id']}})[_0x2f44('0x1f')](handleEntityNotFound(_0x688bf,null))[_0x2f44('0x1f')](saveUpdates(_0x1bf518['body'],null))[_0x2f44('0x1f')](respondWithResult(_0x688bf,null))[_0x2f44('0x2a')](handleError(_0x688bf,null));};exports[_0x2f44('0x3b')]=function(_0x4e7e7d,_0x4f486e){return db['WhatsappInteraction'][_0x2f44('0x38')]({'where':{'id':_0x4e7e7d['params']['id']}})[_0x2f44('0x1f')](handleEntityNotFound(_0x4f486e,null))[_0x2f44('0x1f')](removeEntity(_0x4f486e,null))[_0x2f44('0x2a')](handleError(_0x4f486e,null));};exports['describe']=function(_0x170591,_0xd292c0){return db[_0x2f44('0x2e')][_0x2f44('0x3c')]()[_0x2f44('0x1f')](respondWithResult(_0xd292c0,null))[_0x2f44('0x2a')](handleError(_0xd292c0,null));};exports[_0x2f44('0x3d')]=function(_0x5be941,_0xab4a14){return db[_0x2f44('0x3e')][_0x2f44('0x38')]({'where':{'id':_0x5be941['params']['id']}})[_0x2f44('0x1f')](handleEntityNotFound(_0xab4a14,null))[_0x2f44('0x1f')](function(_0x6a8315){if(_0x6a8315){return _0x6a8315[_0x2f44('0x3d')](_0x5be941['body']['ids'],_[_0x2f44('0x3f')](_0x5be941['body'],[_0x2f44('0x40'),'id'])||{});}})[_0x2f44('0x1f')](respondWithResult(_0xab4a14,null))[_0x2f44('0x2a')](handleError(_0xab4a14,null));};exports[_0x2f44('0x41')]=function(_0x4610ed,_0x352ef5){var _0x4be6ba={'raw':![],'where':{}};var _0xc8cf74={};var _0x16337e={'count':0x0,'rows':[]};return db[_0x2f44('0x2e')][_0x2f44('0x42')]({'where':{'id':_0x4610ed['params']['id']}})[_0x2f44('0x1f')](handleEntityNotFound(_0x352ef5,null))[_0x2f44('0x1f')](function(_0x1359e3){if(_0x1359e3){_0xc8cf74[_0x2f44('0x32')]=_[_0x2f44('0x2d')](db['WhatsappMessage'][_0x2f44('0x2f')]);_0xc8cf74[_0x2f44('0x28')]=_[_0x2f44('0x2d')](_0x4610ed[_0x2f44('0x28')]);_0xc8cf74[_0x2f44('0x30')]=_[_0x2f44('0x31')](_0xc8cf74[_0x2f44('0x32')],_0xc8cf74[_0x2f44('0x28')]);_0x4be6ba[_0x2f44('0x33')]=_['intersection'](_0xc8cf74[_0x2f44('0x32')],qs[_0x2f44('0x34')](_0x4610ed[_0x2f44('0x28')][_0x2f44('0x34')]));_0x4be6ba[_0x2f44('0x33')]=_0x4be6ba['attributes'][_0x2f44('0x35')]?_0x4be6ba[_0x2f44('0x33')]:_0xc8cf74[_0x2f44('0x32')];if(!_0x4610ed[_0x2f44('0x28')][_0x2f44('0x43')]('nolimit')){_0x4be6ba[_0x2f44('0x1b')]=qs['limit'](_0x4610ed[_0x2f44('0x28')][_0x2f44('0x1b')]);_0x4be6ba[_0x2f44('0x19')]=qs[_0x2f44('0x19')](_0x4610ed[_0x2f44('0x28')]['offset']);}_0x4be6ba['order']=qs[_0x2f44('0x44')](_0x4610ed[_0x2f44('0x28')][_0x2f44('0x44')]);_0x4be6ba['where']=qs[_0x2f44('0x30')](_[_0x2f44('0x45')](_0x4610ed[_0x2f44('0x28')],_0xc8cf74['filters']));_0x4be6ba[_0x2f44('0x46')]['WhatsappInteractionId']=_0x1359e3['id'];if(_0x4610ed[_0x2f44('0x28')][_0x2f44('0x47')]){_0x4be6ba[_0x2f44('0x46')]=_[_0x2f44('0x37')](_0x4be6ba[_0x2f44('0x46')],{'$or':_['map'](_0x4be6ba['attributes'],function(_0x410d6d){var _0x333870={};_0x333870[_0x410d6d]={'$like':'%'+_0x4610ed[_0x2f44('0x28')][_0x2f44('0x47')]+'%'};return _0x333870;})});}if(_0x4610ed[_0x2f44('0x28')][_0x2f44('0x48')]){var _0x1d9443=_0x4610ed[_0x2f44('0x28')][_0x2f44('0x48')][_0x2f44('0x49')](',');var _0x40bc76={};_0x40bc76[_0x1d9443[0x0]]={'$gte':moment(_0x1d9443[0x1])[_0x2f44('0x4a')](_0x2f44('0x4b'))};_0x4be6ba['where']=_[_0x2f44('0x37')](_0x4be6ba[_0x2f44('0x46')],_0x40bc76);}_0x4be6ba=_[_0x2f44('0x37')]({},_0x4be6ba,_0x4610ed[_0x2f44('0x4c')]);return db[_0x2f44('0x3e')]['count']({'where':_0x4be6ba['where']})['then'](function(_0x5e5433){_0x16337e[_0x2f44('0x1c')]=_0x5e5433;if(_0x4610ed[_0x2f44('0x28')][_0x2f44('0x4d')]){_0x4be6ba[_0x2f44('0x36')]=[{'all':!![]}];}return db[_0x2f44('0x3e')][_0x2f44('0x27')](_0x4be6ba);})[_0x2f44('0x1f')](function(_0xbc7598){_0x16337e[_0x2f44('0x4e')]=_0xbc7598;return _0x16337e;});}})[_0x2f44('0x1f')](respondWithFilteredResult(_0x352ef5,_0x4be6ba))[_0x2f44('0x2a')](handleError(_0x352ef5,null));};exports[_0x2f44('0x4f')]=function(_0x241e7f,_0x4a5d08){return db[_0x2f44('0x2e')][_0x2f44('0x38')]({'where':{'id':_0x241e7f[_0x2f44('0x2c')]['id']}})[_0x2f44('0x1f')](handleEntityNotFound(_0x4a5d08,null))[_0x2f44('0x1f')](function(_0x2c8e1a){if(_0x2c8e1a){return _0x2c8e1a[_0x2f44('0x50')](_0x241e7f[_0x2f44('0x3a')][_0x2f44('0x40')],_[_0x2f44('0x3f')](_0x241e7f['body'],[_0x2f44('0x40'),'id'])||{})['spread'](function(){return db[_0x2f44('0x51')][_0x2f44('0x27')]({'attributes':['id',_0x2f44('0x22'),'color'],'where':{'id':_0x241e7f['body']['ids']}});})[_0x2f44('0x1f')](function(_0x133c20){socket[_0x2f44('0x52')](_0x2f44('0x53'),{'id':Number(_0x241e7f[_0x2f44('0x2c')]['id']),'tags':_0x133c20||[]});return{'id':Number(_0x241e7f[_0x2f44('0x2c')]['id']),'tags':_0x133c20||[]};});}})[_0x2f44('0x1f')](respondWithResult(_0x4a5d08,null))[_0x2f44('0x2a')](handleError(_0x4a5d08,null));};exports['removeTags']=function(_0x38c76d,_0x327f33){return db[_0x2f44('0x2e')][_0x2f44('0x38')]({'where':{'id':_0x38c76d['params']['id']}})[_0x2f44('0x1f')](handleEntityNotFound(_0x327f33,null))['then'](function(_0x9065dd){if(_0x9065dd){return _0x9065dd['removeTags'](_0x38c76d['query']['ids']);}})['then'](respondWithStatusCode(_0x327f33,null))['catch'](handleError(_0x327f33,null));};exports[_0x2f44('0x54')]=function(_0x3a621b,_0x1eaf45){var _0x4b755a=moment()[_0x2f44('0x55')]()[_0x2f44('0x56')]();var _0x28635a=path[_0x2f44('0x57')](config[_0x2f44('0x58')],_0x2f44('0x59'),_0x2f44('0x5a'),_0x2f44('0x5b'));var _0x388107=path[_0x2f44('0x57')](config['root'],_0x2f44('0x59'),_0x2f44('0x5a'),_0x2f44('0x5c'));var _0x2d95a6=path[_0x2f44('0x57')](_0x28635a,_0x4b755a);var _0x46774b=util['format'](_0x2f44('0x5d'),_0x3a621b[_0x2f44('0x2c')]['id'],_0x4b755a);var _0x28534c=path['join'](_0x28635a,_0x46774b);var _0x2c5832=[];_0x2c5832[_0x2f44('0x5e')]({'model':db[_0x2f44('0x5f')],'as':'User','attributes':['id','fullname'],'raw':!![]});_0x2c5832[_0x2f44('0x5e')]({'model':db['CmContact'],'as':_0x2f44('0x60'),'attributes':['id',_0x2f44('0x61'),_0x2f44('0x62')],'raw':!![]});if(_0x3a621b[_0x2f44('0x28')]['attachments']){_0x2c5832['push']({'model':db['Attachment'],'as':'Attachment','raw':!![]});}var _0x338e0a=[{'model':db[_0x2f44('0x3e')],'as':_0x2f44('0x63'),'attributes':['id',_0x2f44('0x3a'),_0x2f44('0x64'),_0x2f44('0x65'),_0x2f44('0x66'),_0x2f44('0x67')],'include':_0x2c5832}];_0x338e0a[_0x2f44('0x5e')]({'model':db[_0x2f44('0x68')],'as':_0x2f44('0x69'),'attributes':['id',_0x2f44('0x22')]});_0x338e0a[_0x2f44('0x5e')]({'model':db[_0x2f44('0x5f')],'as':'Owner','attributes':['id',_0x2f44('0x6a')]});return db['WhatsappInteraction'][_0x2f44('0x38')]({'where':{'id':_0x3a621b[_0x2f44('0x2c')]['id']},'include':_0x338e0a})['then'](handleEntityNotFound(_0x1eaf45,null))[_0x2f44('0x1f')](function(_0x287c73){if(_0x287c73){var _0x5c9d46=_0x287c73[_0x2f44('0x6b')]({'plain':!![]});fs[_0x2f44('0x6c')](_0x2d95a6);var _0xfcf3fd={'channel':'Whatsapp','account':_0x5c9d46[_0x2f44('0x69')][_0x2f44('0x22')],'agent':_0x5c9d46[_0x2f44('0x6d')]?_0x5c9d46[_0x2f44('0x6d')][_0x2f44('0x6a')]:'N.A.','createdAt':moment(_0x5c9d46[_0x2f44('0x64')])[_0x2f44('0x4a')]('YYYY-MM-DD\x20HH:mm:ss')[_0x2f44('0x56')](),'closedAt':_0x5c9d46[_0x2f44('0x6e')]?moment(_0x5c9d46['closedAt'])[_0x2f44('0x4a')](_0x2f44('0x4b'))[_0x2f44('0x56')]():'','disposition':_0x5c9d46[_0x2f44('0x6f')],'messages':_(_0x5c9d46[_0x2f44('0x63')])[_0x2f44('0x47')]({'secret':![]})[_0x2f44('0x24')](function(_0x198835){if(_0x198835[_0x2f44('0x70')]){var _0x313097=path[_0x2f44('0x57')](_0x388107,_0x198835[_0x2f44('0x70')][_0x2f44('0x71')]);if(fs[_0x2f44('0x72')](_0x313097)){fs[_0x2f44('0x73')](_0x313097)[_0x2f44('0x74')](fs[_0x2f44('0x75')](path['join'](_0x2d95a6,_0x198835[_0x2f44('0x70')][_0x2f44('0x71')])));}}return{'date':moment(_0x198835[_0x2f44('0x64')])[_0x2f44('0x4a')](_0x2f44('0x4b'))[_0x2f44('0x56')](),'sender':_0x198835[_0x2f44('0x65')]===_0x2f44('0x76')?_0x198835['User']?_0x198835[_0x2f44('0x5f')]['fullname']:_0x2f44('0x77'):_0x198835['Contact'][_0x2f44('0x61')]+(_0x198835[_0x2f44('0x60')]['lastName']?'\x20'+_0x198835[_0x2f44('0x60')]['lastName']:''),'body':_0x198835['Attachment']?_0x198835[_0x2f44('0x70')][_0x2f44('0x71')]:_0x198835[_0x2f44('0x3a')],'direction':_0x198835[_0x2f44('0x65')]==='out'?'A':'C','secret':_0x198835['secret'],'read':_0x198835[_0x2f44('0x67')],'attachment':_0x198835['Attachment']};})[_0x2f44('0x78')]()};return ejs[_0x2f44('0x79')](path['join'](config['root'],'server','views',_0x2f44('0x7a')),{'interaction':_0xfcf3fd})[_0x2f44('0x1f')](function(_0x5aec20){var _0x4c33ff=path['join'](_0x2d95a6,'transcript-'+_0x5c9d46['id']+'-'+_0x4b755a+_0x2f44('0x7b'));var _0x1de7bb={'path':_0x4c33ff,'channel':_0x2f44('0x7c'),'interactionId':_0x5c9d46['id']};return pdf[_0x2f44('0x7d')](_0x5aec20,_0x1de7bb);})[_0x2f44('0x1f')](function(){return new BPromise(function(_0x40b391,_0x593c3b){zipdir(_0x2d95a6,{'saveTo':_0x28534c},function(_0x46baab,_0x422e70){if(_0x46baab)return _0x593c3b(_0x46baab);return _0x40b391(_0x422e70);});})[_0x2f44('0x1f')](function(){return new BPromise(function(_0xa21f6a,_0x2f9585){rimraf(_0x2d95a6,function(_0x45e673){if(_0x45e673)_0x2f9585(_0x45e673);return _0xa21f6a();});});})[_0x2f44('0x1f')](function(){return _0x1eaf45[_0x2f44('0x54')](_0x28534c,_0x46774b,function(_0x1bcb0e){if(_0x1bcb0e){console[_0x2f44('0x7e')](_0x2f44('0x7f'),_0x1bcb0e);}else{fs[_0x2f44('0x80')](_0x28534c);}});});});}else{return _0x1eaf45[_0x2f44('0x15')](0xc8);}})[_0x2f44('0x2a')](handleError(_0x1eaf45,null));};
\ No newline at end of file
+var _0x4d4a=['CmContact','lastName','Attachment','Messages','createdAt','direction','secret','WhatsappAccount','Account','Owner','fullname','get','mkdirSync','Whatsapp','N.A.','closed','closedAt','existsSync','createReadStream','createWriteStream','basename','out','System','Contact','firstName','read','renderFile','views','downloadInteraction.ejs','.pdf','createPdfFromHTML','log','err','unlinkSync','zip-dir','moment','bluebird','util','path','../../components/interaction/service','../../components/parsers/qs','../../components/export/pdf','api','../../config/environment','../../mysqldb','redis','localhost','socket.io-emitter','./whatsappInteraction.socket','register','sendStatus','status','end','json','undefined','limit','count','offset','set','Content-Range','update','then','error','stack','name','send','index','map','WhatsappInteraction','fieldName','type','key','getOptions','findAll','whatsapp','query','user','show','params','keys','filters','intersection','model','attributes','fields','includeAll','options','find','catch','create','body','destroy','describe','addMessage','WhatsappMessage','ids','findOne','hasOwnProperty','nolimit','order','sort','where','pick','WhatsappInteractionId','filter','merge','$gte','split','format','YYYY-MM-DD\x20HH:mm:ss','include','rows','addTags','setTags','omit','Tag','color','whatsappInteractionTags:save','removeTags','download','unix','toString','join','server','files','root','attachments','push','User'];(function(_0x204a28,_0x1c2f71){var _0x3388a2=function(_0x4836e9){while(--_0x4836e9){_0x204a28['push'](_0x204a28['shift']());}};_0x3388a2(++_0x1c2f71);}(_0x4d4a,0x124));var _0xa4d4=function(_0x413feb,_0x10477f){_0x413feb=_0x413feb-0x0;var _0x40ee88=_0x4d4a[_0x413feb];return _0x40ee88;};'use strict';var rimraf=require('rimraf');var zipdir=require(_0xa4d4('0x0'));var moment=require(_0xa4d4('0x1'));var BPromise=require(_0xa4d4('0x2'));var util=require(_0xa4d4('0x3'));var path=require(_0xa4d4('0x4'));var ejs=require('ejs');var fs=require('fs');var _=require('lodash');var Redis=require('ioredis');var interaction=require(_0xa4d4('0x5'));var qs=require(_0xa4d4('0x6'));var pdf=require(_0xa4d4('0x7'));var logger=require('../../config/logger')(_0xa4d4('0x8'));var config=require(_0xa4d4('0x9'));var db=require(_0xa4d4('0xa'))['db'];config[_0xa4d4('0xb')]=_['defaults'](config['redis'],{'host':_0xa4d4('0xc'),'port':0x18eb});var socket=require(_0xa4d4('0xd'))(new Redis(config[_0xa4d4('0xb')]));require(_0xa4d4('0xe'))[_0xa4d4('0xf')](socket);function respondWithStatusCode(_0x33c1bf,_0x4b914b){_0x4b914b=_0x4b914b||0xcc;return function(_0x26c167){if(_0x26c167){return _0x33c1bf[_0xa4d4('0x10')](_0x4b914b);}return _0x33c1bf[_0xa4d4('0x11')](_0x4b914b)[_0xa4d4('0x12')]();};}function respondWithResult(_0x2cc6a6,_0x2b212d){_0x2b212d=_0x2b212d||0xc8;return function(_0x5f3f37){if(_0x5f3f37){return _0x2cc6a6[_0xa4d4('0x11')](_0x2b212d)[_0xa4d4('0x13')](_0x5f3f37);}};}function respondWithFilteredResult(_0x1dc46e,_0x192f26){return function(_0x3bb391){if(_0x3bb391){var _0x2e648b=typeof _0x192f26['offset']===_0xa4d4('0x14')&&typeof _0x192f26[_0xa4d4('0x15')]===_0xa4d4('0x14');var _0x170b55=_0x3bb391[_0xa4d4('0x16')];var _0x1326b5=_0x2e648b?0x0:_0x192f26[_0xa4d4('0x17')];var _0x375975=_0x2e648b?_0x3bb391[_0xa4d4('0x16')]:_0x192f26[_0xa4d4('0x17')]+_0x192f26[_0xa4d4('0x15')];var _0x329f88;if(_0x375975>=_0x170b55){_0x375975=_0x170b55;_0x329f88=0xc8;}else{_0x329f88=0xce;}_0x1dc46e[_0xa4d4('0x11')](_0x329f88);return _0x1dc46e[_0xa4d4('0x18')](_0xa4d4('0x19'),_0x1326b5+'-'+_0x375975+'/'+_0x170b55)[_0xa4d4('0x13')](_0x3bb391);}return null;};}function saveUpdates(_0x41c7e6){return function(_0x5515dd){if(_0x5515dd){return _0x5515dd[_0xa4d4('0x1a')](_0x41c7e6)[_0xa4d4('0x1b')](function(_0x1cf1f6){return _0x1cf1f6;});}return null;};}function removeEntity(_0x5e5027){return function(_0x180b37){if(_0x180b37){return _0x180b37['destroy']()[_0xa4d4('0x1b')](function(){_0x5e5027[_0xa4d4('0x11')](0xcc)[_0xa4d4('0x12')]();});}};}function handleEntityNotFound(_0xcc7aea){return function(_0xb7df0f){if(!_0xb7df0f){_0xcc7aea[_0xa4d4('0x10')](0x194);}return _0xb7df0f;};}function handleError(_0x434513,_0x5ab6f1){_0x5ab6f1=_0x5ab6f1||0x1f4;return function(_0x3c024d){logger[_0xa4d4('0x1c')](_0x3c024d[_0xa4d4('0x1d')]);if(_0x3c024d[_0xa4d4('0x1e')]){delete _0x3c024d['name'];}_0x434513['status'](_0x5ab6f1)[_0xa4d4('0x1f')](_0x3c024d);};}exports[_0xa4d4('0x20')]=function(_0xbef48e,_0x3abe5f){var _0x189aa5={};var _0x171756=_[_0xa4d4('0x21')](db[_0xa4d4('0x22')]['rawAttributes'],function(_0x4836ff){return{'name':_0x4836ff[_0xa4d4('0x23')],'type':_0x4836ff[_0xa4d4('0x24')][_0xa4d4('0x25')]};});_0x189aa5=qs[_0xa4d4('0x26')](_0x171756,_0xbef48e);return interaction[_0xa4d4('0x27')](_0xa4d4('0x28'),_0xbef48e[_0xa4d4('0x29')],_0xbef48e[_0xa4d4('0x2a')],_0x189aa5,_0x171756)[_0xa4d4('0x1b')](respondWithFilteredResult(_0x3abe5f,_0x189aa5))['catch'](handleError(_0x3abe5f,null));};exports[_0xa4d4('0x2b')]=function(_0x90c401,_0x1df1e7){var _0x22453d={'raw':![],'where':{'id':_0x90c401[_0xa4d4('0x2c')]['id']}},_0x4fcc13={};_0x4fcc13['model']=_[_0xa4d4('0x2d')](db[_0xa4d4('0x22')]['rawAttributes']);_0x4fcc13['query']=_['keys'](_0x90c401[_0xa4d4('0x29')]);_0x4fcc13[_0xa4d4('0x2e')]=_[_0xa4d4('0x2f')](_0x4fcc13[_0xa4d4('0x30')],_0x4fcc13['query']);_0x22453d[_0xa4d4('0x31')]=_[_0xa4d4('0x2f')](_0x4fcc13[_0xa4d4('0x30')],qs[_0xa4d4('0x32')](_0x90c401[_0xa4d4('0x29')][_0xa4d4('0x32')]));_0x22453d[_0xa4d4('0x31')]=_0x22453d[_0xa4d4('0x31')]['length']?_0x22453d[_0xa4d4('0x31')]:_0x4fcc13[_0xa4d4('0x30')];if(_0x90c401[_0xa4d4('0x29')][_0xa4d4('0x33')]){_0x22453d['include']=[{'all':!![]}];}_0x22453d=_['merge']({},_0x22453d,_0x90c401[_0xa4d4('0x34')]);return db['WhatsappInteraction'][_0xa4d4('0x35')](_0x22453d)[_0xa4d4('0x1b')](handleEntityNotFound(_0x1df1e7,null))[_0xa4d4('0x1b')](respondWithResult(_0x1df1e7,null))[_0xa4d4('0x36')](handleError(_0x1df1e7,null));};exports[_0xa4d4('0x37')]=function(_0x15ba8d,_0x4288de){return db[_0xa4d4('0x22')][_0xa4d4('0x37')](_0x15ba8d[_0xa4d4('0x38')],{})['then'](respondWithResult(_0x4288de,0xc9))[_0xa4d4('0x36')](handleError(_0x4288de,null));};exports['update']=function(_0x2310c2,_0x516443){if(_0x2310c2[_0xa4d4('0x38')]['id']){delete _0x2310c2[_0xa4d4('0x38')]['id'];}return db[_0xa4d4('0x22')][_0xa4d4('0x35')]({'where':{'id':_0x2310c2[_0xa4d4('0x2c')]['id']}})[_0xa4d4('0x1b')](handleEntityNotFound(_0x516443,null))[_0xa4d4('0x1b')](saveUpdates(_0x2310c2['body'],null))[_0xa4d4('0x1b')](respondWithResult(_0x516443,null))[_0xa4d4('0x36')](handleError(_0x516443,null));};exports[_0xa4d4('0x39')]=function(_0x425815,_0x5e0afa){return db[_0xa4d4('0x22')][_0xa4d4('0x35')]({'where':{'id':_0x425815['params']['id']}})[_0xa4d4('0x1b')](handleEntityNotFound(_0x5e0afa,null))[_0xa4d4('0x1b')](removeEntity(_0x5e0afa,null))[_0xa4d4('0x36')](handleError(_0x5e0afa,null));};exports[_0xa4d4('0x3a')]=function(_0xbf9013,_0x47dfb2){return db[_0xa4d4('0x22')][_0xa4d4('0x3a')]()[_0xa4d4('0x1b')](respondWithResult(_0x47dfb2,null))[_0xa4d4('0x36')](handleError(_0x47dfb2,null));};exports[_0xa4d4('0x3b')]=function(_0x5be48d,_0x520ce3){return db[_0xa4d4('0x3c')][_0xa4d4('0x35')]({'where':{'id':_0x5be48d[_0xa4d4('0x2c')]['id']}})[_0xa4d4('0x1b')](handleEntityNotFound(_0x520ce3,null))[_0xa4d4('0x1b')](function(_0x409eb8){if(_0x409eb8){return _0x409eb8[_0xa4d4('0x3b')](_0x5be48d['body'][_0xa4d4('0x3d')],_['omit'](_0x5be48d[_0xa4d4('0x38')],[_0xa4d4('0x3d'),'id'])||{});}})[_0xa4d4('0x1b')](respondWithResult(_0x520ce3,null))[_0xa4d4('0x36')](handleError(_0x520ce3,null));};exports['getMessages']=function(_0x25f6da,_0x1e47cf){var _0x5a46e6={'raw':![],'where':{}};var _0x375811={};var _0x2662e3={'count':0x0,'rows':[]};return db[_0xa4d4('0x22')][_0xa4d4('0x3e')]({'where':{'id':_0x25f6da[_0xa4d4('0x2c')]['id']}})[_0xa4d4('0x1b')](handleEntityNotFound(_0x1e47cf,null))[_0xa4d4('0x1b')](function(_0x54c35c){if(_0x54c35c){_0x375811['model']=_[_0xa4d4('0x2d')](db['WhatsappMessage']['rawAttributes']);_0x375811[_0xa4d4('0x29')]=_['keys'](_0x25f6da[_0xa4d4('0x29')]);_0x375811[_0xa4d4('0x2e')]=_[_0xa4d4('0x2f')](_0x375811['model'],_0x375811[_0xa4d4('0x29')]);_0x5a46e6[_0xa4d4('0x31')]=_['intersection'](_0x375811['model'],qs[_0xa4d4('0x32')](_0x25f6da['query']['fields']));_0x5a46e6['attributes']=_0x5a46e6[_0xa4d4('0x31')]['length']?_0x5a46e6[_0xa4d4('0x31')]:_0x375811[_0xa4d4('0x30')];if(!_0x25f6da[_0xa4d4('0x29')][_0xa4d4('0x3f')](_0xa4d4('0x40'))){_0x5a46e6[_0xa4d4('0x15')]=qs[_0xa4d4('0x15')](_0x25f6da['query'][_0xa4d4('0x15')]);_0x5a46e6[_0xa4d4('0x17')]=qs['offset'](_0x25f6da[_0xa4d4('0x29')][_0xa4d4('0x17')]);}_0x5a46e6[_0xa4d4('0x41')]=qs[_0xa4d4('0x42')](_0x25f6da['query']['sort']);_0x5a46e6[_0xa4d4('0x43')]=qs[_0xa4d4('0x2e')](_[_0xa4d4('0x44')](_0x25f6da[_0xa4d4('0x29')],_0x375811[_0xa4d4('0x2e')]));_0x5a46e6[_0xa4d4('0x43')][_0xa4d4('0x45')]=_0x54c35c['id'];if(_0x25f6da[_0xa4d4('0x29')][_0xa4d4('0x46')]){_0x5a46e6['where']=_[_0xa4d4('0x47')](_0x5a46e6['where'],{'$or':_[_0xa4d4('0x21')](_0x5a46e6[_0xa4d4('0x31')],function(_0x1dafde){var _0x3c3338={};_0x3c3338[_0x1dafde]={'$like':'%'+_0x25f6da[_0xa4d4('0x29')]['filter']+'%'};return _0x3c3338;})});}if(_0x25f6da[_0xa4d4('0x29')][_0xa4d4('0x48')]){var _0x246baa=_0x25f6da[_0xa4d4('0x29')][_0xa4d4('0x48')][_0xa4d4('0x49')](',');var _0x2656f3={};_0x2656f3[_0x246baa[0x0]]={'$gte':moment(_0x246baa[0x1])[_0xa4d4('0x4a')](_0xa4d4('0x4b'))};_0x5a46e6[_0xa4d4('0x43')]=_['merge'](_0x5a46e6[_0xa4d4('0x43')],_0x2656f3);}_0x5a46e6=_['merge']({},_0x5a46e6,_0x25f6da[_0xa4d4('0x34')]);return db[_0xa4d4('0x3c')][_0xa4d4('0x16')]({'where':_0x5a46e6[_0xa4d4('0x43')]})[_0xa4d4('0x1b')](function(_0x3dc9ea){_0x2662e3[_0xa4d4('0x16')]=_0x3dc9ea;if(_0x25f6da[_0xa4d4('0x29')][_0xa4d4('0x33')]){_0x5a46e6[_0xa4d4('0x4c')]=[{'all':!![]}];}return db[_0xa4d4('0x3c')][_0xa4d4('0x27')](_0x5a46e6);})['then'](function(_0x1f76f7){_0x2662e3[_0xa4d4('0x4d')]=_0x1f76f7;return _0x2662e3;});}})[_0xa4d4('0x1b')](respondWithFilteredResult(_0x1e47cf,_0x5a46e6))[_0xa4d4('0x36')](handleError(_0x1e47cf,null));};exports[_0xa4d4('0x4e')]=function(_0x49ddf3,_0x41eb19){return db[_0xa4d4('0x22')]['find']({'where':{'id':_0x49ddf3['params']['id']}})[_0xa4d4('0x1b')](handleEntityNotFound(_0x41eb19,null))[_0xa4d4('0x1b')](function(_0x299024){if(_0x299024){return _0x299024[_0xa4d4('0x4f')](_0x49ddf3[_0xa4d4('0x38')][_0xa4d4('0x3d')],_[_0xa4d4('0x50')](_0x49ddf3[_0xa4d4('0x38')],[_0xa4d4('0x3d'),'id'])||{})['spread'](function(){return db[_0xa4d4('0x51')]['findAll']({'attributes':['id',_0xa4d4('0x1e'),_0xa4d4('0x52')],'where':{'id':_0x49ddf3['body'][_0xa4d4('0x3d')]}});})['then'](function(_0x2ed397){socket['emit'](_0xa4d4('0x53'),{'id':Number(_0x49ddf3[_0xa4d4('0x2c')]['id']),'tags':_0x2ed397||[]});return{'id':Number(_0x49ddf3[_0xa4d4('0x2c')]['id']),'tags':_0x2ed397||[]};});}})[_0xa4d4('0x1b')](respondWithResult(_0x41eb19,null))['catch'](handleError(_0x41eb19,null));};exports[_0xa4d4('0x54')]=function(_0x152f09,_0x859c25){return db[_0xa4d4('0x22')][_0xa4d4('0x35')]({'where':{'id':_0x152f09[_0xa4d4('0x2c')]['id']}})[_0xa4d4('0x1b')](handleEntityNotFound(_0x859c25,null))['then'](function(_0x2b27d8){if(_0x2b27d8){return _0x2b27d8[_0xa4d4('0x54')](_0x152f09[_0xa4d4('0x29')][_0xa4d4('0x3d')]);}})[_0xa4d4('0x1b')](respondWithStatusCode(_0x859c25,null))[_0xa4d4('0x36')](handleError(_0x859c25,null));};exports[_0xa4d4('0x55')]=function(_0x383b33,_0xcbaaaa){var _0x5d7c4d=moment()[_0xa4d4('0x56')]()[_0xa4d4('0x57')]();var _0x33150b=path[_0xa4d4('0x58')](config['root'],_0xa4d4('0x59'),_0xa4d4('0x5a'),'tmp');var _0x51bcb0=path[_0xa4d4('0x58')](config[_0xa4d4('0x5b')],_0xa4d4('0x59'),'files',_0xa4d4('0x5c'));var _0x57808c=path[_0xa4d4('0x58')](_0x33150b,_0x5d7c4d);var _0x102fe9=util[_0xa4d4('0x4a')]('transcript-%d-%s.zip',_0x383b33[_0xa4d4('0x2c')]['id'],_0x5d7c4d);var _0x2da00a=path['join'](_0x33150b,_0x102fe9);var _0x199c43=[];_0x199c43[_0xa4d4('0x5d')]({'model':db[_0xa4d4('0x5e')],'as':_0xa4d4('0x5e'),'attributes':['id','fullname'],'raw':!![]});_0x199c43[_0xa4d4('0x5d')]({'model':db[_0xa4d4('0x5f')],'as':'Contact','attributes':['id','firstName',_0xa4d4('0x60')],'raw':!![]});if(_0x383b33[_0xa4d4('0x29')][_0xa4d4('0x5c')]){_0x199c43['push']({'model':db[_0xa4d4('0x61')],'as':'Attachment','raw':!![]});}var _0x41ccd7=[{'model':db[_0xa4d4('0x3c')],'as':_0xa4d4('0x62'),'attributes':['id','body',_0xa4d4('0x63'),_0xa4d4('0x64'),_0xa4d4('0x65'),'read'],'include':_0x199c43}];_0x41ccd7[_0xa4d4('0x5d')]({'model':db[_0xa4d4('0x66')],'as':_0xa4d4('0x67'),'attributes':['id',_0xa4d4('0x1e')]});_0x41ccd7['push']({'model':db[_0xa4d4('0x5e')],'as':_0xa4d4('0x68'),'attributes':['id',_0xa4d4('0x69')]});return db[_0xa4d4('0x22')][_0xa4d4('0x35')]({'where':{'id':_0x383b33['params']['id']},'include':_0x41ccd7})[_0xa4d4('0x1b')](handleEntityNotFound(_0xcbaaaa,null))['then'](function(_0xd72089){if(_0xd72089){var _0x31856b=_0xd72089[_0xa4d4('0x6a')]({'plain':!![]});fs[_0xa4d4('0x6b')](_0x57808c);var _0x139631={'channel':_0xa4d4('0x6c'),'account':_0x31856b[_0xa4d4('0x67')]['name'],'agent':_0x31856b['Owner']?_0x31856b[_0xa4d4('0x68')][_0xa4d4('0x69')]:_0xa4d4('0x6d'),'createdAt':moment(_0x31856b[_0xa4d4('0x63')])[_0xa4d4('0x4a')](_0xa4d4('0x4b'))[_0xa4d4('0x57')](),'closedAt':_0x31856b[_0xa4d4('0x6e')]?moment(_0x31856b[_0xa4d4('0x6f')])[_0xa4d4('0x4a')](_0xa4d4('0x4b'))['toString']():'','disposition':_0x31856b['disposition'],'messages':_(_0x31856b[_0xa4d4('0x62')])['filter']({'secret':![]})[_0xa4d4('0x21')](function(_0x3c9a04){if(_0x3c9a04['Attachment']){var _0x3a4e5f=path[_0xa4d4('0x58')](_0x51bcb0,_0x3c9a04['Attachment']['basename']);if(fs[_0xa4d4('0x70')](_0x3a4e5f)){fs[_0xa4d4('0x71')](_0x3a4e5f)['pipe'](fs[_0xa4d4('0x72')](path[_0xa4d4('0x58')](_0x57808c,_0x3c9a04['Attachment'][_0xa4d4('0x73')])));}}return{'date':moment(_0x3c9a04[_0xa4d4('0x63')])[_0xa4d4('0x4a')](_0xa4d4('0x4b'))[_0xa4d4('0x57')](),'sender':_0x3c9a04[_0xa4d4('0x64')]===_0xa4d4('0x74')?_0x3c9a04[_0xa4d4('0x5e')]?_0x3c9a04[_0xa4d4('0x5e')][_0xa4d4('0x69')]:_0xa4d4('0x75'):_0x3c9a04[_0xa4d4('0x76')][_0xa4d4('0x77')]+(_0x3c9a04['Contact'][_0xa4d4('0x60')]?'\x20'+_0x3c9a04['Contact'][_0xa4d4('0x60')]:''),'body':_0x3c9a04[_0xa4d4('0x61')]?_0x3c9a04[_0xa4d4('0x61')][_0xa4d4('0x73')]:_0x3c9a04[_0xa4d4('0x38')],'direction':_0x3c9a04[_0xa4d4('0x64')]==='out'?'A':'C','secret':_0x3c9a04[_0xa4d4('0x65')],'read':_0x3c9a04[_0xa4d4('0x78')],'attachment':_0x3c9a04[_0xa4d4('0x61')]};})['value']()};return ejs[_0xa4d4('0x79')](path['join'](config[_0xa4d4('0x5b')],'server',_0xa4d4('0x7a'),_0xa4d4('0x7b')),{'interaction':_0x139631})['then'](function(_0x3fbff1){var _0x210772=path[_0xa4d4('0x58')](_0x57808c,'transcript-'+_0x31856b['id']+'-'+_0x5d7c4d+_0xa4d4('0x7c'));var _0x595e61={'path':_0x210772,'channel':'Whatsapp','interactionId':_0x31856b['id']};return pdf[_0xa4d4('0x7d')](_0x3fbff1,_0x595e61);})['then'](function(){return new BPromise(function(_0x175a42,_0x337760){zipdir(_0x57808c,{'saveTo':_0x2da00a},function(_0x5c2a17,_0x5dc68b){if(_0x5c2a17)return _0x337760(_0x5c2a17);return _0x175a42(_0x5dc68b);});})[_0xa4d4('0x1b')](function(){return new BPromise(function(_0x2ad63d,_0x3cc7ad){rimraf(_0x57808c,function(_0xee37f6){if(_0xee37f6)_0x3cc7ad(_0xee37f6);return _0x2ad63d();});});})[_0xa4d4('0x1b')](function(){return _0xcbaaaa[_0xa4d4('0x55')](_0x2da00a,_0x102fe9,function(_0x2283fc){if(_0x2283fc){console[_0xa4d4('0x7e')](_0xa4d4('0x7f'),_0x2283fc);}else{fs[_0xa4d4('0x80')](_0x2da00a);}});});});}else{return _0xcbaaaa[_0xa4d4('0x10')](0xc8);}})[_0xa4d4('0x36')](handleError(_0xcbaaaa,null));};
\ No newline at end of file