about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--app/controllers/api/salmon_controller.rb2
-rw-r--r--app/workers/salmon_worker.rb9
2 files changed, 10 insertions, 1 deletions
diff --git a/app/controllers/api/salmon_controller.rb b/app/controllers/api/salmon_controller.rb
index 01862a900..a7872d542 100644
--- a/app/controllers/api/salmon_controller.rb
+++ b/app/controllers/api/salmon_controller.rb
@@ -10,7 +10,7 @@ class Api::SalmonController < ApiController
     if body.nil?
       head 200
     else
-      ProcessInteractionService.new.call(body, @account)
+      SalmonWorker.perform_async(@account.id, body.force_encoding('UTF-8'))
       head 201
     end
   end
diff --git a/app/workers/salmon_worker.rb b/app/workers/salmon_worker.rb
new file mode 100644
index 000000000..12b46e92f
--- /dev/null
+++ b/app/workers/salmon_worker.rb
@@ -0,0 +1,9 @@
+# frozen_string_literal: true
+
+class SalmonWorker
+  include Sidekiq::Worker
+
+  def perform(account_id, body)
+    ProcessInteractionService.new.call(body, Account.find(account_id))
+  end
+end