Change delivering to misskey setting to send as private

This commit is contained in:
KMY 2023-05-01 12:16:16 +09:00
parent 29180de672
commit a4332babb5
10 changed files with 133 additions and 12 deletions

View file

@ -15,13 +15,25 @@ class ActivityPub::DistributionWorker < ActivityPub::RawDistributionWorker
protected
def inboxes
@inboxes ||= StatusReachFinder.new(@status).inboxes
@inboxes ||= status_reach_finder.inboxes
end
def inboxes_for_misskey
@inboxes_for_misskey ||= status_reach_finder.inboxes_for_misskey
end
def status_reach_finder
@status_reach_finder ||= StatusReachFinder.new(@status)
end
def payload
@payload ||= Oj.dump(serialize_payload(activity, ActivityPub::ActivitySerializer, signer: @account))
end
def payload_for_misskey
@payload ||= Oj.dump(serialize_payload(activity, ActivityPub::ActivityForMisskeySerializer, signer: @account))
end
def activity
ActivityPub::ActivityPresenter.from_status(@status)
end

View file

@ -23,17 +23,27 @@ class ActivityPub::RawDistributionWorker
protected
def distribute!
return if inboxes.empty?
return if inboxes.empty? && inboxes_for_misskey.empty?
ActivityPub::DeliveryWorker.push_bulk(inboxes) do |inbox_url|
[payload, source_account_id, inbox_url, options]
end
return if inboxes_for_misskey.empty?
ActivityPub::DeliveryWorker.push_bulk(inboxes_for_misskey) do |inbox_url|
[payload_for_misskey, source_account_id, inbox_url, options]
end
end
def payload
@json
end
def payload_for_misskey
payload
end
def source_account_id
@account.id
end
@ -42,6 +52,10 @@ class ActivityPub::RawDistributionWorker
@inboxes ||= @account.followers.inboxes - @exclude_inboxes
end
def inboxes_for_misskey
[]
end
def options
{}
end