diff --git a/crates/kitsune-type/tests/actors/mitra.social_users_silverpill.json b/crates/kitsune-type/tests/actors/mitra.social_users_silverpill.json new file mode 100644 index 00000000..cf9d7f9d --- /dev/null +++ b/crates/kitsune-type/tests/actors/mitra.social_users_silverpill.json @@ -0,0 +1 @@ +{"@context":["https://www.w3.org/ns/activitystreams","https://www.w3.org/ns/did/v1","https://w3id.org/security/v1","https://w3id.org/security/data-integrity/v1","https://w3id.org/security/multikey/v1",{"proofPurpose":"sec:proofPurpose","Emoji":"toot:Emoji","gateways":"mitra:gateways","PropertyValue":"schema:PropertyValue","manuallyApprovesFollowers":"as:manuallyApprovesFollowers","schema":"http://schema.org/","featured":"toot:featured","subscribers":"mitra:subscribers","toot":"http://joinmastodon.org/ns#","value":"schema:value","mitra":"http://jsonld.mitra.social#","VerifiableIdentityStatement":"mitra:VerifiableIdentityStatement","MitraJcsEip191Signature2022":"mitra:MitraJcsEip191Signature2022","proofValue":"sec:proofValue"}],"id":"https://mitra.social/users/silverpill","type":"Person","name":"silverpill","preferredUsername":"silverpill","inbox":"https://mitra.social/users/silverpill/inbox","outbox":"https://mitra.social/users/silverpill/outbox","followers":"https://mitra.social/users/silverpill/followers","following":"https://mitra.social/users/silverpill/following","subscribers":"https://mitra.social/users/silverpill/subscribers","featured":"https://mitra.social/users/silverpill/collections/featured","assertionMethod":[{"id":"https://mitra.social/users/silverpill#main-key","type":"Multikey","controller":"https://mitra.social/users/silverpill","publicKeyMultibase":"z4MXj1wBzi9jUstyPkUpxMpTJw8gwWSku9DQGbjZDXXjBf1HpRQGkxugs1aRS6Zx5TvKNj1GrssZSf2Mi855Xq3b5YYSySXNcaiUFC4W6FJbseASFFJpVGpab5toa9q51A37T5zQiDaVZcgi3bsAd27ZpQGkzJn78gh2jJt3ucrYPQ4Mg7ufWkUdPAsko9MTk7hdRUteythAEZFFHb5LmsQJ5dR2a8yfsNH98LvN9iVpmF7cy53SX61gCB8kvk5AdQdzm3BgDWUsjus5BKCwLhPveiRq1cvQmisTrz4Zzc5iHWdp2vtf9qiEcKAqfGhNSsf4ZHP9rdT4p2gV8XM7RbsaTKoo3rmjn9u4QTs3ubdZRr5CMyqkc"},{"id":"https://mitra.social/users/silverpill#ed25519-key","type":"Multikey","controller":"https://mitra.social/users/silverpill","publicKeyMultibase":"z6MkjtdL1hhAtJDRTti4JZtjGVkMiqbrQWhLQjK8wV4neCvS"}],"publicKey":{"id":"https://mitra.social/users/silverpill#main-key","owner":"https://mitra.social/users/silverpill","publicKeyPem":"-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAwvnkkLAnX7SThHEC9tOX\ny6Y4N5DjFH4hs1q3VuRJH6NIZbIX3g7EX2yta3WXpJFrvRvfx/39+aYfxGBEP6qr\n0hoa7rYDVWMs/tgsd98Zc4K6dEAlTljvATlGEuW6MDaF9qBM9SIFs0ZFXH90wStD\nhW9PBFcmLpqQ8ZTa+busK0hP/k5PxrmQz18DQpRzdHK0cFK81STAmK/Rrx1uWQRs\nWJvKZHWmhAVZcdDIRLciERx+W4XYFXpl57LkyP6QGpeD+6dGMzt8KR2O9kNBSuAh\njXPQMvzlsK7jLP97+780vyQvTYOCapBzCTOjuPANH0OA7XVR2iv/tVDKSeqC/+p7\ndwIDAQAB\n-----END PUBLIC KEY-----\n"},"icon":{"type":"Image","url":"https://mitra.social/media/6a785bf7dd05f61c3590e8935aa49156a499ac30fd1e402f79e7e164adb36e2c.png","mediaType":"image/png"},"summary":"Developer of ActivityPub-based micro-blogging and content subscription platform Mitra. Working on Fediverse standards: https://codeberg.org/silverpill/feps","attachment":[{"alsoKnownAs":"https://mitra.social/users/silverpill","proof":{"created":"2023-12-21T15:44:27.287938994Z","proofPurpose":"assertionMethod","proofValue":"zK43vnqGDEMNqEtKe7QJWnVeqhmsRY9NAQKL9XxT7nhjBbTNz1FFB1nLxAaazjMDRirFiQovzYRkaSje5rhzv4XF4w","type":"MitraJcsEip191Signature2022","verificationMethod":"did:pkh:eip155:1:0x198ad1c900a575068879d5b0aabacbfefac522fa"},"subject":"did:pkh:eip155:1:0x198ad1c900a575068879d5b0aabacbfefac522fa","type":"VerifiableIdentityStatement"},{"alsoKnownAs":"https://mitra.social/users/silverpill","proof":{"created":"2023-12-21T19:16:00.597380706Z","cryptosuite":"jcs-eddsa-2022","proofPurpose":"assertionMethod","proofValue":"z3YbD5XKDsYqCZ2c3FnqaH8DBS1hbJEPv5keD9h1tnEUmCcxfyhG5TsRpW8NZY7gUteFZFgi82QpDGt5p5uVit5VM","type":"DataIntegrityProof","verificationMethod":"did:key:z6MkrJ9F3pUkBV28cAQ1LNhUmMHakZsx3GLg2eYgyHDv9tnT"},"subject":"did:key:z6MkrJ9F3pUkBV28cAQ1LNhUmMHakZsx3GLg2eYgyHDv9tnT","type":"VerifiableIdentityStatement"},{"href":"https://mitra.social/users/silverpill/proposals/monero:418015bb9ae982a1975da7d79277c270","mediaType":"application/ld+json; profile=\"https://www.w3.org/ns/activitystreams\"","name":"MoneroSubscription","rel":["payment","https://w3id.org/valueflows/Proposal"],"type":"Link"},{"name":"Code","type":"PropertyValue","value":"https://codeberg.org/silverpill/"},{"name":"Matrix","type":"PropertyValue","value":"@silverpill:hackliberty.org"},{"name":"XMPP","type":"PropertyValue","value":"silverpill@were.chat"},{"name":"$XMR","type":"PropertyValue","value":"884y9LmsWY7PQNsyR7bJy1dvj91tuF5spVabyCnPk4KfQtSuzFbQobTFC7xSemJgVW1FWAwnJbjTZX5zZWbBrfkv62DB62d"},{"name":"XMR subscription","type":"PropertyValue","value":"https://mitra.social/@silverpill/subscription"},{"name":"PGP","type":"PropertyValue","value":"0541 49E3 0F91 C6D7 8FFA C49C 955F 5A6E 2123 25F0"},{"name":"OMEMO fingerprint","type":"PropertyValue","value":"689a2fb0ec87a9481fb45cb7d8870da6aeb4d8247bd69a39017701133b901f04"},{"name":"Matrix (backup)","type":"PropertyValue","value":"@silverpill:poa.st"}],"manuallyApprovesFollowers":false,"url":"https://mitra.social/users/silverpill"} \ No newline at end of file diff --git a/crates/kitsune-type/tests/objects/mitra.social_objects_0190363a-4fcf-35e7-8643-3671ac892cdf.json b/crates/kitsune-type/tests/objects/mitra.social_objects_0190363a-4fcf-35e7-8643-3671ac892cdf.json new file mode 100644 index 00000000..2a5b8716 --- /dev/null +++ b/crates/kitsune-type/tests/objects/mitra.social_objects_0190363a-4fcf-35e7-8643-3671ac892cdf.json @@ -0,0 +1 @@ +{"@context":["https://www.w3.org/ns/activitystreams","https://w3id.org/security/v1","https://w3id.org/security/data-integrity/v1",{"Hashtag":"as:Hashtag","toot":"http://joinmastodon.org/ns#","Emoji":"toot:Emoji","sensitive":"as:sensitive"}],"id":"https://mitra.social/objects/0190363a-4fcf-35e7-8643-3671ac892cdf","type":"Note","attributedTo":"https://mitra.social/users/silverpill","replies":"https://mitra.social/objects/0190363a-4fcf-35e7-8643-3671ac892cdf/replies","content":"

Welcome @nomad, the first ever FEP-ef61 + FEP-ae97 actor.

It doesn't have S2S inbox yet, but it has C2S outbox and was created from a client. The client controls the identity key, can send signed messages to local users, and receive messages from them. I published the code here: https://codeberg.org/silverpill/fep-ae97-client

FEP-ae97 clients are not difficult to build, and I invite everyone to do so. C2S protocol is identical to S2S protocol, except you send activities to a local outbox instead of a remote inbox, and you pull activities from local inbox instead of listening for them online. The development version of Mitra already has necessary endpoints. FEP-ae97 spec needs to be updated though, I will do that soon.

#fep_ef61

","sensitive":false,"tag":[{"type":"Hashtag","href":"https://mitra.social/collections/tags/fep_ef61","name":"#fep_ef61"}],"to":["https://www.w3.org/ns/activitystreams#Public"],"cc":["https://mitra.social/users/silverpill/followers"],"published":"2024-06-20T15:18:29.583070Z","updated":"2024-06-21T11:09:42.568945Z"} \ No newline at end of file