Using TTCom, the TeamTalk Commander
Doug Lee
Last Revised September, 2020

This is the user guide for TTCom, the TeamTalk Commander, also informally referred to as the TeamTalk Console or the TTCom text client. This client is mostly for managerial (not necessarily administrative) functions and is not an audio or video client. TTCom may be of use to those meeting any of these criteria:

This document describes how to install, launch, and use TTCom and its command set. For information on recent updates, or to see a history of TTCom's evolution, see the final "Release History section.

This program is Copyright (C) 2011-2020 by Doug Lee and falls under the GNU General Public License as found in LICENSE.txt. iniparse, included in its entirety, comes with its own license (also included).

TTCom is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program as LICENSE.txt. If not, see http://www.gnu.org/licenses/.

Table of Contents

System Requirements

TTCom should run on any operating system where Python 3.7 or later can be found. Python (though not necessarily a new enough version) comes by default on at least Linux and MacOS. It can also be installed on Windows, though a stand-alone ttcom.exe application is provided for Windows users to avoid the need to install Python.

This author is aware of users having successfully used TTCom in the following environments, run from source unless otherwise indicated:

Quick Installation and Startup Instructions

  1. If running from source on Windows or if your OS does not include Python 3.7 already, install Python 3.7. Possible sources of Python 3.7 include Some operating systems include a package distribution system that simplifies Python installation. If you are using the Windows stand-alone executable ttcom.exe or your system already includes an appropriate Python version, this step is not necessary.
  2. Download the TTCom Zip file and unzip it into a convenient folder.
  3. Copy ttcom_default.conf to ttcom.conf and edit to taste. This is where servers and per-server behaviors are defined. The autoLogin parameter determines which servers connect automatically on TTCom startup.
  4. This author recommends setting a nickname for all servers at once by including something like this in ttcom.conf:
    [server defaults]
    nickname=My Name
    If you don't do this, you will be called "TTCom User" everywhere you go. Of course, change "My Name" above to what you want as a nickname.
  5. If you want events to print as they occur for only the currently selected server, instead of for all connected servers, include silent=1 in the above section. See ttcom_default.conf for further ideas.
  6. On Windows, run ttcom.exe. If running from source (on Windows or anywhere else), run TTCom by running ttcom.py through Python 3.7:
    python3 ttcom.py
    Warning: Just typing "python ttcom.py" may try to run TTCom through Python 2, which will not work. If you get errors, make sure you are running Python 3.7 by typing python -V to check the version number.

The final step above will launch TTCom and connect to all servers with an autoLogin value above 0. As an alternative, you can specify a server or servers on the command line, by their shortnames from ttcom.conf, to connect to just those servers:

python3 ttcom.py simon

To start TTCom without connecting to anything, use -n in place of a server name.

Once TTCom is running and you see a "TTCom>" prompt, type "?" or "help" at the TTCom command prompt to learn what is possible. You can add a command name for help on that command; e.g., "?whoIs." Case is not important in command names.

Known Issues

The following issues are known and may be fixed in a future version of TTCom:

Revision History

This is the revision history of TTCom, most recent revision first:

Revision 1108, September 07, 2020 (version 3.1.0)

Revision 1021, August 24, 2019 (version 3.0.3)

Revision 1010, August 12, 2019 (version 3.0.2)

Revision 1005, August 8, 2019 (version 3.0.1)

Revision 1000, August 5, 2019 (version 3.0.0)

This is the first public TTCom release targeted at, and requiring, Python 3.7 rather than Python 2.7. The Windows stand-alone .exe will work as before, but running TTCom from source, on any operating system, will now require a Python 3.7 installation that launches with the "python3" (not just "python") command. This approach avoids problems on systems (such as MacOS) where the "python" command must for now continue to launch Python 2.x in order to avoid many other problems.

This release is also the first to support professional encrypted (SSL) TeamTalk servers. For these, add the line encrypted=true to the server's configuration section in ttcom.conf. Note that encryption, or SSL support, is not related to the new TeamTalk 5.4 web login system used by the public TeamTalk servers. The web login system is not at this time supported by TTCom.

Important: Install this TTCom into a fresh folder, not over the top of TTCom 2.x, to avoid stray and possibly problematic residual files from the older version. In particular, .pyc files produced by an older TTCom could confuse the new version, as Python 3 handles .pyc files differently.

Other enhancements in this release:

Revision 969, May 28, 2019 (version 2.1.0)

Revision 930, November 23, 2018 (version 2.0.5)

Revision 915, October 3, 2018 (version 2.0.4)

Revision 873, June 12, 2018 (version 2.0.3)

Note: The syntax of the cmsg command is changed in this update.

Revision 858, May 27, 2018 (version 2.0.2)

Revision 852, February 11, 2018 (version 2.0.1)

Revision 819, August 8, 2017 (version 2.0)

Please read this entire section of release notes before upgrading.

This revision includes many fixes, a few new commands and features, and some changes in syntax for existing commands.

This revision also marks the official end of TeamTalk 4 support. This does not mean that TTCom will instantly stop working with TeamTalk 4 servers; it simply means that support for those servers will begin to fail as reasons arise to remove or modify the code that supports them.

New and changed commands and features:

Fixes:

Revision 692, August 13, 2016 (version 1.4)

Revision 652, November 21, 2015 (version 1.2)

This revision fixes more issues with TeamTalk 5 servers and adds a few enhancements:

Revision 607, December 20, 2014 (version 1.1)

This release primarily fixes a number of issues TTCom initially had with TeamTalk 5 servers, caused by changes in the text TeamTalk client/server protocol:

The following commands still do not work completely on TeamTalk 5 servers:

Account
List may omit fields, and add/modify will not work.
Intercept and Subscribe
Bits are wrong.
Op
Not tested but not updated command formats.
TT
Not able to write updated file format.

Other changes in this release:

Revision 580, September 7, 2014 (version 1.0)

This is the initial public release of TTCom and the start of its falling under the GNU Public License (GPL). To learn of TTCom's use through the date of publication, see "All About the TeamTalk Commander." To learn its history prior to publication in more detail, read "TeamTalk Commander (TTCom) Pre-Publication History."

I am publishing TTCom for the following reasons, approximately in this order: