Closed xundeenergie closed 2 years ago
This activity creates an Article
, which is not supported by Lemmy (we use Page
for posts). We could add support for receiving this though, but first i would like to be sure that its the best solution. Is there any other way to make a post in Friendica which could result in a Page
? Or some documentation which lists the objects used by Friendica? If you dont know, it woud be good to talk to a Friendica dev about this.
For reference, here is the activity properly formatted:
{
"@context": [
"https://www.w3.org/ns/activitystreams",
"https://w3id.org/security/v1",
{
"vcard": "http://www.w3.org/2006/vcard/ns#",
"dfrn": "http://purl.org/macgirvin/dfrn/1.0/",
"diaspora": "https://diasporafoundation.org/ns/",
"litepub": "http://litepub.social/ns#",
"toot": "http://joinmastodon.org/ns#",
"schema": "http://schema.org#",
"manuallyApprovesFollowers": "as:manuallyApprovesFollowers",
"sensitive": "as:sensitive",
"Hashtag": "as:Hashtag",
"directMessage": "litepub:directMessage",
"discoverable": "toot:discoverable",
"PropertyValue": "schema:PropertyValue",
"value": "schema:value"
}
],
"id": "https://soc.schuerz.at/objects/4edd2508-2662-39a3-305d-8ca330868827/Create",
"type": "Create",
"actor": "https://soc.schuerz.at/profile/jakob",
"published": "2022-03-22T10:21:36Z",
"instrument": {
"type": "Service",
"name": "Friendica 'Siberian Iris' 2022.05-dev-1452",
"url": "https://soc.schuerz.at"
},
"to": [
"https://lemmy.schuerz.at/c/test"
],
"cc": [
"https://www.w3.org/ns/activitystreams#Public",
"https://lemmy.schuerz.at/c/test/followers"
],
"object": {
"id": "https://soc.schuerz.at/objects/4edd2508-2662-39a3-305d-8ca330868827",
"type": "Article",
"summary": "",
"inReplyTo": null,
"diaspora:guid": "4edd2508-2662-39a3-305d-8ca330868827",
"published": "2022-03-22T10:21:36Z",
"url": "https://soc.schuerz.at/display/4edd2508-2662-39a3-305d-8ca330868827",
"attributedTo": "https://soc.schuerz.at/profile/jakob",
"sensitive": false,
"context": "https://soc.schuerz.at/objects/4edd2508-2662-39a3-305d-8ca330868827#context",
"name": "Test from friendica",
"content": "<span class=\"h-card\"><a href=\"https://lemmy.schuerz.at/c/test\" class=\"u-url mention\">!<span>test</span></a></span><br><br>Test from friendica",
"contentMap": {
"de": "<bdi>!<a href=\"https://lemmy.schuerz.at/c/test\" class=\"userinfo mention\" title=\"test\">test</a></bdi><br><br>Test from friendica"
},
"source": {
"content": "![url=https://lemmy.schuerz.at/c/test]This is a Testcommunity[/url]\n\nTest from friendica",
"mediaType": "text/bbcode"
},
"attachment": [],
"tag": [{
"type": "Mention",
"href": "https://lemmy.schuerz.at/c/test",
"name": "@test@lemmy.schuerz.at"
}],
"to": [
"https://lemmy.schuerz.at/c/test"
],
"cc": [
"https://www.w3.org/ns/activitystreams#Public",
"https://lemmy.schuerz.at/c/test/followers"
]
},
"signature": {
"type": "RsaSignature2017",
"nonce": "b2cffb52849d97fa34217eec0ad18dee67e4725a7864d9cff408026672cb8636",
"creator": "https://soc.schuerz.at/profile/jakob#main-key",
"created": "2022-03-22T10:21:37Z",
"signatureValue": "CJaHnbhQGby60BEwB40+1R3lknAz6LtUTMiEXs+T8DTPHElKr0FkAW3KmfqQlhge5Q2eQb0n55cZUjFs+pR4RyOpvGvZelz2MXCidZUbrKLKuA5qrIP+134f6qZT2YlcLxxpvvesHCtMfzk7bt3sOqWllN2YgS2aCGYiz2oEvseeRVEod4wtrlYCSg/lPZIHLd3CFCglVAuM7OvV8gI0w+JyMsQ9x9z8OdNyPJ0r4FmktW1jbNv4U+9rWMrO3fi3wXTMuenhe2QaO5d0AJGdugXuLP1IE8ln2HEWlGeK6EVlxZvMwuaFPLNKf0vQEtB9RGvjpAa2C+GD6xaevQsG0P0Ui3Evdzvp4OHzuJ/y3Z/Wl64Y5wfYgsRu4AqcmRgtWLzP30G0DjZl+1lfxcUNARX265HtlD+CLFvJk3tu3YJJ4OaAdDQ8BV2HQuaXhf+VcV/HsjM7c32eTGlEbgfO+PNNdr4JF1GLIl518UnJNv8GearKJWhNLfCDmB5SBbq8TNm41Glc6dgIfBdCo94XrGdh8nM+n0H/qU9oMF+ru/lsO8NlzPzct3LbqUKxANhLaGaDKu7346D14/ipROH7VEckL6bOE8fFNQOIhDaDN8uik7zHrIkeo71qmGjCqujC9MpizyEtnHCsvtxTNUsqZylSGzdoRH8X7MaSWOyp+t8="
}
}
I asked the friendica devs to have a look on this issue
Also, is Page
demanded by any other platform? If no, then both ours should decide on one to use, instead of trying to build support for both.
Currently Friendica uses either Article
(when the post contains a title) or Note
when creating posts. Systems like Mastodon or Pleroma only are using Note
. If we had to use Page
to make the communication work with Lemmy, then we had to distinguish between different group implementations, thus requiring having some reliable way of knowing the system on the other side. We are using this instrument
value for that purpose, so that other systems always know with whom they are speaking with.
On my test system I just tested a post with Page
. But the server (the one from this issue) answered it with an HTTP error 400. I'm not sure if this is related or not.
We could switch from Page
to Article
, but there are also other projects which send Page
(lotide and GNU social). So unless they do the same switch, it seems more reasonable for Lemmy to keep sending Page
for backwards compat, and also accept receiving Article
, as they seem equivalent. cc @vpzomtrrfrt
@annando It also needs another change which is not merged yet. Try with ds9.lemmy.ml, that has a fixed version which should federate fine. Also, it would be good if you could send a list of all activitypub objects/activities sent by Friendica, so that i can add support for all of them at once.
We adopted Page
because we want to be friendly with Lemmy's Groups. GNU social v3 (the only release with groups over ActivityPub) is not being used by any instance. For us, switching from Page
to Article
is completely harmless, and the latter seems to fit better in this context.
@annando We don't have any platform-specific code in GNU social, and would like to avoid having to, but we will add the instrument property to our activities when federating out.
For reference:
Okay so it seems the best solution for Lemmy is to accept receiving both Page
and Article
, and treat them as equivalent. But we would keep sending as Page
, to avoid any incompatibility with older Lemmy versions or with other software.
@diogogithub we don't have any platform specific code in Friendica either - and we really want to avoid that as well. But I see it like with the "Nodeinfo" mechanism. It is nice to know each other.
Concerning the differences between the two types: AFAIK all these fields can be used for both types, so we are safe here.
@Nutomic accepting both Page
and Article
(and maybe Note
?) seems like a good idea. It fits into the "Robustness principle".
@Nutomic with manually set the type to Page
the message arrived at the test group: https://ds9.lemmy.ml/post/13652 - that's great!
@annando Great! Could you please send json of your activitypub objects and activities? Basically whats in the link below, for inclusion in our tests. Dont make a PR, as it needs code changes as well. Once i have that, i will make the necessary changes.
https://github.com/LemmyNet/lemmy/tree/main/crates/apub/assets
Here is an Article
:
{
"@context": [
"https://www.w3.org/ns/activitystreams",
"https://w3id.org/security/v1",
{
"vcard": "http://www.w3.org/2006/vcard/ns#",
"dfrn": "http://purl.org/macgirvin/dfrn/1.0/",
"diaspora": "https://diasporafoundation.org/ns/",
"litepub": "http://litepub.social/ns#",
"toot": "http://joinmastodon.org/ns#",
"schema": "http://schema.org#",
"manuallyApprovesFollowers": "as:manuallyApprovesFollowers",
"sensitive": "as:sensitive",
"Hashtag": "as:Hashtag",
"directMessage": "litepub:directMessage",
"discoverable": "toot:discoverable",
"PropertyValue": "schema:PropertyValue",
"value": "schema:value"
}
],
"id": "https://pirati.ca/objects/ec054ce7-5162-3bf2-504c-16d024994850/Create",
"type": "Create",
"actor": "https://pirati.ca/profile/heluecht",
"published": "2022-03-24T04:23:44Z",
"instrument": {
"type": "Service",
"name": "Friendica 'Siberian Iris' 2022.05-dev-1452",
"url": "https://pirati.ca"
},
"to": [
"https://ds9.lemmy.ml/c/testcom"
],
"cc": [
"https://www.w3.org/ns/activitystreams#Public",
"https://ds9.lemmy.ml/c/testcom/followers"
],
"object": {
"id": "https://pirati.ca/objects/ec054ce7-5162-3bf2-504c-16d024994850",
"type": "Article",
"summary": "",
"inReplyTo": null,
"diaspora:guid": "ec054ce7-5162-3bf2-504c-16d024994850",
"published": "2022-03-24T04:23:44Z",
"url": "https://pirati.ca/display/ec054ce7-5162-3bf2-504c-16d024994850",
"attributedTo": "https://pirati.ca/profile/heluecht",
"sensitive": false,
"context": "https://pirati.ca/objects/ec054ce7-5162-3bf2-504c-16d024994850#context",
"name": "From Friendica to Lemmy",
"content": "Hello Lemmy!",
"contentMap": {
"de": "<bdi>!<a href=\"https://ds9.lemmy.ml/c/testcom\" class=\"userinfo mention\" title=\"testcom\">testcom</a></bdi> Hello Lemmy!"
},
"source": {
"content": "![url=https://ds9.lemmy.ml/c/testcom]testcom[/url] Hello Lemmy!",
"mediaType": "text/bbcode"
},
"attachment": [],
"tag": [
{
"type": "Mention",
"href": "https://ds9.lemmy.ml/c/testcom",
"name": "@testcom@ds9.lemmy.ml"
}
],
"to": [
"https://ds9.lemmy.ml/c/testcom"
],
"cc": [
"https://www.w3.org/ns/activitystreams#Public",
"https://ds9.lemmy.ml/c/testcom/followers"
]
},
"signature": {
"type": "RsaSignature2017",
"nonce": "d1b75df08009e59510606604758732d499c3c385b4ce6ee374e6d8c2ee86230b",
"creator": "https://pirati.ca/profile/heluecht#main-key",
"created": "2022-03-24T04:26:55Z",
"signatureValue": "nmAyEh/6Zq5Ki0AYtTFDxGom67HOTuWDzToGuEorm0cOzsNv7OIUgGjkOtKOVJA91J7NaS1hCCSMrhM7HCurIQyE3wDa3NAzhDQORVbbRF6+NxpB70nlJaOaInAS4bmVsed0rBg2aYQfrai0QB4F8zhN8JIa6zu0EAtLMh0vkzDFOCeGbvahLkSJO+sZKEqAWsr3VfMmJ8TCd+JWUKyy2/Hd87czj58oMk8yKzKKHlL0z+rbP2LbpaZspHCT+kfkZy0IOjrdcvgENCwCsPA9Y5kJmH08NXkKG6D6CGIti2zhnkNMxBuZ5sPU6PcE535J/UjfrGN3ikGoxjO3bRqFI42TbhTxBRk/yMv0BVIPLzAbPAJdJ6VAwq5UAjI6G4ejjQ9LKRqjxlG96PNo+YVKFhKTmmSMWLmdWckC8PRL2nZvq4UtIf4cd+p1pQ+TnfjD8ZHadb10tHJEXrUIz9Q/pWmfLvTSodbdYRSurWFNYaJ3gCEjSoCoHxA7GeEoivSA0IuuDRKo0tFEv09/BA9m8m04kjQ8q/ZxAb2P4TICcPZrhGKoDkRTc1P5vSNeuw8GFV/5Dy7NWKarJUlzCA1OoHo/cKWhY3fVc/lANssTyxsMakp4ofN0zRoToQAx6hDLgESJcn04tUO4JvluYkGggBEhPfhLNSyc6yUWahjh9Gc="
}
}
Here is a Page
:
{
"@context": [
"https://www.w3.org/ns/activitystreams",
"https://w3id.org/security/v1",
{
"vcard": "http://www.w3.org/2006/vcard/ns#",
"dfrn": "http://purl.org/macgirvin/dfrn/1.0/",
"diaspora": "https://diasporafoundation.org/ns/",
"litepub": "http://litepub.social/ns#",
"toot": "http://joinmastodon.org/ns#",
"schema": "http://schema.org#",
"manuallyApprovesFollowers": "as:manuallyApprovesFollowers",
"sensitive": "as:sensitive",
"Hashtag": "as:Hashtag",
"directMessage": "litepub:directMessage",
"discoverable": "toot:discoverable",
"PropertyValue": "schema:PropertyValue",
"value": "schema:value"
}
],
"id": "https://pirati.ca/objects/ec054ce7-8062-3c1b-016c-910426317080/Create",
"type": "Create",
"actor": "https://pirati.ca/profile/heluecht",
"published": "2022-03-24T07:17:21Z",
"instrument": {
"type": "Service",
"name": "Friendica 'Siberian Iris' 2022.05-dev-1452",
"url": "https://pirati.ca"
},
"to": [
"https://ds9.lemmy.ml/c/testcom"
],
"cc": [
"https://www.w3.org/ns/activitystreams#Public",
"https://ds9.lemmy.ml/c/testcom/followers"
],
"object": {
"id": "https://pirati.ca/objects/ec054ce7-8062-3c1b-016c-910426317080",
"type": "Page",
"summary": "",
"inReplyTo": null,
"diaspora:guid": "ec054ce7-8062-3c1b-016c-910426317080",
"published": "2022-03-24T07:17:21Z",
"url": "https://www.nasaspaceflight.com/2022/03/us-eva-80/",
"attributedTo": "https://pirati.ca/profile/heluecht",
"sensitive": false,
"context": "https://pirati.ca/objects/ec054ce7-8062-3c1b-016c-910426317080#context",
"name": "ISS astronauts perform final spacewalk of Expedition 66",
"content": "Expedition 66 astronauts Raja Chari and Matthias Maurer ventured outside the International Space Station on Wednesday, performing a spacewalk to carry out repairs and upgrades on the space station.",
"contentMap": {
"de": "<bdi>!<a href=\"https://ds9.lemmy.ml/c/testcom\" class=\"userinfo mention\" title=\"testcom\">testcom</a></bdi> Expedition 66 astronauts Raja Chari and Matthias Maurer ventured outside the International Space Station on Wednesday, performing a spacewalk to carry out repairs and upgrades on the space station.<br><a href=\"https://www.nasaspaceflight.com/2022/03/us-eva-80/\" target=\"_blank\" rel=\"noopener noreferrer\">ISS astronauts perform final spacewalk of Expedition 66</a>"
},
"source": {
"content": "![url=https://ds9.lemmy.ml/c/testcom]testcom[/url] Expedition 66 astronauts Raja Chari and Matthias Maurer ventured outside the International Space Station on Wednesday, performing a spacewalk to carry out repairs and upgrades on the space station.\n[attachment type='link' url='https://www.nasaspaceflight.com/2022/03/us-eva-80/' title='ISS astronauts perform final spacewalk of Expedition 66' publisher_name='NASASpaceFlight.com' publisher_url='https://www.nasaspaceflight.com/' publisher_img='https://www.nasaspaceflight.com/wp-content/uploads/2017/12/logo.svg' author_name='Justin Davenport' author_url='https://www.nasaspaceflight.com/author/justin/' author_img='https://secure.gravatar.com/avatar/5dc0dc04b38dbb016bf6f15552555883?s=96&d=mm&r=g' image='https://www.nasaspaceflight.com/wp-content/uploads/2022/03/51941297402_fa7a00c1ee_o-scaled.jpg']Expedition 66 astronauts Raja Chari and Matthias Maurer ventured outside the International Space Station on…[/attachment]",
"mediaType": "text/bbcode"
},
"attachment": [],
"tag": [
{
"type": "Mention",
"href": "https://ds9.lemmy.ml/c/testcom",
"name": "@testcom@ds9.lemmy.ml"
}
],
"to": [
"https://ds9.lemmy.ml/c/testcom"
],
"cc": [
"https://www.w3.org/ns/activitystreams#Public",
"https://ds9.lemmy.ml/c/testcom/followers"
]
},
"signature": {
"type": "RsaSignature2017",
"nonce": "e68dbf66bac13fd0811863c32bbc59ab56dc0ced4a7f0df06a49b015dd142e29",
"creator": "https://pirati.ca/profile/heluecht#main-key",
"created": "2022-03-24T07:18:24Z",
"signatureValue": "T+TZbRA0DhaCG3bRRPXQmxE2bsdIk8j/cueqsXTKCOSbrWvels2B9cg3twAYIfEmtyZ/f6iKz67MnMzAc4wDS5Gm5lJ/bVoweG3+OVtgfpzYUwR85az6qEX7NS0yLNdciqpZnh5J46F8lk+SKuLGEvlGuHVAd5yYXJoSJc0slM3rVvPv1s8toLHsJzM9H9aITLfZdEo99DmGgcAcSm1lrpFlXXMc+nWGAABpvK4eTrhj1auWOs6qb4q9GUyjfg2OdYrEq+vj4tir8uP/2azJHUea2JwIYbu0Cqt13OAPWC4Znz9MZdI6NQcQvipwFRq1tvfjsonzWIkBotDK9seBxTyj1kJfDd9hcPFXQdaNI549U4JJMxenKH5Yj5tj5Df0lg2hiFOCZ5fka5qmVpqDdPni4fnkCICzKpdJwUpwDaJlwbK8tnMlS5stQv+5+fX3O7sTy2z5PiFFYR/DdHHrMAz4eEoYe9AfrUGB5XzSyHRq0YThDMW4expIGm9KZxhfYgnKPVSqmmZLDKMYD69zwV7IMGfj+W9KqbnhrW+v1JQmWSziYmz4g+ESmo+F72kaVqu1UxIi0qToOA/QDp/HOZSM+YJUCQoCL41faO5+7MNrISL8TIjAa8Y5lXrx5oAKEXEx0biqBaxinOdzuqDl8dvyVtPa/DMez8enTbcGzdQ="
}
}
This is a comment with the type Note
:
{
"@context": [
"https://www.w3.org/ns/activitystreams",
"https://w3id.org/security/v1",
{
"vcard": "http://www.w3.org/2006/vcard/ns#",
"dfrn": "http://purl.org/macgirvin/dfrn/1.0/",
"diaspora": "https://diasporafoundation.org/ns/",
"litepub": "http://litepub.social/ns#",
"toot": "http://joinmastodon.org/ns#",
"schema": "http://schema.org#",
"manuallyApprovesFollowers": "as:manuallyApprovesFollowers",
"sensitive": "as:sensitive",
"Hashtag": "as:Hashtag",
"directMessage": "litepub:directMessage",
"discoverable": "toot:discoverable",
"PropertyValue": "schema:PropertyValue",
"value": "schema:value"
}
],
"id": "https://pirati.ca/objects/ec054ce7-4762-3c1c-3c25-0cc665717210/Create",
"type": "Create",
"actor": "https://pirati.ca/profile/heluecht",
"published": "2022-03-24T07:22:36Z",
"instrument": {
"type": "Service",
"name": "Friendica 'Siberian Iris' 2022.05-dev-1452",
"url": "https://pirati.ca"
},
"to": [
"https://pirati.ca/profile/test8",
"https://ds9.lemmy.ml/c/testcom"
],
"cc": [
"https://www.w3.org/ns/activitystreams#Public",
"https://ds9.lemmy.ml/c/testcom/followers"
],
"object": {
"id": "https://pirati.ca/objects/ec054ce7-4762-3c1c-3c25-0cc665717210",
"type": "Note",
"summary": "",
"inReplyTo": "https://pirati.ca/objects/ec054ce7-2062-3bfa-8687-ca8313624820",
"diaspora:guid": "ec054ce7-4762-3c1c-3c25-0cc665717210",
"published": "2022-03-24T07:22:36Z",
"url": "https://pirati.ca/display/ec054ce7-4762-3c1c-3c25-0cc665717210",
"attributedTo": "https://pirati.ca/profile/heluecht",
"sensitive": false,
"context": "https://pirati.ca/objects/ec054ce7-2062-3bfa-8687-ca8313624820#context",
"content": "<span class=\"h-card\"><a href=\"https://pirati.ca/profile/test8\" class=\"u-url mention\">@<span>test8</span></a></span> This is a comment.",
"contentMap": {
"de": "This is a comment."
},
"source": {
"content": "This is a comment.",
"mediaType": "text/bbcode"
},
"diaspora:comment": "{\"author\":\"heluecht@pirati.ca\",\"guid\":\"ec054ce7-4762-3c1c-3c25-0cc665717210\",\"created_at\":\"2022-03-24T07:22:36Z\",\"edited_at\":\"2022-03-24T07:22:36Z\",\"parent_guid\":\"ec054ce7-2062-3bfa-8687-ca8313624820\",\"text\":\"This is a comment.\",\"author_signature\":\"oqthcfSIjETYRshGeN0Zq9yGJ9+bbghdzMH4Vfl\\/kxDyNQe7tsvK6M5cQlM46h2+jmpK2Okb4mK7K6Yenh+6aH2sJKIyMUdKIINzhp9Gav31sUtHf4\\/A0x1aqqTp1oLvnc5uKdKdIGaSdODUZY\\/ABmDjin5sE1gjIBlAkAlhvdhy\\/k+4c3UCFtazjawb1oXbh94uSgu4DxseBec4Kn5laWNwLhZLdx9PMSN1mhNqz2rnF6gWAlrlaLLeRDawh2AS5t2TUPH92QY818DW9b0rF9Gz4w1PtEIkzXDd6u\\/VEMMrwmRtd8SSDgnDPFzH4HqZDf1Y4TnQixZIqgUyv9zsiNT0pg0vOXTkuQ7hJ7hj6BI92SISTtQnEVhZBmW+i22roFs87EbSb5e6Yy4+2YphjCUd2NWlyrtG1UTR1hzCN+kzKIQU34zgXTtnwvYhi6wz71Lh3w1VoQbLthxpG1t1WRsXQ\\/QZNUNInyHyIgzWTcWAS6MdzVnmXSV+1080PQ5zFWbR6Tft3YySyk8iIyhdhTAjfEDGTRGHciiPtLBPQFlHMPTiMZjEWFnBZuhDhOrA6OazONXHRO09Xr6S\\/+ZudMvEOAG1FvcBec6gWRZdcma6UBi+2M3ay3dYFJw4+fG4XZh3H\\/sCA\\/q8MUgreP3t9q\\/wzxCW\\/BXZAv4u2FvwKvw=\"}",
"attachment": [],
"tag": [
{
"type": "Mention",
"href": "https://pirati.ca/profile/test8",
"name": "@test8@pirati.ca"
},
{
"type": "Mention",
"href": "https://ds9.lemmy.ml/c/testcom",
"name": "@testcom@ds9.lemmy.ml"
}
],
"to": [
"https://pirati.ca/profile/test8",
"https://ds9.lemmy.ml/c/testcom"
],
"cc": [
"https://www.w3.org/ns/activitystreams#Public",
"https://ds9.lemmy.ml/c/testcom/followers"
]
},
"signature": {
"type": "RsaSignature2017",
"nonce": "795bb6ebaafa9ef8e35c88e834a72325b111eaf0da14e565bc47728078c3a474",
"creator": "https://pirati.ca/profile/heluecht#main-key",
"created": "2022-03-24T07:23:17Z",
"signatureValue": "PaMhJrCq3W3rGqU8KE5QEcXBEV46vusTnbL3ZOa0uS3yjIPrZYm4K/VFpktdbtDx6bjOddA0gI7tP8Oj3EmkoS6wqsNY0TKhqhEB8MBx0UPA9iclePQaJClRo2gqDydayz/o9kWI5lrN0xC9eDzF20LgdwYmR0x/4SY1ZU4aZLFHJbro5k8Porx2vkDlfmQH06nBFFSPaT7a1db3JLwOoShqyXcaKDUYAKTz5zF4TUUlkt21kq+x99J1gqHAHXFFaAMRRoxFDokFbpOX/uj8qcGe+nAYFhgxPyEzItvMm9g5pnKCAjbbaIGgqIaddgokasaR73URnzgZ1SSbv6yXt4c8nYwUudP4ZMQFC3Pre9FjMA6LwsoMA9ctUiJ16G9aCR7aXLwk+p1uZEKhPrgpU7aJH+xr0qWdHKiflQjaTqxXL2ANTLC7oH9yhoQsG/axdcTtaLmlluIXa33R/ncHYSH0+ZywWrRdFR4XsAaPmMdrO9i2MV99+IbAD1lYuKcHhVdT6d0w4rLp4JXZNO4IK20oesNswZmtzr+VTH69bpqWATqcwve4M/i7YkSQg1TLG5znf3ctNPDCpgkajZOlfFOB4sX7qOV6imFo8T300PHMPYSp1byb3gRkyrcHJosx1dV/Q4UeM3Pzym5v+p+y435C+adXK/bmcMdD/w5lyrY="
}
}
A Dislike
:
{
"@context": [
"https://www.w3.org/ns/activitystreams",
"https://w3id.org/security/v1",
{
"vcard": "http://www.w3.org/2006/vcard/ns#",
"dfrn": "http://purl.org/macgirvin/dfrn/1.0/",
"diaspora": "https://diasporafoundation.org/ns/",
"litepub": "http://litepub.social/ns#",
"toot": "http://joinmastodon.org/ns#",
"schema": "http://schema.org#",
"manuallyApprovesFollowers": "as:manuallyApprovesFollowers",
"sensitive": "as:sensitive",
"Hashtag": "as:Hashtag",
"directMessage": "litepub:directMessage",
"discoverable": "toot:discoverable",
"PropertyValue": "schema:PropertyValue",
"value": "schema:value"
}
],
"id": "https://pirati.ca/objects/ec054ce7-5762-3ce2-b3e4-87e268433367",
"type": "Dislike",
"actor": "https://pirati.ca/profile/heluecht",
"published": "2022-03-24T21:29:23Z",
"instrument": {
"type": "Service",
"name": "Friendica 'Siberian Iris' 2022.05-dev-1453",
"url": "https://pirati.ca"
},
"to": [
"https://pirati.ca/profile/test8",
"https://ds9.lemmy.ml/c/testcom"
],
"cc": [
"https://www.w3.org/ns/activitystreams#Public",
"https://ds9.lemmy.ml/c/testcom/followers"
],
"diaspora:guid": "ec054ce7-1862-3ce2-b3e4-870035437794",
"diaspora:like": "{\"author\":\"heluecht@pirati.ca\",\"guid\":\"ec054ce7-1862-3ce2-b3e4-870035437794\",\"parent_guid\":\"ec054ce7-2062-3bfa-8687-ca8313624820\",\"parent_type\":\"Post\",\"positive\":\"false\",\"author_signature\":\"KWp5AQ71Tn4kFgGxzgLDLQUvULKMtsb4DYwP\\/Ap9QNGStMQuKvYE2VBthRBaIvX9LmknZ3cBvuqKvNaL2Nj7B2R2Goa7\\/eWYDCogwafbp6Pj93vWvdy2+fGTkHGSxobnvgLvFIqv9IOy2Lk4QjWj7o64dUCiopR0OKjL8+vPM+l8iF+7bYeG+xSqy8SX8Fai5XOoNhy9anaJzK9ASLah8VeXKdfjGrvYsx2X\\/PaP+B8xFySP2XM95kGPKxyExi7Hk0j2igvjHqC2s3Cdg9+nwuUijnUycqGHUq3djMTLoPRjMHOJquZ1t2BNY575iRbYJTlteIgQkPHf50WALkzxn8zY5MkudBzffxm8B1Q6bnwoQHK8TR7KU2gMPwnQm6\\/ncygHuq1flVm3dqrF9xG6Cp2wC2SgTcErhrS\\/6in7FzrgBIOl570cxY0ovFICrE6rinuBdJkjfWYE3CZGCo6fVTAXUmje48c0611JmGD3PM6XQigFXGE32fjjaQoIkXf8TWI01kIqJDmZn80S6NXaYSrf9maWN1CB5gQ2E6B6Zk586sTZ2nnnJNol2KTkM1BPCTSMkrdiLtpjkUEGeo1tTe87oUzFHx++rgSO\\/lM94Dw5oN2jifGQquDBgIHY5ovxXVN3xrTgfrLEx+HWxdsiuIYpPx4lu4Qe0CVgZwPMqR4=\"}",
"object": "https://pirati.ca/objects/ec054ce7-2062-3bfa-8687-ca8313624820",
"signature": {
"type": "RsaSignature2017",
"nonce": "02cae41f51765647ceeac26de13e29757cb47b7da1b54703116a7ae185fe967e",
"creator": "https://pirati.ca/profile/heluecht#main-key",
"created": "2022-03-24T21:32:43Z",
"signatureValue": "C27zo2Ks9twwhMs3WndG3c8l6y6PVM/4fUZKIxHuh50eEx2g9hIRUD0GFgxR5Mbx76E0PDePbJtrEaad+H97USmylFYw+Opp12zAkpFMMsKQgZfSG6ARyKfn/AK6qn/+5gmxAvX5qTMw29Qsbhh9w7mlyYfqZb+A5xmdxi/kV7FAa5AEK9UR8wsCb6FeHhpRPBmSGFqluFyPY0m8uYHwLILZac+KkvQz2+dVQkpt5S+C2N4POxFYQwd1mEoone4HQQtSEfnrlbxLbyCgLKM4Vf6SJnzzyufTzurSySp4kmsnTxfUKsR200TUAozwWBde9UyEjdcv/j1m/ZX18YHzwE4OwAGF6G1LCDAXcwzmH3RvjJwGsFuTz68lZJ5qcAbHvsGxymPJf2RTfLS0I7E2JWZ/yStcwtm9siHNBhusUq7lwJWWkwYw4iuoZBHNT24gj0uTbj82jB5UAIlFyIXbIbR8Di70Jg2ucvQK36XKm6/6TGntkoJ3VGa1qIhB/r0KiVTBPwPSrf8v0sHB6zc3osirpyG8Gzd+FVMs11UaGDQOIur4Bu1/StmuWdh3VFwFE9t4XaR1OEIRexYh4717B8ImfPbSTtyqsc8mE0Hvp+3wkLaD4l889Zu0BGNK9KXvT2ifKGhCg/Q8mM89oNnb4Fsl3Uu5fp8GtE3RPBt4a/g="
}
}
Like
:
{
"@context": [
"https://www.w3.org/ns/activitystreams",
"https://w3id.org/security/v1",
{
"vcard": "http://www.w3.org/2006/vcard/ns#",
"dfrn": "http://purl.org/macgirvin/dfrn/1.0/",
"diaspora": "https://diasporafoundation.org/ns/",
"litepub": "http://litepub.social/ns#",
"toot": "http://joinmastodon.org/ns#",
"schema": "http://schema.org#",
"manuallyApprovesFollowers": "as:manuallyApprovesFollowers",
"sensitive": "as:sensitive",
"Hashtag": "as:Hashtag",
"directMessage": "litepub:directMessage",
"discoverable": "toot:discoverable",
"PropertyValue": "schema:PropertyValue",
"value": "schema:value"
}
],
"id": "https://pirati.ca/objects/ec054ce7-2062-3ce2-7f10-2b4451595945",
"type": "Like",
"actor": "https://pirati.ca/profile/heluecht",
"published": "2022-03-24T21:28:31Z",
"instrument": {
"type": "Service",
"name": "Friendica 'Siberian Iris' 2022.05-dev-1453",
"url": "https://pirati.ca"
},
"to": [
"https://pirati.ca/profile/test8",
"https://ds9.lemmy.ml/c/testcom"
],
"cc": [
"https://www.w3.org/ns/activitystreams#Public",
"https://ds9.lemmy.ml/c/testcom/followers"
],
"diaspora:guid": "ec054ce7-1062-3ce2-7f10-2a6640956978",
"diaspora:like": "{\"author\":\"heluecht@pirati.ca\",\"guid\":\"ec054ce7-1062-3ce2-7f10-2a6640956978\",\"parent_guid\":\"ec054ce7-2062-3bfa-8687-ca8313624820\",\"parent_type\":\"Post\",\"positive\":\"true\",\"author_signature\":\"F7e4x++hte0pSoUwbB6BcK0gl1c4+FjxlhwjTMvmxnB4HL58Kxk8UJ\\/SiTS5g4IoDoRcvQdIgntuHZJfKx3SsIDyWQUP1U9+RrBJh1gskcVmTT15gb2E5qq30PNM8DFV0opewp33KCVWvqqkZ2DIhjiRqqF8eUASUNkdwQci732krkMul\\/B211qBbSndxLPdrqv5Wkl0F2mZJZLIiWRoIjaFNV60lUkOwdqz8p7OuD\\/DdR\\/T8g4s7ofuvKaZ\\/scpxqixYHvv7+0cWXBlsKllW97dH1VHo7SdvJKhApk2IQz9BT8JWcBhBYjkb71olF2gajo6EQxaXt2svEOtRi+mDVQ4Lb6gk\\/Fp5aC5BVAe5Fe4Wr2GUOLmo5P6Fc6IweaoTgcqH2os2OYc\\/isJtQ2jtUtw8smY7kPSa2Qo\\/FMLWyCI8XRrWI9XGo8uSA84E+eiSVuGfqYNQNDkhzr5qCZfiF457SsxFpGa3XI53IA24Iatkj91VGSMQ8OWppK7SERwax2mVc5tn7mSq+2va0k9DiLyLoHVdEdzQcjEGCWEW7rPz7ndKBT3cW\\/jjsww3znAOko7jloXWremEtiqBIZkmHhA+Ec9UnOcShedqz\\/oIB\\/IYVUhwD3STG7EpRjh6J6G0FoU1MieCKjtpSadHN+2GN4COzNTE9iIi9Uqonf4Xio=\"}",
"object": "https://pirati.ca/objects/ec054ce7-2062-3bfa-8687-ca8313624820",
"signature": {
"type": "RsaSignature2017",
"nonce": "3913cfa1f27e2e83ef770a414e477d4aac9878d1270e9056fc793fdf0a4e07d5",
"creator": "https://pirati.ca/profile/heluecht#main-key",
"created": "2022-03-24T21:33:58Z",
"signatureValue": "uJBDZ4NIKTmcoh2ONypglOZ0El3RtgGeF5X2XSdy8V6QmLD6meUWVMQlcbs0LosSzXX1wxMJsj6QtnFPWEAneRW/gBa5N+F/+vkrnnodbO9CvDfwRIfmWqCNC5Hg4uGVukHbhCwsQkgKoRj9YjQVt0FSSrC5X/NcwiS7ZJkwsHuzv+ZZZE+GArkSQLcf4eOrK7wT1NY0fGGbjeO7+KpJH75kAGI+Yi1BuiGy7tl3dTIdGYb66j+e5RpeZR1AlueLKBB2lN2eT8DS0PwaGVjrgKQQ+riIUV8pWhrlWsoWj1u9ZELXOYUuFsjqzmNPeSU3cnxGcLSvAKmc7j2dm6ErCLFiadaodamYDR0Fqb9yd/IM3ojyxmAQRAMABCnhIppQWkOw5l1koJ2gHmnljh162sFsnifo7ccNuRHYUJjJxwsdQ9aLaAWHySqXDfRk+Hvf5G67+edlETr3XYmVtW96J0ZyQALp/I0QMbPR2Xa/b8RClms0QxNOBwVn8YswLWRZ2XgjQfxoCkRHSbY5nU6e65I4QBiAlSzHNOffNO4LYxj0GPDbEFZy9dFiv9EC9eN/FtIhkykV46PJTuM+hKneh1PLCmkkICWrj7dvPXT/00eQmvZcQTq/tNKlrbzBWQ8DnG6/3GZMyBPgsWk/E0aUwvwGlcQEwYWmzI1NWBe/XMc="
}
}
And here is an Update
:
{
"@context": [
"https://www.w3.org/ns/activitystreams",
"https://w3id.org/security/v1",
{
"vcard": "http://www.w3.org/2006/vcard/ns#",
"dfrn": "http://purl.org/macgirvin/dfrn/1.0/",
"diaspora": "https://diasporafoundation.org/ns/",
"litepub": "http://litepub.social/ns#",
"toot": "http://joinmastodon.org/ns#",
"schema": "http://schema.org#",
"manuallyApprovesFollowers": "as:manuallyApprovesFollowers",
"sensitive": "as:sensitive",
"Hashtag": "as:Hashtag",
"directMessage": "litepub:directMessage",
"discoverable": "toot:discoverable",
"PropertyValue": "schema:PropertyValue",
"value": "schema:value"
}
],
"id": "https://pirati.ca/objects/ec054ce7-4762-3c1c-3c25-0cc665717210/Update",
"type": "Update",
"actor": "https://pirati.ca/profile/heluecht",
"published": "2022-03-24T07:22:36Z",
"instrument": {
"type": "Service",
"name": "Friendica 'Siberian Iris' 2022.05-dev-1453",
"url": "https://pirati.ca"
},
"to": [
"https://pirati.ca/profile/test8",
"https://ds9.lemmy.ml/c/testcom"
],
"cc": [
"https://www.w3.org/ns/activitystreams#Public",
"https://ds9.lemmy.ml/c/testcom/followers"
],
"object": {
"id": "https://pirati.ca/objects/ec054ce7-4762-3c1c-3c25-0cc665717210",
"type": "Note",
"summary": "",
"inReplyTo": "https://pirati.ca/objects/ec054ce7-2062-3bfa-8687-ca8313624820",
"diaspora:guid": "ec054ce7-4762-3c1c-3c25-0cc665717210",
"published": "2022-03-24T07:22:36Z",
"updated": "2022-03-24T21:37:34Z",
"url": "https://pirati.ca/display/ec054ce7-4762-3c1c-3c25-0cc665717210",
"attributedTo": "https://pirati.ca/profile/heluecht",
"sensitive": false,
"context": "https://pirati.ca/objects/ec054ce7-2062-3bfa-8687-ca8313624820#context",
"content": "<span class=\"h-card\"><a href=\"https://pirati.ca/profile/test8\" class=\"u-url mention\">@<span>test8</span></a></span> This is an edited comment.",
"contentMap": {
"de": "This is an edited comment."
},
"source": {
"content": "This is an edited comment.",
"mediaType": "text/bbcode"
},
"diaspora:comment": "{\"author\":\"heluecht@pirati.ca\",\"guid\":\"ec054ce7-4762-3c1c-3c25-0cc665717210\",\"created_at\":\"2022-03-24T07:22:36Z\",\"edited_at\":\"2022-03-24T07:22:36Z\",\"parent_guid\":\"ec054ce7-2062-3bfa-8687-ca8313624820\",\"text\":\"This is a comment.\",\"author_signature\":\"oqthcfSIjETYRshGeN0Zq9yGJ9+bbghdzMH4Vfl\\/kxDyNQe7tsvK6M5cQlM46h2+jmpK2Okb4mK7K6Yenh+6aH2sJKIyMUdKIINzhp9Gav31sUtHf4\\/A0x1aqqTp1oLvnc5uKdKdIGaSdODUZY\\/ABmDjin5sE1gjIBlAkAlhvdhy\\/k+4c3UCFtazjawb1oXbh94uSgu4DxseBec4Kn5laWNwLhZLdx9PMSN1mhNqz2rnF6gWAlrlaLLeRDawh2AS5t2TUPH92QY818DW9b0rF9Gz4w1PtEIkzXDd6u\\/VEMMrwmRtd8SSDgnDPFzH4HqZDf1Y4TnQixZIqgUyv9zsiNT0pg0vOXTkuQ7hJ7hj6BI92SISTtQnEVhZBmW+i22roFs87EbSb5e6Yy4+2YphjCUd2NWlyrtG1UTR1hzCN+kzKIQU34zgXTtnwvYhi6wz71Lh3w1VoQbLthxpG1t1WRsXQ\\/QZNUNInyHyIgzWTcWAS6MdzVnmXSV+1080PQ5zFWbR6Tft3YySyk8iIyhdhTAjfEDGTRGHciiPtLBPQFlHMPTiMZjEWFnBZuhDhOrA6OazONXHRO09Xr6S\\/+ZudMvEOAG1FvcBec6gWRZdcma6UBi+2M3ay3dYFJw4+fG4XZh3H\\/sCA\\/q8MUgreP3t9q\\/wzxCW\\/BXZAv4u2FvwKvw=\"}",
"attachment": [],
"tag": [
{
"type": "Mention",
"href": "https://pirati.ca/profile/test8",
"name": "@test8@pirati.ca"
},
{
"type": "Mention",
"href": "https://ds9.lemmy.ml/c/testcom",
"name": "@testcom@ds9.lemmy.ml"
}
],
"to": [
"https://pirati.ca/profile/test8",
"https://ds9.lemmy.ml/c/testcom"
],
"cc": [
"https://www.w3.org/ns/activitystreams#Public",
"https://ds9.lemmy.ml/c/testcom/followers"
]
},
"signature": {
"type": "RsaSignature2017",
"nonce": "534f3e33435fa56911a12094d9918002b2d734794609019793603116b6509a54",
"creator": "https://pirati.ca/profile/heluecht#main-key",
"created": "2022-03-24T21:37:50Z",
"signatureValue": "lhLotVmAv22CmiYCSmQgQA/X38ype7o89iJIC0I2FzIWGQkvZz58YAxpmW047Z2hT2qm15sV02bPgyoOBXAdXd+M8WNwz+cNwU1cE7QNZ7102Y+tQRgpTfHz+e57QwUXESo46xAG0qSVu0UQMm+3uCUFYWKgHEmAXy89sp//3J/vJtI2+3jbaC9YWdsBe8XwcoHeelnX7f8LNniRnZIkKTLfoOhcEIHAJkEV4otSCOfzwGHN0SqbGlK9xWBPQhgtN3GvnOZU9zhNQMsQiX+9Wb2X4NLXs0tTRkDubF78stH+0xbep7ZfyvRNLoebPtecN8dMnfHQs8y0a9iG9tuNjcwht2ezIwf1h140+iB8znav35sA6LzgcfEyzU8O6JYF9p9x3tCw2rcMMiy/f7mvOLCP/05d0GEoUNZXrfuXf/osysMYp1Y05Lkze5WqTMu7sEW6jDx8r1NTE6s88wqZAJa56G5NVxG5vU3Cj7yscI6LQiqaUDilVHLa+DzR0pQEUSSh2J1PgBFT2KKPZIY22UinDgI1QNl+Dhfj2nPzf/xXssuDTvWyU8vJzXc2MZNqFz7ds7tNdea6laLiMl7nOnMo1wz1f+w1bn4Y1YR/iwFgaqo2WEt+cIzAaN4dUw00WlXPCNNhrgaXHxlXI6SeFtviUfwz/dehcfbxMTxX7e0="
}
}
Undo
:
{
"@context": [
"https://www.w3.org/ns/activitystreams",
"https://w3id.org/security/v1",
{
"vcard": "http://www.w3.org/2006/vcard/ns#",
"dfrn": "http://purl.org/macgirvin/dfrn/1.0/",
"diaspora": "https://diasporafoundation.org/ns/",
"litepub": "http://litepub.social/ns#",
"toot": "http://joinmastodon.org/ns#",
"schema": "http://schema.org#",
"manuallyApprovesFollowers": "as:manuallyApprovesFollowers",
"sensitive": "as:sensitive",
"Hashtag": "as:Hashtag",
"directMessage": "litepub:directMessage",
"discoverable": "toot:discoverable",
"PropertyValue": "schema:PropertyValue",
"value": "schema:value"
}
],
"id": "https://pirati.ca/objects/ec054ce7-5762-3ce2-b3e4-87e268433367/Undo",
"type": "Undo",
"actor": "https://pirati.ca/profile/heluecht",
"published": "2022-03-24T21:29:23Z",
"instrument": {
"type": "Service",
"name": "Friendica 'Siberian Iris' 2022.05-dev-1453",
"url": "https://pirati.ca"
},
"to": [
"https://pirati.ca/profile/test8",
"https://ds9.lemmy.ml/c/testcom"
],
"cc": [
"https://www.w3.org/ns/activitystreams#Public",
"https://ds9.lemmy.ml/c/testcom/followers"
],
"object": {
"id": "https://pirati.ca/objects/ec054ce7-5762-3ce2-b3e4-87e268433367",
"type": "Dislike",
"actor": "https://pirati.ca/profile/heluecht",
"published": "2022-03-24T21:29:23Z",
"instrument": {
"type": "Service",
"name": "Friendica 'Siberian Iris' 2022.05-dev-1453",
"url": "https://pirati.ca"
},
"to": [
"https://pirati.ca/profile/test8",
"https://ds9.lemmy.ml/c/testcom"
],
"cc": [
"https://www.w3.org/ns/activitystreams#Public",
"https://ds9.lemmy.ml/c/testcom/followers"
],
"diaspora:guid": "ec054ce7-1862-3ce2-b3e4-870035437794",
"diaspora:like": "{\"author\":\"heluecht@pirati.ca\",\"guid\":\"ec054ce7-1862-3ce2-b3e4-870035437794\",\"parent_guid\":\"ec054ce7-2062-3bfa-8687-ca8313624820\",\"parent_type\":\"Post\",\"positive\":\"false\",\"author_signature\":\"KWp5AQ71Tn4kFgGxzgLDLQUvULKMtsb4DYwP\\/Ap9QNGStMQuKvYE2VBthRBaIvX9LmknZ3cBvuqKvNaL2Nj7B2R2Goa7\\/eWYDCogwafbp6Pj93vWvdy2+fGTkHGSxobnvgLvFIqv9IOy2Lk4QjWj7o64dUCiopR0OKjL8+vPM+l8iF+7bYeG+xSqy8SX8Fai5XOoNhy9anaJzK9ASLah8VeXKdfjGrvYsx2X\\/PaP+B8xFySP2XM95kGPKxyExi7Hk0j2igvjHqC2s3Cdg9+nwuUijnUycqGHUq3djMTLoPRjMHOJquZ1t2BNY575iRbYJTlteIgQkPHf50WALkzxn8zY5MkudBzffxm8B1Q6bnwoQHK8TR7KU2gMPwnQm6\\/ncygHuq1flVm3dqrF9xG6Cp2wC2SgTcErhrS\\/6in7FzrgBIOl570cxY0ovFICrE6rinuBdJkjfWYE3CZGCo6fVTAXUmje48c0611JmGD3PM6XQigFXGE32fjjaQoIkXf8TWI01kIqJDmZn80S6NXaYSrf9maWN1CB5gQ2E6B6Zk586sTZ2nnnJNol2KTkM1BPCTSMkrdiLtpjkUEGeo1tTe87oUzFHx++rgSO\\/lM94Dw5oN2jifGQquDBgIHY5ovxXVN3xrTgfrLEx+HWxdsiuIYpPx4lu4Qe0CVgZwPMqR4=\"}",
"object": "https://pirati.ca/objects/ec054ce7-2062-3bfa-8687-ca8313624820"
},
"signature": {
"type": "RsaSignature2017",
"nonce": "1e0f4ed490473423292524d96f3d13f7fb1425599dfadd614b174ad77eb77019",
"creator": "https://pirati.ca/profile/heluecht#main-key",
"created": "2022-03-24T21:41:48Z",
"signatureValue": "PAA2RTSvWKABq84fxlbvR1UZbIvDhoECyP5rSr5mP2nGFMo+BBhOq4Enq7SO/fiNOctILaLP4cdExyHZdYs7J64jCdfScuz6h2WZIlnKGEsR7mfDeUANboXqRbTKoyisA8vS3+BSSi4T2gjiyF3GGJLxUEcpOpD7T6G2BHQCQGbDSfue71Pygs6Z2RjCdLG1NiT6basjCKamrwxC+UYqzN3mCYLqpzBB3YD8/ql+1uqPPo3TI8CyQqq8ThEzYvXOI1eJcn0H9itD3WForGs9EQ/P39YGqrT40kx+mzhMBl16BnSO9sFHwJGd+Udi0DPrwlbCdJTuTEXJyvt6VRsyXYXe50aci+msm7MS2F+WaZZpbkxCbQNkJYfF2+yV/bDmhbvexT3avObytKGZURR+jo1UCRTwD5x4LZU/8Bvg6epsYmIXqLuuifbsrELpk+zhoHZD2drbRLWJM9KGHIK2EYtQlfvk7bDCQ/ukRns9G74JZYykqLxGhLFqd51JW2yUohmv4YoEFStXVCpInQGVQigxxO7qoCTbNiFhO7mTpd0gdx2kR4g83QJpPq6ZPaqag7z+zf3IPxA9WsZgfS66CAl6lqOK5jYkLr7JOejOU7oguHUfF6P89F2MDRoBTp6wVFL1z+rTGozyPr5mpgAAN1ambv/3ouUJdJ0Q9c6vvcE="
}
}
Delete
:
{
"@context": [
"https://www.w3.org/ns/activitystreams",
"https://w3id.org/security/v1",
{
"vcard": "http://www.w3.org/2006/vcard/ns#",
"dfrn": "http://purl.org/macgirvin/dfrn/1.0/",
"diaspora": "https://diasporafoundation.org/ns/",
"litepub": "http://litepub.social/ns#",
"toot": "http://joinmastodon.org/ns#",
"schema": "http://schema.org#",
"manuallyApprovesFollowers": "as:manuallyApprovesFollowers",
"sensitive": "as:sensitive",
"Hashtag": "as:Hashtag",
"directMessage": "litepub:directMessage",
"discoverable": "toot:discoverable",
"PropertyValue": "schema:PropertyValue",
"value": "schema:value"
}
],
"id": "https://pirati.ca/objects/ec054ce7-4762-3c1c-3c25-0cc665717210/Delete",
"type": "Delete",
"actor": "https://pirati.ca/profile/heluecht",
"published": "2022-03-24T07:22:36Z",
"instrument": {
"type": "Service",
"name": "Friendica 'Siberian Iris' 2022.05-dev-1453",
"url": "https://pirati.ca"
},
"to": [
"https://pirati.ca/profile/test8",
"https://ds9.lemmy.ml/c/testcom"
],
"cc": [
"https://www.w3.org/ns/activitystreams#Public",
"https://ds9.lemmy.ml/c/testcom/followers"
],
"object": {
"id": "https://pirati.ca/objects/ec054ce7-4762-3c1c-3c25-0cc665717210",
"type": "Tombstone"
},
"signature": {
"type": "RsaSignature2017",
"nonce": "eecfe411c2f5b4a21354f2580593c5d6cbbafef1dfc2266c3a29d3136270e489",
"creator": "https://pirati.ca/profile/heluecht#main-key",
"created": "2022-03-24T21:43:46Z",
"signatureValue": "SCu1Qj4V4JJl+GbJB/Wy//L6DFSKc0T4lTSxI2FWD+2lyeumtDu3raqg2Kfg2uR1abWgf2T0cDLJn31wpjzAQ6QpR3tGgM7o3yHV9KIZZa0QJ7Oa/cGW0ZJijiNAETKw67cthb+hy4z6dx1M+s7wCSEQZoEZqmgn/5BMY8o0NMw/BSV797uF1tJRq29AsdIgJpjX4eX2kVmVTtYMqHc8T5/l1z3FsZFyL0UkW5BypT0T3lhGlKflov47oNSPsadHgL2A8RPdiY59OLbHCJZnQgcHA3BgeMBnwlmtpGqcfsJKUo+43zXkfKikPOO03WQ+w+LzS9UOLWhhP5yfVBLmwhM5oPfps9VUjJ/gOyWtw8pPAK/LL65sUiooxdR3fqskctVRlTDGJ8WTZPsJwsH9zygBiHOmVnkIdHkNdsA80GD9iGmnPTHixEIY124QWu+o53kydEOAbOiZo7vowjSN4ViPzkhh9xI5xkkPLeIQSEgmSsxBN98xpRVBg17qjkhBWVMCwTIqFsmzlp3oWFdp0m0xwhKJLKwlcKReoaWUCUINBgBUIfAQuWHpv7Clv7xw4pcZ1w/hiZU+1ZOnEjwGQILaGpJvK2C80z5RkhCDSamT5vetS2TrkxbjkJIY6ffUzxJQ/Ox/zN4KWyaYV6DfYELfGkybBXKo3EFhLQDARos="
}
}
@Nutomic just some additional information: I'm currently preparing a change in Friendica so that posts that contain an external url will be a Page
while a post without it, will be an Article
or Note
.
The difference between Article
and Note
is that a Note
doesn't have got a title. Since Lemmy requires a title, it would be okay for me to only accept Article
and Page
.
Also there is one significant difference between those two types: On an Article
the url
will always point to the original URL of the post, while an url
from a Page
will point to the linked paged. So it would be the best, if Lemmy could handle that value differently concerning these two types (at least when receiving them).
@annando Perfect, thank you! All I had to change was accept Article
type for posts, thats it. Your change in https://github.com/friendica/friendica/pull/11375 is really not necessary though, we dont make any difference between posts with or without url. Well it will get you some partial compatibility with older Lemmy versions.
Also there is one significant difference between those two types: On an Article the url will always point to the original URL of the post, while an url from a Page will point to the linked paged. So it would be the best, if Lemmy could handle that value differently concerning these two types (at least when receiving them).
This is strange for me. We already show a link which points to the post's original instance (based on the id field). You can for example see it on this page (the colored fediverse icon). I dont see any reason to (ab)use the url field to send this url a second time. Current behaviour will be that such articles will have the content rendered in Lemmy, and also have the title link to Friendica, so there are two ways to read the same text which might be confusing. To avoid this, we would have to ignore the url field for all articles, which seems strange (and would cause problems for other software that tries to create an article with url).
Edit: one more thing, for private messages we use Pleromas ChatMessage extension. Do you support that?
We currently don't support the chat messages. But this sounds interesting.
Concerning this Article
thing: On a lot of systems in the Fediverse a post is reachable via two different URL. One is used for the technical stuff and the other is the link to the post when watched via a regular user. So the message with the ID https://pirati.ca/objects/ec054ce7-4962-3bea-1323-2bb743505014
is accessible via the URL https://pirati.ca/display/ec054ce7-4962-3bea-1323-2bb743505014
. This is a common pattern that is also used for example by Mastodon. The Note
with the ID https://mastodon.social/users/fsfe/statuses/108033351292131346
for example is using the URL https://mastodon.social/@fsfe/108033351292131346
when displayed. Because of this they present this value in the URL
field.
Since we also have got a look at the requested content types we always return the requested content (either the JSON content or the HTML content). But there are systems out there that always return the JSON content at their ID
URL.
The best way to cope with this is indeed to have different treatments for the different types. The easiest solution for Lemmy surely would be to simply drop the content of the URL
field on incoming Article
posts.
We could do that, but it would lead to very unexpected behaviour if some other software tries to create an Article
which links to an external website via url
field. That link would be silently dropped, and it would be complicated to figure out why.
I think the real problem here is that we are using a single field for two different purposes. One, in Lemmy the url
field is for links to external websites, and two, in Friendica it is used for the canonical url of that object. activitystreams-vocabulary defines url as "Identifies one or more links to representations of the object". So it seems your usage is correct and ours is wrong. I dont see any other field which could be used for this purpose, so it seems we would have to add a custom field? Honestly I dont like that idea, as url
is a very fundamental part of Lemmy, and it would cause compatibility problems with a lot of other software.
From my point of view the url
field does serve different purposes depending of the type. So with Article
and Note
it refers to this "representation" of the object. And with the type Page
the url
refers to the external page. But we can also argue that this "representation" for a Page
is the referred page and for Article
it is the post itself. So this is no violation of the standard.
Best would be that for Article
the content of url
is used for the link to the federated post, while for Page
the id
is used for that purpose. Then the url
is used for the preview of the external page.
Maybe that makes sense from Friendica perspective. But for Lemmy the only change i made is that Article
can be received, sending is still done entirely using Page
. So Lemmy can send Page
with only external link as url
, only text body as content
, or both of those, or neither (only name
). Lemmy doesnt use the url
field to refer to the object representation.
So i'm not really sure what to do. I think its worth discussing this with other project devs as well, before making any decision (maybe on socialhub).
I guess it would be best if Lemmy in the future does send the posts without some external link as an Article
and not as a Page
. You needn't to use the url
at all for an Article
. But for compatibility issues you could continue using Page
without an url
.
I don't know about Lemmy's release cycle. Possible it does make sense to just allow Article
as a first step and to improve the handling in some upcoming release.
Can you add the link her, if you start a discussion on Socialhub about this topic? I'm not very active there.
Okay, I guess there are a couple of different issues on the table...
@annando: From my point of view the url field does serve different purposes depending of the type. So with Article and Note it refers to this "representation" of the object. And with the type Page the url refers to the external page. But we can also argue that this "representation" for a Page is the referred page and for Article it is the post itself. So this is no violation of the standard.
Although this makes sense. Because of this:
@annando: Since we also have got a look at the requested content types we always return the requested content (either the JSON content or the HTML content). But there are systems out there that always return the JSON content at their ID URL.
GNU social is using the url
attribute, when available, for the permalink: https://code.undefinedhackers.net/GNUsocial/gnu-social/src/branch/v3/plugins/ActivityPub/Util/Model/Note.php#L164 , with fallback to the id
.
On the other hand, we had a Bookmarks plugin in version 2, that isn't federating via ActivityPub yet. The way we had thought of federating it was with a details html element in the content
, and the link to the webpage would be a source with mediaType https://www.rfc-editor.org/rfc/rfc2483#section-5 , but we haven't got there yet, it needs more thought.
Something like: ...
...
"type": "Page",
"title": "The title of this post about GNU",
"content": "<details><summary>Some briefing of what I'm sharing about GNU</summary>Let me elaborate more on my thoughts</details>",
"mediaType": "text/html"
"source": {
"content": "http://gnu.org\r\n",
"mediaType": "text/uri-list"
}
...
Nonetheless, I agree that moving this to SocialHub would be a good idea.
I don't think the source field is correct for that either, since it's specified as "source from which the content markup was derived" which it wouldn't be if the user is adding their own comments
Maybe a Link in attachment
or tag
?
@diogogithub like @vpzomtrrfrt suggested, I think that an attachment
would be the best solution.
@vpzomtrrfrt and @annando I agree. The main reason why we wrote that draft idea I shared, was because we didn't want to parse the content of type text/plain
differently in function of the object Type to extract the Summary and Description of the bookmark.
...
"type": "Page",
"title": "The title of this post about GNU",
"content": "<details><summary>Some briefing of what I'm sharing about GNU</summary>Let me elaborate more on my thoughts</details>",
"mediaType": "text/html"
"source": {
"content": "Bookmark: http://gnu.org
Summary: Some briefing of what I'm sharing about GNU
Description: Let me elaborate more on my thoughts",
"mediaType": "text/plain"
}
"attachment": [
{
"url": "http://gnu.org",
"type": "Document",
"mediaType": "text/html"
}
]
...
Started a SocialHub thread to further discuss the semantics of link posts: https://socialhub.activitypub.rocks/t/explicitly-attached-links/2357
Hi,
I really feel that being able to create new topics from remote instances would be a game changer. Lemmy would de facto become the "groups feature" the Fediverse is missing so much.
Putting Mastodon is the game would really help.
Do you have a specific issue to track federation with Mastodon ? Or is it ok to comment on this one ?
My understanding at this point is that mastodon only sends Notes, missing a title.
One workaround would be to consider the first sentence of a Note as title. If we want to enforce it more, we could force an empty line between title and body, or force a custom syntax (like [title] for instance).
In any case, a federated user sending a bad request (bad type of message, bad format, anything) should be informed it has failed and why : maybe with a private message to him ? I don't know if this follows ActivityPub protocol : are they recommendation on how to handle user errors / feedbacks ?
Anyway, thanks for this amazing work !
@raphaeljolivet Thats completely offtopic, open a new issue or use the search function.
Found a bug? Please fill out the sections below. 👍
For front end issues, use lemmy-ui
Issue Summary
Posting a NEW posting from friendica in a lemmy-community fails
I think, it's similar to the friendica-federation bug a few weeks ago for commenting. The error-message seems the same.
Steps to Reproduce
Technical details