Meeting Reminder Configuration

The reminders are sent by a program periodically run by cron. That program reads this wiki page to obtain the configuration data that controls its actions.

Configuration items are singly indented paragraph's that look like * word: configured-value. Anything else is comments.

Meeting Wiki Page

This configuration item says which wiki pages contains the meeting table.

Meeting Table Sentinels

The start and end sentinels are blobs of text that appear just prior to and just after the meeting table, respectively. Only blank lines can separate the lines that contain the sentinels and the meeting table.

The meeting table itself must be a moinmoin table. The first line must be a heading line. The cell contents in this line become the field names. They are used to refer to fields in a meeting row when generating the email. The field names are generated by removing all non alpha-numeric characters. Field actually have two names. The second one is the original name one suffixed with -url. It will be blank unless the field contains a moinmoin link in which case it will contain the url part of the link and the original name will refer to the text part of the link.

Reminder Days

The days reminders are sent. These are configured as the number of days prior to the meeting date. A value of 0 would send the reminder on the day of the meeting, and a value of 7 would sent it a week before. (The time the reminder is sent is determined by when the cron job runs.) To send multiple reminders give a list of values separated by commas.

Time Zone

The time zone meeting dates are in. This is a file name under /usr/share/zoneinfo.

Date Column

This field specifies the field name of the date the meeting table. The date must have the format dd/mm/yyyy.

No meeting values

This tags meetings rows that aren't to have reminders sent for them. The format is a field name, followed by a value. If the nominated field contains the value, the reminder isn't sent. Spaces are stripped from the values before comparing. If the value isn't present the reminder isn't sent if the field is blank. There can be several of these lines.

Email Template

This email template is the RFC 822 formatted blob of text. It's first line must start with From:. It should also contain a To: line and probably other email header lines. It will be sent using the shell command /usr/lib/sendmail -t -f from-email-address.

The template can contain Python formatting escapes, typically look like %(fieldname)s. Here fieldname is a field name from the meeting table. Obviously enough such escapes are replaced by values from the meeting table. Escape a % in the email by doubling it. In addition to the usual formatting escapes %(fieldname)?[...] is recognised. If fieldname isn't defined or is blank the stuff brackets is omitted. Parenthesise, braces and angle-brackets can be used in place of the square brackets.

In addition to the field names defined by the meeting table header these are also available:

And finally, the meeting template:

Subject: Next Meeting - %(meeting_date_dth)s %(meeting_date_mmmm)s %(meeting_date_yyyy)s

The Home Unix Machine Brisbane Users Group exists to get fellow
Unix users in contact with each other, to introduce people to
Unix and Unix-like operating systems, and to help users in
operating those systems.  Everyone is welcome to attend.

Meetings tend to be informal.  We socialize, discuss Unix and
computing, solve Unix problems for new and experienced users
alike and, these days, have regular talks.

Date:   %(meeting_date_dddd)s, %(meeting_date_dth)s %(meeting_date_mmmm)s %(meeting_date_yyyy)s (every second %(meeting_date_dddd)s)

Time:   Starting %(OpeningTime)s, closing %(ProposedClosingTime)s.

Venue:  Room %(Room)s, %(Building)s
        The University of Queensland, St Lucia Campus%(Building-url)?[

        Most of the car parking restrictions do not apply on
        weekends; however, "No parking anytime" means what it says ;)

        The University is serviced by public transport with frequent
        buses during University terms.  For more information:

Cost:   Membership until our AGM in September is $20, but no one
        has to join unless they are going to use club services
        such as our network access during meetings.

Talks:  Information on upcoming talks is announced separately.
        For information on talks see the announcements by our
        Talks Maintainer on the announce mailing list.

Food:   The eating places (ranging from take away to a la Carte)
        at 'The Ville' are usually open until about 10pm Saturday
        night.  There is also the Pizza Cafe on campus near the
        Schonell Theater:

Drinks: Various soft drinks and snacks are available from the
        three vending machines located immediately outside the
        room.  Remember to bring change!

For more information on club meetings and HUMBUG itself see our
web page at or email me directly.

%(program_name)s %(program_argv)
I am typically run by cron