From af2d22f88cf84313e11a5f0b1f3a1170f721967e Mon Sep 17 00:00:00 2001 From: unarist Date: Fri, 1 Sep 2017 19:33:02 +0900 Subject: [PATCH] Fallback from perform_via_activitypub on private posts (#4758) Currently, private / direct posts via OStatus from AP compatible instance will be dropped due to failing to fetch AP version. So this fallbacks to OStatus handling: * when failed to fetch ActivityPub version * when status is neither :public nor :unlisted --- app/lib/ostatus/activity/creation.rb | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/app/lib/ostatus/activity/creation.rb b/app/lib/ostatus/activity/creation.rb index 12488ab31..b28239a05 100644 --- a/app/lib/ostatus/activity/creation.rb +++ b/app/lib/ostatus/activity/creation.rb @@ -8,7 +8,11 @@ class OStatus::Activity::Creation < OStatus::Activity::Base end return [nil, false] if @account.suspended? - return perform_via_activitypub if activitypub_uri? + + if activitypub_uri? && [:public, :unlisted].include?(visibility_scope) + result = perform_via_activitypub + return result if result.first.present? + end Rails.logger.debug "Creating remote status #{id}"