All About the TeamTalk Commander

This page is here to answer questions about the TeamTalk Commander (TTCom), sometimes informally called the TeamTalk Console, so people who see it will know why it floats around. This page may be revised as necessary if any changes occur in TTCom's features and functions. Page last revised December 20, 2014.

TTCom is released under the GNU Public License as of September 7, 2014; see

Table of Contents

What is it?

TTCom is an interactive, console-mode (i.e., command-line-interface) program I (Doug Lee) wrote and maintain that connects to several TeamTalk servers at once and performs various functions as described in the next section. It is a text-only program; that is, it contains no means at all of processing audio or video, incoming or outgoing. It generally does not join any channel, although it can do so under manual control. It can send and receive text messages and perform other non-audio/video functions depending on the rights granted to it by each server.

The author of TeamTalk itself provides a "TeamTalk PHP Admin" program on the main TeamTalk download site that provides many of the same features provided by TTCom, but with a numeric-menu interface rather than a set of text commands.

What does TTCom do?

TTCom provides both automatic and interactivve functions. The automatic functions are designed as services to the TeamTalk community, and the manual functions are designed to mirror the actions allowed by regular TeamTalk clients. This section consists of descriptions of both function types. This is not necessarily an exhaustive indication of the functions provided by TTCom, as the code changes from time to time as needed.

Summary of TTCom's uses over time

This subsection is meant to summarize what appears in the following two subsections, for convenience and example. This summary is probably not exhaustive but is meant to be as close as possible to this.

Since its launch in late 2011, the TTCom service has been used to do the following:

Details on many of these functions appear in the next two subsections.

Automatic Functions

If a user joins a channel using a client that is too old or too new to transmit and receive audio on the channel's server, TTCom will notify the channel that the user needs to update his or her TeamTalk version. This helps users understand why their audio isn't working in such cases.

If a user or bot logs into a server in a way that freezes users of TeamTalk on Windows XP, TTCom sends the author a notification of this. The author can then work with the user who caused the XP client stall to rectify the situation. To date, this feature has actually been used exclusively to help Chris Nestrud, author of the TeamTalk Server List page that lists active servers and users, prevent his page update code from stalling XP users occasionally. Note that the notification is sent to the TTCom author and not to the offending user or bot, because in most cases such a notification to the offending user or bot would go completely unnoticed. Sending a notification to the server users on every such occasion would prove more of a nuissance than the original problem.

If a user attempts to log in and join a channel without being seen, TTCom also notifies its author of this. A technique for joining channels invisibly was discovered sometime in 2012. Though the TeamTalk bug exploited by this trick is fixed in modern versions of TeamTalk, this notification remains in case anyone runs sufficiently old code to allow such invisible channel participation.

TTCom logs what is sent to it via TCP by the servers to which it connects. The purpose of this logging is to facilitate identification of people who persist in causing problems over an extended period of time and/or across multiple TeamTalk servers. A full description of what TeamTalk servers send via TCP to clients is beyond the scope of this document, but in brief, the following items are sent and thus logged:

Depending on which event from the above list is being received, the following information may also appear with the event: The following are not logged or received with events:

Manual (Interactive) Functions

TTCom provides a command-line interface for performing many non-audio/video tasks in TeamTalk. These are generally the same functions allowed by the TeamTalk author's PHP Admin program.

On any server, the author can use TTCom to

TTCom is subject to the same rules as are regular TeamTalk clients, however. In particular, there is no way for TTCom to show a user or channel message from another user that a regular TeamTalk client could not also show.

On servers where TTCom is granted admin rights, it may

What does it not do?

As stated before, TTCom has no support for audio or video at all, and no solution to this shortcoming is planned as it would cost considerable time and money to implement.

At this writing, TTCom is not able to send or receive files, though this feature could be written.

From time to time, users express concern that TTCom may be used to evesdrop on conversations. Since TTCom contains no audio or video support, and since its ability to see text messages is governed by the same server-side rules enforced for all TeamTalk clients, this is not possible even from a technical standpoint. Administrators of a server can intercept private and channel text messages with either TTCom or a regular client, but for a TTCom user to see channel messages otherwise, it must join the channel and be seen just like any other client; and TTCom, without administrative intercept, can never see a private text message not sent directly to it. TeamTalk servers provide no means for any client to circumvent these restrictions.

What may it do in future?

Ideas, but not code, exist as follows:

Release Status of TTCom

TTCom is released under the GNU Public License as of September 7, 2014. The official home page for TTCom is

Other Known Similar Projects

At this writing (May 24, 2014), the TTCom author is aware of a few other TTCom-like projects in progress or completed:

Contacting the Author

The author of TTCom may be reached via Twitter at dlee_code (anouncement and business account) or doug_lee42 (personal account).