diff options
Diffstat (limited to 'app/workers/cloud_queries.rb')
| -rw-r--r-- | app/workers/cloud_queries.rb | 24 |
1 files changed, 17 insertions, 7 deletions
diff --git a/app/workers/cloud_queries.rb b/app/workers/cloud_queries.rb index 00e6bd2..06b3dae 100644 --- a/app/workers/cloud_queries.rb +++ b/app/workers/cloud_queries.rb @@ -7,14 +7,24 @@ class CloudQueries def work(json) logger.info "Query for: #{json.inspect}" attributes = JSON.parse(json) - #fingerprint = attributes["fingerprint"] - #disposition = Disposition.find_by(fingerprint: fingerprint) - #if disposition.present? - #logger.info("#{disposition.state} disposition for: #{fingerprint}") - #else - #logger.info("Unknown disposition for: #{fingerprint}") - #end + publish(JSON.generate({ + agent_id: attributes["agent_id"], + name: "File #{attributes["name"]}", + data: attributes["data"] + }), to_queue: "worker.events") + + fingerprint = attributes["fingerprint"] + disposition = Disposition.find_by(fingerprint: fingerprint) + + if disposition.nil? + # publish command to fetch file from agent + #publish(JSON.generate({ + #command: :request_analysis, + #agent_id: attributes["agent_id"], + #fingerprint: fingerprint, + #}), to_queue: "worker.commands") + end ack! end |
