Conversations: Add a function to 'import' old DMs.

This commit is contained in:
lain 2019-05-08 17:37:00 +02:00
commit fcf2f38d20
3 changed files with 38 additions and 0 deletions

View file

@ -72,4 +72,18 @@ defmodule Pleroma.Conversation do
e -> {:error, e}
end
end
@doc """
This is only meant to be run by a mix task. It creates conversations/participations for all direct messages in the database.
"""
def bump_for_all_activities() do
stream =
Pleroma.Web.ActivityPub.ActivityPub.fetch_direct_messages_query()
|> Repo.stream()
Repo.transaction(fn ->
stream
|> Enum.each(&create_or_bump_for/1)
end)
end
end

View file

@ -1061,4 +1061,10 @@ defmodule Pleroma.Web.ActivityPub.ActivityPub do
contain_activity(activity, user)
end)
end
def fetch_direct_messages_query() do
Activity
|> restrict_type(%{"type" => "Create"})
|> restrict_visibility(%{visibility: "direct"})
end
end