/TeamSpeak-3-Java-API

A Java 7 implementation of TeamSpeak's 3 server query API.

Primary LanguageJavaGNU General Public License v3.0GPL-3.0

TeamSpeak 3 Java API

An Java 7 implementation of TeamSpeak's 3 server query API.

Features

Getting Started

First of all, you can always download the latest release here and add it to the buildpath of your project. Or you can also just download the sourcecode and put it in your project's source folder.

All functionality is contained in the TS3Api object.

  1. Create a TS3Config object and customize it.
  2. Create a TS3Query object with your TS3Config as argument.
  3. Call TS3Query#connect() to connect to the server.
  4. Call TS3Query#getApi() to get an TS3Api object.
  5. Do whatever you want with this api :)

Example:

final TS3Config config = new TS3Config();
config.setHost("77.77.77.77");
config.setDebugLevel(Level.ALL);
config.setLoginCredentials("serveradmin", "serveradminpassword");

final TS3Query query = new TS3Query(config);
query.connect();
    
final TS3Api api = query.getApi();
api.selectVirtualServerById(1);
api.setNickname("PutPutBot");
api.sendChannelMessage("PutPutBot is online!");
...

More examples can be found here.

Important:

Only use FloodRate.UNLIMITED if you are sure that your query account is whitelisted. If not, use FloodRate.DEFAULT. The server will temporarily ban your account if you send too many commands in a short period of time. For more info on this check TeamSpeak 3 Server Query Manual, page 6.

TS3Config Settings

Option Description Default value Required
Host/IP IP/Host of TeamSpeak 3 server. yes
QueryPort Query port of TeamSpeak 3 server. 10011 yes
FloodRate Prevents possible spam to the server. FloodRate.DEFAULT no
Username Username of your query account. no
Password Password of your query account. no
DebugLevel Determines how much will be logged. Level.WARNING no
Debug to file Write logs to logfile (teamspeak.log). False no

TODO

Questions or bugs?

Please let me know them here. I'll help you out as soon as I can.