TSBot 
Asynchronous Python framework to build TeamSpeak 3 Server Query bots
✅ Features
- Modern Python
asyncandawaitsyntax - Fully typed interface
- Event, command and background task systems
- Secure connection through SSH, or raw connection for local servers
- Ease of use query building
- Automatic reconnection if connection is lost
- Built-in and configurable ratelimiter if no access to
query_ip_allowlist.txt
✏️ Examples
from __future__ import annotations
import asyncio
from tsbot import TSBot, TSCtx, query
bot = TSBot(
username="USERNAME",
password="PASSWORD",
address="ADDRESS",
)
@bot.command("hello")
async def hello_world(bot: TSBot, ctx: TSCtx):
await bot.respond(ctx, f"Hello {ctx['invokername']}!")
@bot.on("cliententerview")
async def poke_on_enter(bot: TSBot, ctx: TSCtx):
poke_query = query("clientpoke").params(clid=ctx["clid"], msg="Welcome to the server!")
await bot.send(poke_query)
asyncio.run(bot.run())
Check out 📁examples for more
📦 Installation
Python 3.10 or higher is required
Installing with pip:
# Linux/macOS
python3 -m pip install tsbot
# Windows
py -3 -m pip install tsbot
Metadata
Release files for tsbot 1.7.4
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| tsbot-1.7.4.tar.gz | 23.9 kB | Without provenance | Details for tsbot-1.7.4.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| tsbot-1.7.4-py3-none-any.whl | Python 3 | none | any | Details for tsbot-1.7.4-py3-none-any.whl |
Total release size: 60.8 kB
Release files / tsbot-1.7.4.tar.gz
| Download URL | tsbot-1.7.4.tar.gz |
|---|---|
| Size | 23.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
6e613b3a322cc659a5dd4740b530127c243e98549780f7375357cf285b02e896
|
|
BLAKE2b-256 checksum How to use checksums |
447d5cae6d2e59b4ceacd59e7338343cad1919fe4801d5d371afccef6acc3884
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.6 {"installer":{"name":"uv","version":"0.12.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / tsbot-1.7.4-py3-none-any.whl
| Download URL | tsbot-1.7.4-py3-none-any.whl |
|---|---|
| Size | 36.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
680d859ca513d2b656d1ef41b46149c202623c458b5c38944358d07b865d817d
|
|
BLAKE2b-256 checksum How to use checksums |
6e73655bce7f0b0012854e3a509e4495b95439e1dec4a42d6b2145abb1e1cadc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.6 {"installer":{"name":"uv","version":"0.12.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Security for tsbot 1.7.4
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.