[feature] Allow delivery to sharedInboxes where possible (#847)

* update Activity

* add instance-deliver-to-shared-inboxes setting

* update activity version again

* add SharedInboxURI field to accounts

* serdes for endpoints/sharedInbox

* deliver to sharedInbox if one is available

* update tests

* only assign shared inbox if shared domain

* look for shared inbox if currently nil

* go fmt

* finger to get params.RemoteAccountID if necessary

* make comments clearer

* compare dns more consistently
This commit is contained in:
tobi 2022-09-23 21:27:35 +02:00 committed by GitHub
commit 69a193dae5
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
69 changed files with 2212 additions and 32 deletions

View file

@ -56,6 +56,9 @@ var ActivityStreamsDocumentName string = "Document"
// TootEmojiName is the string literal of the name for the Emoji type in the Toot vocabulary.
var TootEmojiName string = "Emoji"
// ActivityStreamsEndpointsName is the string literal of the name for the Endpoints type in the ActivityStreams vocabulary.
var ActivityStreamsEndpointsName string = "Endpoints"
// ActivityStreamsEventName is the string literal of the name for the Event type in the ActivityStreams vocabulary.
var ActivityStreamsEventName string = "Event"
@ -281,6 +284,9 @@ var ForgeFedEarlyItemsPropertyName string = "earlyItems"
// ActivityStreamsEndTimePropertyName is the string literal of the name for the endTime property in the ActivityStreams vocabulary.
var ActivityStreamsEndTimePropertyName string = "endTime"
// ActivityStreamsEndpointsPropertyName is the string literal of the name for the endpoints property in the ActivityStreams vocabulary.
var ActivityStreamsEndpointsPropertyName string = "endpoints"
// TootFeaturedPropertyName is the string literal of the name for the featured property in the Toot vocabulary.
var TootFeaturedPropertyName string = "featured"
@ -440,6 +446,9 @@ var ActivityStreamsResultPropertyName string = "result"
// ActivityStreamsSensitivePropertyName is the string literal of the name for the sensitive property in the ActivityStreams vocabulary.
var ActivityStreamsSensitivePropertyName string = "sensitive"
// ActivityStreamsSharedInboxPropertyName is the string literal of the name for the sharedInbox property in the ActivityStreams vocabulary.
var ActivityStreamsSharedInboxPropertyName string = "sharedInbox"
// ActivityStreamsSharesPropertyName is the string literal of the name for the shares property in the ActivityStreams vocabulary.
var ActivityStreamsSharesPropertyName string = "shares"