
AppLooma Signaling
Live comments, likes, typing indicators, a viewer count and an audience list, carried alongside the media. No second connection, no second server, nothing extra on your bill. Stored chat with history when a message has to last.

In this room1,284
Nusrathost
Meicohost
Omaraudience

1,284 here
Omar joinedWhy teams switch
✕The problem
A second connection to scale, monitor and keep in sync with the call.
AppLooma
Messages and presence travel the same path as the audio and video. Nothing extra to deploy, connect or scale.
✕The problem
Locking viewers out of the stage usually locks them out of the chat too.
AppLooma
Every role can send messages, audience included, while only host and co-host can publish audio and video.
✕The problem
Late joiners see an empty audience because only arrivals were counted.
AppLooma
People who were already in the channel are reported when you join, and the audience list updates as people arrive, leave or go on stage.
✕The problem
Replies that arrive before the question confuse everyone.
AppLooma
Messages arrive in order or the send fails. Bursts like cursors and reactions can go lossy instead.
✕The problem
A role a client can set is a role anyone can set.
AppLooma
Host, co-host or audience comes from the token your server signed. A client cannot promote itself.
✕The problem
Live signals vanish; some conversations need to be there tomorrow.
AppLooma
Chat keeps history, unread counts and recall, sent by your server so you can filter first.
Two kinds of message
Use Signaling when a message is worthless a minute later. Use Chat when someone would notice it missing when they come back.
Live, free, forgets
Stored, with history
#friday-show
History · 214 messages

Omar · 21:00
Who is joining the show tonight?

Nusrat · 21:01
Me! Saving a seat 🙌
3 new

Rina · 21:02
Message recalled by a moderator

Mei · 21:03
Starting in 5 minutes

Yuki · 21:04
On my way
Easy to integrate
Signaling is part of every channel from the moment someone joins. sendMessage broadcasts to everyone; the message event delivers what others send.
audience, audienceCount and hosts stay current, with an event when they change. React hooks do the bookkeeping for you.
Post messages through the Chat API, read history from the client with its join token, and track unread counts.
// Anyone in the channel, audience includedawait engine.sendMessage('First!');await engine.sendMessage({ kind: 'reaction', emoji: '🎉' });engine.on('message', (m) => {addComment(m.from?.displayName, m.text ?? m.data);});
Features

Text or structured objects to everyone in the channel, reliable or lossy, up to about 15 KB each.
In this room1,284
Nusrathost
Meicohost
Omaraudience
Rinaaudience
Omar joinedWho is here, who is on stage and how many are watching, including people who joined before you.

Omar GOLD
audience · watching
user.attributes
{ "name": "Omar",
"avatar": "https://…/omar.png",
"tier": "gold" }The metadata your server puts in the token, such as name, avatar or tier, readable on every participant.
Signed into the token by your server
Host, co-host or audience is signed by your server. Every role can send messages; only host and co-host publish media.

Omar
Who is joining tonight?

Rina
Message recalled

Mei
Starting in 5 minutes
History paged newest first, unread counts and recall that keeps the message's place. Chat guide →
POST your-server/webhooksHMAC
HMAC-signed events to your server: chat.message, chat.deleted, session.ended, recording.complete and gift.sent.
Full capability list
Built for


Ayaan
sent a Heart
How to get started
Every account gets 3,000 Sandbox minutes to test for a $1 card check. Then pick a fixed monthly plan, with no overage charges.
Sign up, verify your email and create a project in the console to get your App ID and API keys.
Signaling is on in every channel. No extra setup and no second connection.
sendMessage to broadcast, the message event to receive, the audience to show who is here.
Stored chat from your server, events to your backend. Every plan includes both.
FAQ
No. A message reaches whoever is in the channel when it is sent. For history, unread counts and recall, use Chat, or write messages to your own database as they arrive.
Yes. An audience token cannot publish audio or video but can send messages, which is what makes comments on a broadcast possible.
No. Signaling, presence and chat are included in every plan. Only participant minutes are billed.
No. Messages travel the same path as the audio and video, so there is nothing extra to deploy or scale.
About 15 KB. Send a URL to your own storage for anything bigger.
Signaling is broadcast as sent, so filter on your own backend first. Chat is sent by your server, which sees every message before it is stored, and a moderator can recall a message.

3,000 Sandbox minutes to test for a $1 card check.