GitHub:
https://github.com/EchoSixHIYA/WebSpeak-client-for-TeamSpeak
Live Demo:
https://webspeak.online
Hey everyone,
I’ve been working on a project called WebSpeak for the past few months, and I thought it was finally ready to share with the TeamSpeak community.
WebSpeak is a self-hosted browser client and voice gateway for TeamSpeak 3 and TeamSpeak 6.
The original idea was very simple:
I wanted an easier way for friends, newcomers, and temporary guests to join an existing TeamSpeak server.
For regular TeamSpeak users, the desktop client is still the natural choice.
But sometimes you just want to send someone a link and let them join a voice channel immediately — especially for new community members, temporary guests, game sessions, or events.
With WebSpeak, you deploy the gateway once and then share a web address.
Open the page → enter a nickname → join → talk.
No additional setup is required on the guest side.
What is WebSpeak?
WebSpeak connects browser users to an existing TeamSpeak server.
Each browser session gets its own TeamSpeak client connection, so the TeamSpeak server continues to handle channels, identities, groups, and permissions normally.
The goal is not to replace the traditional TeamSpeak experience.
Instead, WebSpeak provides an additional, lightweight way to access an existing TeamSpeak community from a modern browser.
The main design goal is:
Make it easy to invite someone into TeamSpeak.
Features
WebSpeak currently supports:
-
TeamSpeak 3 and TeamSpeak 6
-
Automatic TS3 / TS6 protocol detection
-
Full channel and member tree
-
Channel switching
-
Opus voice communication
-
Voice Activation
-
Microphone and output-device selection
-
Individual member volume controls
-
Channel messages
-
Server messages
-
Private messages
-
Poke
-
Multi-target Whisper
-
Persistent TeamSpeak identities in the browser
-
Mobile and desktop responsive UI
-
Light and dark themes
-
Chinese, English and German interfaces
There is also an optional built-in WebRTC transport for low-latency browser audio.
If WebRTC cannot be used, WebSpeak can automatically fall back to the compatible transport.
Browser-native features
Since WebSpeak runs in the browser, I’ve also been experimenting with features that make sense specifically in a web-based voice environment.
One example is Accompaniment Sharing.
On desktop browsers, a user can select a window or browser tab containing audio and share that audio directly into the current TeamSpeak voice channel.
This can be useful for music, game audio, background audio, or other shared listening scenarios.
No virtual audio cable is required.
Administration
WebSpeak includes its own web administration console.
After deployment, normal configuration can be completed directly from the browser.
The admin console currently includes:
-
Default TeamSpeak target
-
Fixed-server or open-gateway access mode
-
WebRTC configuration
-
Managed invitation links
-
Active sessions
-
Connection history
-
Logs
-
Diagnostics
-
Database backup
-
Relay configuration
Managed invitation links can expire, have limited uses, and be revoked.
This makes it possible to create temporary access links for friends, new members, or events without exposing the TeamSpeak server password in the URL.
Relay / regional connectivity
WebSpeak also includes an optional UDP relay.
This is mainly intended for deployments where the WebSpeak gateway and the target TeamSpeak server have poor connectivity between regions, or where a more suitable network path is available through another node.
The relay only forwards TeamSpeak traffic used by WebSpeak sessions.
It is not intended to be a general-purpose VPN or proxy.
Setup
Docker Compose is the recommended deployment method.
git clone --depth 1 https://github.com/EchoSixHIYA/WebSpeak-client-for-TeamSpeak.git
cd WebSpeak-client-for-TeamSpeak
docker compose pull
docker compose up -d
Then open:
http://your-server:3040/admin
Complete the initial setup in the browser, and WebSpeak is ready to use.
Prebuilt Windows x64 and Linux x64 packages are also available for users who prefer not to deploy with Docker.
For public deployments, HTTPS is strongly recommended and is required for reliable browser microphone and window-audio permissions.
Live Demo
The public instance is currently hosted in Hong Kong, so latency from Europe may not represent the performance of a locally deployed WebSpeak instance.
WebSpeak is open source under the AGPL-3.0 license.
The project started as a small way to make it easier for friends to join my TeamSpeak server.
It has grown quite a lot since then, but the basic idea is still the same:
Share a link, join the server, and start talking.
Feedback, bug reports, and feature ideas are very welcome.
I’d especially love to hear from other TeamSpeak server owners. If you try WebSpeak with your own community, let me know how it goes.
I’m from China, and my English isn’t very good, but I’ll do my best to communicate through translation tools if needed. Please feel free to reply even if my responses are a little slow or awkward.
