Glossary

Typing Indicator

A real-time signal that shows one participant in a conversation that another participant is currently composing a message, reducing the uncertainty of waiting for a reply.

General definition

A typing indicator (commonly displayed as an animated ellipsis or “...is typing” label) is a presence micro-signal. When a user begins typing in a chat input, the client sends a composing event to the server, which relays it to the other participant(s) in the conversation. If the user stops typing and does not send within a few seconds, a paused or gone event cancels the indicator.

  • Originated in XMPP as the XEP-0085 Chat State Notifications extension (composing, paused, active, inactive, gone)
  • Improves perceived responsiveness and reduces the “is anyone there?” anxiety in conversations
  • In group chats, indicators may aggregate: “Alice and Bob are typing”

Typing indicators must be throttled carefully. Firing a server event on every keystroke is wasteful; the common pattern is to send the composing event on the first keystroke, then re-send it periodically (every few seconds) only if the user is still active. The indicator auto-expires after a short server-side timeout if no further events arrive, guarding against clients that disconnect mid-composition.

In the Ethora ecosystem

Ethora’s Chat SDK implements typing indicators using XMPP Chat State Notifications (XEP-0085) under the hood. The SDK handles throttling, state transitions and automatic expiry, so integrating teams call a single method when the input field changes and the SDK manages the event lifecycle.

Typing indicators are available in both one-to-one and group room contexts. For AI-agent conversations built on the AI SDK, the bot can emit a typing indicator while it generates a response, giving users a natural sense that the agent is working rather than showing a blank delay.

Get started

Ship chat features, not chat infrastructure

Ethora gives you real-time messaging, presence and reliable delivery out of the box, cloud or self-hosted. Talk to our team.

Start Free
Free tier available Enterprise SLA No vendor lock-in