A Java 7 wrapper of the TeamSpeak 3 Server Query API
- Contains almost all server query functionality! (see TeamSpeak 3 Server Query Manual)
- Built-in keep alive method
- Threaded event-based system
- Both synchronous and asynchronous implementations available
- Can be set up to reconnect and automatically resume execution after a connection problem
-
Option 1 (Standalone Jar):
Download the latest release and add this jar to the buildpath of your project.
-
Option 2 (Maven):
Add the following to your pom.xml
<dependency>
<groupId>com.github.theholywaffle</groupId>
<artifactId>teamspeak3-api</artifactId>
<version>...</version>
</dependency>
All functionality is contained in the TS3Api object.
- Create a TS3Config object and customize it.
- Create a TS3Query object with your TS3Config as argument.
- Call
TS3Query#connect()
to connect to the server. - Call
TS3Query#getApi()
to get an TS3Api object. - Do whatever you want with this api :)
final TS3Config config = new TS3Config();
config.setHost("77.77.77.77");
final TS3Query query = new TS3Query(config);
query.connect();
final TS3Api api = query.getApi();
api.login("serveradmin", "serveradminpassword");
api.selectVirtualServerById(1);
api.setNickname("PutPutBot");
api.sendChannelMessage("PutPutBot is online!");
...
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 the TeamSpeak 3 Server Query Manual, page 6.
Option | Description | Default value | Required |
---|---|---|---|
Host/IP | IP/Host of TeamSpeak 3 server. | yes | |
QueryPort | Query port of TeamSpeak 3 server. | 10011 | no |
FloodRate | Prevents possible spam to the server. | FloodRate.DEFAULT |
no |
Command timeout | Time until a command waiting for a response fails | 4000 (ms) | no |
Please let us know here. We'll try to help you as soon as we can.
If you just have a simple question or want to talk to us about something else, feel free to join the repository chat on Gitter.