Built motion from commit b0a9a629.|2.6.33
[motion2.git] / server / api / whatsappInteraction / whatsappInteraction.controller.js
index 5cf69c4..0aca277 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xbb4d=['ioredis','../../components/interaction/service','../../components/parsers/qs','../../config/logger','api','../../mysqldb','redis','defaults','localhost','socket.io-emitter','./whatsappInteraction.socket','register','sendStatus','status','json','offset','undefined','limit','count','set','Content-Range','update','then','destroy','end','stack','name','send','index','map','WhatsappInteraction','rawAttributes','fieldName','type','key','findAll','whatsapp','query','user','catch','show','params','model','keys','filters','fields','attributes','length','include','merge','options','find','create','body','describe','addMessage','ids','omit','WhatsappMessage','intersection','hasOwnProperty','nolimit','order','sort','where','pick','WhatsappInteractionId','filter','$gte','split','YYYY-MM-DD\x20HH:mm:ss','includeAll','rows','addTags','spread','Tag','color','emit','removeTags','unix','join','files','tmp','server','attachments','push','User','fullname','CmContact','Contact','firstName','lastName','Attachment','Messages','Owner','get','Account','toString','closed','closedAt','format','disposition','basename','existsSync','createReadStream','pipe','createWriteStream','createdAt','direction','out','System','value','transcript-','.pdf','log','err','rimraf','zip-dir','util','path','ejs','lodash'];(function(_0x74a7e5,_0x1326dd){var _0x4e4c41=function(_0x443a74){while(--_0x443a74){_0x74a7e5['push'](_0x74a7e5['shift']());}};_0x4e4c41(++_0x1326dd);}(_0xbb4d,0x74));var _0xdbb4=function(_0x31b4e1,_0x4cbd36){_0x31b4e1=_0x31b4e1-0x0;var _0x149492=_0xbb4d[_0x31b4e1];return _0x149492;};'use strict';var rimraf=require(_0xdbb4('0x0'));var zipdir=require(_0xdbb4('0x1'));var moment=require('moment');var BPromise=require('bluebird');var util=require(_0xdbb4('0x2'));var path=require(_0xdbb4('0x3'));var ejs=require(_0xdbb4('0x4'));var fs=require('fs');var _=require(_0xdbb4('0x5'));var Redis=require(_0xdbb4('0x6'));var interaction=require(_0xdbb4('0x7'));var qs=require(_0xdbb4('0x8'));var pdf=require('../../components/export/pdf');var logger=require(_0xdbb4('0x9'))(_0xdbb4('0xa'));var config=require('../../config/environment');var db=require(_0xdbb4('0xb'))['db'];config[_0xdbb4('0xc')]=_[_0xdbb4('0xd')](config[_0xdbb4('0xc')],{'host':_0xdbb4('0xe'),'port':0x18eb});var socket=require(_0xdbb4('0xf'))(new Redis(config[_0xdbb4('0xc')]));require(_0xdbb4('0x10'))[_0xdbb4('0x11')](socket);function respondWithStatusCode(_0x20638c,_0xf32bb){_0xf32bb=_0xf32bb||0xcc;return function(_0x292278){if(_0x292278){return _0x20638c[_0xdbb4('0x12')](_0xf32bb);}return _0x20638c[_0xdbb4('0x13')](_0xf32bb)['end']();};}function respondWithResult(_0x5358c5,_0x258335){_0x258335=_0x258335||0xc8;return function(_0x565d49){if(_0x565d49){return _0x5358c5['status'](_0x258335)[_0xdbb4('0x14')](_0x565d49);}};}function respondWithFilteredResult(_0x59db0f,_0x21229e){return function(_0x534387){if(_0x534387){var _0x8fb36e=typeof _0x21229e[_0xdbb4('0x15')]===_0xdbb4('0x16')&&typeof _0x21229e[_0xdbb4('0x17')]===_0xdbb4('0x16');var _0x181a09=_0x534387[_0xdbb4('0x18')];var _0x18418c=_0x8fb36e?0x0:_0x21229e[_0xdbb4('0x15')];var _0x2a6883=_0x8fb36e?_0x534387[_0xdbb4('0x18')]:_0x21229e[_0xdbb4('0x15')]+_0x21229e[_0xdbb4('0x17')];var _0x57fc46;if(_0x2a6883>=_0x181a09){_0x2a6883=_0x181a09;_0x57fc46=0xc8;}else{_0x57fc46=0xce;}_0x59db0f[_0xdbb4('0x13')](_0x57fc46);return _0x59db0f[_0xdbb4('0x19')](_0xdbb4('0x1a'),_0x18418c+'-'+_0x2a6883+'/'+_0x181a09)['json'](_0x534387);}return null;};}function saveUpdates(_0x19c72c){return function(_0xbfbee5){if(_0xbfbee5){return _0xbfbee5[_0xdbb4('0x1b')](_0x19c72c)[_0xdbb4('0x1c')](function(_0x4a6a5a){return _0x4a6a5a;});}return null;};}function removeEntity(_0x476b21){return function(_0x44881c){if(_0x44881c){return _0x44881c[_0xdbb4('0x1d')]()[_0xdbb4('0x1c')](function(){_0x476b21['status'](0xcc)[_0xdbb4('0x1e')]();});}};}function handleEntityNotFound(_0x28d38f){return function(_0x578ae6){if(!_0x578ae6){_0x28d38f[_0xdbb4('0x12')](0x194);}return _0x578ae6;};}function handleError(_0x581803,_0x9a7077){_0x9a7077=_0x9a7077||0x1f4;return function(_0x20cdd0){logger['error'](_0x20cdd0[_0xdbb4('0x1f')]);if(_0x20cdd0[_0xdbb4('0x20')]){delete _0x20cdd0['name'];}_0x581803[_0xdbb4('0x13')](_0x9a7077)[_0xdbb4('0x21')](_0x20cdd0);};}exports[_0xdbb4('0x22')]=function(_0x51b292,_0x2b1eee){var _0x1b93ef={};var _0x3b5e44=_[_0xdbb4('0x23')](db[_0xdbb4('0x24')][_0xdbb4('0x25')],function(_0x4f8271){return{'name':_0x4f8271[_0xdbb4('0x26')],'type':_0x4f8271[_0xdbb4('0x27')][_0xdbb4('0x28')]};});_0x1b93ef=qs['getOptions'](_0x3b5e44,_0x51b292);return interaction[_0xdbb4('0x29')](_0xdbb4('0x2a'),_0x51b292[_0xdbb4('0x2b')],_0x51b292[_0xdbb4('0x2c')],_0x1b93ef,_0x3b5e44)[_0xdbb4('0x1c')](respondWithFilteredResult(_0x2b1eee,_0x1b93ef))[_0xdbb4('0x2d')](handleError(_0x2b1eee,null));};exports[_0xdbb4('0x2e')]=function(_0x3ba49c,_0x4a46ab){var _0xd8e200={'raw':![],'where':{'id':_0x3ba49c[_0xdbb4('0x2f')]['id']}},_0x6cd095={};_0x6cd095[_0xdbb4('0x30')]=_['keys'](db[_0xdbb4('0x24')][_0xdbb4('0x25')]);_0x6cd095[_0xdbb4('0x2b')]=_[_0xdbb4('0x31')](_0x3ba49c[_0xdbb4('0x2b')]);_0x6cd095[_0xdbb4('0x32')]=_['intersection'](_0x6cd095['model'],_0x6cd095[_0xdbb4('0x2b')]);_0xd8e200['attributes']=_['intersection'](_0x6cd095[_0xdbb4('0x30')],qs['fields'](_0x3ba49c['query'][_0xdbb4('0x33')]));_0xd8e200['attributes']=_0xd8e200[_0xdbb4('0x34')][_0xdbb4('0x35')]?_0xd8e200[_0xdbb4('0x34')]:_0x6cd095[_0xdbb4('0x30')];if(_0x3ba49c[_0xdbb4('0x2b')]['includeAll']){_0xd8e200[_0xdbb4('0x36')]=[{'all':!![]}];}_0xd8e200=_[_0xdbb4('0x37')]({},_0xd8e200,_0x3ba49c[_0xdbb4('0x38')]);return db['WhatsappInteraction'][_0xdbb4('0x39')](_0xd8e200)[_0xdbb4('0x1c')](handleEntityNotFound(_0x4a46ab,null))[_0xdbb4('0x1c')](respondWithResult(_0x4a46ab,null))['catch'](handleError(_0x4a46ab,null));};exports[_0xdbb4('0x3a')]=function(_0x578c28,_0x19eeda){return db[_0xdbb4('0x24')]['create'](_0x578c28[_0xdbb4('0x3b')],{})[_0xdbb4('0x1c')](respondWithResult(_0x19eeda,0xc9))[_0xdbb4('0x2d')](handleError(_0x19eeda,null));};exports[_0xdbb4('0x1b')]=function(_0x313e5b,_0x12c3a8){if(_0x313e5b[_0xdbb4('0x3b')]['id']){delete _0x313e5b[_0xdbb4('0x3b')]['id'];}return db[_0xdbb4('0x24')][_0xdbb4('0x39')]({'where':{'id':_0x313e5b[_0xdbb4('0x2f')]['id']}})[_0xdbb4('0x1c')](handleEntityNotFound(_0x12c3a8,null))[_0xdbb4('0x1c')](saveUpdates(_0x313e5b[_0xdbb4('0x3b')],null))[_0xdbb4('0x1c')](respondWithResult(_0x12c3a8,null))['catch'](handleError(_0x12c3a8,null));};exports['destroy']=function(_0xa2f2,_0x3d231d){return db['WhatsappInteraction'][_0xdbb4('0x39')]({'where':{'id':_0xa2f2[_0xdbb4('0x2f')]['id']}})[_0xdbb4('0x1c')](handleEntityNotFound(_0x3d231d,null))['then'](removeEntity(_0x3d231d,null))['catch'](handleError(_0x3d231d,null));};exports[_0xdbb4('0x3c')]=function(_0x567948,_0x2c8ef8){return db[_0xdbb4('0x24')][_0xdbb4('0x3c')]()['then'](respondWithResult(_0x2c8ef8,null))[_0xdbb4('0x2d')](handleError(_0x2c8ef8,null));};exports[_0xdbb4('0x3d')]=function(_0x1b136a,_0x417f6d){return db['WhatsappMessage']['find']({'where':{'id':_0x1b136a[_0xdbb4('0x2f')]['id']}})[_0xdbb4('0x1c')](handleEntityNotFound(_0x417f6d,null))[_0xdbb4('0x1c')](function(_0x5a4927){if(_0x5a4927){return _0x5a4927[_0xdbb4('0x3d')](_0x1b136a[_0xdbb4('0x3b')][_0xdbb4('0x3e')],_[_0xdbb4('0x3f')](_0x1b136a[_0xdbb4('0x3b')],[_0xdbb4('0x3e'),'id'])||{});}})[_0xdbb4('0x1c')](respondWithResult(_0x417f6d,null))[_0xdbb4('0x2d')](handleError(_0x417f6d,null));};exports['getMessages']=function(_0x513581,_0x4301d6){var _0x28519b={'raw':![],'where':{}};var _0x1a8024={};var _0x5b2798={'count':0x0,'rows':[]};return db[_0xdbb4('0x24')]['findOne']({'where':{'id':_0x513581['params']['id']}})[_0xdbb4('0x1c')](handleEntityNotFound(_0x4301d6,null))[_0xdbb4('0x1c')](function(_0xee059){if(_0xee059){_0x1a8024[_0xdbb4('0x30')]=_[_0xdbb4('0x31')](db[_0xdbb4('0x40')][_0xdbb4('0x25')]);_0x1a8024[_0xdbb4('0x2b')]=_['keys'](_0x513581[_0xdbb4('0x2b')]);_0x1a8024[_0xdbb4('0x32')]=_[_0xdbb4('0x41')](_0x1a8024[_0xdbb4('0x30')],_0x1a8024[_0xdbb4('0x2b')]);_0x28519b[_0xdbb4('0x34')]=_['intersection'](_0x1a8024[_0xdbb4('0x30')],qs[_0xdbb4('0x33')](_0x513581['query'][_0xdbb4('0x33')]));_0x28519b[_0xdbb4('0x34')]=_0x28519b[_0xdbb4('0x34')]['length']?_0x28519b[_0xdbb4('0x34')]:_0x1a8024[_0xdbb4('0x30')];if(!_0x513581[_0xdbb4('0x2b')][_0xdbb4('0x42')](_0xdbb4('0x43'))){_0x28519b[_0xdbb4('0x17')]=qs[_0xdbb4('0x17')](_0x513581[_0xdbb4('0x2b')][_0xdbb4('0x17')]);_0x28519b[_0xdbb4('0x15')]=qs[_0xdbb4('0x15')](_0x513581[_0xdbb4('0x2b')][_0xdbb4('0x15')]);}_0x28519b[_0xdbb4('0x44')]=qs[_0xdbb4('0x45')](_0x513581['query']['sort']);_0x28519b[_0xdbb4('0x46')]=qs[_0xdbb4('0x32')](_[_0xdbb4('0x47')](_0x513581['query'],_0x1a8024['filters']));_0x28519b['where'][_0xdbb4('0x48')]=_0xee059['id'];if(_0x513581[_0xdbb4('0x2b')][_0xdbb4('0x49')]){_0x28519b[_0xdbb4('0x46')]=_[_0xdbb4('0x37')](_0x28519b[_0xdbb4('0x46')],{'$or':_[_0xdbb4('0x23')](_0x28519b['attributes'],function(_0x1cbdde){var _0x11979a={};_0x11979a[_0x1cbdde]={'$like':'%'+_0x513581[_0xdbb4('0x2b')][_0xdbb4('0x49')]+'%'};return _0x11979a;})});}if(_0x513581[_0xdbb4('0x2b')][_0xdbb4('0x4a')]){var _0x227228=_0x513581[_0xdbb4('0x2b')][_0xdbb4('0x4a')][_0xdbb4('0x4b')](',');var _0x18fa90={};_0x18fa90[_0x227228[0x0]]={'$gte':moment(_0x227228[0x1])['format'](_0xdbb4('0x4c'))};_0x28519b[_0xdbb4('0x46')]=_[_0xdbb4('0x37')](_0x28519b[_0xdbb4('0x46')],_0x18fa90);}_0x28519b=_[_0xdbb4('0x37')]({},_0x28519b,_0x513581[_0xdbb4('0x38')]);return db[_0xdbb4('0x40')]['count']({'where':_0x28519b[_0xdbb4('0x46')]})[_0xdbb4('0x1c')](function(_0x16be61){_0x5b2798[_0xdbb4('0x18')]=_0x16be61;if(_0x513581[_0xdbb4('0x2b')][_0xdbb4('0x4d')]){_0x28519b[_0xdbb4('0x36')]=[{'all':!![]}];}return db[_0xdbb4('0x40')][_0xdbb4('0x29')](_0x28519b);})[_0xdbb4('0x1c')](function(_0x860e2e){_0x5b2798[_0xdbb4('0x4e')]=_0x860e2e;return _0x5b2798;});}})[_0xdbb4('0x1c')](respondWithFilteredResult(_0x4301d6,_0x28519b))[_0xdbb4('0x2d')](handleError(_0x4301d6,null));};exports[_0xdbb4('0x4f')]=function(_0x503e53,_0x216ffa){return db[_0xdbb4('0x24')][_0xdbb4('0x39')]({'where':{'id':_0x503e53[_0xdbb4('0x2f')]['id']}})[_0xdbb4('0x1c')](handleEntityNotFound(_0x216ffa,null))[_0xdbb4('0x1c')](function(_0x51170f){if(_0x51170f){return _0x51170f['setTags'](_0x503e53[_0xdbb4('0x3b')][_0xdbb4('0x3e')],_['omit'](_0x503e53['body'],['ids','id'])||{})[_0xdbb4('0x50')](function(){return db[_0xdbb4('0x51')][_0xdbb4('0x29')]({'attributes':['id',_0xdbb4('0x20'),_0xdbb4('0x52')],'where':{'id':_0x503e53['body']['ids']}});})[_0xdbb4('0x1c')](function(_0x3ae339){socket[_0xdbb4('0x53')]('whatsappInteractionTags:save',{'id':Number(_0x503e53[_0xdbb4('0x2f')]['id']),'tags':_0x3ae339||[]});return{'id':Number(_0x503e53[_0xdbb4('0x2f')]['id']),'tags':_0x3ae339||[]};});}})[_0xdbb4('0x1c')](respondWithResult(_0x216ffa,null))[_0xdbb4('0x2d')](handleError(_0x216ffa,null));};exports[_0xdbb4('0x54')]=function(_0x122023,_0x4e2c48){return db[_0xdbb4('0x24')][_0xdbb4('0x39')]({'where':{'id':_0x122023[_0xdbb4('0x2f')]['id']}})[_0xdbb4('0x1c')](handleEntityNotFound(_0x4e2c48,null))['then'](function(_0x21a3ed){if(_0x21a3ed){return _0x21a3ed[_0xdbb4('0x54')](_0x122023[_0xdbb4('0x2b')][_0xdbb4('0x3e')]);}})[_0xdbb4('0x1c')](respondWithStatusCode(_0x4e2c48,null))[_0xdbb4('0x2d')](handleError(_0x4e2c48,null));};exports['download']=function(_0x5d238f,_0x4fc484){var _0x1e3549=moment()[_0xdbb4('0x55')]()['toString']();var _0x2288e5=path[_0xdbb4('0x56')](config['root'],'server',_0xdbb4('0x57'),_0xdbb4('0x58'));var _0x1bcce7=path[_0xdbb4('0x56')](config['root'],_0xdbb4('0x59'),_0xdbb4('0x57'),_0xdbb4('0x5a'));var _0x2d38a4=path['join'](_0x2288e5,_0x1e3549);var _0x4ca7d4=util['format']('transcript-%d-%s.zip',_0x5d238f[_0xdbb4('0x2f')]['id'],_0x1e3549);var _0x43172c=path[_0xdbb4('0x56')](_0x2288e5,_0x4ca7d4);var _0x17106c=[];_0x17106c[_0xdbb4('0x5b')]({'model':db[_0xdbb4('0x5c')],'as':_0xdbb4('0x5c'),'attributes':['id',_0xdbb4('0x5d')],'raw':!![]});_0x17106c[_0xdbb4('0x5b')]({'model':db[_0xdbb4('0x5e')],'as':_0xdbb4('0x5f'),'attributes':['id',_0xdbb4('0x60'),_0xdbb4('0x61')],'raw':!![]});if(_0x5d238f[_0xdbb4('0x2b')][_0xdbb4('0x5a')]){_0x17106c[_0xdbb4('0x5b')]({'model':db[_0xdbb4('0x62')],'as':'Attachment','raw':!![]});}var _0x390d30=[{'model':db['WhatsappMessage'],'as':_0xdbb4('0x63'),'attributes':['id','body','createdAt','direction','secret','read'],'include':_0x17106c}];_0x390d30['push']({'model':db['WhatsappAccount'],'as':'Account','attributes':['id',_0xdbb4('0x20')]});_0x390d30['push']({'model':db[_0xdbb4('0x5c')],'as':_0xdbb4('0x64'),'attributes':['id',_0xdbb4('0x5d')]});return db[_0xdbb4('0x24')]['find']({'where':{'id':_0x5d238f[_0xdbb4('0x2f')]['id']},'include':_0x390d30})[_0xdbb4('0x1c')](handleEntityNotFound(_0x4fc484,null))[_0xdbb4('0x1c')](function(_0x1553e7){if(_0x1553e7){var _0x37b5aa=_0x1553e7[_0xdbb4('0x65')]({'plain':!![]});fs['mkdirSync'](_0x2d38a4);var _0x3ed4f2={'channel':'Whatsapp','account':_0x37b5aa[_0xdbb4('0x66')][_0xdbb4('0x20')],'agent':_0x37b5aa[_0xdbb4('0x64')]?_0x37b5aa[_0xdbb4('0x64')][_0xdbb4('0x5d')]:'N.A.','createdAt':moment(_0x37b5aa['createdAt'])['format']('YYYY-MM-DD\x20HH:mm:ss')[_0xdbb4('0x67')](),'closedAt':_0x37b5aa[_0xdbb4('0x68')]?moment(_0x37b5aa[_0xdbb4('0x69')])[_0xdbb4('0x6a')](_0xdbb4('0x4c'))[_0xdbb4('0x67')]():'','disposition':_0x37b5aa[_0xdbb4('0x6b')],'messages':_(_0x37b5aa[_0xdbb4('0x63')])['filter']({'secret':![]})[_0xdbb4('0x23')](function(_0x470e5f){if(_0x470e5f['Attachment']){var _0x30e40d=path[_0xdbb4('0x56')](_0x1bcce7,_0x470e5f[_0xdbb4('0x62')][_0xdbb4('0x6c')]);if(fs[_0xdbb4('0x6d')](_0x30e40d)){fs[_0xdbb4('0x6e')](_0x30e40d)[_0xdbb4('0x6f')](fs[_0xdbb4('0x70')](path[_0xdbb4('0x56')](_0x2d38a4,_0x470e5f[_0xdbb4('0x62')][_0xdbb4('0x6c')])));}}return{'date':moment(_0x470e5f[_0xdbb4('0x71')])[_0xdbb4('0x6a')](_0xdbb4('0x4c'))['toString'](),'sender':_0x470e5f[_0xdbb4('0x72')]===_0xdbb4('0x73')?_0x470e5f[_0xdbb4('0x5c')]?_0x470e5f[_0xdbb4('0x5c')][_0xdbb4('0x5d')]:_0xdbb4('0x74'):_0x470e5f[_0xdbb4('0x5f')][_0xdbb4('0x60')]+(_0x470e5f[_0xdbb4('0x5f')][_0xdbb4('0x61')]?'\x20'+_0x470e5f[_0xdbb4('0x5f')]['lastName']:''),'body':_0x470e5f[_0xdbb4('0x62')]?_0x470e5f['Attachment'][_0xdbb4('0x6c')]:_0x470e5f[_0xdbb4('0x3b')],'direction':_0x470e5f[_0xdbb4('0x72')]===_0xdbb4('0x73')?'A':'C','secret':_0x470e5f['secret'],'read':_0x470e5f['read'],'attachment':_0x470e5f[_0xdbb4('0x62')]};})[_0xdbb4('0x75')]()};return ejs['renderFile'](path['join'](config['root'],'server','views','downloadInteraction.ejs'),{'interaction':_0x3ed4f2})[_0xdbb4('0x1c')](function(_0x277f8c){var _0x21d5b3=path[_0xdbb4('0x56')](_0x2d38a4,_0xdbb4('0x76')+_0x37b5aa['id']+'-'+_0x1e3549+_0xdbb4('0x77'));var _0x3b3650={'path':_0x21d5b3,'channel':'Whatsapp','interactionId':_0x37b5aa['id']};return pdf['createPdfFromHTML'](_0x277f8c,_0x3b3650);})[_0xdbb4('0x1c')](function(){return new BPromise(function(_0x23be21,_0x3b61da){zipdir(_0x2d38a4,{'saveTo':_0x43172c},function(_0x59ebc7,_0x2ceb27){if(_0x59ebc7)return _0x3b61da(_0x59ebc7);return _0x23be21(_0x2ceb27);});})[_0xdbb4('0x1c')](function(){return new BPromise(function(_0x3ba6fe,_0x3fae0f){rimraf(_0x2d38a4,function(_0x5b3618){if(_0x5b3618)_0x3fae0f(_0x5b3618);return _0x3ba6fe();});});})[_0xdbb4('0x1c')](function(){return _0x4fc484['download'](_0x43172c,_0x4ca7d4,function(_0x59ec25){if(_0x59ec25){console[_0xdbb4('0x78')](_0xdbb4('0x79'),_0x59ec25);}else{fs['unlinkSync'](_0x43172c);}});});});}else{return _0x4fc484[_0xdbb4('0x12')](0xc8);}})[_0xdbb4('0x2d')](handleError(_0x4fc484,null));};
\ No newline at end of file
+var _0xfe70=['closedAt','disposition','createWriteStream','out','System','basename','value','renderFile','views','downloadInteraction.ejs','.pdf','log','rimraf','zip-dir','bluebird','util','path','ejs','../../components/interaction/service','../../components/parsers/qs','../../components/export/pdf','../../config/logger','api','../../config/environment','../../mysqldb','redis','defaults','localhost','./whatsappInteraction.socket','register','sendStatus','status','end','json','offset','undefined','count','limit','set','Content-Range','update','then','destroy','error','stack','name','send','index','map','rawAttributes','fieldName','key','findAll','query','user','params','WhatsappInteraction','keys','filters','model','attributes','intersection','fields','length','includeAll','include','options','find','catch','create','body','describe','ids','getMessages','findOne','hasOwnProperty','order','sort','where','pick','filter','$gte','format','YYYY-MM-DD\x20HH:mm:ss','merge','WhatsappMessage','addTags','omit','spread','Tag','color','emit','whatsappInteractionTags:save','removeTags','download','unix','join','root','server','files','tmp','attachments','transcript-%d-%s.zip','push','User','CmContact','Contact','firstName','lastName','Attachment','Messages','direction','secret','read','WhatsappAccount','Account','Owner','fullname','mkdirSync','N.A.','createdAt','toString','closed'];(function(_0x169790,_0x48aa33){var _0x4d0f36=function(_0x2a848d){while(--_0x2a848d){_0x169790['push'](_0x169790['shift']());}};_0x4d0f36(++_0x48aa33);}(_0xfe70,0x102));var _0x0fe7=function(_0x393500,_0x1037af){_0x393500=_0x393500-0x0;var _0x120d3b=_0xfe70[_0x393500];return _0x120d3b;};'use strict';var rimraf=require(_0x0fe7('0x0'));var zipdir=require(_0x0fe7('0x1'));var moment=require('moment');var BPromise=require(_0x0fe7('0x2'));var util=require(_0x0fe7('0x3'));var path=require(_0x0fe7('0x4'));var ejs=require(_0x0fe7('0x5'));var fs=require('fs');var _=require('lodash');var Redis=require('ioredis');var interaction=require(_0x0fe7('0x6'));var qs=require(_0x0fe7('0x7'));var pdf=require(_0x0fe7('0x8'));var logger=require(_0x0fe7('0x9'))(_0x0fe7('0xa'));var config=require(_0x0fe7('0xb'));var db=require(_0x0fe7('0xc'))['db'];config[_0x0fe7('0xd')]=_[_0x0fe7('0xe')](config[_0x0fe7('0xd')],{'host':_0x0fe7('0xf'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x0fe7('0xd')]));require(_0x0fe7('0x10'))[_0x0fe7('0x11')](socket);function respondWithStatusCode(_0x3f9c23,_0x6fb19c){_0x6fb19c=_0x6fb19c||0xcc;return function(_0x5db0fc){if(_0x5db0fc){return _0x3f9c23[_0x0fe7('0x12')](_0x6fb19c);}return _0x3f9c23[_0x0fe7('0x13')](_0x6fb19c)[_0x0fe7('0x14')]();};}function respondWithResult(_0x35ddd2,_0xa99399){_0xa99399=_0xa99399||0xc8;return function(_0xe83fd9){if(_0xe83fd9){return _0x35ddd2[_0x0fe7('0x13')](_0xa99399)[_0x0fe7('0x15')](_0xe83fd9);}};}function respondWithFilteredResult(_0x190323,_0x37f371){return function(_0x3fee6d){if(_0x3fee6d){var _0x47c520=typeof _0x37f371[_0x0fe7('0x16')]===_0x0fe7('0x17')&&typeof _0x37f371['limit']===_0x0fe7('0x17');var _0x31abcb=_0x3fee6d[_0x0fe7('0x18')];var _0x48100f=_0x47c520?0x0:_0x37f371[_0x0fe7('0x16')];var _0x4a27ed=_0x47c520?_0x3fee6d[_0x0fe7('0x18')]:_0x37f371[_0x0fe7('0x16')]+_0x37f371[_0x0fe7('0x19')];var _0xf37f37;if(_0x4a27ed>=_0x31abcb){_0x4a27ed=_0x31abcb;_0xf37f37=0xc8;}else{_0xf37f37=0xce;}_0x190323[_0x0fe7('0x13')](_0xf37f37);return _0x190323[_0x0fe7('0x1a')](_0x0fe7('0x1b'),_0x48100f+'-'+_0x4a27ed+'/'+_0x31abcb)[_0x0fe7('0x15')](_0x3fee6d);}return null;};}function saveUpdates(_0x1cf43f){return function(_0x4cb390){if(_0x4cb390){return _0x4cb390[_0x0fe7('0x1c')](_0x1cf43f)[_0x0fe7('0x1d')](function(_0x123875){return _0x123875;});}return null;};}function removeEntity(_0x325777){return function(_0x2efef8){if(_0x2efef8){return _0x2efef8[_0x0fe7('0x1e')]()[_0x0fe7('0x1d')](function(){_0x325777['status'](0xcc)['end']();});}};}function handleEntityNotFound(_0x32a479){return function(_0xf60d31){if(!_0xf60d31){_0x32a479[_0x0fe7('0x12')](0x194);}return _0xf60d31;};}function handleError(_0x7cd368,_0x534dd9){_0x534dd9=_0x534dd9||0x1f4;return function(_0x1ff208){logger[_0x0fe7('0x1f')](_0x1ff208[_0x0fe7('0x20')]);if(_0x1ff208['name']){delete _0x1ff208[_0x0fe7('0x21')];}_0x7cd368['status'](_0x534dd9)[_0x0fe7('0x22')](_0x1ff208);};}exports[_0x0fe7('0x23')]=function(_0x51c69b,_0x36f5a6){var _0x39a35b={};var _0x262146=_[_0x0fe7('0x24')](db['WhatsappInteraction'][_0x0fe7('0x25')],function(_0x34a3df){return{'name':_0x34a3df[_0x0fe7('0x26')],'type':_0x34a3df['type'][_0x0fe7('0x27')]};});_0x39a35b=qs['getOptions'](_0x262146,_0x51c69b);return interaction[_0x0fe7('0x28')]('whatsapp',_0x51c69b[_0x0fe7('0x29')],_0x51c69b[_0x0fe7('0x2a')],_0x39a35b,_0x262146)[_0x0fe7('0x1d')](respondWithFilteredResult(_0x36f5a6,_0x39a35b))['catch'](handleError(_0x36f5a6,null));};exports['show']=function(_0x1c25ae,_0x12b527){var _0x3e19ec={'raw':![],'where':{'id':_0x1c25ae[_0x0fe7('0x2b')]['id']}},_0x3388c9={};_0x3388c9['model']=_['keys'](db[_0x0fe7('0x2c')][_0x0fe7('0x25')]);_0x3388c9['query']=_[_0x0fe7('0x2d')](_0x1c25ae['query']);_0x3388c9[_0x0fe7('0x2e')]=_['intersection'](_0x3388c9[_0x0fe7('0x2f')],_0x3388c9['query']);_0x3e19ec[_0x0fe7('0x30')]=_[_0x0fe7('0x31')](_0x3388c9['model'],qs[_0x0fe7('0x32')](_0x1c25ae[_0x0fe7('0x29')][_0x0fe7('0x32')]));_0x3e19ec[_0x0fe7('0x30')]=_0x3e19ec[_0x0fe7('0x30')][_0x0fe7('0x33')]?_0x3e19ec[_0x0fe7('0x30')]:_0x3388c9[_0x0fe7('0x2f')];if(_0x1c25ae['query'][_0x0fe7('0x34')]){_0x3e19ec[_0x0fe7('0x35')]=[{'all':!![]}];}_0x3e19ec=_['merge']({},_0x3e19ec,_0x1c25ae[_0x0fe7('0x36')]);return db[_0x0fe7('0x2c')][_0x0fe7('0x37')](_0x3e19ec)['then'](handleEntityNotFound(_0x12b527,null))[_0x0fe7('0x1d')](respondWithResult(_0x12b527,null))[_0x0fe7('0x38')](handleError(_0x12b527,null));};exports[_0x0fe7('0x39')]=function(_0x1a14f4,_0xbbe2d){return db[_0x0fe7('0x2c')][_0x0fe7('0x39')](_0x1a14f4[_0x0fe7('0x3a')],{})[_0x0fe7('0x1d')](respondWithResult(_0xbbe2d,0xc9))[_0x0fe7('0x38')](handleError(_0xbbe2d,null));};exports[_0x0fe7('0x1c')]=function(_0x2994c2,_0x4be3ab){if(_0x2994c2['body']['id']){delete _0x2994c2[_0x0fe7('0x3a')]['id'];}return db[_0x0fe7('0x2c')][_0x0fe7('0x37')]({'where':{'id':_0x2994c2[_0x0fe7('0x2b')]['id']}})[_0x0fe7('0x1d')](handleEntityNotFound(_0x4be3ab,null))[_0x0fe7('0x1d')](saveUpdates(_0x2994c2['body'],null))['then'](respondWithResult(_0x4be3ab,null))['catch'](handleError(_0x4be3ab,null));};exports['destroy']=function(_0x56bedb,_0x2ab407){return db[_0x0fe7('0x2c')][_0x0fe7('0x37')]({'where':{'id':_0x56bedb['params']['id']}})['then'](handleEntityNotFound(_0x2ab407,null))[_0x0fe7('0x1d')](removeEntity(_0x2ab407,null))['catch'](handleError(_0x2ab407,null));};exports[_0x0fe7('0x3b')]=function(_0x4d733d,_0x427da7){return db[_0x0fe7('0x2c')][_0x0fe7('0x3b')]()[_0x0fe7('0x1d')](respondWithResult(_0x427da7,null))['catch'](handleError(_0x427da7,null));};exports['addMessage']=function(_0x40bd15,_0xd46358){return db['WhatsappMessage'][_0x0fe7('0x37')]({'where':{'id':_0x40bd15[_0x0fe7('0x2b')]['id']}})[_0x0fe7('0x1d')](handleEntityNotFound(_0xd46358,null))[_0x0fe7('0x1d')](function(_0x33efcf){if(_0x33efcf){return _0x33efcf['addMessage'](_0x40bd15[_0x0fe7('0x3a')]['ids'],_['omit'](_0x40bd15[_0x0fe7('0x3a')],[_0x0fe7('0x3c'),'id'])||{});}})[_0x0fe7('0x1d')](respondWithResult(_0xd46358,null))[_0x0fe7('0x38')](handleError(_0xd46358,null));};exports[_0x0fe7('0x3d')]=function(_0x45f206,_0x532298){var _0x8623b2={'raw':![],'where':{}};var _0x446380={};var _0x4ec809={'count':0x0,'rows':[]};return db[_0x0fe7('0x2c')][_0x0fe7('0x3e')]({'where':{'id':_0x45f206[_0x0fe7('0x2b')]['id']}})['then'](handleEntityNotFound(_0x532298,null))[_0x0fe7('0x1d')](function(_0x14dbd6){if(_0x14dbd6){_0x446380['model']=_[_0x0fe7('0x2d')](db['WhatsappMessage'][_0x0fe7('0x25')]);_0x446380[_0x0fe7('0x29')]=_['keys'](_0x45f206[_0x0fe7('0x29')]);_0x446380[_0x0fe7('0x2e')]=_[_0x0fe7('0x31')](_0x446380['model'],_0x446380[_0x0fe7('0x29')]);_0x8623b2[_0x0fe7('0x30')]=_['intersection'](_0x446380[_0x0fe7('0x2f')],qs[_0x0fe7('0x32')](_0x45f206[_0x0fe7('0x29')][_0x0fe7('0x32')]));_0x8623b2[_0x0fe7('0x30')]=_0x8623b2['attributes']['length']?_0x8623b2[_0x0fe7('0x30')]:_0x446380[_0x0fe7('0x2f')];if(!_0x45f206[_0x0fe7('0x29')][_0x0fe7('0x3f')]('nolimit')){_0x8623b2[_0x0fe7('0x19')]=qs['limit'](_0x45f206[_0x0fe7('0x29')][_0x0fe7('0x19')]);_0x8623b2[_0x0fe7('0x16')]=qs['offset'](_0x45f206[_0x0fe7('0x29')][_0x0fe7('0x16')]);}_0x8623b2[_0x0fe7('0x40')]=qs[_0x0fe7('0x41')](_0x45f206[_0x0fe7('0x29')][_0x0fe7('0x41')]);_0x8623b2[_0x0fe7('0x42')]=qs[_0x0fe7('0x2e')](_[_0x0fe7('0x43')](_0x45f206[_0x0fe7('0x29')],_0x446380[_0x0fe7('0x2e')]));_0x8623b2[_0x0fe7('0x42')]['WhatsappInteractionId']=_0x14dbd6['id'];if(_0x45f206[_0x0fe7('0x29')][_0x0fe7('0x44')]){_0x8623b2[_0x0fe7('0x42')]=_['merge'](_0x8623b2['where'],{'$or':_[_0x0fe7('0x24')](_0x8623b2[_0x0fe7('0x30')],function(_0xc59220){var _0x35559d={};_0x35559d[_0xc59220]={'$like':'%'+_0x45f206[_0x0fe7('0x29')]['filter']+'%'};return _0x35559d;})});}if(_0x45f206[_0x0fe7('0x29')][_0x0fe7('0x45')]){var _0xdfd569=_0x45f206[_0x0fe7('0x29')][_0x0fe7('0x45')]['split'](',');var _0x1efa90={};_0x1efa90[_0xdfd569[0x0]]={'$gte':moment(_0xdfd569[0x1])[_0x0fe7('0x46')](_0x0fe7('0x47'))};_0x8623b2['where']=_[_0x0fe7('0x48')](_0x8623b2['where'],_0x1efa90);}_0x8623b2=_[_0x0fe7('0x48')]({},_0x8623b2,_0x45f206[_0x0fe7('0x36')]);return db[_0x0fe7('0x49')]['count']({'where':_0x8623b2[_0x0fe7('0x42')]})[_0x0fe7('0x1d')](function(_0xd981cc){_0x4ec809[_0x0fe7('0x18')]=_0xd981cc;if(_0x45f206[_0x0fe7('0x29')]['includeAll']){_0x8623b2[_0x0fe7('0x35')]=[{'all':!![]}];}return db[_0x0fe7('0x49')]['findAll'](_0x8623b2);})[_0x0fe7('0x1d')](function(_0x2ddc91){_0x4ec809['rows']=_0x2ddc91;return _0x4ec809;});}})[_0x0fe7('0x1d')](respondWithFilteredResult(_0x532298,_0x8623b2))[_0x0fe7('0x38')](handleError(_0x532298,null));};exports[_0x0fe7('0x4a')]=function(_0x14aac3,_0x55cd66){return db[_0x0fe7('0x2c')][_0x0fe7('0x37')]({'where':{'id':_0x14aac3['params']['id']}})[_0x0fe7('0x1d')](handleEntityNotFound(_0x55cd66,null))[_0x0fe7('0x1d')](function(_0x112b01){if(_0x112b01){return _0x112b01['setTags'](_0x14aac3[_0x0fe7('0x3a')][_0x0fe7('0x3c')],_[_0x0fe7('0x4b')](_0x14aac3['body'],[_0x0fe7('0x3c'),'id'])||{})[_0x0fe7('0x4c')](function(){return db[_0x0fe7('0x4d')][_0x0fe7('0x28')]({'attributes':['id',_0x0fe7('0x21'),_0x0fe7('0x4e')],'where':{'id':_0x14aac3[_0x0fe7('0x3a')][_0x0fe7('0x3c')]}});})['then'](function(_0x12c9a0){socket[_0x0fe7('0x4f')](_0x0fe7('0x50'),{'id':Number(_0x14aac3[_0x0fe7('0x2b')]['id']),'tags':_0x12c9a0||[]});return{'id':Number(_0x14aac3[_0x0fe7('0x2b')]['id']),'tags':_0x12c9a0||[]};});}})[_0x0fe7('0x1d')](respondWithResult(_0x55cd66,null))[_0x0fe7('0x38')](handleError(_0x55cd66,null));};exports[_0x0fe7('0x51')]=function(_0x584d16,_0xe35056){return db[_0x0fe7('0x2c')][_0x0fe7('0x37')]({'where':{'id':_0x584d16['params']['id']}})[_0x0fe7('0x1d')](handleEntityNotFound(_0xe35056,null))['then'](function(_0x421c92){if(_0x421c92){return _0x421c92['removeTags'](_0x584d16['query']['ids']);}})[_0x0fe7('0x1d')](respondWithStatusCode(_0xe35056,null))[_0x0fe7('0x38')](handleError(_0xe35056,null));};exports[_0x0fe7('0x52')]=function(_0x56f61c,_0x5d4d02){var _0x3a9808=moment()[_0x0fe7('0x53')]()['toString']();var _0x1f17e5=path[_0x0fe7('0x54')](config[_0x0fe7('0x55')],_0x0fe7('0x56'),_0x0fe7('0x57'),_0x0fe7('0x58'));var _0x697102=path[_0x0fe7('0x54')](config[_0x0fe7('0x55')],_0x0fe7('0x56'),_0x0fe7('0x57'),_0x0fe7('0x59'));var _0x27b7c2=path[_0x0fe7('0x54')](_0x1f17e5,_0x3a9808);var _0x279a38=util['format'](_0x0fe7('0x5a'),_0x56f61c[_0x0fe7('0x2b')]['id'],_0x3a9808);var _0x583f48=path[_0x0fe7('0x54')](_0x1f17e5,_0x279a38);var _0x4d0355=[];_0x4d0355[_0x0fe7('0x5b')]({'model':db[_0x0fe7('0x5c')],'as':_0x0fe7('0x5c'),'attributes':['id','fullname'],'raw':!![]});_0x4d0355[_0x0fe7('0x5b')]({'model':db[_0x0fe7('0x5d')],'as':_0x0fe7('0x5e'),'attributes':['id',_0x0fe7('0x5f'),_0x0fe7('0x60')],'raw':!![]});if(_0x56f61c[_0x0fe7('0x29')]['attachments']){_0x4d0355[_0x0fe7('0x5b')]({'model':db[_0x0fe7('0x61')],'as':_0x0fe7('0x61'),'raw':!![]});}var _0x11e00b=[{'model':db[_0x0fe7('0x49')],'as':_0x0fe7('0x62'),'attributes':['id',_0x0fe7('0x3a'),'createdAt',_0x0fe7('0x63'),_0x0fe7('0x64'),_0x0fe7('0x65')],'include':_0x4d0355}];_0x11e00b['push']({'model':db[_0x0fe7('0x66')],'as':_0x0fe7('0x67'),'attributes':['id',_0x0fe7('0x21')]});_0x11e00b[_0x0fe7('0x5b')]({'model':db['User'],'as':_0x0fe7('0x68'),'attributes':['id',_0x0fe7('0x69')]});return db['WhatsappInteraction'][_0x0fe7('0x37')]({'where':{'id':_0x56f61c[_0x0fe7('0x2b')]['id']},'include':_0x11e00b})['then'](handleEntityNotFound(_0x5d4d02,null))[_0x0fe7('0x1d')](function(_0x50b705){if(_0x50b705){var _0xe06ba2=_0x50b705['get']({'plain':!![]});fs[_0x0fe7('0x6a')](_0x27b7c2);var _0x245a16={'channel':'Whatsapp','account':_0xe06ba2[_0x0fe7('0x67')][_0x0fe7('0x21')],'agent':_0xe06ba2['Owner']?_0xe06ba2[_0x0fe7('0x68')][_0x0fe7('0x69')]:_0x0fe7('0x6b'),'createdAt':moment(_0xe06ba2[_0x0fe7('0x6c')])[_0x0fe7('0x46')](_0x0fe7('0x47'))[_0x0fe7('0x6d')](),'closedAt':_0xe06ba2[_0x0fe7('0x6e')]?moment(_0xe06ba2[_0x0fe7('0x6f')])[_0x0fe7('0x46')](_0x0fe7('0x47'))[_0x0fe7('0x6d')]():'','disposition':_0xe06ba2[_0x0fe7('0x70')],'messages':_(_0xe06ba2[_0x0fe7('0x62')])[_0x0fe7('0x44')]({'secret':![]})[_0x0fe7('0x24')](function(_0xbc0500){if(_0xbc0500[_0x0fe7('0x61')]){var _0x490982=path[_0x0fe7('0x54')](_0x697102,_0xbc0500[_0x0fe7('0x61')]['basename']);if(fs['existsSync'](_0x490982)){fs['createReadStream'](_0x490982)['pipe'](fs[_0x0fe7('0x71')](path[_0x0fe7('0x54')](_0x27b7c2,_0xbc0500[_0x0fe7('0x61')]['basename'])));}}return{'date':moment(_0xbc0500[_0x0fe7('0x6c')])[_0x0fe7('0x46')](_0x0fe7('0x47'))[_0x0fe7('0x6d')](),'sender':_0xbc0500['direction']===_0x0fe7('0x72')?_0xbc0500[_0x0fe7('0x5c')]?_0xbc0500[_0x0fe7('0x5c')][_0x0fe7('0x69')]:_0x0fe7('0x73'):_0xbc0500['Contact'][_0x0fe7('0x5f')]+(_0xbc0500[_0x0fe7('0x5e')][_0x0fe7('0x60')]?'\x20'+_0xbc0500['Contact'][_0x0fe7('0x60')]:''),'body':_0xbc0500['Attachment']?_0xbc0500[_0x0fe7('0x61')][_0x0fe7('0x74')]:_0xbc0500['body'],'direction':_0xbc0500[_0x0fe7('0x63')]==='out'?'A':'C','secret':_0xbc0500[_0x0fe7('0x64')],'read':_0xbc0500[_0x0fe7('0x65')],'attachment':_0xbc0500[_0x0fe7('0x61')]};})[_0x0fe7('0x75')]()};return ejs[_0x0fe7('0x76')](path[_0x0fe7('0x54')](config[_0x0fe7('0x55')],_0x0fe7('0x56'),_0x0fe7('0x77'),_0x0fe7('0x78')),{'interaction':_0x245a16})['then'](function(_0xa5f8ce){var _0x53ca89=path[_0x0fe7('0x54')](_0x27b7c2,'transcript-'+_0xe06ba2['id']+'-'+_0x3a9808+_0x0fe7('0x79'));var _0x5e43b9={'path':_0x53ca89,'channel':'Whatsapp','interactionId':_0xe06ba2['id']};return pdf['createPdfFromHTML'](_0xa5f8ce,_0x5e43b9);})[_0x0fe7('0x1d')](function(){return new BPromise(function(_0x4af088,_0x33ff9b){zipdir(_0x27b7c2,{'saveTo':_0x583f48},function(_0x840296,_0x2cda5a){if(_0x840296)return _0x33ff9b(_0x840296);return _0x4af088(_0x2cda5a);});})[_0x0fe7('0x1d')](function(){return new BPromise(function(_0x3f573b,_0x169b6e){rimraf(_0x27b7c2,function(_0x2ec449){if(_0x2ec449)_0x169b6e(_0x2ec449);return _0x3f573b();});});})[_0x0fe7('0x1d')](function(){return _0x5d4d02[_0x0fe7('0x52')](_0x583f48,_0x279a38,function(_0x525e86){if(_0x525e86){console[_0x0fe7('0x7a')]('err',_0x525e86);}else{fs['unlinkSync'](_0x583f48);}});});});}else{return _0x5d4d02[_0x0fe7('0x12')](0xc8);}})[_0x0fe7('0x38')](handleError(_0x5d4d02,null));};
\ No newline at end of file