Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

This Document has been moved over to Google Drive

Minerva’s primary functionality is to remind users of upcoming meetings and events through its integration with the Waterloo Rocketry Google Calendar. The Slackbot utilizes the Google Calendar event’s description to store metadata about the meeting which allows for a high level of configuration on how it manages these events.

...

Note that the /meeting edit command can only edit the next meeting for the channel it has configured as the Main Channel. To edit meetings that are further in the future, you can delete the meeting’s description from the Google Calendar event and reinitialize it, or attempt to change the meeting description text manually.

Troubleshooting

[note that the #minerva-logs channel exists]In general, if any unexpected behavior occurs with Minerva, check if there’s any messages posted in #minerva-log that indicate an error.

Minerva is no longer notifying me of an upcoming event

[remove the event description and reinitialize it]Minerva no longer detecting an upcoming event usually means that the associated Google Calendar event has broken metadata in its description. The best way to resolve this is to simply delete the description and re-generate the event description by using the /initialize command.

The /initialize or /meeting edit commands aren’t working

...

If the /initialize or /meeting edit commands are not working and a meeting needs to be created/updated before a fix is made to the commands, the Google Calendar event’s description can be created/edited manually. For a quick template for a meeting that notifies members of a single channel, the following can be copy/pasted into the event description:

Code Block
languagejson
{
    "link": "https://meet.jit.si/bay_area",
    "mainChannel": "CHANNEL_NAME_HERE",
    "additionalChannels": [],
    "agendaItems": [],
    "notes": "",
    "alertType": "alert-single-channel",
    "eventType": "meeting"
}

Be sure to replace CHANNEL_NAME_HERE with the name of the channel you want to be notified.

For further editing, the event metadata is in the form of a JSON object so be sure to run any manually edited descriptions through a JSON Validator to ensure that it is in the correct format. In addition, avoid adding any additional whitespace to the description as the parser that Minerva uses to read these descriptions is particularly sensitive to them. Below are the fields that can be within the JSON object:

  • mainChannel is the designated channel responsible for this event*

  • eventType can be: meeting (for a general or subteam meeting), test (for a cold flow, static fire), other, or none (for nothing)*

  • additionalChannels can be a space separated list of channels (prepended with a #) or 'default' for the default set of channels

    • default is currently set as: software, recovery, propulsion, payload, general, electrical, airframe, liquid_engine, business and mechanical

  • alertType*

    • alert will @channel all channels listed (main and additional)

    • alert-single-channel will @channel the main channel, and direct message single-channel guests in the additional channels

    • alert-main-channel will @channel the main channel, and post the message (sans-@channel) to additional channels

    • copy will post the message to all channels listed.

  • notes are notes appended to the end of the message if they exist

  • link link to the meeting

  • agendaItems agenda items for the event
    * denotes required item