nextcloud / nextcloud/spreed

Automatically set user status to "Do Not Disturb" when joining a call

Open
#18,784 4 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement Needs triage
Dominant language
PHP
Stars
2.2k
Forks
587
Avg merge
18h 27m
Merged PRs (30d)
333

Description

[!TIP]

How to use GitHub
  • Please use the 👍 reaction to show that you are affected by the same issue.
  • Please don't comment if you have no relevant information to add. It's just extra noise for everyone subscribed to this issue.
  • Subscribe to receive notifications on status change and new comments.

Feature request

Which Nextcloud Version are you currently using: 33.0.6 / 34.0.2

Is your feature request related to a problem? Please describe.
When a user is in an active Talk call, chat notifications from other conversations continue to arrive, causing distractions during the call. There is no automatic visual indication for other users that someone is currently in a call. Users must manually set their status to "Do Not Disturb" before every call and remember to restore it afterwards — this is error-prone and adds friction to the workflow.

Describe the solution you'd like
When a user joins a call in Nextcloud Talk, their status should automatically be set to "Do Not Disturb" (or a dedicated "In a call" status) and notifications from other conversations should be suppressed for the duration of the call. When the call ends, the previous status should be automatically restored.

Expected flow:

  1. User joins a call
  2. Status is automatically set to DND or "In a call" 🔴
  3. Notifications (chat messages, incoming calls) from other conversations are suppressed
  4. Other users see the status indicator and understand the user is busy
  5. When the call ends, the previous status is automatically restored

Describe alternatives you've considered

  • Setting DND manually before each call — works but requires user discipline and is easily forgotten
  • Using per-conversation notification settings ("Mute notifications for this conversation") — only affects one conversation, does not help during active calls across multiple rooms

Additional context
This is standard behavior in platforms like Microsoft Teams, Zoom, and Google Meet. The Talk Desktop client already has playSoundChat: "respect-dnd" and enableCallbox: "respect-dnd" settings, meaning the suppression mechanism already exists on the client side. The missing piece is the automatic DND trigger on the server/Talk side when a user joins a call.

Related issues:

  • nextcloud/desktop#4607 (Do not show/ring call notification when user status is DND)

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by tracing the Talk call-join and call-end flows alongside user status and notification handling; the issue names no files or tests. Confirm how the existing respect-dnd behavior is connected, then define completion as restoring the prior status and suppressing notifications for the call duration without affecting unrelated conversations.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
full-stack
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.