Built motion from commit 5ae82ce5.|2.6.7
[motion2.git] / server / api / whatsappInteraction / whatsappInteraction.controller.js
index ee2d724..441f95b 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xd7a4=['rimraf','zip-dir','bluebird','util','path','lodash','../../components/interaction/service','../../components/export/pdf','../../config/logger','api','../../config/environment','../../mysqldb','redis','defaults','localhost','register','status','end','json','offset','undefined','limit','count','set','Content-Range','update','destroy','sendStatus','stack','send','index','map','WhatsappInteraction','fieldName','type','key','getOptions','findAll','whatsapp','query','user','then','catch','params','model','keys','rawAttributes','filters','intersection','fields','length','attributes','includeAll','include','merge','create','body','find','describe','addMessage','WhatsappMessage','omit','getMessages','findOne','nolimit','order','sort','where','filter','$gte','split','format','YYYY-MM-DD\x20HH:mm:ss','options','addTags','setTags','ids','spread','Tag','name','emit','whatsappInteractionTags:save','removeTags','join','files','root','server','transcript-%d-%s.zip','User','fullname','push','CmContact','Contact','firstName','attachments','Attachment','Messages','createdAt','direction','secret','WhatsappAccount','Account','get','mkdirSync','Whatsapp','Owner','closed','closedAt','disposition','basename','existsSync','pipe','createWriteStream','toString','System','lastName','out','read','value','renderFile','views','downloadInteraction.ejs','.pdf','createPdfFromHTML','download','log'];(function(_0x12e073,_0x2a6387){var _0x17e67b=function(_0x61b780){while(--_0x61b780){_0x12e073['push'](_0x12e073['shift']());}};_0x17e67b(++_0x2a6387);}(_0xd7a4,0x7e));var _0x4d7a=function(_0xa298a2,_0x45b471){_0xa298a2=_0xa298a2-0x0;var _0x530b9f=_0xd7a4[_0xa298a2];return _0x530b9f;};'use strict';var rimraf=require(_0x4d7a('0x0'));var zipdir=require(_0x4d7a('0x1'));var moment=require('moment');var BPromise=require(_0x4d7a('0x2'));var util=require(_0x4d7a('0x3'));var path=require(_0x4d7a('0x4'));var ejs=require('ejs');var fs=require('fs');var _=require(_0x4d7a('0x5'));var Redis=require('ioredis');var interaction=require(_0x4d7a('0x6'));var qs=require('../../components/parsers/qs');var pdf=require(_0x4d7a('0x7'));var logger=require(_0x4d7a('0x8'))(_0x4d7a('0x9'));var config=require(_0x4d7a('0xa'));var db=require(_0x4d7a('0xb'))['db'];config[_0x4d7a('0xc')]=_[_0x4d7a('0xd')](config[_0x4d7a('0xc')],{'host':_0x4d7a('0xe'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x4d7a('0xc')]));require('./whatsappInteraction.socket')[_0x4d7a('0xf')](socket);function respondWithStatusCode(_0xddb648,_0x5badc5){_0x5badc5=_0x5badc5||0xcc;return function(_0x555c3a){if(_0x555c3a){return _0xddb648['sendStatus'](_0x5badc5);}return _0xddb648[_0x4d7a('0x10')](_0x5badc5)[_0x4d7a('0x11')]();};}function respondWithResult(_0x28c011,_0x37d2c0){_0x37d2c0=_0x37d2c0||0xc8;return function(_0x15f137){if(_0x15f137){return _0x28c011[_0x4d7a('0x10')](_0x37d2c0)[_0x4d7a('0x12')](_0x15f137);}};}function respondWithFilteredResult(_0x65905,_0x183fe1){return function(_0x1e8d6d){if(_0x1e8d6d){var _0x29edf3=typeof _0x183fe1[_0x4d7a('0x13')]===_0x4d7a('0x14')&&typeof _0x183fe1[_0x4d7a('0x15')]===_0x4d7a('0x14');var _0x4db1b0=_0x1e8d6d[_0x4d7a('0x16')];var _0x3670ef=_0x29edf3?0x0:_0x183fe1[_0x4d7a('0x13')];var _0x481fdf=_0x29edf3?_0x1e8d6d[_0x4d7a('0x16')]:_0x183fe1[_0x4d7a('0x13')]+_0x183fe1[_0x4d7a('0x15')];var _0x37fb31;if(_0x481fdf>=_0x4db1b0){_0x481fdf=_0x4db1b0;_0x37fb31=0xc8;}else{_0x37fb31=0xce;}_0x65905[_0x4d7a('0x10')](_0x37fb31);return _0x65905[_0x4d7a('0x17')](_0x4d7a('0x18'),_0x3670ef+'-'+_0x481fdf+'/'+_0x4db1b0)[_0x4d7a('0x12')](_0x1e8d6d);}return null;};}function saveUpdates(_0x392588){return function(_0x5d6407){if(_0x5d6407){return _0x5d6407[_0x4d7a('0x19')](_0x392588)['then'](function(_0x2b27cb){return _0x2b27cb;});}return null;};}function removeEntity(_0xd4da09){return function(_0x450f36){if(_0x450f36){return _0x450f36[_0x4d7a('0x1a')]()['then'](function(){_0xd4da09[_0x4d7a('0x10')](0xcc)[_0x4d7a('0x11')]();});}};}function handleEntityNotFound(_0x129ab5){return function(_0x288d5e){if(!_0x288d5e){_0x129ab5[_0x4d7a('0x1b')](0x194);}return _0x288d5e;};}function handleError(_0x4538e4,_0x1adba0){_0x1adba0=_0x1adba0||0x1f4;return function(_0x2eb19b){logger['error'](_0x2eb19b[_0x4d7a('0x1c')]);if(_0x2eb19b['name']){delete _0x2eb19b['name'];}_0x4538e4[_0x4d7a('0x10')](_0x1adba0)[_0x4d7a('0x1d')](_0x2eb19b);};}exports[_0x4d7a('0x1e')]=function(_0x438ec7,_0x38e38a){var _0x256f4f={};var _0x29f84f=_[_0x4d7a('0x1f')](db[_0x4d7a('0x20')]['rawAttributes'],function(_0x3631b0){return{'name':_0x3631b0[_0x4d7a('0x21')],'type':_0x3631b0[_0x4d7a('0x22')][_0x4d7a('0x23')]};});_0x256f4f=qs[_0x4d7a('0x24')](_0x29f84f,_0x438ec7);return interaction[_0x4d7a('0x25')](_0x4d7a('0x26'),_0x438ec7[_0x4d7a('0x27')],_0x438ec7[_0x4d7a('0x28')],_0x256f4f,_0x29f84f)[_0x4d7a('0x29')](respondWithFilteredResult(_0x38e38a,_0x256f4f))[_0x4d7a('0x2a')](handleError(_0x38e38a,null));};exports['show']=function(_0x2840c7,_0xfbb503){var _0x5bae65={'raw':![],'where':{'id':_0x2840c7[_0x4d7a('0x2b')]['id']}},_0x464595={};_0x464595[_0x4d7a('0x2c')]=_[_0x4d7a('0x2d')](db['WhatsappInteraction'][_0x4d7a('0x2e')]);_0x464595['query']=_['keys'](_0x2840c7['query']);_0x464595[_0x4d7a('0x2f')]=_[_0x4d7a('0x30')](_0x464595['model'],_0x464595[_0x4d7a('0x27')]);_0x5bae65['attributes']=_[_0x4d7a('0x30')](_0x464595[_0x4d7a('0x2c')],qs[_0x4d7a('0x31')](_0x2840c7[_0x4d7a('0x27')][_0x4d7a('0x31')]));_0x5bae65['attributes']=_0x5bae65['attributes'][_0x4d7a('0x32')]?_0x5bae65[_0x4d7a('0x33')]:_0x464595[_0x4d7a('0x2c')];if(_0x2840c7[_0x4d7a('0x27')][_0x4d7a('0x34')]){_0x5bae65[_0x4d7a('0x35')]=[{'all':!![]}];}_0x5bae65=_[_0x4d7a('0x36')]({},_0x5bae65,_0x2840c7['options']);return db[_0x4d7a('0x20')]['find'](_0x5bae65)[_0x4d7a('0x29')](handleEntityNotFound(_0xfbb503,null))[_0x4d7a('0x29')](respondWithResult(_0xfbb503,null))[_0x4d7a('0x2a')](handleError(_0xfbb503,null));};exports[_0x4d7a('0x37')]=function(_0x144c34,_0x2b38dd){return db['WhatsappInteraction'][_0x4d7a('0x37')](_0x144c34[_0x4d7a('0x38')],{})[_0x4d7a('0x29')](respondWithResult(_0x2b38dd,0xc9))['catch'](handleError(_0x2b38dd,null));};exports[_0x4d7a('0x19')]=function(_0x38ae66,_0x3a4037){if(_0x38ae66[_0x4d7a('0x38')]['id']){delete _0x38ae66['body']['id'];}return db[_0x4d7a('0x20')][_0x4d7a('0x39')]({'where':{'id':_0x38ae66['params']['id']}})[_0x4d7a('0x29')](handleEntityNotFound(_0x3a4037,null))[_0x4d7a('0x29')](saveUpdates(_0x38ae66[_0x4d7a('0x38')],null))[_0x4d7a('0x29')](respondWithResult(_0x3a4037,null))[_0x4d7a('0x2a')](handleError(_0x3a4037,null));};exports[_0x4d7a('0x1a')]=function(_0x1734c1,_0x37a09e){return db[_0x4d7a('0x20')]['find']({'where':{'id':_0x1734c1[_0x4d7a('0x2b')]['id']}})[_0x4d7a('0x29')](handleEntityNotFound(_0x37a09e,null))[_0x4d7a('0x29')](removeEntity(_0x37a09e,null))[_0x4d7a('0x2a')](handleError(_0x37a09e,null));};exports[_0x4d7a('0x3a')]=function(_0xa1671,_0x3795e6){return db[_0x4d7a('0x20')]['describe']()[_0x4d7a('0x29')](respondWithResult(_0x3795e6,null))[_0x4d7a('0x2a')](handleError(_0x3795e6,null));};exports[_0x4d7a('0x3b')]=function(_0x4523c3,_0x24d14d){return db[_0x4d7a('0x3c')][_0x4d7a('0x39')]({'where':{'id':_0x4523c3[_0x4d7a('0x2b')]['id']}})[_0x4d7a('0x29')](handleEntityNotFound(_0x24d14d,null))[_0x4d7a('0x29')](function(_0x2c3eda){if(_0x2c3eda){return _0x2c3eda['addMessage'](_0x4523c3[_0x4d7a('0x38')]['ids'],_[_0x4d7a('0x3d')](_0x4523c3[_0x4d7a('0x38')],['ids','id'])||{});}})[_0x4d7a('0x29')](respondWithResult(_0x24d14d,null))['catch'](handleError(_0x24d14d,null));};exports[_0x4d7a('0x3e')]=function(_0x1deee0,_0x5e527c){var _0x2753c1={'raw':![],'where':{}};var _0x1a2974={};var _0x5554a4={'count':0x0,'rows':[]};return db['WhatsappInteraction'][_0x4d7a('0x3f')]({'where':{'id':_0x1deee0['params']['id']}})[_0x4d7a('0x29')](handleEntityNotFound(_0x5e527c,null))[_0x4d7a('0x29')](function(_0x1f7f8d){if(_0x1f7f8d){_0x1a2974['model']=_['keys'](db['WhatsappMessage'][_0x4d7a('0x2e')]);_0x1a2974[_0x4d7a('0x27')]=_['keys'](_0x1deee0[_0x4d7a('0x27')]);_0x1a2974['filters']=_['intersection'](_0x1a2974['model'],_0x1a2974[_0x4d7a('0x27')]);_0x2753c1[_0x4d7a('0x33')]=_[_0x4d7a('0x30')](_0x1a2974[_0x4d7a('0x2c')],qs['fields'](_0x1deee0[_0x4d7a('0x27')]['fields']));_0x2753c1['attributes']=_0x2753c1[_0x4d7a('0x33')][_0x4d7a('0x32')]?_0x2753c1['attributes']:_0x1a2974[_0x4d7a('0x2c')];if(!_0x1deee0['query']['hasOwnProperty'](_0x4d7a('0x40'))){_0x2753c1[_0x4d7a('0x15')]=qs[_0x4d7a('0x15')](_0x1deee0[_0x4d7a('0x27')]['limit']);_0x2753c1['offset']=qs[_0x4d7a('0x13')](_0x1deee0['query'][_0x4d7a('0x13')]);}_0x2753c1[_0x4d7a('0x41')]=qs[_0x4d7a('0x42')](_0x1deee0[_0x4d7a('0x27')][_0x4d7a('0x42')]);_0x2753c1[_0x4d7a('0x43')]=qs[_0x4d7a('0x2f')](_['pick'](_0x1deee0[_0x4d7a('0x27')],_0x1a2974['filters']));_0x2753c1[_0x4d7a('0x43')]['WhatsappInteractionId']=_0x1f7f8d['id'];if(_0x1deee0[_0x4d7a('0x27')]['filter']){_0x2753c1['where']=_[_0x4d7a('0x36')](_0x2753c1[_0x4d7a('0x43')],{'$or':_['map'](_0x2753c1[_0x4d7a('0x33')],function(_0x2b87e0){var _0x4cfd61={};_0x4cfd61[_0x2b87e0]={'$like':'%'+_0x1deee0[_0x4d7a('0x27')][_0x4d7a('0x44')]+'%'};return _0x4cfd61;})});}if(_0x1deee0[_0x4d7a('0x27')][_0x4d7a('0x45')]){var _0x58c895=_0x1deee0[_0x4d7a('0x27')]['$gte'][_0x4d7a('0x46')](',');var _0x1619d5={};_0x1619d5[_0x58c895[0x0]]={'$gte':moment(_0x58c895[0x1])[_0x4d7a('0x47')](_0x4d7a('0x48'))};_0x2753c1[_0x4d7a('0x43')]=_[_0x4d7a('0x36')](_0x2753c1[_0x4d7a('0x43')],_0x1619d5);}_0x2753c1=_[_0x4d7a('0x36')]({},_0x2753c1,_0x1deee0[_0x4d7a('0x49')]);return db[_0x4d7a('0x3c')][_0x4d7a('0x16')]({'where':_0x2753c1[_0x4d7a('0x43')]})['then'](function(_0x85382c){_0x5554a4[_0x4d7a('0x16')]=_0x85382c;if(_0x1deee0['query'][_0x4d7a('0x34')]){_0x2753c1[_0x4d7a('0x35')]=[{'all':!![]}];}return db[_0x4d7a('0x3c')][_0x4d7a('0x25')](_0x2753c1);})[_0x4d7a('0x29')](function(_0x5f376b){_0x5554a4['rows']=_0x5f376b;return _0x5554a4;});}})['then'](respondWithFilteredResult(_0x5e527c,_0x2753c1))['catch'](handleError(_0x5e527c,null));};exports[_0x4d7a('0x4a')]=function(_0x58dff6,_0x560b33){return db['WhatsappInteraction']['find']({'where':{'id':_0x58dff6['params']['id']}})[_0x4d7a('0x29')](handleEntityNotFound(_0x560b33,null))[_0x4d7a('0x29')](function(_0x388894){if(_0x388894){return _0x388894[_0x4d7a('0x4b')](_0x58dff6['body']['ids'],_['omit'](_0x58dff6[_0x4d7a('0x38')],[_0x4d7a('0x4c'),'id'])||{})[_0x4d7a('0x4d')](function(){return db[_0x4d7a('0x4e')][_0x4d7a('0x25')]({'attributes':['id',_0x4d7a('0x4f'),'color'],'where':{'id':_0x58dff6[_0x4d7a('0x38')][_0x4d7a('0x4c')]}});})[_0x4d7a('0x29')](function(_0x33b774){socket[_0x4d7a('0x50')](_0x4d7a('0x51'),{'id':Number(_0x58dff6[_0x4d7a('0x2b')]['id']),'tags':_0x33b774||[]});return{'id':Number(_0x58dff6[_0x4d7a('0x2b')]['id']),'tags':_0x33b774||[]};});}})[_0x4d7a('0x29')](respondWithResult(_0x560b33,null))[_0x4d7a('0x2a')](handleError(_0x560b33,null));};exports[_0x4d7a('0x52')]=function(_0x518826,_0x29dc71){return db[_0x4d7a('0x20')][_0x4d7a('0x39')]({'where':{'id':_0x518826[_0x4d7a('0x2b')]['id']}})[_0x4d7a('0x29')](handleEntityNotFound(_0x29dc71,null))[_0x4d7a('0x29')](function(_0x193c06){if(_0x193c06){return _0x193c06[_0x4d7a('0x52')](_0x518826[_0x4d7a('0x27')]['ids']);}})[_0x4d7a('0x29')](respondWithStatusCode(_0x29dc71,null))[_0x4d7a('0x2a')](handleError(_0x29dc71,null));};exports['download']=function(_0x4d59ba,_0x1ed7b9){var _0xbae933=moment()['unix']()['toString']();var _0x382101=path[_0x4d7a('0x53')](config['root'],'server',_0x4d7a('0x54'),'tmp');var _0x320be7=path[_0x4d7a('0x53')](config[_0x4d7a('0x55')],_0x4d7a('0x56'),'files','attachments');var _0x7cd799=path['join'](_0x382101,_0xbae933);var _0x304b57=util[_0x4d7a('0x47')](_0x4d7a('0x57'),_0x4d59ba[_0x4d7a('0x2b')]['id'],_0xbae933);var _0x8ab86=path[_0x4d7a('0x53')](_0x382101,_0x304b57);var _0x370234=[];_0x370234['push']({'model':db['User'],'as':_0x4d7a('0x58'),'attributes':['id',_0x4d7a('0x59')],'raw':!![]});_0x370234[_0x4d7a('0x5a')]({'model':db[_0x4d7a('0x5b')],'as':_0x4d7a('0x5c'),'attributes':['id',_0x4d7a('0x5d'),'lastName'],'raw':!![]});if(_0x4d59ba['query'][_0x4d7a('0x5e')]){_0x370234[_0x4d7a('0x5a')]({'model':db['Attachment'],'as':_0x4d7a('0x5f'),'raw':!![]});}var _0x261af9=[{'model':db[_0x4d7a('0x3c')],'as':_0x4d7a('0x60'),'attributes':['id',_0x4d7a('0x38'),_0x4d7a('0x61'),_0x4d7a('0x62'),_0x4d7a('0x63'),'read'],'include':_0x370234}];_0x261af9['push']({'model':db[_0x4d7a('0x64')],'as':_0x4d7a('0x65'),'attributes':['id','name']});_0x261af9[_0x4d7a('0x5a')]({'model':db[_0x4d7a('0x58')],'as':'Owner','attributes':['id',_0x4d7a('0x59')]});return db['WhatsappInteraction'][_0x4d7a('0x39')]({'where':{'id':_0x4d59ba[_0x4d7a('0x2b')]['id']},'include':_0x261af9})[_0x4d7a('0x29')](handleEntityNotFound(_0x1ed7b9,null))['then'](function(_0x3cf061){if(_0x3cf061){var _0xce259f=_0x3cf061[_0x4d7a('0x66')]({'plain':!![]});fs[_0x4d7a('0x67')](_0x7cd799);var _0x6b4338={'channel':_0x4d7a('0x68'),'account':_0xce259f[_0x4d7a('0x65')][_0x4d7a('0x4f')],'agent':_0xce259f[_0x4d7a('0x69')]?_0xce259f[_0x4d7a('0x69')][_0x4d7a('0x59')]:'N.A.','createdAt':moment(_0xce259f['createdAt'])[_0x4d7a('0x47')](_0x4d7a('0x48'))['toString'](),'closedAt':_0xce259f[_0x4d7a('0x6a')]?moment(_0xce259f[_0x4d7a('0x6b')])[_0x4d7a('0x47')](_0x4d7a('0x48'))['toString']():'','disposition':_0xce259f[_0x4d7a('0x6c')],'messages':_(_0xce259f['Messages'])['filter']({'secret':![]})[_0x4d7a('0x1f')](function(_0x190837){if(_0x190837[_0x4d7a('0x5f')]){var _0x5cbb84=path['join'](_0x320be7,_0x190837['Attachment'][_0x4d7a('0x6d')]);if(fs[_0x4d7a('0x6e')](_0x5cbb84)){fs['createReadStream'](_0x5cbb84)[_0x4d7a('0x6f')](fs[_0x4d7a('0x70')](path[_0x4d7a('0x53')](_0x7cd799,_0x190837[_0x4d7a('0x5f')]['basename'])));}}return{'date':moment(_0x190837[_0x4d7a('0x61')])[_0x4d7a('0x47')]('YYYY-MM-DD\x20HH:mm:ss')[_0x4d7a('0x71')](),'sender':_0x190837[_0x4d7a('0x62')]==='out'?_0x190837[_0x4d7a('0x58')]?_0x190837[_0x4d7a('0x58')][_0x4d7a('0x59')]:_0x4d7a('0x72'):_0x190837[_0x4d7a('0x5c')][_0x4d7a('0x5d')]+(_0x190837['Contact'][_0x4d7a('0x73')]?'\x20'+_0x190837[_0x4d7a('0x5c')]['lastName']:''),'body':_0x190837['Attachment']?_0x190837[_0x4d7a('0x5f')][_0x4d7a('0x6d')]:_0x190837['body'],'direction':_0x190837['direction']===_0x4d7a('0x74')?'A':'C','secret':_0x190837['secret'],'read':_0x190837[_0x4d7a('0x75')],'attachment':_0x190837['Attachment']};})[_0x4d7a('0x76')]()};return ejs[_0x4d7a('0x77')](path[_0x4d7a('0x53')](config[_0x4d7a('0x55')],_0x4d7a('0x56'),_0x4d7a('0x78'),_0x4d7a('0x79')),{'interaction':_0x6b4338})[_0x4d7a('0x29')](function(_0x4b35a8){var _0x9fc325=path['join'](_0x7cd799,'transcript-'+_0xce259f['id']+'-'+_0xbae933+_0x4d7a('0x7a'));var _0x5043b0={'path':_0x9fc325,'channel':_0x4d7a('0x68'),'interactionId':_0xce259f['id']};return pdf[_0x4d7a('0x7b')](_0x4b35a8,_0x5043b0);})[_0x4d7a('0x29')](function(){return new BPromise(function(_0x5955f8,_0x40ce6f){zipdir(_0x7cd799,{'saveTo':_0x8ab86},function(_0xa62d10,_0x48c81e){if(_0xa62d10)return _0x40ce6f(_0xa62d10);return _0x5955f8(_0x48c81e);});})['then'](function(){return new BPromise(function(_0x55a171,_0x11d547){rimraf(_0x7cd799,function(_0x40de5b){if(_0x40de5b)_0x11d547(_0x40de5b);return _0x55a171();});});})[_0x4d7a('0x29')](function(){return _0x1ed7b9[_0x4d7a('0x7c')](_0x8ab86,_0x304b57,function(_0x2a07c6){if(_0x2a07c6){console[_0x4d7a('0x7d')]('err',_0x2a07c6);}else{fs['unlinkSync'](_0x8ab86);}});});});}else{return _0x1ed7b9['sendStatus'](0xc8);}})['catch'](handleError(_0x1ed7b9,null));};
\ No newline at end of file
+var _0x91ab=['push','fullname','CmContact','Contact','lastName','Messages','createdAt','secret','WhatsappAccount','User','Owner','get','mkdirSync','Whatsapp','YYYY-MM-DD\x20HH:mm:ss','closed','closedAt','Attachment','basename','createReadStream','pipe','direction','System','firstName','out','read','renderFile','downloadInteraction.ejs','transcript-','.pdf','createPdfFromHTML','log','rimraf','moment','path','ejs','lodash','ioredis','../../components/interaction/service','../../components/parsers/qs','../../config/logger','../../config/environment','../../mysqldb','defaults','localhost','socket.io-emitter','register','sendStatus','status','json','offset','undefined','count','set','Content-Range','update','then','destroy','end','error','stack','name','send','index','map','WhatsappInteraction','rawAttributes','fieldName','type','key','getOptions','whatsapp','query','user','catch','params','model','filters','intersection','attributes','length','includeAll','include','options','find','create','body','describe','addMessage','WhatsappMessage','omit','getMessages','keys','fields','hasOwnProperty','nolimit','limit','order','sort','where','WhatsappInteractionId','filter','merge','$gte','findAll','rows','addTags','ids','spread','Tag','color','emit','whatsappInteractionTags:save','removeTags','download','unix','toString','root','server','files','tmp','join','attachments','format'];(function(_0x3421f8,_0x3e5d70){var _0x2d4e8a=function(_0x404bd5){while(--_0x404bd5){_0x3421f8['push'](_0x3421f8['shift']());}};_0x2d4e8a(++_0x3e5d70);}(_0x91ab,0x194));var _0xb91a=function(_0xe66cf2,_0x32ba5f){_0xe66cf2=_0xe66cf2-0x0;var _0x2d84e7=_0x91ab[_0xe66cf2];return _0x2d84e7;};'use strict';var rimraf=require(_0xb91a('0x0'));var zipdir=require('zip-dir');var moment=require(_0xb91a('0x1'));var BPromise=require('bluebird');var util=require('util');var path=require(_0xb91a('0x2'));var ejs=require(_0xb91a('0x3'));var fs=require('fs');var _=require(_0xb91a('0x4'));var Redis=require(_0xb91a('0x5'));var interaction=require(_0xb91a('0x6'));var qs=require(_0xb91a('0x7'));var pdf=require('../../components/export/pdf');var logger=require(_0xb91a('0x8'))('api');var config=require(_0xb91a('0x9'));var db=require(_0xb91a('0xa'))['db'];config['redis']=_[_0xb91a('0xb')](config['redis'],{'host':_0xb91a('0xc'),'port':0x18eb});var socket=require(_0xb91a('0xd'))(new Redis(config['redis']));require('./whatsappInteraction.socket')[_0xb91a('0xe')](socket);function respondWithStatusCode(_0x5350fa,_0x36152f){_0x36152f=_0x36152f||0xcc;return function(_0x2e1121){if(_0x2e1121){return _0x5350fa[_0xb91a('0xf')](_0x36152f);}return _0x5350fa[_0xb91a('0x10')](_0x36152f)['end']();};}function respondWithResult(_0x4407b7,_0x137cb2){_0x137cb2=_0x137cb2||0xc8;return function(_0x26214c){if(_0x26214c){return _0x4407b7[_0xb91a('0x10')](_0x137cb2)[_0xb91a('0x11')](_0x26214c);}};}function respondWithFilteredResult(_0x3d2cda,_0x1eb3ea){return function(_0x56e409){if(_0x56e409){var _0x38f46e=typeof _0x1eb3ea[_0xb91a('0x12')]===_0xb91a('0x13')&&typeof _0x1eb3ea['limit']===_0xb91a('0x13');var _0xdcb89c=_0x56e409[_0xb91a('0x14')];var _0x8ac259=_0x38f46e?0x0:_0x1eb3ea[_0xb91a('0x12')];var _0x4aea37=_0x38f46e?_0x56e409[_0xb91a('0x14')]:_0x1eb3ea[_0xb91a('0x12')]+_0x1eb3ea['limit'];var _0x16f943;if(_0x4aea37>=_0xdcb89c){_0x4aea37=_0xdcb89c;_0x16f943=0xc8;}else{_0x16f943=0xce;}_0x3d2cda[_0xb91a('0x10')](_0x16f943);return _0x3d2cda[_0xb91a('0x15')](_0xb91a('0x16'),_0x8ac259+'-'+_0x4aea37+'/'+_0xdcb89c)[_0xb91a('0x11')](_0x56e409);}return null;};}function saveUpdates(_0x447df9){return function(_0x19caaf){if(_0x19caaf){return _0x19caaf[_0xb91a('0x17')](_0x447df9)[_0xb91a('0x18')](function(_0x52c4cb){return _0x52c4cb;});}return null;};}function removeEntity(_0x32c20f){return function(_0x216d73){if(_0x216d73){return _0x216d73[_0xb91a('0x19')]()[_0xb91a('0x18')](function(){_0x32c20f[_0xb91a('0x10')](0xcc)[_0xb91a('0x1a')]();});}};}function handleEntityNotFound(_0x5051f9){return function(_0x3d5d27){if(!_0x3d5d27){_0x5051f9[_0xb91a('0xf')](0x194);}return _0x3d5d27;};}function handleError(_0x418b69,_0x14433a){_0x14433a=_0x14433a||0x1f4;return function(_0x50b920){logger[_0xb91a('0x1b')](_0x50b920[_0xb91a('0x1c')]);if(_0x50b920[_0xb91a('0x1d')]){delete _0x50b920['name'];}_0x418b69[_0xb91a('0x10')](_0x14433a)[_0xb91a('0x1e')](_0x50b920);};}exports[_0xb91a('0x1f')]=function(_0x3f2299,_0x18343e){var _0x5f5059={};var _0x4a53a3=_[_0xb91a('0x20')](db[_0xb91a('0x21')][_0xb91a('0x22')],function(_0x182c75){return{'name':_0x182c75[_0xb91a('0x23')],'type':_0x182c75[_0xb91a('0x24')][_0xb91a('0x25')]};});_0x5f5059=qs[_0xb91a('0x26')](_0x4a53a3,_0x3f2299);return interaction['findAll'](_0xb91a('0x27'),_0x3f2299[_0xb91a('0x28')],_0x3f2299[_0xb91a('0x29')],_0x5f5059,_0x4a53a3)[_0xb91a('0x18')](respondWithFilteredResult(_0x18343e,_0x5f5059))[_0xb91a('0x2a')](handleError(_0x18343e,null));};exports['show']=function(_0x2a453b,_0x39afdf){var _0xa99686={'raw':![],'where':{'id':_0x2a453b[_0xb91a('0x2b')]['id']}},_0x205353={};_0x205353[_0xb91a('0x2c')]=_['keys'](db[_0xb91a('0x21')][_0xb91a('0x22')]);_0x205353[_0xb91a('0x28')]=_['keys'](_0x2a453b['query']);_0x205353[_0xb91a('0x2d')]=_[_0xb91a('0x2e')](_0x205353[_0xb91a('0x2c')],_0x205353[_0xb91a('0x28')]);_0xa99686['attributes']=_['intersection'](_0x205353['model'],qs['fields'](_0x2a453b['query']['fields']));_0xa99686[_0xb91a('0x2f')]=_0xa99686[_0xb91a('0x2f')][_0xb91a('0x30')]?_0xa99686['attributes']:_0x205353[_0xb91a('0x2c')];if(_0x2a453b[_0xb91a('0x28')][_0xb91a('0x31')]){_0xa99686[_0xb91a('0x32')]=[{'all':!![]}];}_0xa99686=_['merge']({},_0xa99686,_0x2a453b[_0xb91a('0x33')]);return db[_0xb91a('0x21')][_0xb91a('0x34')](_0xa99686)[_0xb91a('0x18')](handleEntityNotFound(_0x39afdf,null))['then'](respondWithResult(_0x39afdf,null))['catch'](handleError(_0x39afdf,null));};exports[_0xb91a('0x35')]=function(_0x3faa81,_0x16ae20){return db[_0xb91a('0x21')]['create'](_0x3faa81[_0xb91a('0x36')],{})[_0xb91a('0x18')](respondWithResult(_0x16ae20,0xc9))[_0xb91a('0x2a')](handleError(_0x16ae20,null));};exports[_0xb91a('0x17')]=function(_0x592463,_0x19fa0e){if(_0x592463[_0xb91a('0x36')]['id']){delete _0x592463[_0xb91a('0x36')]['id'];}return db['WhatsappInteraction'][_0xb91a('0x34')]({'where':{'id':_0x592463[_0xb91a('0x2b')]['id']}})[_0xb91a('0x18')](handleEntityNotFound(_0x19fa0e,null))[_0xb91a('0x18')](saveUpdates(_0x592463[_0xb91a('0x36')],null))[_0xb91a('0x18')](respondWithResult(_0x19fa0e,null))[_0xb91a('0x2a')](handleError(_0x19fa0e,null));};exports[_0xb91a('0x19')]=function(_0x1c4736,_0x2b716e){return db['WhatsappInteraction']['find']({'where':{'id':_0x1c4736['params']['id']}})[_0xb91a('0x18')](handleEntityNotFound(_0x2b716e,null))['then'](removeEntity(_0x2b716e,null))[_0xb91a('0x2a')](handleError(_0x2b716e,null));};exports['describe']=function(_0x2e674c,_0x2a3c2f){return db[_0xb91a('0x21')][_0xb91a('0x37')]()[_0xb91a('0x18')](respondWithResult(_0x2a3c2f,null))[_0xb91a('0x2a')](handleError(_0x2a3c2f,null));};exports[_0xb91a('0x38')]=function(_0x53401d,_0x10e075){return db[_0xb91a('0x39')][_0xb91a('0x34')]({'where':{'id':_0x53401d[_0xb91a('0x2b')]['id']}})['then'](handleEntityNotFound(_0x10e075,null))[_0xb91a('0x18')](function(_0x6c241){if(_0x6c241){return _0x6c241['addMessage'](_0x53401d[_0xb91a('0x36')]['ids'],_[_0xb91a('0x3a')](_0x53401d[_0xb91a('0x36')],['ids','id'])||{});}})[_0xb91a('0x18')](respondWithResult(_0x10e075,null))[_0xb91a('0x2a')](handleError(_0x10e075,null));};exports[_0xb91a('0x3b')]=function(_0x488919,_0x50d1e7){var _0x2d0f7f={'raw':![],'where':{}};var _0x57192c={};var _0x2a213b={'count':0x0,'rows':[]};return db['WhatsappInteraction']['findOne']({'where':{'id':_0x488919['params']['id']}})[_0xb91a('0x18')](handleEntityNotFound(_0x50d1e7,null))[_0xb91a('0x18')](function(_0x35c380){if(_0x35c380){_0x57192c[_0xb91a('0x2c')]=_[_0xb91a('0x3c')](db['WhatsappMessage'][_0xb91a('0x22')]);_0x57192c[_0xb91a('0x28')]=_['keys'](_0x488919[_0xb91a('0x28')]);_0x57192c[_0xb91a('0x2d')]=_[_0xb91a('0x2e')](_0x57192c[_0xb91a('0x2c')],_0x57192c[_0xb91a('0x28')]);_0x2d0f7f[_0xb91a('0x2f')]=_['intersection'](_0x57192c[_0xb91a('0x2c')],qs['fields'](_0x488919[_0xb91a('0x28')][_0xb91a('0x3d')]));_0x2d0f7f[_0xb91a('0x2f')]=_0x2d0f7f[_0xb91a('0x2f')][_0xb91a('0x30')]?_0x2d0f7f[_0xb91a('0x2f')]:_0x57192c[_0xb91a('0x2c')];if(!_0x488919[_0xb91a('0x28')][_0xb91a('0x3e')](_0xb91a('0x3f'))){_0x2d0f7f[_0xb91a('0x40')]=qs['limit'](_0x488919[_0xb91a('0x28')]['limit']);_0x2d0f7f[_0xb91a('0x12')]=qs['offset'](_0x488919[_0xb91a('0x28')][_0xb91a('0x12')]);}_0x2d0f7f[_0xb91a('0x41')]=qs[_0xb91a('0x42')](_0x488919[_0xb91a('0x28')][_0xb91a('0x42')]);_0x2d0f7f['where']=qs[_0xb91a('0x2d')](_['pick'](_0x488919[_0xb91a('0x28')],_0x57192c[_0xb91a('0x2d')]));_0x2d0f7f[_0xb91a('0x43')][_0xb91a('0x44')]=_0x35c380['id'];if(_0x488919['query'][_0xb91a('0x45')]){_0x2d0f7f[_0xb91a('0x43')]=_[_0xb91a('0x46')](_0x2d0f7f['where'],{'$or':_[_0xb91a('0x20')](_0x2d0f7f['attributes'],function(_0x3040b0){var _0x511b08={};_0x511b08[_0x3040b0]={'$like':'%'+_0x488919[_0xb91a('0x28')][_0xb91a('0x45')]+'%'};return _0x511b08;})});}if(_0x488919['query']['$gte']){var _0x544c2d=_0x488919[_0xb91a('0x28')][_0xb91a('0x47')]['split'](',');var _0x4c3192={};_0x4c3192[_0x544c2d[0x0]]={'$gte':moment(_0x544c2d[0x1])['format']('YYYY-MM-DD\x20HH:mm:ss')};_0x2d0f7f['where']=_['merge'](_0x2d0f7f['where'],_0x4c3192);}_0x2d0f7f=_[_0xb91a('0x46')]({},_0x2d0f7f,_0x488919[_0xb91a('0x33')]);return db[_0xb91a('0x39')][_0xb91a('0x14')]({'where':_0x2d0f7f[_0xb91a('0x43')]})[_0xb91a('0x18')](function(_0x1e6edb){_0x2a213b[_0xb91a('0x14')]=_0x1e6edb;if(_0x488919[_0xb91a('0x28')]['includeAll']){_0x2d0f7f['include']=[{'all':!![]}];}return db[_0xb91a('0x39')][_0xb91a('0x48')](_0x2d0f7f);})[_0xb91a('0x18')](function(_0x32f5b1){_0x2a213b[_0xb91a('0x49')]=_0x32f5b1;return _0x2a213b;});}})[_0xb91a('0x18')](respondWithFilteredResult(_0x50d1e7,_0x2d0f7f))[_0xb91a('0x2a')](handleError(_0x50d1e7,null));};exports[_0xb91a('0x4a')]=function(_0x19e3a7,_0x58aedf){return db[_0xb91a('0x21')][_0xb91a('0x34')]({'where':{'id':_0x19e3a7[_0xb91a('0x2b')]['id']}})[_0xb91a('0x18')](handleEntityNotFound(_0x58aedf,null))[_0xb91a('0x18')](function(_0x1dd928){if(_0x1dd928){return _0x1dd928['setTags'](_0x19e3a7[_0xb91a('0x36')][_0xb91a('0x4b')],_[_0xb91a('0x3a')](_0x19e3a7['body'],[_0xb91a('0x4b'),'id'])||{})[_0xb91a('0x4c')](function(){return db[_0xb91a('0x4d')]['findAll']({'attributes':['id',_0xb91a('0x1d'),_0xb91a('0x4e')],'where':{'id':_0x19e3a7[_0xb91a('0x36')]['ids']}});})[_0xb91a('0x18')](function(_0x21eee1){socket[_0xb91a('0x4f')](_0xb91a('0x50'),{'id':Number(_0x19e3a7[_0xb91a('0x2b')]['id']),'tags':_0x21eee1||[]});return{'id':Number(_0x19e3a7[_0xb91a('0x2b')]['id']),'tags':_0x21eee1||[]};});}})['then'](respondWithResult(_0x58aedf,null))['catch'](handleError(_0x58aedf,null));};exports[_0xb91a('0x51')]=function(_0x343c36,_0x538af4){return db[_0xb91a('0x21')]['find']({'where':{'id':_0x343c36[_0xb91a('0x2b')]['id']}})[_0xb91a('0x18')](handleEntityNotFound(_0x538af4,null))[_0xb91a('0x18')](function(_0x598ae6){if(_0x598ae6){return _0x598ae6[_0xb91a('0x51')](_0x343c36[_0xb91a('0x28')]['ids']);}})[_0xb91a('0x18')](respondWithStatusCode(_0x538af4,null))[_0xb91a('0x2a')](handleError(_0x538af4,null));};exports[_0xb91a('0x52')]=function(_0x16537e,_0x150d0c){var _0x1251ec=moment()[_0xb91a('0x53')]()[_0xb91a('0x54')]();var _0x3b12ae=path['join'](config[_0xb91a('0x55')],_0xb91a('0x56'),_0xb91a('0x57'),_0xb91a('0x58'));var _0x119622=path[_0xb91a('0x59')](config[_0xb91a('0x55')],_0xb91a('0x56'),_0xb91a('0x57'),_0xb91a('0x5a'));var _0x36ed91=path[_0xb91a('0x59')](_0x3b12ae,_0x1251ec);var _0x2c2af1=util[_0xb91a('0x5b')]('transcript-%d-%s.zip',_0x16537e['params']['id'],_0x1251ec);var _0x157deb=path[_0xb91a('0x59')](_0x3b12ae,_0x2c2af1);var _0x5b148c=[];_0x5b148c[_0xb91a('0x5c')]({'model':db['User'],'as':'User','attributes':['id',_0xb91a('0x5d')],'raw':!![]});_0x5b148c['push']({'model':db[_0xb91a('0x5e')],'as':_0xb91a('0x5f'),'attributes':['id','firstName',_0xb91a('0x60')],'raw':!![]});if(_0x16537e['query'][_0xb91a('0x5a')]){_0x5b148c[_0xb91a('0x5c')]({'model':db['Attachment'],'as':'Attachment','raw':!![]});}var _0x525dfd=[{'model':db[_0xb91a('0x39')],'as':_0xb91a('0x61'),'attributes':['id',_0xb91a('0x36'),_0xb91a('0x62'),'direction',_0xb91a('0x63'),'read'],'include':_0x5b148c}];_0x525dfd['push']({'model':db[_0xb91a('0x64')],'as':'Account','attributes':['id',_0xb91a('0x1d')]});_0x525dfd[_0xb91a('0x5c')]({'model':db[_0xb91a('0x65')],'as':_0xb91a('0x66'),'attributes':['id',_0xb91a('0x5d')]});return db[_0xb91a('0x21')][_0xb91a('0x34')]({'where':{'id':_0x16537e[_0xb91a('0x2b')]['id']},'include':_0x525dfd})[_0xb91a('0x18')](handleEntityNotFound(_0x150d0c,null))['then'](function(_0x170159){if(_0x170159){var _0x484939=_0x170159[_0xb91a('0x67')]({'plain':!![]});fs[_0xb91a('0x68')](_0x36ed91);var _0x5ccc3d={'channel':_0xb91a('0x69'),'account':_0x484939['Account'][_0xb91a('0x1d')],'agent':_0x484939['Owner']?_0x484939['Owner'][_0xb91a('0x5d')]:'N.A.','createdAt':moment(_0x484939['createdAt'])[_0xb91a('0x5b')](_0xb91a('0x6a'))['toString'](),'closedAt':_0x484939[_0xb91a('0x6b')]?moment(_0x484939[_0xb91a('0x6c')])[_0xb91a('0x5b')](_0xb91a('0x6a'))['toString']():'','disposition':_0x484939['disposition'],'messages':_(_0x484939[_0xb91a('0x61')])['filter']({'secret':![]})[_0xb91a('0x20')](function(_0x9ac739){if(_0x9ac739[_0xb91a('0x6d')]){var _0x2e2fab=path[_0xb91a('0x59')](_0x119622,_0x9ac739['Attachment'][_0xb91a('0x6e')]);if(fs['existsSync'](_0x2e2fab)){fs[_0xb91a('0x6f')](_0x2e2fab)[_0xb91a('0x70')](fs['createWriteStream'](path[_0xb91a('0x59')](_0x36ed91,_0x9ac739[_0xb91a('0x6d')][_0xb91a('0x6e')])));}}return{'date':moment(_0x9ac739[_0xb91a('0x62')])[_0xb91a('0x5b')](_0xb91a('0x6a'))[_0xb91a('0x54')](),'sender':_0x9ac739[_0xb91a('0x71')]==='out'?_0x9ac739[_0xb91a('0x65')]?_0x9ac739[_0xb91a('0x65')][_0xb91a('0x5d')]:_0xb91a('0x72'):_0x9ac739[_0xb91a('0x5f')][_0xb91a('0x73')]+(_0x9ac739[_0xb91a('0x5f')][_0xb91a('0x60')]?'\x20'+_0x9ac739[_0xb91a('0x5f')][_0xb91a('0x60')]:''),'body':_0x9ac739[_0xb91a('0x6d')]?_0x9ac739[_0xb91a('0x6d')][_0xb91a('0x6e')]:_0x9ac739[_0xb91a('0x36')],'direction':_0x9ac739[_0xb91a('0x71')]===_0xb91a('0x74')?'A':'C','secret':_0x9ac739[_0xb91a('0x63')],'read':_0x9ac739[_0xb91a('0x75')],'attachment':_0x9ac739[_0xb91a('0x6d')]};})['value']()};return ejs[_0xb91a('0x76')](path[_0xb91a('0x59')](config['root'],_0xb91a('0x56'),'views',_0xb91a('0x77')),{'interaction':_0x5ccc3d})[_0xb91a('0x18')](function(_0x1914fd){var _0x46df07=path['join'](_0x36ed91,_0xb91a('0x78')+_0x484939['id']+'-'+_0x1251ec+_0xb91a('0x79'));var _0x4d06a0={'path':_0x46df07,'channel':_0xb91a('0x69'),'interactionId':_0x484939['id']};return pdf[_0xb91a('0x7a')](_0x1914fd,_0x4d06a0);})[_0xb91a('0x18')](function(){return new BPromise(function(_0x1267c4,_0x4650ed){zipdir(_0x36ed91,{'saveTo':_0x157deb},function(_0x4a027c,_0x3f238a){if(_0x4a027c)return _0x4650ed(_0x4a027c);return _0x1267c4(_0x3f238a);});})[_0xb91a('0x18')](function(){return new BPromise(function(_0x23eaca,_0x16e431){rimraf(_0x36ed91,function(_0x153975){if(_0x153975)_0x16e431(_0x153975);return _0x23eaca();});});})[_0xb91a('0x18')](function(){return _0x150d0c[_0xb91a('0x52')](_0x157deb,_0x2c2af1,function(_0x42754f){if(_0x42754f){console[_0xb91a('0x7b')]('err',_0x42754f);}else{fs['unlinkSync'](_0x157deb);}});});});}else{return _0x150d0c[_0xb91a('0xf')](0xc8);}})[_0xb91a('0x2a')](handleError(_0x150d0c,null));};
\ No newline at end of file