event: events management

Event commands allows you to create/modify or get data about an event, and to manage your invitees.

get

Get metadata about one or more event(s).

By default the events are displayed in a format readable, and --verbose, -v can be used one or more times to show more or less data. As usual, output can be used to get the data in a different way.

example

Retrieve events from personal agenda:

$ li event get

Get details of a next dentist appointment from personal agenda:

$ li event get -i dentist -vv

create

Create a new event. You can specify the starting time of the event with -S TIME_PATTERN, --start TIME_PATTERN, and either its end time with -E TIME_PATTERN, --end TIME_PATTERN or its duration with -D DURATION, --duration DURATION. --start and --end use a full Time Pattern when --duration uses the relative delta part of it. It’s mandatory when creating and event to specify starting and ending time (or duration).

If your organsise an item, the --rsvp flag should be used: it will use the default RSVP form which ask for attendance. If you want to request more information to your guest, --rsvp_json JSON can be used: the JSON argument is a data dict as described in data_dict_2_data_form function where the namespace key is not necessary (it’s set automatically):

libervia.backend.tools.xml_tools.data_dict_2_data_form(data_dict)

Convert serialisable dict of data to a data form

The format of the dict is as follow:
  • an optional “namespace” key with form namespace

  • a mandatory “fields” key with list of fields as follow:
    • “type” is mostly the same as data_form.Field.fieldType

    • “name” is used to set the “var” attribute of data_form.Field

    • “label”, and “value” follow same attribude in data_form.Field

    • “xhtml” is used for “xml” fields with child in the C.NS_XHTML namespace

    • “options” are list of dict with optional “label” and mandatory “value” following suitable attributes from data_form.Option

    • “required” is the same as data_form.Field.required

If the event links to an other one, --external JID NODE ITEM can be user

example

Create an event about to celebrate New Year:

$ li event create -s some_pubsub@example.net -n urn:xmpp:events:0/party -i new_year_eve_2022 --start 2022-12-31 --end 2023-01-01 -d "Party to celebrate new year" -H https://example.net/some_image.jpg "New Year's Eve"

Add the dentist appointement on coming Tuesday to our personal agenda:

$ li event create -S tuesday -D "1 hour" Dentist

modify

This command works in the same way as libervia-cli_event_create but modify an existing event: all arguments are optional, those specified will override the original ones from the updated event.

If the ending time or duration must be modified, the starting must be specified again.

example

Change the head picture from the New Year event created above:

$ li event modify -s some_pubsub@example.net -n urn:xmpp:events:0/party -i new_year_eve_2022 -H https://example.net/some_other_image.jpg

invitee

Subcommands to handle guests. Please check event/invitee: event invitees management.