Federating events of an existing calender

Hi all,
first of all: I’m not programming very much. But I’ve the idea of implementing federation to the calendar of my local hackspace since the go live of Mobilizon (yesterday MET).

The MOS (Metalab Operating System) is coded in Python, so I started looking for a Python library. And I found one! But I didn’t find a helpful documentation for it. But since Events are similar to Objects in ActivityStream, it should be as easy as the example? On the other hand Mobilizon added some Attributes to their implementation of federated events. But I don’t see how I could realize this further attributes (especially the repliesModeration and the ical:status attributes) with this library. I also don’t see which attributes are mandatory to federate own events with Mobilizon Instances.

In case my questions are drawn by all my explanations and links:

  • Which attributes are mandatory for events to federate with Mobilizon?
  • Are there better suited python libraries for my use case?
    • If not, how to implement additional attributes like repliesModeration?
  • Help! /o\

Hi,

Which attributes are mandatory for events to federate with Mobilizon?

Right now, the following:

  • either actor or attributedTo to identify the creator of the event (which should point to an Actor)
  • name
  • startTime
  • id (which Mobilizon assumes has also a html representation)

To use Python you could have a look on how https://funkwhale.audio/ and https://olki.loria.fr/platform/index.html handle ActivityPub.

1 Like

Hi,
great thank u. I think this helps a lot! I will have a deeper look into it when I’ve more time again. :slight_smile:

Re. python I recommend

Talk to @bob@epicyon.freedombone.net
Also indymedia currently uses it for the reboot.

I would help if it would be about nodeJS cause with python my help would probably not be helpful :wink:

1 Like

In Epicyon events are added to Note objects as tags:

            "tag": [
                {
                    "@context": "https://www.w3.org/ns/activitystreams",
                    "type": "Event",
                    "name": "name of event",
                    "startTime": start_time,
                    "endTime": end_time
                },
                {
                  "@context": "https://www.w3.org/ns/activitystreams",
                  "type": "Place",
                  "name": "location of event"
                }
            ],