Implementing ActivityPub Client-to-Server

Great discussions and ideas here.
I decided to convince my customer that AP is exactly the right thing to solve many of his problems.
And I am still > 100% convinced of that! Instead of seeing an application that is extended by AP, I see UseCases that I solve with AP.

I see our AP server as a kind of “messaging bus”, in which our own system is also an actor. Just like the admin (person) and the user (person).

For example, one of our applications sends a todo that is addressed to the admin. And the system listens to the admin’s inbox and then generates a sendMail activity. which in turn is processed by the mail service and delegated to the mail server(SMTP).

System and admin tasks are our first UseCases. Later, communication between users will certainly play a role.
It will be exciting when more applications are added, which will probably act as application actors. But each will also have an admin (person).

A main reason why I am interested in system tasks is e.g. statistics. This will become an essential use case to be able to assess what the system is used for and how often.
And to map these activities as RDF in AP seems to me to be more than reasonable. Especially since I am able to search activities and objects with SPARQL

We’re kind of building a platform for managing applications.
And we are relying on AP C2S for this. AP S2S is not an issue for the time being because there are no business cases for it at the moment.

I’m quite happy with the fact that the spec calls for OAuth2, since that’s our SSO solution anyway.

What frustrates me a bit is that I feel like there are a lot of unanswered questions and there are no answers and no reference implementations. Worse, there are actually no contact persons either ,-)

So we’ll probably build our own little AP C2S world and just make assumptions that help us solve problems.
Because that’s what we have to do. Create solutions to problems. And we want to do that as AP C2S compatible as possible.

Existing AP implementations are of little help to me so far, because they are often developed in languages I don’t understand and don’t want to learn. And on the other hand, mostly only a few useCases are implemented, which are of little help to me. I am very, very excited what the result of our work will be and hope for many interesting discussions here :wink:

We implement in Java based on Spring-Boot and use an RDF4J server as storage.
Distribution of objects to different AP servers is currently not an issue for us.

The project is still closed-source, because the OSS strategy is being worked on. I estimate the probability of it becoming OSS to be close to 100%.

One difficulty I have is to separate the AP part of the overall application from the rest, so that AP is/remains reusable without containing non-AP UseCases.

There are no problems, only challenges :wink:

My current biggest challenge is Create Activity (Object or Objects)

best regards
Fredy

2 Likes