ActivityPubController: Add Mastodon activity compat route.
This commit is contained in:
parent
8a4bd9e5d1
commit
355aa3bdc7
6 changed files with 42 additions and 4 deletions
|
|
@ -102,8 +102,8 @@ defmodule Pleroma.Web.ActivityPub.ActivityPubController do
|
|||
conn
|
||||
end
|
||||
|
||||
def activity(conn, %{"uuid" => uuid}) do
|
||||
with ap_id <- o_status_url(conn, :activity, uuid),
|
||||
def activity(conn, _params) do
|
||||
with ap_id <- Endpoint.url() <> conn.request_path,
|
||||
%Activity{} = activity <- Activity.normalize(ap_id),
|
||||
{_, true} <- {:public?, Visibility.is_public?(activity)} do
|
||||
conn
|
||||
|
|
|
|||
|
|
@ -468,6 +468,8 @@ defmodule Pleroma.Web.CommonAPI.Utils do
|
|||
|> Enum.map(& &1.ap_id)
|
||||
|
||||
recipients ++ subscriber_ids
|
||||
else
|
||||
_e -> recipients
|
||||
end
|
||||
end
|
||||
|
||||
|
|
@ -479,6 +481,8 @@ defmodule Pleroma.Web.CommonAPI.Utils do
|
|||
|> User.get_followers()
|
||||
|> Enum.map(& &1.ap_id)
|
||||
|> Enum.concat(recipients)
|
||||
else
|
||||
_e -> recipients
|
||||
end
|
||||
end
|
||||
|
||||
|
|
|
|||
|
|
@ -54,7 +54,7 @@ defmodule Pleroma.Web.OStatus.OStatusController do
|
|||
end
|
||||
end
|
||||
|
||||
def activity(%{assigns: %{format: format}} = conn, %{"uuid" => _uuid})
|
||||
def activity(%{assigns: %{format: format}} = conn, _params)
|
||||
when format in ["json", "activity+json"] do
|
||||
ActivityPubController.call(conn, :activity)
|
||||
end
|
||||
|
|
|
|||
|
|
@ -556,8 +556,9 @@ defmodule Pleroma.Web.Router do
|
|||
get("/notice/:id", OStatus.OStatusController, :notice)
|
||||
get("/notice/:id/embed_player", OStatus.OStatusController, :notice_player)
|
||||
|
||||
# Mastodon compat routes
|
||||
# Mastodon compatibility routes
|
||||
get("/users/:nickname/statuses/:id", OStatus.OStatusController, :object)
|
||||
get("/users/:nickname/statuses/:id/activity", OStatus.OStatusController, :activity)
|
||||
|
||||
get("/users/:nickname/feed", Feed.UserController, :feed, as: :user_feed)
|
||||
get("/users/:nickname", Feed.UserController, :feed_redirect, as: :user_feed)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue