Wire up inReplyToStatusIds for ostatus.
[akkoma] / lib / pleroma / web / salmon / salmon.ex
index 3a8c307788979d5ea258b8190cec64c3d64a47be..b4f81b4edfdf41a7e80472f431b77a1e78bc71ac 100644 (file)
@@ -1,4 +1,6 @@
 defmodule Pleroma.Web.Salmon do
+  @httpoison Application.get_env(:pleroma, :httpoison)
+
   use Bitwise
   alias Pleroma.Web.XML
   alias Pleroma.Web.OStatus.ActivityRepresenter
@@ -135,7 +137,7 @@ defmodule Pleroma.Web.Salmon do
 
   defp send_to_user(_,_,_), do: nil
 
-  def publish(user, activity, poster \\ &HTTPoison.post/3)
+  def publish(user, activity, poster \\ &@httpoison.post/3)
   def publish(%{info: %{"keys" => keys}} = user, activity, poster) do
     feed = ActivityRepresenter.to_simple_form(activity, user, true)
     |> ActivityRepresenter.wrap_with_entry
@@ -148,8 +150,10 @@ defmodule Pleroma.Web.Salmon do
 
       remote_users(activity)
       |> Enum.each(fn(remote_user) ->
-        Logger.debug(fn -> "sending salmon to #{remote_user.ap_id}" end)
-        send_to_user(remote_user, feed, poster)
+        Task.start(fn ->
+          Logger.debug(fn -> "sending salmon to #{remote_user.ap_id}" end)
+          send_to_user(remote_user, feed, poster)
+        end)
       end)
     end
   end