Post TeamSpeak events to Discord
Find a file
2024-11-06 22:21:20 -05:00
.github/workflows Remove broken Helm chart repo 2024-11-06 22:21:20 -05:00
helm/ts-activity Refactoring & allow Discord avatar, custom server ID 2023-07-22 19:20:55 -04:00
.gitignore Add configs to Helm chart 2023-07-21 23:24:55 -04:00
cmd.go Spotlight feature 2024-11-06 22:17:58 -05:00
Dockerfile Initial commit 2023-07-21 20:19:51 -04:00
go.mod Initial commit 2023-07-21 20:19:51 -04:00
go.sum Initial commit 2023-07-21 20:19:51 -04:00
LICENSE Initial commit 2023-07-21 20:19:00 -04:00
README.md Remove broken Helm chart repo 2024-11-06 22:21:20 -05:00

ts-activity

This program will post notifications to Discord when someone joins or leaves your TeamSpeak server.

image

Configuration

You will have to create ServerQuery credentials on an account that has permissions to login & view clients in the server. You can do this from the Tools -> ServerQuery Login menu in TeamSpeak 3.

This program is configured using environment variables:

  • TS_QUERY_ADDR: Address to the TeamSpeak ServerQuery port. Example: 127.0.0.1:10011
  • TS_QUERY_USER: The username you selected for ServerQuery in the setup
  • TS_QUERY_PASS: The password TeamSpeak generated for ServerQuery in the setup
  • TS_QUERY_SERVER_ID: Virtual server ID to monitor. Defaults to 1
  • TS_DISCORD_WEBHOOK: Webhook URL for Discord. You can create this from the channel "Integrations" page
  • TS_DISCORD_AVATAR: Optional URL for Discord bot avatar
  • TS_DISCORD_USERNAME: Optional nickname for Discord bot

Run it

docker hub

To build and run locally:

go mod download
go run .

Or, using the Docker image:

docker run --rm --name ts-activity \
  -e TS_DISCORD_WEBHOOK='https://discord.com/api/webhooks/...' \
  -e TS_QUERY_ADDR=127.0.0.1:10011 \
  -e TS_QUERY_USER=Jeff \
  -e TS_QUERY_PASS=******* \
  aramperes/ts-activity

There is also a Helm chart. You can create a Secret containing username, password, and discord, and then:

helm upgrade --install ts-activity momoperes/ts-activity \
  --set config.serverQueryAddr=teamspeak:10011 \
  --set config.discordUsername=Jeff \
  --set config.serverQuerySecret=ts-activity \
  --set config.webhookSecret=ts-activity