diff options
author | Haelwenn (lanodan) Monnier <contact@hacktivis.me> | 2021-07-21 20:21:44 +0200 |
---|---|---|
committer | Haelwenn (lanodan) Monnier <contact@hacktivis.me> | 2022-03-18 11:00:30 +0100 |
commit | 21f7e5e69c78be05749eb19f361e4cafcfc67955 (patch) | |
tree | 9455e1713a9ae1970f9dce84ac1e612effc8afab /lib/pleroma/web/activity_pub/builder.ex | |
parent | 82d10aff678bd07247d1d373196e7dcacb31707a (diff) |
Ingestion Pipeline: Listenfeatures/ingestion-listen
Diffstat (limited to 'lib/pleroma/web/activity_pub/builder.ex')
-rw-r--r-- | lib/pleroma/web/activity_pub/builder.ex | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/lib/pleroma/web/activity_pub/builder.ex b/lib/pleroma/web/activity_pub/builder.ex index 5b25138a4..cf50cef73 100644 --- a/lib/pleroma/web/activity_pub/builder.ex +++ b/lib/pleroma/web/activity_pub/builder.ex @@ -337,4 +337,18 @@ defmodule Pleroma.Web.ActivityPub.Builder do defp pinned_url(nickname) when is_binary(nickname) do Pleroma.Web.Router.Helpers.activity_pub_url(Pleroma.Web.Endpoint, :pinned, nickname) end + + def listen(%{to: to, actor: %{ap_id: actor}, object: object} = params, additional) do + {:ok, + %{ + "type" => "Listen", + "id" => Utils.generate_activity_id(), + "to" => to |> Enum.uniq(), + "actor" => actor, + "object" => object, + "published" => Map.get(params, :published, Utils.make_date()), + "context" => params.context + } + |> Map.merge(additional), []} + end end |