X-Git-Url: https://git.squeep.com/?a=blobdiff_plain;f=lib%2Fpleroma%2Fweb%2Fstreamer.ex;h=fc3bbb13029d5b31612abe432735f82abf6160ac;hb=3bc7d122712b5cc35ba509542bde63ca130d6a40;hp=0b6cc89e906b4f2d8858fb68261b0d288062e686;hpb=35ba48494f5129d3a0010b045ff36d98e7e7984f;p=akkoma
diff --git a/lib/pleroma/web/streamer.ex b/lib/pleroma/web/streamer.ex
index 0b6cc89e9..fc3bbb130 100644
--- a/lib/pleroma/web/streamer.ex
+++ b/lib/pleroma/web/streamer.ex
@@ -1,5 +1,5 @@
# Pleroma: A lightweight social networking server
-# Copyright © 2017-2020 Pleroma Authors
+# Copyright © 2017-2021 Pleroma Authors
# SPDX-License-Identifier: AGPL-3.0-only
defmodule Pleroma.Web.Streamer do
@@ -151,7 +151,7 @@ defmodule Pleroma.Web.Streamer do
recipients = MapSet.new(item.recipients)
domain_blocks = Pleroma.Web.ActivityPub.MRF.subdomains_regex(user.domain_blocks)
- with parent <- Object.normalize(item) || item,
+ with parent <- Object.normalize(item, fetch: false) || item,
true <- Enum.all?([blocked_ap_ids, muted_ap_ids], &(item.actor not in &1)),
true <- item.data["type"] != "Announce" || item.actor not in reblog_muted_ap_ids,
true <-
@@ -186,18 +186,15 @@ defmodule Pleroma.Web.Streamer do
end)
end
- defp do_stream("relationships:update", item) do
- text = StreamerView.render("relationships_update.json", item)
+ defp do_stream("follow_relationship", item) do
+ text = StreamerView.render("follow_relationships_update.json", item)
+ user_topic = "user:#{item.follower.id}"
- [item.follower, item.following]
- |> Enum.map(fn %{id: id} -> "user:#{id}" end)
- |> Enum.each(fn user_topic ->
- Logger.debug("Trying to push relationships:update to #{user_topic}\n\n")
+ Logger.debug("Trying to push follow relationship update to #{user_topic}\n\n")
- Registry.dispatch(@registry, user_topic, fn list ->
- Enum.each(list, fn {pid, _auth} ->
- send(pid, {:text, text})
- end)
+ Registry.dispatch(@registry, user_topic, fn list ->
+ Enum.each(list, fn {pid, _auth} ->
+ send(pid, {:text, text})
end)
end)
end