akkoma/docs/ap_extensions.md
2020-10-05 17:14:22 +02:00

1.6 KiB

AP Extensions

Actor endpoints

The following endpoints are additionally present into our actors.

  • oauthRegistrationEndpoint
  • uploadMedia

uploadMedia

Inspired by https://www.w3.org/wiki/SocialCG/ActivityPub/MediaUpload

Content-Type: multipart/form-data

Parameters:

  • (required) file: The file being uploaded
  • (optionnal) description: A plain-text description of the media, for accessibility purposes.

Response: HTTP 201 Created with the object into the body, no Location header provided as it doesn't have an id

The object given in the reponse should then be inserted into an Object's attachment field.

ChatMessages

ChatMessages are the messages sent in 1-on-1 chats. They are similar to Notes, but the addresing is done by having a single AP actor in the to field. Addressing multiple actors is not allowed. These messages are always private, there is no public version of them. They are created with a Create activity.

Example:

{
  "actor": "http://2hu.gensokyo/users/raymoo",
  "id": "http://2hu.gensokyo/objects/1",
  "object": {
    "attributedTo": "http://2hu.gensokyo/users/raymoo",
    "content": "You expected a cute girl? Too bad.",
    "id": "http://2hu.gensokyo/objects/2",
    "published": "2020-02-12T14:08:20Z",
    "to": [
      "http://2hu.gensokyo/users/marisa"
    ],
    "type": "ChatMessage"
  },
  "published": "2018-02-12T14:08:20Z",
  "to": [
    "http://2hu.gensokyo/users/marisa"
  ],
  "type": "Create"
}

This setup does not prevent multi-user chats, but these will have to go through a Group, which will be the recipient of the messages and then Announce them to the users in the Group.