summaryrefslogtreecommitdiff
path: root/app/controllers/api/agents
diff options
context:
space:
mode:
authormo khan <mo@mokhan.ca>2015-02-21 22:12:49 -0700
committermo khan <mo@mokhan.ca>2015-02-21 22:12:49 -0700
commit7cd78597d794efcf79090377bbc1909a1d6d3ad9 (patch)
treef4f55eb33be3912030c505198e67b1cba9ba2473 /app/controllers/api/agents
parentfeaf5cfae0f948ceebae4d1ff2c80d84cd76cae0 (diff)
parent05b427bd4d9f9c4ea60f9485f06d68de0b689d28 (diff)
merge with master
Diffstat (limited to 'app/controllers/api/agents')
-rw-r--r--app/controllers/api/agents/events_controller.rb22
-rw-r--r--app/controllers/api/agents/files_controller.rb20
2 files changed, 42 insertions, 0 deletions
diff --git a/app/controllers/api/agents/events_controller.rb b/app/controllers/api/agents/events_controller.rb
new file mode 100644
index 0000000..56b566f
--- /dev/null
+++ b/app/controllers/api/agents/events_controller.rb
@@ -0,0 +1,22 @@
+module Api
+ module Agents
+ class EventsController < ApiController
+ def create
+ @agent = Agent.find(params[:agent_id])
+ publish(EventMessage.new(
+ agent_id: @agent.id,
+ event_type: event_params[:type],
+ data: event_params[:data]
+ ))
+
+ render nothing: true
+ end
+
+ private
+
+ def event_params
+ params[:event]
+ end
+ end
+ end
+end
diff --git a/app/controllers/api/agents/files_controller.rb b/app/controllers/api/agents/files_controller.rb
new file mode 100644
index 0000000..c13eac9
--- /dev/null
+++ b/app/controllers/api/agents/files_controller.rb
@@ -0,0 +1,20 @@
+module Api
+ module Agents
+ class FilesController < ApiController
+ before_action do
+ request.format = :json
+ end
+
+ def show
+ @agent = Agent.find(params[:agent_id])
+ @fingerprint = params[:id]
+ @file = Disposition.find_by(fingerprint: params[:id])
+ publish(EventMessage.new(
+ agent_id: @agent.id,
+ event_type: :scanned,
+ data: params[:data]
+ ))
+ end
+ end
+ end
+end