Avoid sending some ActivityPub payloads if the receiver will get them through distribution (#4739)

This commit is contained in:
Eugen Rochko 2017-09-01 21:26:01 +02:00 committed by GitHub
parent e1a781476f
commit 60ec86be49
2 changed files with 2 additions and 2 deletions

View file

@ -41,7 +41,7 @@ class ProcessMentionsService < BaseService
NotifyService.new.call(mentioned_account, mention) NotifyService.new.call(mentioned_account, mention)
elsif mentioned_account.ostatus? && (Rails.configuration.x.use_ostatus_privacy || !status.stream_entry.hidden?) elsif mentioned_account.ostatus? && (Rails.configuration.x.use_ostatus_privacy || !status.stream_entry.hidden?)
NotificationWorker.perform_async(stream_entry_to_xml(status.stream_entry), status.account_id, mentioned_account.id) NotificationWorker.perform_async(stream_entry_to_xml(status.stream_entry), status.account_id, mentioned_account.id)
elsif mentioned_account.activitypub? elsif mentioned_account.activitypub? && !mentioned_account.following?(status.account)
ActivityPub::DeliveryWorker.perform_async(build_json(mention.status), mention.status.account_id, mentioned_account.inbox_url) ActivityPub::DeliveryWorker.perform_async(build_json(mention.status), mention.status.account_id, mentioned_account.inbox_url)
end end
end end

View file

@ -36,7 +36,7 @@ class ReblogService < BaseService
NotifyService.new.call(reblogged_status.account, reblog) NotifyService.new.call(reblogged_status.account, reblog)
elsif reblogged_status.account.ostatus? elsif reblogged_status.account.ostatus?
NotificationWorker.perform_async(stream_entry_to_xml(reblog.stream_entry), reblog.account_id, reblogged_status.account_id) NotificationWorker.perform_async(stream_entry_to_xml(reblog.stream_entry), reblog.account_id, reblogged_status.account_id)
elsif reblogged_status.account.activitypub? elsif reblogged_status.account.activitypub? && !reblogged_status.account.following?(reblog.account)
ActivityPub::DeliveryWorker.perform_async(build_json(reblog), reblog.account_id, reblogged_status.account.inbox_url) ActivityPub::DeliveryWorker.perform_async(build_json(reblog), reblog.account_id, reblogged_status.account.inbox_url)
end end
end end