TS3AudioBot
This is a open-source TeamSpeak3 bot, playing music and much more.
- Got questions? Check out our Wiki, FAQ, or ask on our
- Something's broken or it's complicated? Open an issue
- Please use and fill out one of the templates we provide unless they are not applicable or you have a good reason not to.
This helps us getting through the technical stuff faster - Please keep issues in english, this makes it easier for everyone to participate and keeps issues relevant to link to.
- Please use and fill out one of the templates we provide unless they are not applicable or you have a good reason not to.
- Want to support this Project?
- You can discuss and suggest features. However the backlog is large and feature requests will probably take time
- You can contribute code. This is always appreciated, please open an issue or contact a maintainer to discuss before you start.
- You can support me on or
Features
- Play Youtube and Soundcloud songs as well as stream Twitch (extensible with plugins)
- Song history
- Various voice subscription modes; including to clients, channels and whisper groups
- Playlist management for all users
- Powerful permission configuration
- Plugin support
- Web API
- Multi-instance
- Localization
- Low CPU and memory with our self-written headless ts3 client
To see what's planned and in progress take a look into our Roadmap.
Bot Commands
The bot is fully operable via chat.
To get started write !help
to the bot.
For all commands check out our live OpenApiV3 generator.
For an in-depth command tutorial see here in the wiki.
Install
Download
Pick and download the build for your platform and liking:
(We have more builds like linux arm/arm64 and .NET framework dependent builds available on our nightly server)
Linux
Install the required dependencies:
- on Ubuntu/Debian:
Runsudo apt-get install libopus-dev ffmpeg
- on Arch Linux:
Runsudo pacman -S opus ffmpeg
- on CentOS 7:
Runsudo yum -y install epel-release sudo rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm sudo yum -y install ffmpeg opus-devel
- manually:
- Make sure you have a C compiler installed
- Make the Opus script runnable with
chmod u+x InstallOpus.sh
and run it with./InstallOpus.sh
- Get the ffmpeg 32bit or 64bit binary.
- Extract the ffmpeg archive with
tar -vxf ffmpeg-git-*XXbit*-static.tar.xz
- Get the ffmpeg binary from
ffmpeg-git-*DATE*-amd64-static/ffmpeg
and copy it into your TS3AudioBot folder.
Windows
- Get the ffmpeg 32bit or 64bit binary.
- Open the archive and copy the ffmpeg binary from
ffmpeg-latest-winXX-static/bin/ffmpeg.exe
into your TS3AudioBot folder.
Optional Dependencies
If the bot can't play some youtube videos it might be due to some embedding restrictions which are blocking this.
You can install the youtube-dl binary or source folder (and specify the path in the config) to try to bypass this.
First time setup
- Run the bot with
./TS3AudioBot
(Linux) orTS3AudioBot.exe
(Windows) and follow the setup instructions. - (Optional) Close the bot and configure your
rights.toml
to your desires. You can use the template rules as suggested in the automatically generated file, or dive into the rights syntax here. Then start the bot again. - (Optional, but highly recommended for everything to work properly).
- Create a privilege key for the ServerAdmin group (or a group which has equivalent rights).
- Send the bot in a private message
!bot setup <privilege key>
.
- Congratz, you're done! Enjoy listening to your favourite music, experimenting with the crazy command system or do whatever you whish to do ;).
For further reading check out the CommandSystem.
Building manually
master | develop |
---|---|
Download
Download the git repository with git clone --recurse-submodules https://github.com/Splamy/TS3AudioBot.git
.
Linux
- Get the latest
dotnet core 3.1
version by following this tutorial and choose your platform - Go into the directory of the repository with
cd TS3AudioBot
- Execute
dotnet build --framework netcoreapp3.1 --configuration Release TS3AudioBot
to build the AudioBot - The binary will be in
./TS3AudioBot/bin/Release/netcoreapp3.1
and can be run withdotnet TS3AudioBot.dll
Windows
- Make sure you have
Visual Studio
with thedotnet core 3.1
development toolchain installed - Build the AudioBot with Visual Studio.
Building the WebInterface
- Go with the console of your choice into the
./WebInterface
folder - Run
npm install
to restore or update all dependencies for this project - Run
npm run build
to build the project.
The built project will be in./WebInterface/dist
.
Make sure to the set the webinterface path in the ts3audiobot.toml to this folder. - You can alternatively use
npm run start
for development.
This will use the webpack dev server with live reload instead of the ts3ab server.
Community
Localization
💬 Want to help translate or improve translation?
Join us on Transifex to help translate
or in our Gitter to discuss or ask anything!
All help is appreciated
Translations need to be manually approved and will then be automatically built and deployed to our nightly server here.
License
This project is licensed under OSL-3.0.
Why OSL-3.0:
- OSL allows you to link to our libraries without needing to disclose your own project, which might be useful if you want to use the TSLib as a library.
- If you create plugins you do not have to make them public like in GPL. (Although we would be happy if you shared them :)
- With OSL we want to allow you providing the TS3AB as a service (even commercially). We do not want the software to be sold but the service. We want this software to be free for everyone.
- TL; DR? https://tldrlegal.com/license/open-software-licence-3.0