mirror of
https://akkoma.dev/AkkomaGang/akkoma.git
synced 2024-11-23 15:05:45 +00:00
[MastodonAPI] Add streaming of hashtags
This commit is contained in:
parent
5ffaa2bf69
commit
83efaa3af6
|
@ -84,6 +84,9 @@ defmodule Pleroma.Web.ActivityPub.ActivityPub do
|
||||||
Pleroma.Web.Streamer.stream("public:local", activity)
|
Pleroma.Web.Streamer.stream("public:local", activity)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
activity.data["object"]["tag"]
|
||||||
|
|> Enum.map(fn tag -> Pleroma.Web.Streamer.stream("hashtag:" <> tag, activity) end)
|
||||||
|
|
||||||
if activity.data["object"]["attachment"] != [] do
|
if activity.data["object"]["attachment"] != [] do
|
||||||
Pleroma.Web.Streamer.stream("public:media", activity)
|
Pleroma.Web.Streamer.stream("public:media", activity)
|
||||||
|
|
||||||
|
|
|
@ -23,16 +23,18 @@ defmodule Pleroma.Web.MastodonAPI.MastodonSocket do
|
||||||
"public:local:media",
|
"public:local:media",
|
||||||
"user",
|
"user",
|
||||||
"direct",
|
"direct",
|
||||||
"list"
|
"list",
|
||||||
|
"hashtag"
|
||||||
] <- params["stream"] do
|
] <- params["stream"] do
|
||||||
topic = if stream == "list", do: "list:#{params["list"]}", else: stream
|
topic = if stream == "list", do: "list:#{params["list"]}", else: stream
|
||||||
|
socket_stream = if stream == "hashtag", do: "hashtag:#{params["tag"]}", else: stream
|
||||||
|
|
||||||
socket =
|
socket =
|
||||||
socket
|
socket
|
||||||
|> assign(:topic, topic)
|
|> assign(:topic, topic)
|
||||||
|> assign(:user, user)
|
|> assign(:user, user)
|
||||||
|
|
||||||
Pleroma.Web.Streamer.add_socket(params["stream"], socket)
|
Pleroma.Web.Streamer.add_socket(socket_stream, socket)
|
||||||
{:ok, socket}
|
{:ok, socket}
|
||||||
else
|
else
|
||||||
_e -> :error
|
_e -> :error
|
||||||
|
|
Loading…
Reference in a new issue