/ts3-qs4sd

TeamSpeak 3 quick access for Steam Deck.

Primary LanguageCGNU General Public License v2.0GPL-2.0

A TeamSpeak 3 client and DeckyLoader plugin that integrates TeamSpeak 3 into Steam Deck's quick access menu.

Features

  • Connect to bookmarked servers.
  • See connected clients and join their channels.
  • See client avatars and their current status.
  • Mute/Unmute microphone and speakers.
  • Control audio volumes of running applications.
  • Disconnect from current server.
  • Push-to-Talk via shoulder buttons (bound to L5).

Missing/Planned features:

  • Make Push-to-Talk button configurable.
  • Option to stop TeamSpeak client when exiting the plugin.

Building

Backend

The following dependencies are required to build the TeamSpeak 3 client plugin:

  1. mjson: for JSON parsing
  2. mongoose: for HTTP server/client and web sockets
  3. incbin: for embedding static resources
  4. ts3client-pluginsdk: the TeamSpeak 3 plugin SDK
  5. libpulse: to control audio volumes of applications

To download dependencies 1-4 run make vendor (this requires wget). All other dependencies need to be installed manually. Then run make to build the plugin.

Change the working directory to backend/ before issuing any make commands.

Frontend

The following tools are required to build the DeckyLoader frontend:

  1. Node.js: JavaScript runtime required for building
  2. pnpm: package manager for JavaScript/Node.js

After all required tools are installed run the following commands to build the frontend:

$ pnpm install
$ pnpm run /^build/

This should create a plugin.zip file containing both the front- and backend part of the plugin.

Installing

Follow these steps in order to install and setup the plugin on your Steam Deck:

  1. Install DeckyLoader on your SteamDeck as described here.
  2. Switch to desktop mode, download TeamSpeak from the Discover store and launch it.
  3. Add all TeamSpeak servers you want to connect to as bookmarks (Bookmarks ⇾ Manage Bookmarks).
  4. If you want to use Push-to-Talk allow TeamSpeak to access your Steam Deck inputs: flatpak override --user com.teamspeak.TeamSpeak --device=all
  5. Switch back to gaming mode and install TS3 QuickAccess from the DeckyLoader store.

To install the plugin manually follow steps 1-4 from above and then:

  1. Download a pre build version of the DeckyLoader plugin and copy it to your Steam Deck.
  2. Go to DeckyLoader settings and enable developer mode.
  3. Open the DeckyLoader developer menu and select "Install Plugin from ZIP File".