Built motion from commit d5e4af8c.|2.6.23
[motion2.git] / server / api / whatsappInteraction / whatsappInteraction.controller.js
index 9e4301f..889f181 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x9e24=['attributes','fields','length','merge','options','find','then','create','update','body','describe','addMessage','WhatsappMessage','ids','findOne','filters','hasOwnProperty','nolimit','sort','where','pick','WhatsappInteractionId','filter','$gte','split','format','include','rows','addTags','omit','spread','Tag','color','emit','whatsappInteractionTags:save','removeTags','download','unix','toString','join','root','server','files','transcript-%d-%s.zip','push','User','fullname','Contact','lastName','attachments','Attachment','Messages','createdAt','direction','secret','read','WhatsappAccount','Account','Owner','Whatsapp','N.A.','closed','closedAt','disposition','pipe','basename','out','System','firstName','value','renderFile','views','downloadInteraction.ejs','.pdf','createPdfFromHTML','err','unlinkSync','rimraf','moment','bluebird','path','ejs','lodash','ioredis','../../components/interaction/service','../../components/export/pdf','../../config/logger','redis','localhost','./whatsappInteraction.socket','register','sendStatus','status','end','undefined','limit','count','offset','set','Content-Range','json','destroy','error','name','index','map','WhatsappInteraction','fieldName','type','key','findAll','query','catch','show','params','keys','rawAttributes','intersection','model'];(function(_0x2503a0,_0x1df296){var _0x283467=function(_0xa2c16){while(--_0xa2c16){_0x2503a0['push'](_0x2503a0['shift']());}};_0x283467(++_0x1df296);}(_0x9e24,0xc4));var _0x49e2=function(_0x2f9467,_0x40576f){_0x2f9467=_0x2f9467-0x0;var _0x39894c=_0x9e24[_0x2f9467];return _0x39894c;};'use strict';var rimraf=require(_0x49e2('0x0'));var zipdir=require('zip-dir');var moment=require(_0x49e2('0x1'));var BPromise=require(_0x49e2('0x2'));var util=require('util');var path=require(_0x49e2('0x3'));var ejs=require(_0x49e2('0x4'));var fs=require('fs');var _=require(_0x49e2('0x5'));var Redis=require(_0x49e2('0x6'));var interaction=require(_0x49e2('0x7'));var qs=require('../../components/parsers/qs');var pdf=require(_0x49e2('0x8'));var logger=require(_0x49e2('0x9'))('api');var config=require('../../config/environment');var db=require('../../mysqldb')['db'];config[_0x49e2('0xa')]=_['defaults'](config[_0x49e2('0xa')],{'host':_0x49e2('0xb'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config['redis']));require(_0x49e2('0xc'))[_0x49e2('0xd')](socket);function respondWithStatusCode(_0x1ff6fc,_0x12d743){_0x12d743=_0x12d743||0xcc;return function(_0x2b1611){if(_0x2b1611){return _0x1ff6fc[_0x49e2('0xe')](_0x12d743);}return _0x1ff6fc[_0x49e2('0xf')](_0x12d743)[_0x49e2('0x10')]();};}function respondWithResult(_0x1166a1,_0x30d9d8){_0x30d9d8=_0x30d9d8||0xc8;return function(_0x103372){if(_0x103372){return _0x1166a1['status'](_0x30d9d8)['json'](_0x103372);}};}function respondWithFilteredResult(_0x43a666,_0x553120){return function(_0x91d7b9){if(_0x91d7b9){var _0x324507=typeof _0x553120['offset']===_0x49e2('0x11')&&typeof _0x553120[_0x49e2('0x12')]===_0x49e2('0x11');var _0x25192f=_0x91d7b9[_0x49e2('0x13')];var _0x3de693=_0x324507?0x0:_0x553120[_0x49e2('0x14')];var _0x2a97b3=_0x324507?_0x91d7b9['count']:_0x553120[_0x49e2('0x14')]+_0x553120[_0x49e2('0x12')];var _0x21c9b6;if(_0x2a97b3>=_0x25192f){_0x2a97b3=_0x25192f;_0x21c9b6=0xc8;}else{_0x21c9b6=0xce;}_0x43a666[_0x49e2('0xf')](_0x21c9b6);return _0x43a666[_0x49e2('0x15')](_0x49e2('0x16'),_0x3de693+'-'+_0x2a97b3+'/'+_0x25192f)[_0x49e2('0x17')](_0x91d7b9);}return null;};}function saveUpdates(_0x45e042){return function(_0x1ba30a){if(_0x1ba30a){return _0x1ba30a['update'](_0x45e042)['then'](function(_0xd34244){return _0xd34244;});}return null;};}function removeEntity(_0x3ada85){return function(_0x5d8384){if(_0x5d8384){return _0x5d8384[_0x49e2('0x18')]()['then'](function(){_0x3ada85['status'](0xcc)[_0x49e2('0x10')]();});}};}function handleEntityNotFound(_0x50c262){return function(_0x4a1d76){if(!_0x4a1d76){_0x50c262['sendStatus'](0x194);}return _0x4a1d76;};}function handleError(_0x5e3145,_0x285311){_0x285311=_0x285311||0x1f4;return function(_0x1e40f2){logger[_0x49e2('0x19')](_0x1e40f2['stack']);if(_0x1e40f2[_0x49e2('0x1a')]){delete _0x1e40f2[_0x49e2('0x1a')];}_0x5e3145['status'](_0x285311)['send'](_0x1e40f2);};}exports[_0x49e2('0x1b')]=function(_0xae301,_0x448086){var _0xb8743f={};var _0x3f4be2=_[_0x49e2('0x1c')](db[_0x49e2('0x1d')]['rawAttributes'],function(_0x514a6d){return{'name':_0x514a6d[_0x49e2('0x1e')],'type':_0x514a6d[_0x49e2('0x1f')][_0x49e2('0x20')]};});_0xb8743f=qs['getOptions'](_0x3f4be2,_0xae301);return interaction[_0x49e2('0x21')]('whatsapp',_0xae301[_0x49e2('0x22')],_0xae301['user'],_0xb8743f,_0x3f4be2)['then'](respondWithFilteredResult(_0x448086,_0xb8743f))[_0x49e2('0x23')](handleError(_0x448086,null));};exports[_0x49e2('0x24')]=function(_0x228c5e,_0x56f910){var _0x53e168={'raw':![],'where':{'id':_0x228c5e[_0x49e2('0x25')]['id']}},_0x450119={};_0x450119['model']=_[_0x49e2('0x26')](db['WhatsappInteraction'][_0x49e2('0x27')]);_0x450119[_0x49e2('0x22')]=_[_0x49e2('0x26')](_0x228c5e[_0x49e2('0x22')]);_0x450119['filters']=_[_0x49e2('0x28')](_0x450119[_0x49e2('0x29')],_0x450119['query']);_0x53e168[_0x49e2('0x2a')]=_[_0x49e2('0x28')](_0x450119[_0x49e2('0x29')],qs[_0x49e2('0x2b')](_0x228c5e[_0x49e2('0x22')][_0x49e2('0x2b')]));_0x53e168[_0x49e2('0x2a')]=_0x53e168[_0x49e2('0x2a')][_0x49e2('0x2c')]?_0x53e168[_0x49e2('0x2a')]:_0x450119['model'];if(_0x228c5e['query']['includeAll']){_0x53e168['include']=[{'all':!![]}];}_0x53e168=_[_0x49e2('0x2d')]({},_0x53e168,_0x228c5e[_0x49e2('0x2e')]);return db['WhatsappInteraction'][_0x49e2('0x2f')](_0x53e168)[_0x49e2('0x30')](handleEntityNotFound(_0x56f910,null))['then'](respondWithResult(_0x56f910,null))['catch'](handleError(_0x56f910,null));};exports[_0x49e2('0x31')]=function(_0x3df45d,_0x4d0f2b){return db[_0x49e2('0x1d')][_0x49e2('0x31')](_0x3df45d['body'],{})[_0x49e2('0x30')](respondWithResult(_0x4d0f2b,0xc9))[_0x49e2('0x23')](handleError(_0x4d0f2b,null));};exports[_0x49e2('0x32')]=function(_0x5087ca,_0x55bca4){if(_0x5087ca[_0x49e2('0x33')]['id']){delete _0x5087ca[_0x49e2('0x33')]['id'];}return db['WhatsappInteraction']['find']({'where':{'id':_0x5087ca[_0x49e2('0x25')]['id']}})[_0x49e2('0x30')](handleEntityNotFound(_0x55bca4,null))[_0x49e2('0x30')](saveUpdates(_0x5087ca[_0x49e2('0x33')],null))['then'](respondWithResult(_0x55bca4,null))['catch'](handleError(_0x55bca4,null));};exports[_0x49e2('0x18')]=function(_0x441dff,_0x5812ec){return db[_0x49e2('0x1d')]['find']({'where':{'id':_0x441dff[_0x49e2('0x25')]['id']}})[_0x49e2('0x30')](handleEntityNotFound(_0x5812ec,null))['then'](removeEntity(_0x5812ec,null))['catch'](handleError(_0x5812ec,null));};exports[_0x49e2('0x34')]=function(_0x30d15f,_0x2f5c01){return db['WhatsappInteraction']['describe']()[_0x49e2('0x30')](respondWithResult(_0x2f5c01,null))[_0x49e2('0x23')](handleError(_0x2f5c01,null));};exports[_0x49e2('0x35')]=function(_0x1f2b35,_0x30fbe3){return db[_0x49e2('0x36')]['find']({'where':{'id':_0x1f2b35['params']['id']}})[_0x49e2('0x30')](handleEntityNotFound(_0x30fbe3,null))[_0x49e2('0x30')](function(_0x59229f){if(_0x59229f){return _0x59229f['addMessage'](_0x1f2b35[_0x49e2('0x33')][_0x49e2('0x37')],_['omit'](_0x1f2b35[_0x49e2('0x33')],[_0x49e2('0x37'),'id'])||{});}})[_0x49e2('0x30')](respondWithResult(_0x30fbe3,null))[_0x49e2('0x23')](handleError(_0x30fbe3,null));};exports['getMessages']=function(_0x469bc9,_0x209d6e){var _0x100012={'raw':![],'where':{}};var _0x110ddd={};var _0x1b1e73={'count':0x0,'rows':[]};return db[_0x49e2('0x1d')][_0x49e2('0x38')]({'where':{'id':_0x469bc9['params']['id']}})[_0x49e2('0x30')](handleEntityNotFound(_0x209d6e,null))['then'](function(_0x47535f){if(_0x47535f){_0x110ddd[_0x49e2('0x29')]=_[_0x49e2('0x26')](db[_0x49e2('0x36')]['rawAttributes']);_0x110ddd['query']=_[_0x49e2('0x26')](_0x469bc9[_0x49e2('0x22')]);_0x110ddd[_0x49e2('0x39')]=_['intersection'](_0x110ddd['model'],_0x110ddd[_0x49e2('0x22')]);_0x100012[_0x49e2('0x2a')]=_[_0x49e2('0x28')](_0x110ddd[_0x49e2('0x29')],qs[_0x49e2('0x2b')](_0x469bc9[_0x49e2('0x22')][_0x49e2('0x2b')]));_0x100012[_0x49e2('0x2a')]=_0x100012['attributes'][_0x49e2('0x2c')]?_0x100012[_0x49e2('0x2a')]:_0x110ddd[_0x49e2('0x29')];if(!_0x469bc9[_0x49e2('0x22')][_0x49e2('0x3a')](_0x49e2('0x3b'))){_0x100012[_0x49e2('0x12')]=qs[_0x49e2('0x12')](_0x469bc9[_0x49e2('0x22')][_0x49e2('0x12')]);_0x100012['offset']=qs[_0x49e2('0x14')](_0x469bc9['query'][_0x49e2('0x14')]);}_0x100012['order']=qs[_0x49e2('0x3c')](_0x469bc9[_0x49e2('0x22')][_0x49e2('0x3c')]);_0x100012[_0x49e2('0x3d')]=qs[_0x49e2('0x39')](_[_0x49e2('0x3e')](_0x469bc9[_0x49e2('0x22')],_0x110ddd[_0x49e2('0x39')]));_0x100012[_0x49e2('0x3d')][_0x49e2('0x3f')]=_0x47535f['id'];if(_0x469bc9[_0x49e2('0x22')]['filter']){_0x100012[_0x49e2('0x3d')]=_[_0x49e2('0x2d')](_0x100012[_0x49e2('0x3d')],{'$or':_['map'](_0x100012[_0x49e2('0x2a')],function(_0x21357e){var _0x426f6e={};_0x426f6e[_0x21357e]={'$like':'%'+_0x469bc9[_0x49e2('0x22')][_0x49e2('0x40')]+'%'};return _0x426f6e;})});}if(_0x469bc9[_0x49e2('0x22')]['$gte']){var _0x25f1f1=_0x469bc9[_0x49e2('0x22')][_0x49e2('0x41')][_0x49e2('0x42')](',');var _0x5e3e18={};_0x5e3e18[_0x25f1f1[0x0]]={'$gte':moment(_0x25f1f1[0x1])[_0x49e2('0x43')]('YYYY-MM-DD\x20HH:mm:ss')};_0x100012[_0x49e2('0x3d')]=_[_0x49e2('0x2d')](_0x100012[_0x49e2('0x3d')],_0x5e3e18);}_0x100012=_[_0x49e2('0x2d')]({},_0x100012,_0x469bc9[_0x49e2('0x2e')]);return db[_0x49e2('0x36')][_0x49e2('0x13')]({'where':_0x100012[_0x49e2('0x3d')]})[_0x49e2('0x30')](function(_0x3aff26){_0x1b1e73['count']=_0x3aff26;if(_0x469bc9[_0x49e2('0x22')]['includeAll']){_0x100012[_0x49e2('0x44')]=[{'all':!![]}];}return db[_0x49e2('0x36')]['findAll'](_0x100012);})[_0x49e2('0x30')](function(_0x3edf7a){_0x1b1e73[_0x49e2('0x45')]=_0x3edf7a;return _0x1b1e73;});}})[_0x49e2('0x30')](respondWithFilteredResult(_0x209d6e,_0x100012))['catch'](handleError(_0x209d6e,null));};exports[_0x49e2('0x46')]=function(_0x5a2b38,_0x462f46){return db[_0x49e2('0x1d')][_0x49e2('0x2f')]({'where':{'id':_0x5a2b38['params']['id']}})[_0x49e2('0x30')](handleEntityNotFound(_0x462f46,null))[_0x49e2('0x30')](function(_0x152c7b){if(_0x152c7b){return _0x152c7b['setTags'](_0x5a2b38[_0x49e2('0x33')][_0x49e2('0x37')],_[_0x49e2('0x47')](_0x5a2b38[_0x49e2('0x33')],['ids','id'])||{})[_0x49e2('0x48')](function(){return db[_0x49e2('0x49')]['findAll']({'attributes':['id',_0x49e2('0x1a'),_0x49e2('0x4a')],'where':{'id':_0x5a2b38['body'][_0x49e2('0x37')]}});})['then'](function(_0xdf6908){socket[_0x49e2('0x4b')](_0x49e2('0x4c'),{'id':Number(_0x5a2b38[_0x49e2('0x25')]['id']),'tags':_0xdf6908||[]});return{'id':Number(_0x5a2b38[_0x49e2('0x25')]['id']),'tags':_0xdf6908||[]};});}})[_0x49e2('0x30')](respondWithResult(_0x462f46,null))[_0x49e2('0x23')](handleError(_0x462f46,null));};exports[_0x49e2('0x4d')]=function(_0x26bae3,_0x42d290){return db[_0x49e2('0x1d')][_0x49e2('0x2f')]({'where':{'id':_0x26bae3['params']['id']}})[_0x49e2('0x30')](handleEntityNotFound(_0x42d290,null))[_0x49e2('0x30')](function(_0x36af48){if(_0x36af48){return _0x36af48['removeTags'](_0x26bae3[_0x49e2('0x22')][_0x49e2('0x37')]);}})[_0x49e2('0x30')](respondWithStatusCode(_0x42d290,null))[_0x49e2('0x23')](handleError(_0x42d290,null));};exports[_0x49e2('0x4e')]=function(_0x40ed8a,_0x57b48e){var _0x14dcb0=moment()[_0x49e2('0x4f')]()[_0x49e2('0x50')]();var _0x39a26c=path[_0x49e2('0x51')](config[_0x49e2('0x52')],_0x49e2('0x53'),_0x49e2('0x54'),'tmp');var _0x532975=path[_0x49e2('0x51')](config['root'],'server','files','attachments');var _0x1dd696=path[_0x49e2('0x51')](_0x39a26c,_0x14dcb0);var _0x236319=util[_0x49e2('0x43')](_0x49e2('0x55'),_0x40ed8a[_0x49e2('0x25')]['id'],_0x14dcb0);var _0x4eb4b7=path['join'](_0x39a26c,_0x236319);var _0x745869=[];_0x745869[_0x49e2('0x56')]({'model':db['User'],'as':_0x49e2('0x57'),'attributes':['id',_0x49e2('0x58')],'raw':!![]});_0x745869[_0x49e2('0x56')]({'model':db['CmContact'],'as':_0x49e2('0x59'),'attributes':['id','firstName',_0x49e2('0x5a')],'raw':!![]});if(_0x40ed8a[_0x49e2('0x22')][_0x49e2('0x5b')]){_0x745869[_0x49e2('0x56')]({'model':db[_0x49e2('0x5c')],'as':'Attachment','raw':!![]});}var _0x47bb5f=[{'model':db[_0x49e2('0x36')],'as':_0x49e2('0x5d'),'attributes':['id',_0x49e2('0x33'),_0x49e2('0x5e'),_0x49e2('0x5f'),_0x49e2('0x60'),_0x49e2('0x61')],'include':_0x745869}];_0x47bb5f[_0x49e2('0x56')]({'model':db[_0x49e2('0x62')],'as':_0x49e2('0x63'),'attributes':['id','name']});_0x47bb5f['push']({'model':db['User'],'as':_0x49e2('0x64'),'attributes':['id',_0x49e2('0x58')]});return db[_0x49e2('0x1d')][_0x49e2('0x2f')]({'where':{'id':_0x40ed8a[_0x49e2('0x25')]['id']},'include':_0x47bb5f})['then'](handleEntityNotFound(_0x57b48e,null))['then'](function(_0x1fe66b){if(_0x1fe66b){var _0x13668e=_0x1fe66b['get']({'plain':!![]});fs['mkdirSync'](_0x1dd696);var _0x462173={'channel':_0x49e2('0x65'),'account':_0x13668e['Account'][_0x49e2('0x1a')],'agent':_0x13668e[_0x49e2('0x64')]?_0x13668e[_0x49e2('0x64')]['fullname']:_0x49e2('0x66'),'createdAt':moment(_0x13668e[_0x49e2('0x5e')])[_0x49e2('0x43')]('YYYY-MM-DD\x20HH:mm:ss')[_0x49e2('0x50')](),'closedAt':_0x13668e[_0x49e2('0x67')]?moment(_0x13668e[_0x49e2('0x68')])[_0x49e2('0x43')]('YYYY-MM-DD\x20HH:mm:ss')[_0x49e2('0x50')]():'','disposition':_0x13668e[_0x49e2('0x69')],'messages':_(_0x13668e[_0x49e2('0x5d')])[_0x49e2('0x40')]({'secret':![]})[_0x49e2('0x1c')](function(_0xb3ea4){if(_0xb3ea4['Attachment']){var _0x2fd2a6=path[_0x49e2('0x51')](_0x532975,_0xb3ea4[_0x49e2('0x5c')]['basename']);if(fs['existsSync'](_0x2fd2a6)){fs['createReadStream'](_0x2fd2a6)[_0x49e2('0x6a')](fs['createWriteStream'](path[_0x49e2('0x51')](_0x1dd696,_0xb3ea4['Attachment'][_0x49e2('0x6b')])));}}return{'date':moment(_0xb3ea4[_0x49e2('0x5e')])['format']('YYYY-MM-DD\x20HH:mm:ss')[_0x49e2('0x50')](),'sender':_0xb3ea4[_0x49e2('0x5f')]===_0x49e2('0x6c')?_0xb3ea4[_0x49e2('0x57')]?_0xb3ea4[_0x49e2('0x57')][_0x49e2('0x58')]:_0x49e2('0x6d'):_0xb3ea4[_0x49e2('0x59')][_0x49e2('0x6e')]+(_0xb3ea4[_0x49e2('0x59')][_0x49e2('0x5a')]?'\x20'+_0xb3ea4[_0x49e2('0x59')]['lastName']:''),'body':_0xb3ea4['Attachment']?_0xb3ea4[_0x49e2('0x5c')][_0x49e2('0x6b')]:_0xb3ea4['body'],'direction':_0xb3ea4['direction']===_0x49e2('0x6c')?'A':'C','secret':_0xb3ea4[_0x49e2('0x60')],'read':_0xb3ea4[_0x49e2('0x61')],'attachment':_0xb3ea4[_0x49e2('0x5c')]};})[_0x49e2('0x6f')]()};return ejs[_0x49e2('0x70')](path[_0x49e2('0x51')](config[_0x49e2('0x52')],_0x49e2('0x53'),_0x49e2('0x71'),_0x49e2('0x72')),{'interaction':_0x462173})['then'](function(_0x3974d8){var _0x9e7e68=path[_0x49e2('0x51')](_0x1dd696,'transcript-'+_0x13668e['id']+'-'+_0x14dcb0+_0x49e2('0x73'));var _0x140403={'path':_0x9e7e68,'channel':_0x49e2('0x65'),'interactionId':_0x13668e['id']};return pdf[_0x49e2('0x74')](_0x3974d8,_0x140403);})[_0x49e2('0x30')](function(){return new BPromise(function(_0x2623d6,_0x5751f9){zipdir(_0x1dd696,{'saveTo':_0x4eb4b7},function(_0x4d6938,_0xd901d2){if(_0x4d6938)return _0x5751f9(_0x4d6938);return _0x2623d6(_0xd901d2);});})[_0x49e2('0x30')](function(){return new BPromise(function(_0x20273c,_0x5c271f){rimraf(_0x1dd696,function(_0x5c7d71){if(_0x5c7d71)_0x5c271f(_0x5c7d71);return _0x20273c();});});})[_0x49e2('0x30')](function(){return _0x57b48e['download'](_0x4eb4b7,_0x236319,function(_0x50e70f){if(_0x50e70f){console['log'](_0x49e2('0x75'),_0x50e70f);}else{fs[_0x49e2('0x76')](_0x4eb4b7);}});});});}else{return _0x57b48e[_0x49e2('0xe')](0xc8);}})[_0x49e2('0x23')](handleError(_0x57b48e,null));};
\ No newline at end of file
+var _0x934b=['set','Content-Range','destroy','then','error','stack','name','send','index','type','key','getOptions','findAll','query','user','catch','show','model','WhatsappInteraction','rawAttributes','keys','filters','attributes','intersection','fields','length','include','merge','options','find','create','body','update','params','describe','addMessage','WhatsappMessage','omit','ids','getMessages','findOne','sort','where','pick','$gte','format','YYYY-MM-DD\x20HH:mm:ss','includeAll','rows','addTags','setTags','spread','Tag','color','emit','whatsappInteractionTags:save','removeTags','download','unix','toString','join','root','server','files','tmp','attachments','transcript-%d-%s.zip','push','User','Contact','firstName','lastName','Attachment','Messages','createdAt','direction','read','WhatsappAccount','Account','get','mkdirSync','Owner','fullname','closed','closedAt','basename','existsSync','createReadStream','pipe','createWriteStream','out','System','secret','value','renderFile','views','downloadInteraction.ejs','Whatsapp','createPdfFromHTML','log','err','rimraf','zip-dir','moment','bluebird','path','ejs','lodash','ioredis','../../components/interaction/service','../../components/parsers/qs','../../components/export/pdf','../../config/logger','../../config/environment','redis','localhost','socket.io-emitter','./whatsappInteraction.socket','register','sendStatus','status','end','json','offset','undefined','limit','count'];(function(_0x2becba,_0x4ea656){var _0x90b5dd=function(_0x26ae2b){while(--_0x26ae2b){_0x2becba['push'](_0x2becba['shift']());}};_0x90b5dd(++_0x4ea656);}(_0x934b,0xe4));var _0xb934=function(_0x36f5cb,_0x2a720f){_0x36f5cb=_0x36f5cb-0x0;var _0x58d6ce=_0x934b[_0x36f5cb];return _0x58d6ce;};'use strict';var rimraf=require(_0xb934('0x0'));var zipdir=require(_0xb934('0x1'));var moment=require(_0xb934('0x2'));var BPromise=require(_0xb934('0x3'));var util=require('util');var path=require(_0xb934('0x4'));var ejs=require(_0xb934('0x5'));var fs=require('fs');var _=require(_0xb934('0x6'));var Redis=require(_0xb934('0x7'));var interaction=require(_0xb934('0x8'));var qs=require(_0xb934('0x9'));var pdf=require(_0xb934('0xa'));var logger=require(_0xb934('0xb'))('api');var config=require(_0xb934('0xc'));var db=require('../../mysqldb')['db'];config[_0xb934('0xd')]=_['defaults'](config[_0xb934('0xd')],{'host':_0xb934('0xe'),'port':0x18eb});var socket=require(_0xb934('0xf'))(new Redis(config[_0xb934('0xd')]));require(_0xb934('0x10'))[_0xb934('0x11')](socket);function respondWithStatusCode(_0x275c3f,_0x552155){_0x552155=_0x552155||0xcc;return function(_0x4ab59d){if(_0x4ab59d){return _0x275c3f[_0xb934('0x12')](_0x552155);}return _0x275c3f[_0xb934('0x13')](_0x552155)[_0xb934('0x14')]();};}function respondWithResult(_0x1c7234,_0x4b1bab){_0x4b1bab=_0x4b1bab||0xc8;return function(_0x431934){if(_0x431934){return _0x1c7234[_0xb934('0x13')](_0x4b1bab)[_0xb934('0x15')](_0x431934);}};}function respondWithFilteredResult(_0xd5fab4,_0x516d6a){return function(_0x3590d9){if(_0x3590d9){var _0x24ce2f=typeof _0x516d6a[_0xb934('0x16')]===_0xb934('0x17')&&typeof _0x516d6a[_0xb934('0x18')]===_0xb934('0x17');var _0x512642=_0x3590d9[_0xb934('0x19')];var _0x1ea202=_0x24ce2f?0x0:_0x516d6a[_0xb934('0x16')];var _0x15f749=_0x24ce2f?_0x3590d9[_0xb934('0x19')]:_0x516d6a[_0xb934('0x16')]+_0x516d6a[_0xb934('0x18')];var _0x122b4a;if(_0x15f749>=_0x512642){_0x15f749=_0x512642;_0x122b4a=0xc8;}else{_0x122b4a=0xce;}_0xd5fab4['status'](_0x122b4a);return _0xd5fab4[_0xb934('0x1a')](_0xb934('0x1b'),_0x1ea202+'-'+_0x15f749+'/'+_0x512642)[_0xb934('0x15')](_0x3590d9);}return null;};}function saveUpdates(_0x4d2de5){return function(_0x474d89){if(_0x474d89){return _0x474d89['update'](_0x4d2de5)['then'](function(_0xde2c30){return _0xde2c30;});}return null;};}function removeEntity(_0xf0c0d){return function(_0x2cfdc4){if(_0x2cfdc4){return _0x2cfdc4[_0xb934('0x1c')]()[_0xb934('0x1d')](function(){_0xf0c0d[_0xb934('0x13')](0xcc)[_0xb934('0x14')]();});}};}function handleEntityNotFound(_0x2db191){return function(_0x46ff39){if(!_0x46ff39){_0x2db191[_0xb934('0x12')](0x194);}return _0x46ff39;};}function handleError(_0x8b21f6,_0x269644){_0x269644=_0x269644||0x1f4;return function(_0x36416c){logger[_0xb934('0x1e')](_0x36416c[_0xb934('0x1f')]);if(_0x36416c[_0xb934('0x20')]){delete _0x36416c['name'];}_0x8b21f6[_0xb934('0x13')](_0x269644)[_0xb934('0x21')](_0x36416c);};}exports[_0xb934('0x22')]=function(_0x3a8ed3,_0x103329){var _0x1c8078={};var _0x4517e0=_['map'](db['WhatsappInteraction']['rawAttributes'],function(_0x214c23){return{'name':_0x214c23['fieldName'],'type':_0x214c23[_0xb934('0x23')][_0xb934('0x24')]};});_0x1c8078=qs[_0xb934('0x25')](_0x4517e0,_0x3a8ed3);return interaction[_0xb934('0x26')]('whatsapp',_0x3a8ed3[_0xb934('0x27')],_0x3a8ed3[_0xb934('0x28')],_0x1c8078,_0x4517e0)[_0xb934('0x1d')](respondWithFilteredResult(_0x103329,_0x1c8078))[_0xb934('0x29')](handleError(_0x103329,null));};exports[_0xb934('0x2a')]=function(_0xf30b02,_0x402e3f){var _0x50e0f5={'raw':![],'where':{'id':_0xf30b02['params']['id']}},_0x26c32b={};_0x26c32b[_0xb934('0x2b')]=_['keys'](db[_0xb934('0x2c')][_0xb934('0x2d')]);_0x26c32b['query']=_[_0xb934('0x2e')](_0xf30b02[_0xb934('0x27')]);_0x26c32b[_0xb934('0x2f')]=_['intersection'](_0x26c32b[_0xb934('0x2b')],_0x26c32b[_0xb934('0x27')]);_0x50e0f5[_0xb934('0x30')]=_[_0xb934('0x31')](_0x26c32b[_0xb934('0x2b')],qs[_0xb934('0x32')](_0xf30b02[_0xb934('0x27')][_0xb934('0x32')]));_0x50e0f5[_0xb934('0x30')]=_0x50e0f5[_0xb934('0x30')][_0xb934('0x33')]?_0x50e0f5[_0xb934('0x30')]:_0x26c32b[_0xb934('0x2b')];if(_0xf30b02[_0xb934('0x27')]['includeAll']){_0x50e0f5[_0xb934('0x34')]=[{'all':!![]}];}_0x50e0f5=_[_0xb934('0x35')]({},_0x50e0f5,_0xf30b02[_0xb934('0x36')]);return db['WhatsappInteraction'][_0xb934('0x37')](_0x50e0f5)[_0xb934('0x1d')](handleEntityNotFound(_0x402e3f,null))[_0xb934('0x1d')](respondWithResult(_0x402e3f,null))[_0xb934('0x29')](handleError(_0x402e3f,null));};exports[_0xb934('0x38')]=function(_0x26a08e,_0x43f6a5){return db[_0xb934('0x2c')]['create'](_0x26a08e[_0xb934('0x39')],{})[_0xb934('0x1d')](respondWithResult(_0x43f6a5,0xc9))[_0xb934('0x29')](handleError(_0x43f6a5,null));};exports[_0xb934('0x3a')]=function(_0x76fbf5,_0x1db6d2){if(_0x76fbf5[_0xb934('0x39')]['id']){delete _0x76fbf5['body']['id'];}return db[_0xb934('0x2c')]['find']({'where':{'id':_0x76fbf5[_0xb934('0x3b')]['id']}})[_0xb934('0x1d')](handleEntityNotFound(_0x1db6d2,null))[_0xb934('0x1d')](saveUpdates(_0x76fbf5[_0xb934('0x39')],null))[_0xb934('0x1d')](respondWithResult(_0x1db6d2,null))[_0xb934('0x29')](handleError(_0x1db6d2,null));};exports[_0xb934('0x1c')]=function(_0x41fb3e,_0x3203aa){return db[_0xb934('0x2c')]['find']({'where':{'id':_0x41fb3e[_0xb934('0x3b')]['id']}})[_0xb934('0x1d')](handleEntityNotFound(_0x3203aa,null))[_0xb934('0x1d')](removeEntity(_0x3203aa,null))[_0xb934('0x29')](handleError(_0x3203aa,null));};exports[_0xb934('0x3c')]=function(_0xcffc90,_0x2d3265){return db['WhatsappInteraction']['describe']()[_0xb934('0x1d')](respondWithResult(_0x2d3265,null))[_0xb934('0x29')](handleError(_0x2d3265,null));};exports[_0xb934('0x3d')]=function(_0x28b3af,_0x4f9054){return db[_0xb934('0x3e')]['find']({'where':{'id':_0x28b3af[_0xb934('0x3b')]['id']}})[_0xb934('0x1d')](handleEntityNotFound(_0x4f9054,null))[_0xb934('0x1d')](function(_0x2cb12d){if(_0x2cb12d){return _0x2cb12d['addMessage'](_0x28b3af[_0xb934('0x39')]['ids'],_[_0xb934('0x3f')](_0x28b3af[_0xb934('0x39')],[_0xb934('0x40'),'id'])||{});}})[_0xb934('0x1d')](respondWithResult(_0x4f9054,null))[_0xb934('0x29')](handleError(_0x4f9054,null));};exports[_0xb934('0x41')]=function(_0x567ed8,_0x4119a6){var _0xb65684={'raw':![],'where':{}};var _0x2d8070={};var _0x5f41ee={'count':0x0,'rows':[]};return db[_0xb934('0x2c')][_0xb934('0x42')]({'where':{'id':_0x567ed8[_0xb934('0x3b')]['id']}})[_0xb934('0x1d')](handleEntityNotFound(_0x4119a6,null))[_0xb934('0x1d')](function(_0x470a2e){if(_0x470a2e){_0x2d8070[_0xb934('0x2b')]=_[_0xb934('0x2e')](db[_0xb934('0x3e')]['rawAttributes']);_0x2d8070[_0xb934('0x27')]=_[_0xb934('0x2e')](_0x567ed8[_0xb934('0x27')]);_0x2d8070[_0xb934('0x2f')]=_[_0xb934('0x31')](_0x2d8070['model'],_0x2d8070[_0xb934('0x27')]);_0xb65684['attributes']=_[_0xb934('0x31')](_0x2d8070['model'],qs[_0xb934('0x32')](_0x567ed8['query']['fields']));_0xb65684[_0xb934('0x30')]=_0xb65684[_0xb934('0x30')][_0xb934('0x33')]?_0xb65684[_0xb934('0x30')]:_0x2d8070[_0xb934('0x2b')];if(!_0x567ed8[_0xb934('0x27')]['hasOwnProperty']('nolimit')){_0xb65684[_0xb934('0x18')]=qs[_0xb934('0x18')](_0x567ed8['query'][_0xb934('0x18')]);_0xb65684['offset']=qs[_0xb934('0x16')](_0x567ed8[_0xb934('0x27')]['offset']);}_0xb65684['order']=qs[_0xb934('0x43')](_0x567ed8[_0xb934('0x27')][_0xb934('0x43')]);_0xb65684[_0xb934('0x44')]=qs[_0xb934('0x2f')](_[_0xb934('0x45')](_0x567ed8[_0xb934('0x27')],_0x2d8070[_0xb934('0x2f')]));_0xb65684[_0xb934('0x44')]['WhatsappInteractionId']=_0x470a2e['id'];if(_0x567ed8[_0xb934('0x27')]['filter']){_0xb65684[_0xb934('0x44')]=_[_0xb934('0x35')](_0xb65684[_0xb934('0x44')],{'$or':_['map'](_0xb65684[_0xb934('0x30')],function(_0x48ae08){var _0xcfef17={};_0xcfef17[_0x48ae08]={'$like':'%'+_0x567ed8[_0xb934('0x27')]['filter']+'%'};return _0xcfef17;})});}if(_0x567ed8['query'][_0xb934('0x46')]){var _0x509247=_0x567ed8[_0xb934('0x27')][_0xb934('0x46')]['split'](',');var _0x5ae47c={};_0x5ae47c[_0x509247[0x0]]={'$gte':moment(_0x509247[0x1])[_0xb934('0x47')](_0xb934('0x48'))};_0xb65684[_0xb934('0x44')]=_[_0xb934('0x35')](_0xb65684[_0xb934('0x44')],_0x5ae47c);}_0xb65684=_[_0xb934('0x35')]({},_0xb65684,_0x567ed8['options']);return db['WhatsappMessage']['count']({'where':_0xb65684[_0xb934('0x44')]})[_0xb934('0x1d')](function(_0x18c4d0){_0x5f41ee['count']=_0x18c4d0;if(_0x567ed8[_0xb934('0x27')][_0xb934('0x49')]){_0xb65684[_0xb934('0x34')]=[{'all':!![]}];}return db[_0xb934('0x3e')][_0xb934('0x26')](_0xb65684);})[_0xb934('0x1d')](function(_0x2ccd57){_0x5f41ee[_0xb934('0x4a')]=_0x2ccd57;return _0x5f41ee;});}})['then'](respondWithFilteredResult(_0x4119a6,_0xb65684))['catch'](handleError(_0x4119a6,null));};exports[_0xb934('0x4b')]=function(_0x571297,_0x24f179){return db[_0xb934('0x2c')]['find']({'where':{'id':_0x571297[_0xb934('0x3b')]['id']}})[_0xb934('0x1d')](handleEntityNotFound(_0x24f179,null))[_0xb934('0x1d')](function(_0x55a508){if(_0x55a508){return _0x55a508[_0xb934('0x4c')](_0x571297['body'][_0xb934('0x40')],_[_0xb934('0x3f')](_0x571297[_0xb934('0x39')],[_0xb934('0x40'),'id'])||{})[_0xb934('0x4d')](function(){return db[_0xb934('0x4e')][_0xb934('0x26')]({'attributes':['id',_0xb934('0x20'),_0xb934('0x4f')],'where':{'id':_0x571297[_0xb934('0x39')][_0xb934('0x40')]}});})[_0xb934('0x1d')](function(_0x4976c2){socket[_0xb934('0x50')](_0xb934('0x51'),{'id':Number(_0x571297['params']['id']),'tags':_0x4976c2||[]});return{'id':Number(_0x571297[_0xb934('0x3b')]['id']),'tags':_0x4976c2||[]};});}})[_0xb934('0x1d')](respondWithResult(_0x24f179,null))[_0xb934('0x29')](handleError(_0x24f179,null));};exports['removeTags']=function(_0x9cee34,_0x2584fd){return db['WhatsappInteraction'][_0xb934('0x37')]({'where':{'id':_0x9cee34['params']['id']}})[_0xb934('0x1d')](handleEntityNotFound(_0x2584fd,null))[_0xb934('0x1d')](function(_0x170f87){if(_0x170f87){return _0x170f87[_0xb934('0x52')](_0x9cee34['query'][_0xb934('0x40')]);}})['then'](respondWithStatusCode(_0x2584fd,null))['catch'](handleError(_0x2584fd,null));};exports[_0xb934('0x53')]=function(_0x25064e,_0x1feef5){var _0x3ed5e2=moment()[_0xb934('0x54')]()[_0xb934('0x55')]();var _0x17a0ad=path[_0xb934('0x56')](config[_0xb934('0x57')],_0xb934('0x58'),_0xb934('0x59'),_0xb934('0x5a'));var _0x281a14=path['join'](config[_0xb934('0x57')],_0xb934('0x58'),_0xb934('0x59'),_0xb934('0x5b'));var _0xb0eb06=path[_0xb934('0x56')](_0x17a0ad,_0x3ed5e2);var _0x154c39=util[_0xb934('0x47')](_0xb934('0x5c'),_0x25064e[_0xb934('0x3b')]['id'],_0x3ed5e2);var _0x3c11fd=path['join'](_0x17a0ad,_0x154c39);var _0x2467bc=[];_0x2467bc[_0xb934('0x5d')]({'model':db[_0xb934('0x5e')],'as':'User','attributes':['id','fullname'],'raw':!![]});_0x2467bc[_0xb934('0x5d')]({'model':db['CmContact'],'as':_0xb934('0x5f'),'attributes':['id',_0xb934('0x60'),_0xb934('0x61')],'raw':!![]});if(_0x25064e[_0xb934('0x27')][_0xb934('0x5b')]){_0x2467bc[_0xb934('0x5d')]({'model':db[_0xb934('0x62')],'as':_0xb934('0x62'),'raw':!![]});}var _0x3efa21=[{'model':db['WhatsappMessage'],'as':_0xb934('0x63'),'attributes':['id',_0xb934('0x39'),_0xb934('0x64'),_0xb934('0x65'),'secret',_0xb934('0x66')],'include':_0x2467bc}];_0x3efa21[_0xb934('0x5d')]({'model':db[_0xb934('0x67')],'as':_0xb934('0x68'),'attributes':['id',_0xb934('0x20')]});_0x3efa21[_0xb934('0x5d')]({'model':db[_0xb934('0x5e')],'as':'Owner','attributes':['id','fullname']});return db[_0xb934('0x2c')][_0xb934('0x37')]({'where':{'id':_0x25064e[_0xb934('0x3b')]['id']},'include':_0x3efa21})['then'](handleEntityNotFound(_0x1feef5,null))[_0xb934('0x1d')](function(_0x346aeb){if(_0x346aeb){var _0x3c7eba=_0x346aeb[_0xb934('0x69')]({'plain':!![]});fs[_0xb934('0x6a')](_0xb0eb06);var _0x18ad00={'channel':'Whatsapp','account':_0x3c7eba[_0xb934('0x68')]['name'],'agent':_0x3c7eba[_0xb934('0x6b')]?_0x3c7eba['Owner'][_0xb934('0x6c')]:'N.A.','createdAt':moment(_0x3c7eba['createdAt'])[_0xb934('0x47')](_0xb934('0x48'))[_0xb934('0x55')](),'closedAt':_0x3c7eba[_0xb934('0x6d')]?moment(_0x3c7eba[_0xb934('0x6e')])[_0xb934('0x47')](_0xb934('0x48'))[_0xb934('0x55')]():'','disposition':_0x3c7eba['disposition'],'messages':_(_0x3c7eba[_0xb934('0x63')])['filter']({'secret':![]})['map'](function(_0x682c88){if(_0x682c88[_0xb934('0x62')]){var _0x2f99ce=path[_0xb934('0x56')](_0x281a14,_0x682c88[_0xb934('0x62')][_0xb934('0x6f')]);if(fs[_0xb934('0x70')](_0x2f99ce)){fs[_0xb934('0x71')](_0x2f99ce)[_0xb934('0x72')](fs[_0xb934('0x73')](path[_0xb934('0x56')](_0xb0eb06,_0x682c88[_0xb934('0x62')][_0xb934('0x6f')])));}}return{'date':moment(_0x682c88[_0xb934('0x64')])[_0xb934('0x47')](_0xb934('0x48'))['toString'](),'sender':_0x682c88[_0xb934('0x65')]===_0xb934('0x74')?_0x682c88['User']?_0x682c88[_0xb934('0x5e')][_0xb934('0x6c')]:_0xb934('0x75'):_0x682c88['Contact'][_0xb934('0x60')]+(_0x682c88['Contact']['lastName']?'\x20'+_0x682c88[_0xb934('0x5f')]['lastName']:''),'body':_0x682c88[_0xb934('0x62')]?_0x682c88[_0xb934('0x62')][_0xb934('0x6f')]:_0x682c88[_0xb934('0x39')],'direction':_0x682c88[_0xb934('0x65')]===_0xb934('0x74')?'A':'C','secret':_0x682c88[_0xb934('0x76')],'read':_0x682c88[_0xb934('0x66')],'attachment':_0x682c88[_0xb934('0x62')]};})[_0xb934('0x77')]()};return ejs[_0xb934('0x78')](path[_0xb934('0x56')](config[_0xb934('0x57')],_0xb934('0x58'),_0xb934('0x79'),_0xb934('0x7a')),{'interaction':_0x18ad00})[_0xb934('0x1d')](function(_0x251d4e){var _0x355610=path[_0xb934('0x56')](_0xb0eb06,'transcript-'+_0x3c7eba['id']+'-'+_0x3ed5e2+'.pdf');var _0x195fa5={'path':_0x355610,'channel':_0xb934('0x7b'),'interactionId':_0x3c7eba['id']};return pdf[_0xb934('0x7c')](_0x251d4e,_0x195fa5);})[_0xb934('0x1d')](function(){return new BPromise(function(_0x2a622d,_0x519545){zipdir(_0xb0eb06,{'saveTo':_0x3c11fd},function(_0x40cede,_0x622182){if(_0x40cede)return _0x519545(_0x40cede);return _0x2a622d(_0x622182);});})[_0xb934('0x1d')](function(){return new BPromise(function(_0x382072,_0x36b155){rimraf(_0xb0eb06,function(_0x50bb81){if(_0x50bb81)_0x36b155(_0x50bb81);return _0x382072();});});})[_0xb934('0x1d')](function(){return _0x1feef5[_0xb934('0x53')](_0x3c11fd,_0x154c39,function(_0x337fe4){if(_0x337fe4){console[_0xb934('0x7d')](_0xb934('0x7e'),_0x337fe4);}else{fs['unlinkSync'](_0x3c11fd);}});});});}else{return _0x1feef5[_0xb934('0x12')](0xc8);}})[_0xb934('0x29')](handleError(_0x1feef5,null));};
\ No newline at end of file