JAWS Scripts For TeamSpeak
Last Revised June, 2019
This document describes the scripts for TeamSpeak and provides tips for
using this application with JAWS.
This document can be opened from within TeamSpeak via a double press
of JAWSKey+F1 (or Insert+F1).
This document is laid out for easy navigation using JAWS HTML heading
navigation commands: H will move through all headings,
2 through major sections, and 3 and 4
through any subsections or subsubsections.
Table of Contents
TeamSpeak includes a number of accessibility features, but JAWS
natively does not interpret much of TeamSpeak's accessibility
information in a useful way for JAWS users. These scripts aim to fill
the gap between TeamSpeak's accessibility support and JAWS'
The scripts also provide several useful commands for retrieving
information and accessing TeamSpeak features.
There are no known system requirements for these scripts beyond those
for TeamSpeak itself.
The scripts were written and tested against the following software versions:
Later versions of TeamSpeak may also work with these scripts, but
older TeamSpeak versions will not.
Both 32-bit and 64-bit versions of TeamSpeak are supported.
JAWS 15.0 or higher is required, as older JAWS versions are unable to access much of the information provided by TeamSpeak.
JAWS versions older than 2019 have not been tested carefully.
- TeamSpeak 3.3.0 (QT 5.12.2).
To install these scripts on a new system:
- Install JAWS if this has not already been done. This will require
administrative privileges on the computer.
- Run JAWS as the user for whom the scripts are to be installed.
This and the following steps must be performed for each user of the computer
who will be using JAWS with these scripts.
- Run the script installer and follow its instructions.
Be sure to install the scripts in the currently running
JAWS version if a JAWS version list is presented.
- To verify successful installation, type Ins+Q from
within TeamSpeak. part of the JAWS spoken response should be a revision number. If
you do not hear a revision number, the scripts are not correctly
This section and its subsections describe the commands and features provided by these scripts.
As of August, 2018,
most TeamSpeak script commands are key sequences rather than multi-key combinations. This is to avoid collisions between script commands and
native application keystrokes.
All such key sequences start with a common prefix key, a left bracket ([) by default.
Users can change the prefix key if necessary by typing [ followed by JAWSKey+C or Ins+C. The change will
survive across script and JAWS updates.
In this document, the prefix key will be called Command; thus, by default, Command c means type [
followed by c.
Users can explore all commands available in this system by using Tab after typing the prefix key, by default [.
- Many field names are spoken as expected though they are not
Some fields that have extra descriptive information speak that
information after the normal JAWS speech for the field.
- Ins+T, the JAWS
is enhanced to include several useful items beyond what is displayed at the top of the window (see the next
- Command b, or alternatively JAWSKey+F8, brings up a list of toolbar icons for review and selection. Users may customize the
TeamSpeak toolbar, so this provides a means of making frequent actions easier or more accessible.
- When applicable, Ctrl+` cycles among windows associated with the current TeamSpeak instance.
Use this to return to dialogs, incoming Poke windows, etc., after
moving focus out of TeamSpeak and then returning to it.
- Editing works as expected in several edit controls, though JAWS
may be slow to speak during arrowing in an edit control.
- Combo boxes that sometimes fail without the scripts to speak on up
and down arrows should speak normally.
- JAWSKey+B, the normal command for reading an entire
dialog box in tab order, is scripted to read some TeamSpeak screens and
dialogs more intelligently.
- The standard command for reading the status line,
JAWSKey+PgDn, works as expected.
- Typing Command t brings up
a list of tabs in screens containing tab controls. Press
Enter on a tab to activate it.
In the main TeamSpeak screen, this command applies to the chat tab, not the server tab; hence, it chooses
among chat destinations (server, channel, private), not among servers.
- The commands for clicking with the left and right mouse buttons,
when pressed while the PC cursor is active, will click at the current
PC cursor location. This is particularly useful on tab controls: Press
RightMouseButton key after focusing a tab to get a
context menu for that tab, including a way to close it.
(Ctrl+W should also close the active tab in current TeamSpeak versions.)
The left mouse button command is required while editing hotkeys.
- The server list table under the Connect menu reads all information shown
about each server as the user arrows up and down among servers.
- As the user arrows through the channel tree, some extra
information may be spoken about the highlighted entry.
Currently, the extra items announced are
- Whether the entry is a server or a channel (participants are
identified by not saying one of the other two),
- Number of clients in a server or channel,
- Codec type and special conditions for a channel (e.g., if it has a password),
- The operating system type for a participant,
- If the participant is muted or locally muted, and
- If the participant's volume is locally raised or lowered.
- When focus is in the channel/participant tree,
Command i presents a JAWS virtual buffer of information
about the highlighted entry in the tree. The information will vary
based on whether the highlighted entry in the tree is a server, a
channel, or a user.
- When focus is in the main window, Command c presents
a JAWS virtual buffer of messages in the displayed message window. The tab
control in this window determines which messages are displayed. Choices
include server messages, channel messages, and private messages to or
from another user if any have been received or sent. To switch among
tabs, Tab to the tab control and use left and right arrows
to choose a tab.
- There are a number of commands for reviewing chat messages without
moving focus away from TeamSpeak:
- Alt+numbers read recent chats (Alt+1 the latest
etc. as usual for chat programs.
- Alt+Left/Right move to the
previous and next chat message, respectively, keeping track of current
position in this chat even if the user switches tabs, servers or
applications and returns to the chat later.
- Alt+Home and Alt+End jump to the first and
last chat, respectively.
- Alt+NumPad5 reports the current chat message along with
its position in the message list and the number of messages in the list.
For those without a number pad, Alt+Enter will also perform this function when on the main
- In the event of a TeamSpeak crash, JAWS should better announce the
error message that appears.
Ins+T, the JAWS
includes a number of enhancements beyond saying just the title of the active window. The items included are,
in this order and as applicable:
- The original window title (e.g., "TeamSpeak 3", a volume control title, etc.).
- When more than one window is associated with this TeamSpeak instance, the parenthesized position of this window
among them and the count of windows available.
Ctrl+` cycles among them.
Use this to return to dialogs, incoming Poke windows, etc., after
moving focus out of TeamSpeak and then returning to it.
- A dash.
- The nickname being used in this TeamSpeak instance, when this instance is connected to a server, and when
the status bar is displayed (default), as the nickname must be drawn from the status bar.
- The word "on."
- The name of the server, taken from the server tab control. This is generally the bookmark name from which
this connection was opened.
When this TeamSpeak instance is not connected to a server, this will appear as "No server."
- The actual server name from the channel tree, if different from the above name. This name is parenthesized
when it appears.
- When there are multiple server tabs, the position of the current one among them and the number of tabs
- When more than one TeamSpeak instance is running, similar information for TeamSpeak instances (position
This section and its subsections provide useful tips and information
for performing various tasks in TeamSpeak.
Pressing the Applications key on the menu bar (after pressing Alt to
activate the menu bar) will present a menu of options allowing parts of the TeamSpeak display to be made
visible or invisible. Of particular interest is the Master Volume control, which allows adjustment of the
overall TeamSpeak volume. The default value for this slider is 0, and it can be moved with arrows to become
positive or negative.
This is also how users can customize the TeamSpeak toolbar to make frequent actions easier.
Unfortunately, as of QT 5.12.3, assistive technology such as JAWS has no reliable way to determine which items in menus are checked and which are not.
When using the
RightMouseButton command on a tab control,
arrow left and right before clicking to make sure JAWS knows which tab
is active. Otherwise, the click may be applied to the first visible
tab regardless of which one is active.
The following procedures should help with creating and editing hotkeys
- Open Options with Alt+P.
- Arrow up or down to find "Hotkeys" in the list of pages.
- To review hotkey assignments that already exist, Tab
until JAWS says "table," then use the four arrows to explore the table
of existing assignments.
- To add a new hotkey, type Alt+A to reach the Hotkey
Setup screen, then follow the
instructions in the next list.
- To edit an existing assignment, find it in the table, then type
Alt+E to reach the Hotkey Setup screen.
Then follow the instructions in the next list.
- To exit the Hotkeys screen (and Options itself), press Esc.
To edit or create a hotkey, go to the Hotkey Setup screen as just
described, then follow these steps:
- Tab several times, past the key definition box, until
JAWS says "Show Advanced Actions." Depending on the action you want to
assign to a key, you may need to check this box.
When in doubt, check it, so all possible actions can be found below.
- Shift+Tab once to the previous control, which is the
tree of available actions.
- Using the four arrows, Right arrow in particular to
expand tree nodes, locate the action you want. Toggling the
aforementioned "Show Advanced Actions" checkbox may help here.
Make sure, before attempting to assign a key to an action below, that
the action you are choosing is an actual action, not a tree node with
further descendants. For example, when Advanced Actions is checked, "Toggle
Playback Profile" (under "Playback Profile") has a descendant for each
available playback profile.
- To choose the action and move to the key assignment stage, press
LeftMouseButton command twice in quick
succession. This will effect an actual double click on the selected
action. Focus will automatically move to a control that allows you to
type the keystroke you wish to use.
If this does not happen immediately, try the double click again.
If this still does not happen, you probably selected an item with
subactions, in which case the clicks only expand or collapse the list
- Type the keystroke just as if you were using it; e.g., type
Ctrl+Shift+O if you want to make Ctrl+Shift+O
execute the action you selected earlier.
Focus will return to the action you selected in the Actions list.
- To save the keystroke, press Enter, which presses the
Focus will now return to the table of key assignments.
- To close the Options screen, press Enter and then
Esc. The Enter actually opens an edit screen on
the currently highlighted key assignment, and the Esc
closes both that and the Options screen.
The TeamSpeak toolbar can be customized to contain frequently accessed features. In some cases, doing this can
simplify or even improve the accessibility of frequent operations. To customize the TeamSpeak toolbar:
Once the toolbar consists of your preferred set of actions, access any of them using JAWSKey+F8.
- Tap Alt by itself to focus the menu bar.
- Tap the Applications or Menu key, or use Shift+F10 if your keyboard does
not have this key, to bring up a context menu from the menu bar.
Pressing the Down arrow key after doing this will focus and speak the first item in the context
- From the context menu, choose "Customize Toolbar." A dialog will appear.
The main elements of this dialog are an "Available Actions" tree, a "Selected Actions" tree, and buttons for
moving actions into, out of, and up and down within the Selected Actions tree.
- Add an action by locating it in the Available Actions tree, then tabbing to and pressing the Add button.
- Remove an action by locating it in the Selected Actions tree, then tabbing to and pressing the Remove
- Alter the order of actions in the Selected Actions tree by locating an action to move, then tabbing to and
pressing the Move Up or Move Down button as appropriate.
The below information is likely to be of use only to advanced users of
Right-clicking on a bookmark in the Bookmarks menu, then pressing the Down arrow once, will open a
context menu allowing you to edit the bookmark, connect to it normally, or connect to it by creating a new
tab. The final of these options is a way to make multiple simultaneous connections to different servers.
Once multiple connections exist at once, it may help to make TeamSpeak activate the microphone in the current
tab every time you navigate among server tabs. Do this in Preferences > Application.
When multiple server tabs are showing, the JAWS
SayWindowTitle command, Ins+T, will
name the active server and indicate its position among the tabs and the number of tabs showing.
Close the active tab with Ctrl+W or via right-clicking and choosing the appropriate Close option.
If you have connected to one server multiple times simultaneously
using different tabs, use the status line reading command,
JAWSKey+PgDn, to identify which of your nicknames is active
in the current tab.
When there are multiple server tabs open and a hot key is assigned to
toggle microphone mute, the announcements "Microphone muted" and
"Microphone activated" can be incorrect with respect to the active
server tab. Use arrows to find your name in the active tab to see
whether "Microphone muted" speaks after the name.
(This issue was verified on March 18, 2015, in TeamSpeak for Windows