
TL;DR
- What's new? Talo Channels - a real-time messaging system for Godot games
- What can you build? Chat rooms, notifications, live events and interactive features
What are Talo Channels?
Game development often requires real-time communication between players. Whether you're building a multiplayer game that needs chat functionality or want to send live updates to players, implementing these features traditionally requires significant backend infrastructure. That's where Talo Channels comes in.
Talo Channels is our new real-time messaging system that makes it easy to add interactive features to your Godot game. Whether you want to build a chat room, send notifications or create live events, Channels provides the infrastructure you need without having to worry about complex networking code.
Getting started with Channels
To start using Channels in your Godot game, you'll need the Talo Godot plugin. Once installed, creating and joining a channel is as simple as:
# Create a new channel
var channel = await Talo.channels.create("lobby", true)
# Join an existing channel
await Talo.channels.join(channel.id)
The second parameter in the create function enables auto-cleanup. Channels can be set to automatically clean up when the last member leaves, perfect for temporary chat rooms or match-specific channels.
Building a chat room
Let's look at how to build a basic chat room using Channels. First, we'll need to handle incoming messages:
func _on_message_received(res: String, data: Dictionary) -> void:
if res == "v1.channels.message":
if data.channel.id == _active_channel_id:
# Handle the message - e.g. display in UI
var alias = TaloPlayerAlias.new(data.playerAlias)
display_message(alias.username, data.message)
# Send a message to the channel
await Talo.channels.send_message(channel_id, "Hello world!")
Custom channel properties
Channels can store custom properties using key-value pairs. This is useful for categorising channels or storing game-specific data:
var props = {
"max_players": 10,
"game_mode": "capture_the_flag",
"is_private": false
}
var channel = await Talo.channels.create("game_room", true, props)
Managing channels
Finding available channels is straightforward with the built-in pagination:
var res = await Talo.channels.get_channels(0)
var channels = res[0]
# Get channels the current player is subscribed to
var subscribed = await Talo.channels.get_subscribed_channels()
Check out our chat sample in the Talo Godot plugin for a complete example of a chat room with subscriptions to multiple rooms.
Secure by design
Talo Channels is built on top of our secure WebSocket connection system with:
- Two-tier authentication
- Message validation
- Automatic reconnection handling
- Real-time monitoring through the dashboard
Check out our Socket docs for a deeper look into how the Talo Socket works under the hood. Channels (and the Talo Socket) also work with Talo Player Authentication for extra security.
What can you build?
The possibilities with Channels are extensive:
- In-game chat systems: Create public or private chat rooms for players to communicate
- Live notifications: Send updates about game events or achievements to specific groups of players
- Real-time game state updates: Keep all players synchronised with the latest game state
- Collaborative features: Build shared player interactions like collaborative puzzle-solving mechanics
- Social features: Create player-to-player messaging or team communication systems
Talo Channels are purposefully generic so that you can use them for any real-time communication needs in your game. If something can be represented as text, you can use Talo Channels to send it to your players.
Getting started
Ready to add real-time features to your game? Here's how to get started:
- Install the Talo Godot plugin
- Check out our Channels documentation
- Join our Discord community if you have any questions or need support
What's next for Channels?
This is just the beginning for Talo Channels. We're working on new features including updating, managing and deleting channels directly from the Talo dashboard.
Stay tuned for updates and join our Discord to share your feedback and ideas for future features.
Build your game faster with Talo
Don't reinvent the wheel. Integrate leaderboards, stats, event tracking and more in minutes.
Using Talo, you can view and manage your players directly from the dashboard. It's free!
Get started
More from the Talo Blog

How to create a custom Unity package - and why you shouldn't
Thinking of creating a custom Unity package? Learn the process, common pitfalls, and why dependency management is a major challenge.

Changelog: leaderboard refreshes and player presence
This month we've added support for daily leaderboard refreshes and a new API for player presence tracking.

Introducing the Talo Presence API: real-time player tracking made easy
Learn how to implement real-time player presence tracking in your game with Talo's new Presence API. Easily track online status, custom states and build social features.

Level up your Unity game with Talo Leaderboards
From daily leaderboards to custom properties and filtering, Talo provides the most comprehensive leaderboards for Unity games.