Alice removes Bob from her followers collection
given: A new user called "alice"
given: A new user called "bob"
given: "bob" follows "alice"
when: "bob" sends "alice" a Follow Activity
outgoing.Follow
{
"actor": "http://banach/actor/-SZctRfFYeFGVddeAxweIw",
"data": {
"@context": "https://www.w3.org/ns/activitystreams",
"type": "Follow",
"actor": "http://banach/actor/-SZctRfFYeFGVddeAxweIw",
"to": [
"http://abel/actor/duIgVlslh1Pq1HU_XBtUbw"
],
"id": "follow:33d19c44-7550-42ef-89eb-ab50048b416c",
"published": "2024-11-08T18:35:02Z",
"object": "http://abel/actor/duIgVlslh1Pq1HU_XBtUbw"
},
"activity_type": "Follow"
}
incoming.Follow
{
"actor": "http://abel/actor/duIgVlslh1Pq1HU_XBtUbw",
"data": {
"@context": "https://www.w3.org/ns/activitystreams",
"type": "Follow",
"actor": "http://banach/actor/-SZctRfFYeFGVddeAxweIw",
"to": [
"http://abel/actor/duIgVlslh1Pq1HU_XBtUbw"
],
"id": "follow:33d19c44-7550-42ef-89eb-ab50048b416c",
"published": "2024-11-08T18:35:02Z",
"object": "http://abel/actor/duIgVlslh1Pq1HU_XBtUbw"
},
"activity_type": "Follow"
}
when: "alice" sends an Accept to this Follow Activity
outgoing.Accept
{
"actor": "http://abel/actor/duIgVlslh1Pq1HU_XBtUbw",
"data": {
"@context": "https://www.w3.org/ns/activitystreams",
"type": "Accept",
"actor": "http://abel/actor/duIgVlslh1Pq1HU_XBtUbw",
"to": [
"http://banach/actor/-SZctRfFYeFGVddeAxweIw"
],
"published": "2024-11-08T18:35:03Z",
"object": "follow:33d19c44-7550-42ef-89eb-ab50048b416c"
},
"activity_type": "Accept"
}
incoming.Accept
{
"actor": "http://banach/actor/-SZctRfFYeFGVddeAxweIw",
"data": {
"@context": "https://www.w3.org/ns/activitystreams",
"type": "Accept",
"actor": "http://abel/actor/duIgVlslh1Pq1HU_XBtUbw",
"to": [
"http://banach/actor/-SZctRfFYeFGVddeAxweIw"
],
"published": "2024-11-08T18:35:03Z",
"object": "follow:33d19c44-7550-42ef-89eb-ab50048b416c"
},
"activity_type": "Accept"
}
when: "alice" sends "bob" a Reject Follow Activity
outgoing.Reject
{
"actor": "http://abel/actor/duIgVlslh1Pq1HU_XBtUbw",
"data": {
"@context": "https://www.w3.org/ns/activitystreams",
"type": "Reject",
"actor": "http://abel/actor/duIgVlslh1Pq1HU_XBtUbw",
"to": [
"http://banach/actor/-SZctRfFYeFGVddeAxweIw"
],
"published": "2024-11-08T18:35:03Z",
"object": "follow:33d19c44-7550-42ef-89eb-ab50048b416c"
},
"activity_type": "Reject"
}
incoming.Reject
{
"actor": "http://banach/actor/-SZctRfFYeFGVddeAxweIw",
"data": {
"@context": "https://www.w3.org/ns/activitystreams",
"type": "Reject",
"actor": "http://abel/actor/duIgVlslh1Pq1HU_XBtUbw",
"to": [
"http://banach/actor/-SZctRfFYeFGVddeAxweIw"
],
"published": "2024-11-08T18:35:03Z",
"object": "follow:33d19c44-7550-42ef-89eb-ab50048b416c"
},
"activity_type": "Reject"
}
then: The "followers" collection of "alice" does not include "bob"
receive.alice
{
"action": "fetch_result",
"actor": "http://abel/actor/duIgVlslh1Pq1HU_XBtUbw",
"data": {
"@context": "https://www.w3.org/ns/activitystreams",
"id": "http://abel/followers/on42Ho3MsRxhwnGXQ1-afg",
"type": "OrderedCollection"
}
}