Global moderator role - always moderator in all conversations
Nobody has claimed this yet.
- Dominant language
- JavaScript
- Stars
- 2.2k
- Forks
- 586
- 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: 34.0.2
Is your feature request related to a problem? Please describe.
In organizations using Nextcloud Talk extensively, certain users (IT administrators, team leads, compliance officers) need to have moderator privileges in all conversations they participate in — whether they created the conversation or were invited by someone else. Currently, a user invited to a conversation always joins as a regular participant, requiring the conversation owner to manually promote them to moderator every time. This is error-prone and creates friction, especially in organizations with many active conversations.
Describe the solution you'd like
Add a global "Talk moderator" role that can be assigned to specific users or groups from the Talk admin settings. Users with this role would automatically be assigned moderator privileges in every conversation they join or are added to, regardless of who created the conversation.
Expected behavior:
- Admin assigns the "Talk moderator" role to a user or group in Talk admin settings
- When that user joins or is added to any conversation, they automatically receive moderator privileges
- This applies to both new and existing conversations
- The role should be configurable via both the admin web UI and
occcommands
Describe alternatives you've considered
- Manually promoting the user to moderator in each conversation via
occ talk:room:promote— works but does not scale and requires manual intervention for every new conversation - Making the user the creator of all conversations — not practical in real-world usage where conversations are created by many different users
- Restricting Talk to specific groups — removes functionality for other users, not acceptable
Additional context
This feature would be especially valuable for IT administrators who need oversight of all communications, compliance officers who need to manage any conversation, and organizations where certain roles always require moderation capabilities. A similar concept exists in Microsoft Teams ("Global Meeting Policies") and Zoom ("Account-level moderator settings"). The implementation could follow the existing allowed_groups mechanism already used in Talk for other permission scopes.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by tracing Talk's existing allowed_groups permission mechanism, the Talk admin settings, and the occ talk:room:promote command. Define how the role applies when users join or are added to new and existing conversations, then cover configuration through both the admin web UI and occ commands.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript
- Domain
- authorization, backend-api-design, cli, frontend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100