<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE rfc SYSTEM "rfc2629.dtd">
<?rfc compact="yes"?>
<?rfc strict="yes"?>
<?rfc symrefs="yes"?>
<?rfc toc="yes"?>
<?rfc tocdepth="3"?>
<rfc category="info" docName="draft-saintandre-jabber-scribe-01" ipr="trust200902">

  <front>
    <title abbrev="Jabber Scribe Role">The Jabber Scribe Role at IETF Meetings</title>

    <author initials="P." surname="Saint-Andre" fullname="Peter Saint-Andre">
      <organization>&amp;yet</organization>
      <address>
        <email>peter@andyet.com</email>
        <uri>https://andyet.com/</uri>
      </address>
    </author>

    <author initials="D." surname="York" fullname="Dan York">
      <organization>Internet Society</organization>
      <address>
        <email>york@isoc.org</email>
        <uri>https://www.internetsociety.org/</uri>
      </address>
    </author>
    
    <date/>

    <area>GEN</area>
    <keyword>Internet-Draft</keyword>
    <keyword>Jabber Scribe</keyword>
    <keyword>IETF meetings</keyword>

    <abstract>
      <t>During IETF meetings, individual volunteers often help sessions run more smoothly by relaying information back and forth between the physical meeting room and an associated textual chatroom.  Such volunteers, commonly called "Jabber scribes", might benefit from the suggestions provided in this document.</t>
    </abstract>
  </front>

  <middle>

    <section title="Introduction" anchor="intro">
      <t>During IETF meetings, individual volunteers often help sessions run more smoothly by relaying information back and forth between the physical meeting room and an associated textual chatroom.  Because these chatrooms are currently implemented using Jabber/XMPP technologies (see <xref target='RFC6120'/> and <xref target='XEP-0045'/>) the role is commonly referred to as that of a "Jabber scribe".</t>
      <t>This role is important because it is the primary way for a remote attendee to provide feedback or comments back into most IETF meeting sessions.  Although there are multiple ways that a remote attendee can listen and follow along, the chatroom provides a method of returning feedback to the physical meeting in something close to real time.  These methods hold true for IETF working group sessions, IRTF research group sessions, IETF "birds of a feather" (BoF) sessions, and similar sessions at IETF meetings.</t>
      <t>This document provides suggestions for fulfilling the role of a Jabber scribe, based on the authors' personal experience as well as input from other individuals who frequently volunteer as Jabber scribes.</t>
    </section>

    <section title="Know Your Users" anchor="users">
      <t>The participants in a chatroom typically fall into three categories, labelled here for ease of understanding:</t>
      <t>
        <list style='symbols'>
          <t>Remote Participants
          <vspace blankLines='1'/>
          Remote attendees who are listening to the audio stream or in some cases following the proceedings using a real-collaboration system (currently exemplified by the Meetecho service). These participants might wish to send questions or feedback to the physical room.</t>
          <t>Observers
          <vspace blankLines='1'/>
          IETF meeting attendees who are in another simultaneous session in a different physical room.  These participants often monitor the chatroom to find out when a particular topic is being discussed or to observe what is being discussed in the chatroom. Typically they are not able to listen to the audio stream and sometimes they ask for a higher level of commentary so that they can know when they might need to change locations to participate in the session's physical room.</t>
          <t>Local Participants
          <vspace blankLines='1'/>
          IETF meeting attendees who are in the same physical room.  Sometimes these participants like to follow the discussions in the physical room and the chatroom at the same time.  They can also provide some assistance to Jabber scribes.</t>
        </list>
      </t>
      <t>Chatroom participants are usually identified by a "nickname" or "handle" rather than a full name.  This can be confusing to scribes, because they don't always know who is providing questions or comments to be relayed.  A scribe should feel free to ask for clarification so that the identity of the remote participant can be communicated at the microphone.</t>
    </section>

    <section title="Know Yourself" anchor="self">
      <t>Different people have different aptitudes and skills.  Although some people who volunteer to act as Jabber scribes are able to provide a fairly complete transcription of what is said and done in the physical meeting room, that is not the expectation for most volunteers (don't be scared off by the word "scribe").  Fulfilling the primary tasks described in the next section is not a significant burden for most volunteers, and can be an enjoyable way to participate in a session.  This document attempts to describe the experience and provide some helpful guidance, but if you are thinking about volunteering then you might also ask other volunteers about their experience.  Knowing your aptitudes and skills (e.g., perhaps you are not a great typist) can help you understand the level of involvement you are comfortable with.</t>
    </section>

    <section title="Primary Tasks" anchor="primarytasks">
      <t>The primary "customers" for a Jabber scribe are the remote participants, and those customers are served in real time.  A scribe can assume that remote participants have access to at least the audio stream and perhaps also video for a session (except in extraordinary circumstances, such as when technical problems occur with the streaming facilities).  Even though chatroom sessions are logged during IETF meetings and these public logs can be a useful adjunct to the historical record, a scribe is not expected to transcribe what is said and done during the session.  Instead, the primary role of a scribe is to act as a relay between the physical room and the remote participants.</t>
      <t>In particular, individuals who volunteer for the role of Jabber scribe usually complete the following tasks:</t>
      <t>
        <list style='symbols'>
          <t>Relay questions and comments from the chatroom to the physical room. This typically involves going to the microphone to relay the comment from the remote participant.</t>
          <t>Count the number of chatroom participants who virtually "hum", raise their hands, volunteer to review documents, etc., and feed that information back to the physical room.</t>
          <t>Relay information about hums and similar interactions from the physical room to the chatroom (preferably after receiving a "readout" from the session chairs).</t>
        </list>
      </t>
      <t>It is the convention in most sessions that the Jabber scribe has the privilege to go to the front of the microphone line to relay information from remote participants.  Some Jabber scribes choose to exercise that privilege while others choose to wait in line along with the participants in the physical meeting rooom.  However, be aware that because of lag (often 20 seconds or more) between in-room discussions and the audio stream (as well as the inevitable delay while a remote participant types a question or comment to be relayed), it can be helpful for the scribe to "jump the queue" so that such questions and comments are not stale by the time they are relayed to the microphone.</t>
    </section>

    <section title="Additional Tasks" anchor="addltasks">

      <t>Additionally some Jabber scribes often complete the following tasks:</t>
      <t>
        <list style='symbols'>
          <t>Relay the names of people speaking in the physical room to the chatroom. (To save typing the full names of people who speak frequently, scribes often use initials, but should expand the initials on first use.)</t>
          <t>Relay the slide numbers or slide titles so that it is easier for chatroom participants to follow along.</t>
          <t>Query remote participants about audio streaming quality, and relay such information to the session chairs.</t>
          <t>Relay to the chatroom participants any logistical or procedural issues related to the meeting (e.g., known technical glitches at the physical meeting or delays in starting the session).</t>
          <t>Provide links to the current set of slides and the document being discussed so that chatroom participants can easily follow along.</t>
        </list>
      </t>
      <t>Although Jabber scribes are not generally expected to transcribe the complete contents of conversations that happen in the physical room to the chatroom, they sometimes relay the gist of such conversations, especially during ad-hoc discussions for which slides are not available.  (By prior arrangement between the session chairs and the Jabber scribe, actual transcription might be expected for particular sessions.)</t>

    </section>
    
    <section title="Suggestions" anchor="suggestions">
      <t>Experience has shown that the following behaviors make it easier to act as a Jabber scribe.</t>
      <section title="Getting Set Up with Jabber" anchor="suggestions-jabber">
        <t>An overview of the IETF Jabber service can be found at &lt;http://www.ietf.org/jabber/&gt;.  Many common instant messaging clients support the Jabber/XMPP protocols, and at the time of writing a list of such clients can be found at &lt;http://xmpp.org/xmpp-software/clients/&gt;.  Because the IETF Jabber service provides chatrooms only and does not enable direct registration of user accounts, you will need to create a user account at another service; one list of such services can be found at &lt;https://xmpp.net/directory.php&gt;.  Not all clients support the ability to join a chatroom, so you might want to test your preferred software in advance of the meeting (the hallway@jabber.ietf.org room is a good place to test).  Although the exact user interface for joining a chatroom depends on the software you are using, typically such software will have a "join room" option that prompts you to provide the entire room address (e.g., "hallway@jabber.ietf.org") or separately provide the name of the room (e.g., "hallway") and the domain of the chatroom service (e.g., "jabber.ietf.org").  Asking your fellow IETF participants about their preferred software applications can be a good way to learn about Jabber/XMPP clients that you might want to use.</t>
      </section>
      <section title="Before the Session Begins" anchor="suggestions-before">
        <t>If you have volunteered before the session:
          <list style='symbols'>
            <t>Coordinate with the chairs to ensure that remote participants have received information about where to find the meeting materials, agenda, audio stream, etc. (e.g., this information can be sent to a working group discussion list so that remote participants do not need to ask about it on entering the chatroom).</t>
            <t>Coordinate with the chairs to see if they have any special expectations for the Jabber scribe (e.g., some chairs might want you to transcribe more detailed information about the session proceedings into the chatroom).</t>
            <t>Ask the session chairs whether it is acceptable for you to advance to the front of the microphone line with time-sensitive comments from remote participants.</t>
          </list>
        </t>
      </section>

      <section title="As the Session Is Starting" anchor="suggestions-start">
        <t>As you are getting settled and ready for the meeting to start:</t>
        <t>
          <list style='symbols'>
            <t>Seat yourself near the microphone most likely to be used for discussions in the physical room, so that you can more easily capture the names of people who come to the microphone.  Typically this will be a seat near the end of a row or in some location where you can easily get up out of your seat to go to the microphone.</t>
            <t>Start up your preferred Jabber client, log into your server, and join the chatroom for your session; the addresses are of the form group-name@jabber.ietf.org or bof-name@jabber.ietf.org.</t>
            <t>It can be helpful to open several browser windows or tabs for:
              <list style='symbols'>
                <t>the agenda page for the session</t>
                <t>the overall agenda page for the IETF meeting (the "tools-style agenda" can be especially helpful for copying links for session-specific resources such as the audio stream)</t>
                <t>the materials page so that you can relay links to slides if necessary (at the time of this writing, URLs for materials related to IETF working groups are of the form "https://datatracker.ietf.org/meeting/&lt;nn&gt;/materials.html#&lt;name&gt;", where "nn" is the meeting number and "name" is the acronym for the working group, research group, or BoF)</t>
                <t>the documents page for the working group or research group (or BoF wiki page) in case you want easy access to documents mentioned but not in the agenda page</t>
                <t>the meeting registration system page (see below)</t>
                <t>the overall remote participation page for the IETF meeting in question (at the time of this writing, the URL for this page is of the form "http://www.ietf.org/meeting/&lt;nn&gt;/remote-participation.html", where "nn" is the meeting number</t>
              </list>
            </t>
            <t>Determine if the session will be streamed via a realtime collaboration system such as Meetecho. If so, you can also point remote participants to that system for interaction.</t>
            <t>If the session is large or is expected to be especially active (e.g., a controversial BoF), find an assistant who can help you by sitting at another microphone, taking turns relaying information, etc.</t>
          </list>
        </t>
        <t>Identifying one or more assistants is particularly useful if you want to go up to the microphone to speak as an individual or if you need to take a break or step out of the physical room at some point.</t>
      </section>

      <section title="During the Session" anchor="suggestions-during">
        <t>As you perform your role during the session:</t>
        <t>
          <list style='symbols'>
            <t>Identify yourself in both the physical room and the chatroom so that participants in both venues know you are a Jabber scribe.</t>
            <t>Ask chatroom participants what level of information they need relayed into the chatroom.  For example if all chatroom participants are listening via audio or a system like Meetecho they might need less information relayed from the room.</t>
            <t>Ask chatroom participants to prepend statements they would like you to relay with "RELAY" or "MIC" (the former term is less ambiguous).</t>
            <t>When relaying a question or comment from the chatroom to the physical room, say "this is X relaying for Y from the chatroom" so that people know you are not speaking for yourself.</t>
            <t>It's not expected that you will know the names of everyone who comes to the microphone.  If you don't know the name of a person at the microphone, you have several options:
              <list style='symbols'>
                <t>look at their name badge if you are seated nearby</t>
                <t>query them directly (calling out "state your name, please" is acceptable)</t>
                <t>ask in the chatroom or type something like "?? at the mic", since it is likely that a local participant will be able to identify the person for you</t>
                <t>look up the name of the attendee in the meeting registration system (this is typically found at a URL of the form "https://www.ietf.org/registration/&lt;meeting&gt;/attendance.py", such as "https://www.ietf.org/registration/ietf90/attendance.py"); you can quickly look up a name using this system if you are in doubt.</t>
              </list>
            </t>
            <t>Be aware that lag happens between the time when something is said in the physical room and the time when someone provides a response in the chatroom, and take this into account when the interaction is time-sensitive (e.g., during a hum or a show of hands).</t>
            <t>Because of the potential lag time, ask remote participants who are doing a hum to indicate what choice their hum is for rather than just typing "hum" into the chat room. For example, "hum yes" or "hum for option 1". You can then more easily tally the results and report them to the physical room.</t>
          </list>
        </t>
      </section>
      <section title="As the Session Is Ending" anchor="suggestions-ending">
        <t>As you wrap up your scribing at the end of the session:</t>
        <t>
          <list style='symbols'>
            <t>Post a message into the chatroom informing all of the participants that the session is finishing up, and ask for any final comments to be relayed.</t>
            <t>When the session is done, say so in the chatroom.</t>
            <t>Indicate that you are leaving the Jabber room and that no one will be available relay further comments.</t>
          </list>
        </t>
      </section>
    </section>

    <section title="Reporting Problems" anchor="reporting">
      <t>If you need to report a problem during an IETF meeting (e.g., problems with media streaming), at the time of this writing there are several ways to do so:
        <list style='symbols'>
          <t>For network and media streaming issues, send email to tickets@meeting.ietf.org.</t>
          <t>For all other issues, send email to the "Meeting Trouble Desk" via mtd@ietf.org.</t>
          <t>To chat with members of the Network Operations Center (NOC), join the noc@jabber.ietf.org chatroom.</t>
          <t>To report a problem in person, visit the help desk in the Terminal Room.</t>
        </list>
      </t>
    </section>

    <section title="Advanced Tips" anchor="advanced">
      <t>It can be helpful to run two separate Jabber clients connected to two separate Jabber servers, in order to prevent delays if one of the servers experiences an outage during the session (yes, it has happened).</t>
      <t>If you have a chance to do so, you may want to measure the lag time between when something is said in the physical room and when it is heard on the audio stream and then let the remote participants know the length of the delay. This could be accomplished by either listening to the audio stream yourself or working with a remote participant who you know is on the audio stream.</t>
    </section>

    <section title="IANA Considerations" anchor="iana">
      <t>This document requests no actions from the IANA.</t>
    </section>

    <section title="Security Considerations" anchor="security">
      <t>Although XMPP multi-user chat rooms <xref target='XEP-0045'/> can be configured to lock down nicknames and require registration with the chatroom in order to join, at the time of this writing IETF chatrooms are not so configured.  This introduces the possibility of social engineering attacks on discussions held in IETF chatrooms.  It can be helpful for Jabber scribes to be aware of this possibility.</t>
      <t>In addition, denial of service (DoS) attacks of various kinds are possible, e.g., flooding a chatroom with unwanted or automated traffic.</t>
    </section>

  </middle>

  <back>

    <references title="Informative References">

      <reference anchor="RFC6120">
        <front>
          <title>Extensible Messaging and Presence Protocol (XMPP): Core</title>
          <author initials="P." surname="Saint-Andre" fullname="Peter Saint-Andre">
            <organization>Cisco</organization>
            <address>
              <email>psaintan@cisco.com</email>
            </address>
          </author>
          <date month="March" year="2011"/>
        </front>
        <seriesInfo name="RFC" value="6120"/>
        <format type="TXT" target="http://tools.ietf.org/rfc/rfc6120.txt"/>
      </reference>

      <reference anchor="XEP-0045">
        <front>
          <title>Multi-User Chat</title>
          <author initials="P." surname="Saint-Andre" fullname="Peter Saint-Andre">
            <organization/>
            <address>
              <email>stpeter@jabber.org</email>
            </address>
          </author>
          <date day="08" month="February" year="2012"/>
        </front>
        <seriesInfo name="XSF XEP" value="0045"/>
        <format type="HTML" target="http://xmpp.org/extensions/xep-0045.html"/>
      </reference>

    </references>

    <section title="Acknowledgements" anchor="acks">
      <t>Thanks to Dan Burnett, Dave Crocker, Wes George, Janet Gunn, Joel Halpern, Jelte Jansen, Michael Jenkins, Olle Johansson, Warren Kumari, Jonathan Lennox, Alexandre Petrescu, Melinda Shore, Hugo Salgado, Yaakov Stein, and Greg Wood for their helpful comments and suggestions.</t>
    </section>

  </back>

</rfc>
