Built motion from commit 00bf23f6.|2.6.16
[motion2.git] / server / api / whatsappInteraction / whatsappInteraction.controller.js
index 3061595..7a84eaa 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xe66b=['destroy','error','stack','name','send','map','WhatsappInteraction','fieldName','type','key','findAll','whatsapp','query','user','catch','show','params','model','keys','rawAttributes','intersection','attributes','fields','includeAll','include','merge','find','create','body','update','describe','addMessage','WhatsappMessage','ids','getMessages','findOne','hasOwnProperty','nolimit','order','sort','where','filters','pick','WhatsappInteractionId','filter','$gte','split','format','options','rows','addTags','setTags','spread','color','emit','whatsappInteractionTags:save','removeTags','download','unix','toString','join','root','server','files','tmp','attachments','transcript-%d-%s.zip','User','push','CmContact','Contact','firstName','lastName','Attachment','createdAt','secret','WhatsappAccount','Account','Owner','fullname','get','mkdirSync','Whatsapp','YYYY-MM-DD\x20HH:mm:ss','closed','closedAt','basename','pipe','createWriteStream','direction','out','System','read','renderFile','views','transcript-','.pdf','log','err','unlinkSync','sendStatus','moment','bluebird','util','path','lodash','ioredis','../../components/interaction/service','../../components/export/pdf','../../config/logger','api','../../config/environment','../../mysqldb','redis','localhost','socket.io-emitter','register','status','end','json','offset','limit','undefined','count','set','Content-Range','then'];(function(_0x2abf59,_0x33a435){var _0x3bc8ce=function(_0x3bd6e8){while(--_0x3bd6e8){_0x2abf59['push'](_0x2abf59['shift']());}};_0x3bc8ce(++_0x33a435);}(_0xe66b,0x65));var _0xbe66=function(_0x25adbd,_0x4f612f){_0x25adbd=_0x25adbd-0x0;var _0x4abc82=_0xe66b[_0x25adbd];return _0x4abc82;};'use strict';var rimraf=require('rimraf');var zipdir=require('zip-dir');var moment=require(_0xbe66('0x0'));var BPromise=require(_0xbe66('0x1'));var util=require(_0xbe66('0x2'));var path=require(_0xbe66('0x3'));var ejs=require('ejs');var fs=require('fs');var _=require(_0xbe66('0x4'));var Redis=require(_0xbe66('0x5'));var interaction=require(_0xbe66('0x6'));var qs=require('../../components/parsers/qs');var pdf=require(_0xbe66('0x7'));var logger=require(_0xbe66('0x8'))(_0xbe66('0x9'));var config=require(_0xbe66('0xa'));var db=require(_0xbe66('0xb'))['db'];config[_0xbe66('0xc')]=_['defaults'](config[_0xbe66('0xc')],{'host':_0xbe66('0xd'),'port':0x18eb});var socket=require(_0xbe66('0xe'))(new Redis(config[_0xbe66('0xc')]));require('./whatsappInteraction.socket')[_0xbe66('0xf')](socket);function respondWithStatusCode(_0x5ccf4f,_0x1d971a){_0x1d971a=_0x1d971a||0xcc;return function(_0x53299d){if(_0x53299d){return _0x5ccf4f['sendStatus'](_0x1d971a);}return _0x5ccf4f[_0xbe66('0x10')](_0x1d971a)[_0xbe66('0x11')]();};}function respondWithResult(_0xfad110,_0xc9af3f){_0xc9af3f=_0xc9af3f||0xc8;return function(_0xb8dcd3){if(_0xb8dcd3){return _0xfad110[_0xbe66('0x10')](_0xc9af3f)[_0xbe66('0x12')](_0xb8dcd3);}};}function respondWithFilteredResult(_0x12382c,_0x57a4b7){return function(_0xf5b4d9){if(_0xf5b4d9){var _0x521afc=typeof _0x57a4b7[_0xbe66('0x13')]==='undefined'&&typeof _0x57a4b7[_0xbe66('0x14')]===_0xbe66('0x15');var _0x334ece=_0xf5b4d9[_0xbe66('0x16')];var _0xd35052=_0x521afc?0x0:_0x57a4b7[_0xbe66('0x13')];var _0x5e7f1f=_0x521afc?_0xf5b4d9[_0xbe66('0x16')]:_0x57a4b7[_0xbe66('0x13')]+_0x57a4b7[_0xbe66('0x14')];var _0x4a00e5;if(_0x5e7f1f>=_0x334ece){_0x5e7f1f=_0x334ece;_0x4a00e5=0xc8;}else{_0x4a00e5=0xce;}_0x12382c[_0xbe66('0x10')](_0x4a00e5);return _0x12382c[_0xbe66('0x17')](_0xbe66('0x18'),_0xd35052+'-'+_0x5e7f1f+'/'+_0x334ece)[_0xbe66('0x12')](_0xf5b4d9);}return null;};}function saveUpdates(_0x23bc5a){return function(_0x42f0b1){if(_0x42f0b1){return _0x42f0b1['update'](_0x23bc5a)[_0xbe66('0x19')](function(_0x2f7ffc){return _0x2f7ffc;});}return null;};}function removeEntity(_0x1c407b){return function(_0x97fb0){if(_0x97fb0){return _0x97fb0[_0xbe66('0x1a')]()[_0xbe66('0x19')](function(){_0x1c407b['status'](0xcc)[_0xbe66('0x11')]();});}};}function handleEntityNotFound(_0x57d136){return function(_0x1eae01){if(!_0x1eae01){_0x57d136['sendStatus'](0x194);}return _0x1eae01;};}function handleError(_0x260c9b,_0xc98735){_0xc98735=_0xc98735||0x1f4;return function(_0x16b295){logger[_0xbe66('0x1b')](_0x16b295[_0xbe66('0x1c')]);if(_0x16b295['name']){delete _0x16b295[_0xbe66('0x1d')];}_0x260c9b[_0xbe66('0x10')](_0xc98735)[_0xbe66('0x1e')](_0x16b295);};}exports['index']=function(_0x1a4909,_0x31f039){var _0xbcdeba={};var _0x410ee5=_[_0xbe66('0x1f')](db[_0xbe66('0x20')]['rawAttributes'],function(_0x479e40){return{'name':_0x479e40[_0xbe66('0x21')],'type':_0x479e40[_0xbe66('0x22')][_0xbe66('0x23')]};});_0xbcdeba=qs['getOptions'](_0x410ee5,_0x1a4909);return interaction[_0xbe66('0x24')](_0xbe66('0x25'),_0x1a4909[_0xbe66('0x26')],_0x1a4909[_0xbe66('0x27')],_0xbcdeba,_0x410ee5)[_0xbe66('0x19')](respondWithFilteredResult(_0x31f039,_0xbcdeba))[_0xbe66('0x28')](handleError(_0x31f039,null));};exports[_0xbe66('0x29')]=function(_0x84f39b,_0x35d6db){var _0x3df376={'raw':![],'where':{'id':_0x84f39b[_0xbe66('0x2a')]['id']}},_0x56eac6={};_0x56eac6[_0xbe66('0x2b')]=_[_0xbe66('0x2c')](db[_0xbe66('0x20')][_0xbe66('0x2d')]);_0x56eac6[_0xbe66('0x26')]=_[_0xbe66('0x2c')](_0x84f39b[_0xbe66('0x26')]);_0x56eac6['filters']=_[_0xbe66('0x2e')](_0x56eac6[_0xbe66('0x2b')],_0x56eac6[_0xbe66('0x26')]);_0x3df376[_0xbe66('0x2f')]=_[_0xbe66('0x2e')](_0x56eac6[_0xbe66('0x2b')],qs['fields'](_0x84f39b[_0xbe66('0x26')][_0xbe66('0x30')]));_0x3df376['attributes']=_0x3df376[_0xbe66('0x2f')]['length']?_0x3df376[_0xbe66('0x2f')]:_0x56eac6[_0xbe66('0x2b')];if(_0x84f39b[_0xbe66('0x26')][_0xbe66('0x31')]){_0x3df376[_0xbe66('0x32')]=[{'all':!![]}];}_0x3df376=_[_0xbe66('0x33')]({},_0x3df376,_0x84f39b['options']);return db[_0xbe66('0x20')][_0xbe66('0x34')](_0x3df376)['then'](handleEntityNotFound(_0x35d6db,null))[_0xbe66('0x19')](respondWithResult(_0x35d6db,null))[_0xbe66('0x28')](handleError(_0x35d6db,null));};exports['create']=function(_0x2c0fb0,_0x4e5bb8){return db[_0xbe66('0x20')][_0xbe66('0x35')](_0x2c0fb0[_0xbe66('0x36')],{})[_0xbe66('0x19')](respondWithResult(_0x4e5bb8,0xc9))[_0xbe66('0x28')](handleError(_0x4e5bb8,null));};exports[_0xbe66('0x37')]=function(_0xe0ad70,_0x3504d3){if(_0xe0ad70[_0xbe66('0x36')]['id']){delete _0xe0ad70[_0xbe66('0x36')]['id'];}return db['WhatsappInteraction'][_0xbe66('0x34')]({'where':{'id':_0xe0ad70[_0xbe66('0x2a')]['id']}})['then'](handleEntityNotFound(_0x3504d3,null))['then'](saveUpdates(_0xe0ad70['body'],null))[_0xbe66('0x19')](respondWithResult(_0x3504d3,null))[_0xbe66('0x28')](handleError(_0x3504d3,null));};exports[_0xbe66('0x1a')]=function(_0x5df799,_0x4ebc2d){return db[_0xbe66('0x20')][_0xbe66('0x34')]({'where':{'id':_0x5df799['params']['id']}})['then'](handleEntityNotFound(_0x4ebc2d,null))['then'](removeEntity(_0x4ebc2d,null))[_0xbe66('0x28')](handleError(_0x4ebc2d,null));};exports[_0xbe66('0x38')]=function(_0x22b697,_0x3b4d78){return db[_0xbe66('0x20')][_0xbe66('0x38')]()[_0xbe66('0x19')](respondWithResult(_0x3b4d78,null))['catch'](handleError(_0x3b4d78,null));};exports[_0xbe66('0x39')]=function(_0x345f21,_0x5439a2){return db[_0xbe66('0x3a')][_0xbe66('0x34')]({'where':{'id':_0x345f21['params']['id']}})['then'](handleEntityNotFound(_0x5439a2,null))[_0xbe66('0x19')](function(_0x2d6450){if(_0x2d6450){return _0x2d6450[_0xbe66('0x39')](_0x345f21[_0xbe66('0x36')][_0xbe66('0x3b')],_['omit'](_0x345f21[_0xbe66('0x36')],[_0xbe66('0x3b'),'id'])||{});}})[_0xbe66('0x19')](respondWithResult(_0x5439a2,null))[_0xbe66('0x28')](handleError(_0x5439a2,null));};exports[_0xbe66('0x3c')]=function(_0x105ec2,_0x5497cf){var _0x2e57d9={'raw':![],'where':{}};var _0x3aac4d={};var _0x403db3={'count':0x0,'rows':[]};return db[_0xbe66('0x20')][_0xbe66('0x3d')]({'where':{'id':_0x105ec2['params']['id']}})[_0xbe66('0x19')](handleEntityNotFound(_0x5497cf,null))[_0xbe66('0x19')](function(_0x3df6bb){if(_0x3df6bb){_0x3aac4d['model']=_['keys'](db['WhatsappMessage'][_0xbe66('0x2d')]);_0x3aac4d[_0xbe66('0x26')]=_[_0xbe66('0x2c')](_0x105ec2['query']);_0x3aac4d['filters']=_[_0xbe66('0x2e')](_0x3aac4d[_0xbe66('0x2b')],_0x3aac4d[_0xbe66('0x26')]);_0x2e57d9['attributes']=_[_0xbe66('0x2e')](_0x3aac4d[_0xbe66('0x2b')],qs[_0xbe66('0x30')](_0x105ec2['query']['fields']));_0x2e57d9[_0xbe66('0x2f')]=_0x2e57d9[_0xbe66('0x2f')]['length']?_0x2e57d9[_0xbe66('0x2f')]:_0x3aac4d[_0xbe66('0x2b')];if(!_0x105ec2[_0xbe66('0x26')][_0xbe66('0x3e')](_0xbe66('0x3f'))){_0x2e57d9[_0xbe66('0x14')]=qs[_0xbe66('0x14')](_0x105ec2[_0xbe66('0x26')]['limit']);_0x2e57d9[_0xbe66('0x13')]=qs[_0xbe66('0x13')](_0x105ec2[_0xbe66('0x26')][_0xbe66('0x13')]);}_0x2e57d9[_0xbe66('0x40')]=qs[_0xbe66('0x41')](_0x105ec2[_0xbe66('0x26')][_0xbe66('0x41')]);_0x2e57d9[_0xbe66('0x42')]=qs[_0xbe66('0x43')](_[_0xbe66('0x44')](_0x105ec2[_0xbe66('0x26')],_0x3aac4d[_0xbe66('0x43')]));_0x2e57d9[_0xbe66('0x42')][_0xbe66('0x45')]=_0x3df6bb['id'];if(_0x105ec2[_0xbe66('0x26')]['filter']){_0x2e57d9[_0xbe66('0x42')]=_[_0xbe66('0x33')](_0x2e57d9[_0xbe66('0x42')],{'$or':_['map'](_0x2e57d9[_0xbe66('0x2f')],function(_0x23c0b5){var _0x39ae8e={};_0x39ae8e[_0x23c0b5]={'$like':'%'+_0x105ec2[_0xbe66('0x26')][_0xbe66('0x46')]+'%'};return _0x39ae8e;})});}if(_0x105ec2['query']['$gte']){var _0x2270b0=_0x105ec2[_0xbe66('0x26')][_0xbe66('0x47')][_0xbe66('0x48')](',');var _0x184b3c={};_0x184b3c[_0x2270b0[0x0]]={'$gte':moment(_0x2270b0[0x1])[_0xbe66('0x49')]('YYYY-MM-DD\x20HH:mm:ss')};_0x2e57d9[_0xbe66('0x42')]=_[_0xbe66('0x33')](_0x2e57d9['where'],_0x184b3c);}_0x2e57d9=_[_0xbe66('0x33')]({},_0x2e57d9,_0x105ec2[_0xbe66('0x4a')]);return db[_0xbe66('0x3a')]['count']({'where':_0x2e57d9[_0xbe66('0x42')]})[_0xbe66('0x19')](function(_0x693dda){_0x403db3[_0xbe66('0x16')]=_0x693dda;if(_0x105ec2[_0xbe66('0x26')][_0xbe66('0x31')]){_0x2e57d9[_0xbe66('0x32')]=[{'all':!![]}];}return db[_0xbe66('0x3a')][_0xbe66('0x24')](_0x2e57d9);})[_0xbe66('0x19')](function(_0x31106c){_0x403db3[_0xbe66('0x4b')]=_0x31106c;return _0x403db3;});}})[_0xbe66('0x19')](respondWithFilteredResult(_0x5497cf,_0x2e57d9))[_0xbe66('0x28')](handleError(_0x5497cf,null));};exports[_0xbe66('0x4c')]=function(_0x40abcd,_0x3ab420){return db[_0xbe66('0x20')]['find']({'where':{'id':_0x40abcd[_0xbe66('0x2a')]['id']}})[_0xbe66('0x19')](handleEntityNotFound(_0x3ab420,null))[_0xbe66('0x19')](function(_0x1ae6c3){if(_0x1ae6c3){return _0x1ae6c3[_0xbe66('0x4d')](_0x40abcd['body'][_0xbe66('0x3b')],_['omit'](_0x40abcd[_0xbe66('0x36')],[_0xbe66('0x3b'),'id'])||{})[_0xbe66('0x4e')](function(){return db['Tag'][_0xbe66('0x24')]({'attributes':['id','name',_0xbe66('0x4f')],'where':{'id':_0x40abcd['body'][_0xbe66('0x3b')]}});})[_0xbe66('0x19')](function(_0x326599){socket[_0xbe66('0x50')](_0xbe66('0x51'),{'id':Number(_0x40abcd['params']['id']),'tags':_0x326599||[]});return{'id':Number(_0x40abcd[_0xbe66('0x2a')]['id']),'tags':_0x326599||[]};});}})[_0xbe66('0x19')](respondWithResult(_0x3ab420,null))[_0xbe66('0x28')](handleError(_0x3ab420,null));};exports[_0xbe66('0x52')]=function(_0x268269,_0x2eb4c8){return db[_0xbe66('0x20')][_0xbe66('0x34')]({'where':{'id':_0x268269[_0xbe66('0x2a')]['id']}})[_0xbe66('0x19')](handleEntityNotFound(_0x2eb4c8,null))[_0xbe66('0x19')](function(_0x5c6306){if(_0x5c6306){return _0x5c6306['removeTags'](_0x268269[_0xbe66('0x26')]['ids']);}})[_0xbe66('0x19')](respondWithStatusCode(_0x2eb4c8,null))['catch'](handleError(_0x2eb4c8,null));};exports[_0xbe66('0x53')]=function(_0x24e1c3,_0x125529){var _0x1e59be=moment()[_0xbe66('0x54')]()[_0xbe66('0x55')]();var _0x5a19f5=path[_0xbe66('0x56')](config[_0xbe66('0x57')],_0xbe66('0x58'),_0xbe66('0x59'),_0xbe66('0x5a'));var _0x3a2f4f=path['join'](config[_0xbe66('0x57')],'server','files',_0xbe66('0x5b'));var _0x20acd3=path[_0xbe66('0x56')](_0x5a19f5,_0x1e59be);var _0x543f93=util[_0xbe66('0x49')](_0xbe66('0x5c'),_0x24e1c3['params']['id'],_0x1e59be);var _0x2cd4ef=path['join'](_0x5a19f5,_0x543f93);var _0x2cd8d8=[];_0x2cd8d8['push']({'model':db[_0xbe66('0x5d')],'as':'User','attributes':['id','fullname'],'raw':!![]});_0x2cd8d8[_0xbe66('0x5e')]({'model':db[_0xbe66('0x5f')],'as':_0xbe66('0x60'),'attributes':['id',_0xbe66('0x61'),_0xbe66('0x62')],'raw':!![]});if(_0x24e1c3['query'][_0xbe66('0x5b')]){_0x2cd8d8['push']({'model':db[_0xbe66('0x63')],'as':_0xbe66('0x63'),'raw':!![]});}var _0x2407e7=[{'model':db['WhatsappMessage'],'as':'Messages','attributes':['id','body',_0xbe66('0x64'),'direction',_0xbe66('0x65'),'read'],'include':_0x2cd8d8}];_0x2407e7[_0xbe66('0x5e')]({'model':db[_0xbe66('0x66')],'as':_0xbe66('0x67'),'attributes':['id',_0xbe66('0x1d')]});_0x2407e7[_0xbe66('0x5e')]({'model':db['User'],'as':_0xbe66('0x68'),'attributes':['id',_0xbe66('0x69')]});return db[_0xbe66('0x20')]['find']({'where':{'id':_0x24e1c3['params']['id']},'include':_0x2407e7})[_0xbe66('0x19')](handleEntityNotFound(_0x125529,null))[_0xbe66('0x19')](function(_0x25e9a2){if(_0x25e9a2){var _0x33ba2f=_0x25e9a2[_0xbe66('0x6a')]({'plain':!![]});fs[_0xbe66('0x6b')](_0x20acd3);var _0x3796d0={'channel':_0xbe66('0x6c'),'account':_0x33ba2f[_0xbe66('0x67')][_0xbe66('0x1d')],'agent':_0x33ba2f[_0xbe66('0x68')]?_0x33ba2f[_0xbe66('0x68')][_0xbe66('0x69')]:'N.A.','createdAt':moment(_0x33ba2f[_0xbe66('0x64')])[_0xbe66('0x49')](_0xbe66('0x6d'))[_0xbe66('0x55')](),'closedAt':_0x33ba2f[_0xbe66('0x6e')]?moment(_0x33ba2f[_0xbe66('0x6f')])[_0xbe66('0x49')](_0xbe66('0x6d'))[_0xbe66('0x55')]():'','disposition':_0x33ba2f['disposition'],'messages':_(_0x33ba2f['Messages'])[_0xbe66('0x46')]({'secret':![]})['map'](function(_0x4d01a7){if(_0x4d01a7['Attachment']){var _0xffb064=path['join'](_0x3a2f4f,_0x4d01a7['Attachment'][_0xbe66('0x70')]);if(fs['existsSync'](_0xffb064)){fs['createReadStream'](_0xffb064)[_0xbe66('0x71')](fs[_0xbe66('0x72')](path[_0xbe66('0x56')](_0x20acd3,_0x4d01a7[_0xbe66('0x63')][_0xbe66('0x70')])));}}return{'date':moment(_0x4d01a7[_0xbe66('0x64')])[_0xbe66('0x49')](_0xbe66('0x6d'))[_0xbe66('0x55')](),'sender':_0x4d01a7[_0xbe66('0x73')]===_0xbe66('0x74')?_0x4d01a7[_0xbe66('0x5d')]?_0x4d01a7[_0xbe66('0x5d')]['fullname']:_0xbe66('0x75'):_0x4d01a7['Contact'][_0xbe66('0x61')]+(_0x4d01a7[_0xbe66('0x60')]['lastName']?'\x20'+_0x4d01a7[_0xbe66('0x60')][_0xbe66('0x62')]:''),'body':_0x4d01a7[_0xbe66('0x63')]?_0x4d01a7[_0xbe66('0x63')][_0xbe66('0x70')]:_0x4d01a7[_0xbe66('0x36')],'direction':_0x4d01a7[_0xbe66('0x73')]===_0xbe66('0x74')?'A':'C','secret':_0x4d01a7['secret'],'read':_0x4d01a7[_0xbe66('0x76')],'attachment':_0x4d01a7[_0xbe66('0x63')]};})['value']()};return ejs[_0xbe66('0x77')](path[_0xbe66('0x56')](config[_0xbe66('0x57')],_0xbe66('0x58'),_0xbe66('0x78'),'downloadInteraction.ejs'),{'interaction':_0x3796d0})[_0xbe66('0x19')](function(_0x5b8698){var _0x5aa3df=path[_0xbe66('0x56')](_0x20acd3,_0xbe66('0x79')+_0x33ba2f['id']+'-'+_0x1e59be+_0xbe66('0x7a'));var _0x45957c={'path':_0x5aa3df,'channel':_0xbe66('0x6c'),'interactionId':_0x33ba2f['id']};return pdf['createPdfFromHTML'](_0x5b8698,_0x45957c);})[_0xbe66('0x19')](function(){return new BPromise(function(_0x51a6ec,_0x170558){zipdir(_0x20acd3,{'saveTo':_0x2cd4ef},function(_0x5e96bb,_0x485cc9){if(_0x5e96bb)return _0x170558(_0x5e96bb);return _0x51a6ec(_0x485cc9);});})[_0xbe66('0x19')](function(){return new BPromise(function(_0x70e34e,_0x2600ce){rimraf(_0x20acd3,function(_0x11d93e){if(_0x11d93e)_0x2600ce(_0x11d93e);return _0x70e34e();});});})['then'](function(){return _0x125529[_0xbe66('0x53')](_0x2cd4ef,_0x543f93,function(_0x523aad){if(_0x523aad){console[_0xbe66('0x7b')](_0xbe66('0x7c'),_0x523aad);}else{fs[_0xbe66('0x7d')](_0x2cd4ef);}});});});}else{return _0x125529[_0xbe66('0x7e')](0xc8);}})[_0xbe66('0x28')](handleError(_0x125529,null));};
\ No newline at end of file
+var _0xb7b4=['offset','sort','pick','where','WhatsappInteractionId','filter','$gte','split','format','YYYY-MM-DD\x20HH:mm:ss','includeAll','rows','addTags','setTags','spread','Tag','color','emit','removeTags','download','join','root','server','files','tmp','transcript-%d-%s.zip','push','User','fullname','CmContact','Contact','firstName','lastName','attachments','Attachment','Messages','createdAt','direction','read','Account','Owner','N.A.','toString','closed','closedAt','disposition','basename','existsSync','pipe','out','System','secret','renderFile','views','.pdf','Whatsapp','createPdfFromHTML','log','err','unlinkSync','rimraf','zip-dir','moment','path','ejs','ioredis','../../components/interaction/service','../../components/parsers/qs','../../components/export/pdf','../../config/logger','api','../../config/environment','../../mysqldb','redis','defaults','localhost','register','sendStatus','status','end','json','undefined','limit','count','set','Content-Range','update','then','destroy','stack','name','index','map','rawAttributes','fieldName','type','findAll','whatsapp','catch','show','params','keys','WhatsappInteraction','query','filters','intersection','model','attributes','fields','include','merge','options','find','create','body','addMessage','WhatsappMessage','ids','omit','getMessages','length','hasOwnProperty','nolimit'];(function(_0x2808e2,_0x2570fe){var _0x57088f=function(_0x488583){while(--_0x488583){_0x2808e2['push'](_0x2808e2['shift']());}};_0x57088f(++_0x2570fe);}(_0xb7b4,0x1ad));var _0x4b7b=function(_0x385f0e,_0xa10008){_0x385f0e=_0x385f0e-0x0;var _0x41d183=_0xb7b4[_0x385f0e];return _0x41d183;};'use strict';var rimraf=require(_0x4b7b('0x0'));var zipdir=require(_0x4b7b('0x1'));var moment=require(_0x4b7b('0x2'));var BPromise=require('bluebird');var util=require('util');var path=require(_0x4b7b('0x3'));var ejs=require(_0x4b7b('0x4'));var fs=require('fs');var _=require('lodash');var Redis=require(_0x4b7b('0x5'));var interaction=require(_0x4b7b('0x6'));var qs=require(_0x4b7b('0x7'));var pdf=require(_0x4b7b('0x8'));var logger=require(_0x4b7b('0x9'))(_0x4b7b('0xa'));var config=require(_0x4b7b('0xb'));var db=require(_0x4b7b('0xc'))['db'];config[_0x4b7b('0xd')]=_[_0x4b7b('0xe')](config[_0x4b7b('0xd')],{'host':_0x4b7b('0xf'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x4b7b('0xd')]));require('./whatsappInteraction.socket')[_0x4b7b('0x10')](socket);function respondWithStatusCode(_0x873075,_0x27414b){_0x27414b=_0x27414b||0xcc;return function(_0x5b457f){if(_0x5b457f){return _0x873075[_0x4b7b('0x11')](_0x27414b);}return _0x873075[_0x4b7b('0x12')](_0x27414b)[_0x4b7b('0x13')]();};}function respondWithResult(_0x31f453,_0x469122){_0x469122=_0x469122||0xc8;return function(_0x272280){if(_0x272280){return _0x31f453[_0x4b7b('0x12')](_0x469122)[_0x4b7b('0x14')](_0x272280);}};}function respondWithFilteredResult(_0x24a13b,_0x5e3510){return function(_0x477bb6){if(_0x477bb6){var _0x136e86=typeof _0x5e3510['offset']===_0x4b7b('0x15')&&typeof _0x5e3510[_0x4b7b('0x16')]===_0x4b7b('0x15');var _0x33a7f8=_0x477bb6[_0x4b7b('0x17')];var _0x35a13b=_0x136e86?0x0:_0x5e3510['offset'];var _0x411284=_0x136e86?_0x477bb6['count']:_0x5e3510['offset']+_0x5e3510[_0x4b7b('0x16')];var _0x216b12;if(_0x411284>=_0x33a7f8){_0x411284=_0x33a7f8;_0x216b12=0xc8;}else{_0x216b12=0xce;}_0x24a13b[_0x4b7b('0x12')](_0x216b12);return _0x24a13b[_0x4b7b('0x18')](_0x4b7b('0x19'),_0x35a13b+'-'+_0x411284+'/'+_0x33a7f8)[_0x4b7b('0x14')](_0x477bb6);}return null;};}function saveUpdates(_0x590f83){return function(_0x209215){if(_0x209215){return _0x209215[_0x4b7b('0x1a')](_0x590f83)[_0x4b7b('0x1b')](function(_0x54ef79){return _0x54ef79;});}return null;};}function removeEntity(_0x1a4365){return function(_0x5dcf02){if(_0x5dcf02){return _0x5dcf02[_0x4b7b('0x1c')]()[_0x4b7b('0x1b')](function(){_0x1a4365[_0x4b7b('0x12')](0xcc)[_0x4b7b('0x13')]();});}};}function handleEntityNotFound(_0x918d1b){return function(_0x4bf891){if(!_0x4bf891){_0x918d1b[_0x4b7b('0x11')](0x194);}return _0x4bf891;};}function handleError(_0x59c6bd,_0x4660ea){_0x4660ea=_0x4660ea||0x1f4;return function(_0x70f4fa){logger['error'](_0x70f4fa[_0x4b7b('0x1d')]);if(_0x70f4fa[_0x4b7b('0x1e')]){delete _0x70f4fa[_0x4b7b('0x1e')];}_0x59c6bd[_0x4b7b('0x12')](_0x4660ea)['send'](_0x70f4fa);};}exports[_0x4b7b('0x1f')]=function(_0xfa7452,_0x44925d){var _0x2cf184={};var _0x10ec6b=_[_0x4b7b('0x20')](db['WhatsappInteraction'][_0x4b7b('0x21')],function(_0xa683b4){return{'name':_0xa683b4[_0x4b7b('0x22')],'type':_0xa683b4[_0x4b7b('0x23')]['key']};});_0x2cf184=qs['getOptions'](_0x10ec6b,_0xfa7452);return interaction[_0x4b7b('0x24')](_0x4b7b('0x25'),_0xfa7452['query'],_0xfa7452['user'],_0x2cf184,_0x10ec6b)[_0x4b7b('0x1b')](respondWithFilteredResult(_0x44925d,_0x2cf184))[_0x4b7b('0x26')](handleError(_0x44925d,null));};exports[_0x4b7b('0x27')]=function(_0x4d0df2,_0x59c9e2){var _0x228e96={'raw':![],'where':{'id':_0x4d0df2[_0x4b7b('0x28')]['id']}},_0x1c61d0={};_0x1c61d0['model']=_[_0x4b7b('0x29')](db[_0x4b7b('0x2a')]['rawAttributes']);_0x1c61d0['query']=_[_0x4b7b('0x29')](_0x4d0df2[_0x4b7b('0x2b')]);_0x1c61d0[_0x4b7b('0x2c')]=_[_0x4b7b('0x2d')](_0x1c61d0[_0x4b7b('0x2e')],_0x1c61d0[_0x4b7b('0x2b')]);_0x228e96[_0x4b7b('0x2f')]=_[_0x4b7b('0x2d')](_0x1c61d0[_0x4b7b('0x2e')],qs[_0x4b7b('0x30')](_0x4d0df2[_0x4b7b('0x2b')][_0x4b7b('0x30')]));_0x228e96[_0x4b7b('0x2f')]=_0x228e96[_0x4b7b('0x2f')]['length']?_0x228e96['attributes']:_0x1c61d0[_0x4b7b('0x2e')];if(_0x4d0df2[_0x4b7b('0x2b')]['includeAll']){_0x228e96[_0x4b7b('0x31')]=[{'all':!![]}];}_0x228e96=_[_0x4b7b('0x32')]({},_0x228e96,_0x4d0df2[_0x4b7b('0x33')]);return db[_0x4b7b('0x2a')][_0x4b7b('0x34')](_0x228e96)[_0x4b7b('0x1b')](handleEntityNotFound(_0x59c9e2,null))[_0x4b7b('0x1b')](respondWithResult(_0x59c9e2,null))['catch'](handleError(_0x59c9e2,null));};exports['create']=function(_0x4d611e,_0x5253d0){return db['WhatsappInteraction'][_0x4b7b('0x35')](_0x4d611e[_0x4b7b('0x36')],{})[_0x4b7b('0x1b')](respondWithResult(_0x5253d0,0xc9))[_0x4b7b('0x26')](handleError(_0x5253d0,null));};exports[_0x4b7b('0x1a')]=function(_0x1c1c63,_0xa2c747){if(_0x1c1c63[_0x4b7b('0x36')]['id']){delete _0x1c1c63[_0x4b7b('0x36')]['id'];}return db[_0x4b7b('0x2a')][_0x4b7b('0x34')]({'where':{'id':_0x1c1c63[_0x4b7b('0x28')]['id']}})[_0x4b7b('0x1b')](handleEntityNotFound(_0xa2c747,null))[_0x4b7b('0x1b')](saveUpdates(_0x1c1c63[_0x4b7b('0x36')],null))[_0x4b7b('0x1b')](respondWithResult(_0xa2c747,null))[_0x4b7b('0x26')](handleError(_0xa2c747,null));};exports[_0x4b7b('0x1c')]=function(_0x5edc33,_0x59f0df){return db['WhatsappInteraction'][_0x4b7b('0x34')]({'where':{'id':_0x5edc33[_0x4b7b('0x28')]['id']}})['then'](handleEntityNotFound(_0x59f0df,null))[_0x4b7b('0x1b')](removeEntity(_0x59f0df,null))[_0x4b7b('0x26')](handleError(_0x59f0df,null));};exports['describe']=function(_0x6a496e,_0x14d02d){return db['WhatsappInteraction']['describe']()[_0x4b7b('0x1b')](respondWithResult(_0x14d02d,null))[_0x4b7b('0x26')](handleError(_0x14d02d,null));};exports[_0x4b7b('0x37')]=function(_0x5d9516,_0x509ff8){return db[_0x4b7b('0x38')][_0x4b7b('0x34')]({'where':{'id':_0x5d9516[_0x4b7b('0x28')]['id']}})[_0x4b7b('0x1b')](handleEntityNotFound(_0x509ff8,null))['then'](function(_0x18bb41){if(_0x18bb41){return _0x18bb41[_0x4b7b('0x37')](_0x5d9516[_0x4b7b('0x36')][_0x4b7b('0x39')],_[_0x4b7b('0x3a')](_0x5d9516[_0x4b7b('0x36')],[_0x4b7b('0x39'),'id'])||{});}})[_0x4b7b('0x1b')](respondWithResult(_0x509ff8,null))['catch'](handleError(_0x509ff8,null));};exports[_0x4b7b('0x3b')]=function(_0x2a60b0,_0x112cd1){var _0x3d4716={'raw':![],'where':{}};var _0x50dd4f={};var _0x4bd6a3={'count':0x0,'rows':[]};return db[_0x4b7b('0x2a')]['findOne']({'where':{'id':_0x2a60b0[_0x4b7b('0x28')]['id']}})[_0x4b7b('0x1b')](handleEntityNotFound(_0x112cd1,null))[_0x4b7b('0x1b')](function(_0x387ce2){if(_0x387ce2){_0x50dd4f['model']=_[_0x4b7b('0x29')](db[_0x4b7b('0x38')]['rawAttributes']);_0x50dd4f[_0x4b7b('0x2b')]=_[_0x4b7b('0x29')](_0x2a60b0['query']);_0x50dd4f[_0x4b7b('0x2c')]=_[_0x4b7b('0x2d')](_0x50dd4f[_0x4b7b('0x2e')],_0x50dd4f['query']);_0x3d4716[_0x4b7b('0x2f')]=_[_0x4b7b('0x2d')](_0x50dd4f['model'],qs['fields'](_0x2a60b0['query'][_0x4b7b('0x30')]));_0x3d4716[_0x4b7b('0x2f')]=_0x3d4716[_0x4b7b('0x2f')][_0x4b7b('0x3c')]?_0x3d4716[_0x4b7b('0x2f')]:_0x50dd4f['model'];if(!_0x2a60b0[_0x4b7b('0x2b')][_0x4b7b('0x3d')](_0x4b7b('0x3e'))){_0x3d4716[_0x4b7b('0x16')]=qs['limit'](_0x2a60b0[_0x4b7b('0x2b')][_0x4b7b('0x16')]);_0x3d4716[_0x4b7b('0x3f')]=qs[_0x4b7b('0x3f')](_0x2a60b0['query'][_0x4b7b('0x3f')]);}_0x3d4716['order']=qs['sort'](_0x2a60b0[_0x4b7b('0x2b')][_0x4b7b('0x40')]);_0x3d4716['where']=qs[_0x4b7b('0x2c')](_[_0x4b7b('0x41')](_0x2a60b0[_0x4b7b('0x2b')],_0x50dd4f[_0x4b7b('0x2c')]));_0x3d4716[_0x4b7b('0x42')][_0x4b7b('0x43')]=_0x387ce2['id'];if(_0x2a60b0[_0x4b7b('0x2b')]['filter']){_0x3d4716[_0x4b7b('0x42')]=_[_0x4b7b('0x32')](_0x3d4716[_0x4b7b('0x42')],{'$or':_[_0x4b7b('0x20')](_0x3d4716[_0x4b7b('0x2f')],function(_0x4dd54a){var _0x83e4e4={};_0x83e4e4[_0x4dd54a]={'$like':'%'+_0x2a60b0[_0x4b7b('0x2b')][_0x4b7b('0x44')]+'%'};return _0x83e4e4;})});}if(_0x2a60b0['query'][_0x4b7b('0x45')]){var _0xf62d79=_0x2a60b0[_0x4b7b('0x2b')]['$gte'][_0x4b7b('0x46')](',');var _0xdd0c0f={};_0xdd0c0f[_0xf62d79[0x0]]={'$gte':moment(_0xf62d79[0x1])[_0x4b7b('0x47')](_0x4b7b('0x48'))};_0x3d4716[_0x4b7b('0x42')]=_[_0x4b7b('0x32')](_0x3d4716['where'],_0xdd0c0f);}_0x3d4716=_['merge']({},_0x3d4716,_0x2a60b0[_0x4b7b('0x33')]);return db['WhatsappMessage'][_0x4b7b('0x17')]({'where':_0x3d4716[_0x4b7b('0x42')]})[_0x4b7b('0x1b')](function(_0x25caf1){_0x4bd6a3[_0x4b7b('0x17')]=_0x25caf1;if(_0x2a60b0[_0x4b7b('0x2b')][_0x4b7b('0x49')]){_0x3d4716[_0x4b7b('0x31')]=[{'all':!![]}];}return db[_0x4b7b('0x38')][_0x4b7b('0x24')](_0x3d4716);})[_0x4b7b('0x1b')](function(_0x10002e){_0x4bd6a3[_0x4b7b('0x4a')]=_0x10002e;return _0x4bd6a3;});}})[_0x4b7b('0x1b')](respondWithFilteredResult(_0x112cd1,_0x3d4716))[_0x4b7b('0x26')](handleError(_0x112cd1,null));};exports[_0x4b7b('0x4b')]=function(_0x53888d,_0x42c481){return db['WhatsappInteraction'][_0x4b7b('0x34')]({'where':{'id':_0x53888d[_0x4b7b('0x28')]['id']}})[_0x4b7b('0x1b')](handleEntityNotFound(_0x42c481,null))[_0x4b7b('0x1b')](function(_0x51e7da){if(_0x51e7da){return _0x51e7da[_0x4b7b('0x4c')](_0x53888d['body']['ids'],_['omit'](_0x53888d[_0x4b7b('0x36')],[_0x4b7b('0x39'),'id'])||{})[_0x4b7b('0x4d')](function(){return db[_0x4b7b('0x4e')]['findAll']({'attributes':['id','name',_0x4b7b('0x4f')],'where':{'id':_0x53888d[_0x4b7b('0x36')][_0x4b7b('0x39')]}});})[_0x4b7b('0x1b')](function(_0x43fd8b){socket[_0x4b7b('0x50')]('whatsappInteractionTags:save',{'id':Number(_0x53888d[_0x4b7b('0x28')]['id']),'tags':_0x43fd8b||[]});return{'id':Number(_0x53888d[_0x4b7b('0x28')]['id']),'tags':_0x43fd8b||[]};});}})[_0x4b7b('0x1b')](respondWithResult(_0x42c481,null))[_0x4b7b('0x26')](handleError(_0x42c481,null));};exports[_0x4b7b('0x51')]=function(_0x5bd219,_0x339543){return db['WhatsappInteraction'][_0x4b7b('0x34')]({'where':{'id':_0x5bd219['params']['id']}})[_0x4b7b('0x1b')](handleEntityNotFound(_0x339543,null))[_0x4b7b('0x1b')](function(_0x2a53bf){if(_0x2a53bf){return _0x2a53bf[_0x4b7b('0x51')](_0x5bd219[_0x4b7b('0x2b')][_0x4b7b('0x39')]);}})['then'](respondWithStatusCode(_0x339543,null))[_0x4b7b('0x26')](handleError(_0x339543,null));};exports[_0x4b7b('0x52')]=function(_0x4b2e11,_0x1db915){var _0x24dbe2=moment()['unix']()['toString']();var _0x44a893=path[_0x4b7b('0x53')](config[_0x4b7b('0x54')],_0x4b7b('0x55'),_0x4b7b('0x56'),_0x4b7b('0x57'));var _0x43a93e=path[_0x4b7b('0x53')](config[_0x4b7b('0x54')],_0x4b7b('0x55'),_0x4b7b('0x56'),'attachments');var _0x58a96c=path[_0x4b7b('0x53')](_0x44a893,_0x24dbe2);var _0x515f6e=util[_0x4b7b('0x47')](_0x4b7b('0x58'),_0x4b2e11['params']['id'],_0x24dbe2);var _0x35148a=path[_0x4b7b('0x53')](_0x44a893,_0x515f6e);var _0x2a1270=[];_0x2a1270[_0x4b7b('0x59')]({'model':db[_0x4b7b('0x5a')],'as':_0x4b7b('0x5a'),'attributes':['id',_0x4b7b('0x5b')],'raw':!![]});_0x2a1270['push']({'model':db[_0x4b7b('0x5c')],'as':_0x4b7b('0x5d'),'attributes':['id',_0x4b7b('0x5e'),_0x4b7b('0x5f')],'raw':!![]});if(_0x4b2e11[_0x4b7b('0x2b')][_0x4b7b('0x60')]){_0x2a1270['push']({'model':db['Attachment'],'as':_0x4b7b('0x61'),'raw':!![]});}var _0x40bb8d=[{'model':db[_0x4b7b('0x38')],'as':_0x4b7b('0x62'),'attributes':['id',_0x4b7b('0x36'),_0x4b7b('0x63'),_0x4b7b('0x64'),'secret',_0x4b7b('0x65')],'include':_0x2a1270}];_0x40bb8d[_0x4b7b('0x59')]({'model':db['WhatsappAccount'],'as':_0x4b7b('0x66'),'attributes':['id',_0x4b7b('0x1e')]});_0x40bb8d['push']({'model':db['User'],'as':_0x4b7b('0x67'),'attributes':['id','fullname']});return db[_0x4b7b('0x2a')][_0x4b7b('0x34')]({'where':{'id':_0x4b2e11[_0x4b7b('0x28')]['id']},'include':_0x40bb8d})[_0x4b7b('0x1b')](handleEntityNotFound(_0x1db915,null))['then'](function(_0x258ed5){if(_0x258ed5){var _0x157097=_0x258ed5['get']({'plain':!![]});fs['mkdirSync'](_0x58a96c);var _0x532807={'channel':'Whatsapp','account':_0x157097['Account'][_0x4b7b('0x1e')],'agent':_0x157097['Owner']?_0x157097[_0x4b7b('0x67')][_0x4b7b('0x5b')]:_0x4b7b('0x68'),'createdAt':moment(_0x157097['createdAt'])[_0x4b7b('0x47')]('YYYY-MM-DD\x20HH:mm:ss')[_0x4b7b('0x69')](),'closedAt':_0x157097[_0x4b7b('0x6a')]?moment(_0x157097[_0x4b7b('0x6b')])[_0x4b7b('0x47')]('YYYY-MM-DD\x20HH:mm:ss')['toString']():'','disposition':_0x157097[_0x4b7b('0x6c')],'messages':_(_0x157097[_0x4b7b('0x62')])[_0x4b7b('0x44')]({'secret':![]})['map'](function(_0x169058){if(_0x169058['Attachment']){var _0x36ace4=path['join'](_0x43a93e,_0x169058[_0x4b7b('0x61')][_0x4b7b('0x6d')]);if(fs[_0x4b7b('0x6e')](_0x36ace4)){fs['createReadStream'](_0x36ace4)[_0x4b7b('0x6f')](fs['createWriteStream'](path['join'](_0x58a96c,_0x169058[_0x4b7b('0x61')][_0x4b7b('0x6d')])));}}return{'date':moment(_0x169058[_0x4b7b('0x63')])['format']('YYYY-MM-DD\x20HH:mm:ss')['toString'](),'sender':_0x169058[_0x4b7b('0x64')]===_0x4b7b('0x70')?_0x169058[_0x4b7b('0x5a')]?_0x169058['User']['fullname']:_0x4b7b('0x71'):_0x169058[_0x4b7b('0x5d')][_0x4b7b('0x5e')]+(_0x169058[_0x4b7b('0x5d')][_0x4b7b('0x5f')]?'\x20'+_0x169058['Contact'][_0x4b7b('0x5f')]:''),'body':_0x169058[_0x4b7b('0x61')]?_0x169058[_0x4b7b('0x61')]['basename']:_0x169058[_0x4b7b('0x36')],'direction':_0x169058[_0x4b7b('0x64')]===_0x4b7b('0x70')?'A':'C','secret':_0x169058[_0x4b7b('0x72')],'read':_0x169058[_0x4b7b('0x65')],'attachment':_0x169058[_0x4b7b('0x61')]};})['value']()};return ejs[_0x4b7b('0x73')](path[_0x4b7b('0x53')](config[_0x4b7b('0x54')],_0x4b7b('0x55'),_0x4b7b('0x74'),'downloadInteraction.ejs'),{'interaction':_0x532807})[_0x4b7b('0x1b')](function(_0x607106){var _0x508946=path[_0x4b7b('0x53')](_0x58a96c,'transcript-'+_0x157097['id']+'-'+_0x24dbe2+_0x4b7b('0x75'));var _0x382fdb={'path':_0x508946,'channel':_0x4b7b('0x76'),'interactionId':_0x157097['id']};return pdf[_0x4b7b('0x77')](_0x607106,_0x382fdb);})[_0x4b7b('0x1b')](function(){return new BPromise(function(_0xa2cc74,_0x43ffc6){zipdir(_0x58a96c,{'saveTo':_0x35148a},function(_0x10e810,_0x335583){if(_0x10e810)return _0x43ffc6(_0x10e810);return _0xa2cc74(_0x335583);});})[_0x4b7b('0x1b')](function(){return new BPromise(function(_0x26988e,_0x50e139){rimraf(_0x58a96c,function(_0x21cf63){if(_0x21cf63)_0x50e139(_0x21cf63);return _0x26988e();});});})[_0x4b7b('0x1b')](function(){return _0x1db915[_0x4b7b('0x52')](_0x35148a,_0x515f6e,function(_0x282ec9){if(_0x282ec9){console[_0x4b7b('0x78')](_0x4b7b('0x79'),_0x282ec9);}else{fs[_0x4b7b('0x7a')](_0x35148a);}});});});}else{return _0x1db915['sendStatus'](0xc8);}})[_0x4b7b('0x26')](handleError(_0x1db915,null));};
\ No newline at end of file