scribejs

Scribing features

This document describe the features that can/should be used for the purpose of scribing using the W3C IRC Server. The features handled by this converter are essentially the same as David Booth’s script, although there some minor additions.

The script removes all lines referring to queue control, as well as commands referring to the RSSAgent, zakim, trackbot, and github-bot IRC bots.

Most IRC commands are based on a ROLE: value pattern, where the various “roles” are described below. The roles are case insensitive. For some roles, the syntax ROLE+ value or ROLE- value may also be used with a slightly different meaning. Some of the roles have aliases.

There are also some (currently only one) scribejs “tools” that influence the operation of scribejs. These begin by the scribejs, XXX string and a space, and are followed by the command itself, where XXX is the tool identifier.

When referring to names (e.g., scribe, present, scribe’s reference to speaker, etc.) the preferred way is to use that person’s IRC nickname. If done that way (and if a suitable configuration file is provided) the script would automatically convert those into the persons’ real name, which make the minutes more readable.

The various ‘roles’ are described below.

Prerequisites: zakim and rrsagent

Although, strictly speaking, not scribejs features, these IRC instructions MUST be issued at the beginning of the call:

These invites the zakim bot, which will also invite the rrsagent bot and make the minutes’ IRC logs public. The is essential: it will ensure the logging of the irc log, in a specific format, on the W3C servers. scribejs relies on those logs. (The zakim bot also provides queue control and has some more features that are not absolutely relevant.)

At the end of the call, the following IRC commands should be issued:

These will generate and store the logs, end the zakim bot. The rssagent bot remains on the channel, and should be ended explicitly via

once the minute log has been stored.

Minute headers

Scribe control

An active scribes’ list is maintained using the scribe or the scribenick IRC commands:

Scribing means that lines, whose IRC nickname appears on the active scribe’s list at the point of scribing, are considered special:

Subsequent IRC entries with that nickname are considered to be the “main” minute. The scribe should:

Sections

See also the subsection on issue management with scribejs commands below.

Note that the output of the zakim bot ‘agenda’ command is automatically converted into a Topic:.

Resolutions, actions

Change of the IRC lines

Slidesets

It is possible to refer to individual slides in a slideset: the minutes will contain a thumbnail of the relevant slide that is also linked to the slide itself. This is done as follows:

This feature is based on a tool in development, developed by Dominique Hazaël-Massieux and François Daoust. New slide formats may be added in future.

Miscellaneous

Scribejs Tools

A line starting with scribejs, XXX [ARGS] is a scribejs tool, where XXX is the tool identifier, and the arguments depend on the tool identifier itself. The available commands are:

Adding temporary nicknames

Handling issue references

scribejs also offers a shorthand of the form:

topic: title @issue Issuenumber1,Issuenumber2

is equivalent to:

topic: title
scribejs, issue Issuenumber1,Issuenumber2

Finally, scribejs has additional feature on automatically finding the title text, namely for

topic: @issue Issuenumber1,Issuenumber2

it also fetches the title of the issue (or pr) identified by Issuenumber1 from github and uses it for the in the section heading. This abbreviates a frequent pattern in minute taking. (The same shorthand is also available for sub-topics.)

Note that scribejs generates some “directives” (in the form of comments) into the generated minutes for these issues. This can be used by post-processing steps to, e.g., extract the discussion on a specific issue from the minutes, and add a comment to github automatically. See, e.g., the separate scribejs postprocessing tool.