Calls and Live

Start audio and video calls, Live sessions and screen sharing in Zugoid channels and Direct Messages, and connect Cloudflare RealtimeKit as the Owner.

Every channel and Direct Message has one Live room for audio, camera and screen sharing. In a one-to-one Direct Message it rings the other person as a Call; everywhere else it is Live, a room anyone in the conversation can join. Media runs on Cloudflare RealtimeKit in the Server's own Cloudflare account. Nothing is recorded.

Start or join

  1. Open the channel or Direct Message.
  2. Select the phone button (Call) in a one-to-one Direct Message, or the waveform button (Start live) in a channel or group.
  3. Check your Microphone, Camera and Speaker in the preview, then start.

If a room is already running, the button says Join call or Join live, and a bar in the conversation offers to join.

Start a Live session

Starting a room needs Start live sessions in your Role; the built-in Member Role has it. Anyone who can open the conversation can join. You cannot start a room in an archived channel or a Direct Message you can no longer write to.

During a call

  • Mute or unmute, turn the camera on or off and share your screen from the controls.
  • Minimize the room to keep chatting; the Live bar stays visible.
  • Leave a Live session, or Hang up a call.

If the connection drops, Zugoid reconnects and keeps your microphone and camera settings.

The person who started a Live session, and in channels Members with Manage channels, can Mute for everyone, Remove from live session and End for everyone. In a one-to-one call both people have host controls.

Incoming calls

When someone calls you in a one-to-one Direct Message, Zugoid rings and shows Answer, Decline and Ignore. If you are already in another room, Leave and answer switches over. An unanswered call stops ringing after 45 seconds.

Calls and newly started Live sessions also send push notifications; see Notifications.

Your audio settings

In User Settings → Voice & Video you choose the Input Device and Output Device, and turn Ring for incoming calls on or off. Mute and deafen are also on your account panel.

Connect Live (Owner)

Calls need Cloudflare RealtimeKit. The Owner connects it in Server settings → Live.

  • With kept Cloudflare access: if the Server keeps Cloudflare access (see Cloudflare access), select Connect using this Server's Cloudflare access. No separate token is needed.
  • With an API token: select Create token, create a Cloudflare API token with the Realtime Admin permission for the account the Server runs in, paste it and select Connect. If the token reaches several accounts, choose one.

Zugoid then creates its own RealtimeKit app with separate host and participant presets. The token is stored encrypted. Use Test connection to check it, Replace token to change it and Disconnect to turn Live off.

Connect Live

Messages you may see:

Message Meaning
Calls are unavailable on this runtime The Server cannot reach Cloudflare RealtimeKit, so calls stay off. Text chat is unaffected.
Calls use your Cloudflare API token The operator configured Cloudflare credentials for the deployment; the first call creates the RealtimeKit app.
Managed by the deployment RealtimeKit credentials come from the deployment's environment and override anything saved here.
The saved token can no longer be read The Server's AUTH_SECRET is missing or changed. Restore it, or paste a token to reconnect.
Everyone joins with host controls Live was connected before hosts and participants had separate permissions. Select Reconnect.

Cloudflare RealtimeKit usage is billed to your Cloudflare account. See Costs and limits.

Share a window (Portal, experimental)

A Portal shows one window of your Mac to a guest, who watches in any browser without an account and can ask to control it. Unlike screen sharing in a call, only that window is sent, and what the guest may see or do is decided on your Mac: control stays off until you allow it there, and you can take it back at any time.

  1. In a channel or Direct Message, select the window button (Share a window).
  2. Select Open PartyPortal. The PartyPortal app on your Mac asks which window to share and connects it to the Portal. The Zugoid app for Mac will include this; until then it needs the PartyPortal app. In the Zugoid app for Mac (coming), the app first asks in its own dialog whether this Server may have you share a window, and says so if PartyPortal is not installed.
  3. Copy the guest link and send it to your guest.

Opening a Portal needs Start live sessions in your Role. The picture goes directly between your Mac and the guest whenever the network allows it; the Server only connects the two. When no direct path exists, it goes through Cloudflare's TURN relay on the Server's own Cloudflare account, which the Server sets up by itself when it keeps Cloudflare access, and which is billed to that account. The Portal ends when you select End Portal, when a channel manager ends it, when you lose access to the conversation, or twelve hours after you opened it; its links stop working then.

Several viewers (preview)

When the Server has Cloudflare Realtime set up, up to 16 people can watch one Portal at once. Your Mac sends the picture and sound once to Cloudflare's Realtime SFU in the Server's own Cloudflare account, and each viewer receives it from there in the size that suits their screen. For now the operator turns it on: set REALTIME_SFU_APP_ID and REALTIME_SFU_APP_TOKEN, or set PORTAL_SFU_AUTO=1 on a Server that keeps Cloudflare access and it creates the app itself. SFU traffic is billed to that Cloudflare account. Without it, one guest can watch at a time, as before.

With several viewers, nobody controls the window until you allow it. A viewer selects Ask for control; PartyPortal's Share page lists the viewers and who asks, and Give control hands the mouse and keyboard to one of them. Take control back on that page, or in PartyPortal's menu bar menu, ends it at once. Remove disconnects one viewer; the link keeps working for the others.