Orkestia
Blog
Chat

Using the chat

What people get on the hosted chat page. DMs, threads, mentions, reactions, edit and delete, history, search, pinned messages, unread counts, attachments, missed-message email and the mobile layout

This page is what your end users see on the hosted chat page, and which theme flag turns each part on or off. Messages go straight between the browser and the relay. None of it starts a workflow except where a row says so.

Conversations

FeatureWhat people doFlag
ChannelsPick a channel from the list. A channel opens at its newest messagealways
Direct messagesOpen a DM from the member panel, an actor's menu or a person's name. Opening a DM with someone you already have one with reuses it. DMs are labelled with the other people's namesdirect_messages
ThreadsReply to a message in a side panel. The timeline shows a reply count on the first message. Actors always answer inside a threadthreads
MentionsType @ to open a picker of people and actors (actors first), or type @Full Name exactly. A mention of you is highlightedmentions
ReactionsTap a reaction to add or remove yours, or open the pickerreactions
Edit and deleteEdit your own message (it shows "edited") or delete it after a confirmmessage_actions
Pinned messagesPin a message from its menu. A bar above the timeline shows the newest pin and opens the list. Only the person who pinned can unpinpins
Typing"Ana is typing" while someone writestyping_indicator
MarkdownLists, quotes, headings and code in messages. Raw HTML is never renderedmarkdown

History and finding things

FeatureWhat people doFlag
History"Load older" at the top pages back 50 messages at a time and keeps the scroll positionalways
Day separators"Today", "Yesterday", then dates between daysalways
New messagesWhen you have scrolled up, a "new messages" pill jumps to the endalways
SearchA search box scoped to the channel, with a toggle for the whole space. / or ctrl/cmd+K focuses it. A result opens the message in its channel. Results are ranked by relevance, and "show more" widens the searchsearch
FiltersAll messages, mentions of me, actors, my conversations with actors (over the loaded messages)message_filters
Unread countsPer-channel badges counted by the relay since your read marker. Opening a channel marks it read. Read markers are privateread_receipts (off by default)

Attachments

With attachments on, people attach files with the file button, by dragging onto the timeline, or by pasting into the composer.

  • Each file uploads straight to the relay, signed with the person's own chat key, with a progress bar, cancel and retry.
  • Images render inline and open in a viewer. Other files show as a download row with name, type and size.
  • The theme's media section sets the size limit, the number per message and the allowed types. The defaults are 25 MiB, 4 files, and PNG, JPEG, GIF, WebP, PDF, CSV and plain text. See Theme and customization.
  • Deleting a message hides its files in the chat.
Files. Opening a chat file requires a current member of that chat space. A URL forwarded outside the space does not work. Deleting a message hides the file in chat; the bytes stay until the space is deleted. See Limits.

To see what a channel carries, an organization admin runs buzz.media.list with space_uuid and channel_id (read-only). It lists each file's URL, type, size, hash, author and message. To take a file out of the chat, delete its message with buzz.message.moderate-delete.

Missed-message email

A person who was mentioned or got a DM while away can receive one short email per batch: counts and where, for example "1 mention from Ana in Support", never the message text. It respects a quiet period after they last opened the chat and a daily cap per person, and links to the chat page.

WhoControl
The spacefeatures.missed_message_emails in the theme (on by default). Off means nobody in the space is mailed
Each personThe notification switch on the chat page, which runs buzz.member.set-notifications with enabled. Its output tells them whether the space has the feature on at all
Missed-message email is available per space. The scheduled scan that sends it is being enabled, so until it runs for your space, the switch records each person's choice and no email goes out.

On a phone

The chat page works at phone width. The member panel and the thread panel cover the chat full-width on screens up to 640 px, the mention picker fits the screen, and the offline banner appears only when the connection has really dropped, then reconnects as soon as the phone is back online.

Talking to actors

Actors are marked with a badge. People reach them with a mention, a DM, or by writing in a channel the actor listens to. While an actor works, a thinking line and a short progress line show under the conversation. Its answer can carry a "how I got here" panel and quick-reply buttons. All of that is on Actors in chat.

Ask your AI assistant

prompts
Which chat features are turned off in my space? Read the published theme with data.buzz.theme.get and list every flag that is false.

Turn on unread counts in my chat: set features.read_receipts to true in a draft theme and publish after I confirm.

List the files posted in the "<channel name>" channel of my chat space with buzz.media.list.

Does my chat space send missed-message emails? Check the theme flag and explain what each person can change.

For AI agents

RuleDetail
No message readsThere is no workflow that returns message text. Do not claim you can read or summarize a channel
Filesbuzz.media.list reports deletion_supported: false. Do not promise to delete a file
DMsEnd users open DMs on the chat page. An actor opens one with buzz.actor.dm-open
Opt-outbuzz.member.set-notifications is the end user's own switch. An organization caller cannot set it for someone else