-
Notifications
You must be signed in to change notification settings - Fork 0
ChannelJoinNotification
🌐 English · Deutsch
ChannelJoinNotification sends a member a direct message with a customizable text the moment they join a configured voice channel. Each voice channel has its own on/off switch and DM template, so you can welcome people into a lobby, brief them when they enter a support room, or ping them in a private channel — all without posting anything publicly. Configuration is available three ways: an ephemeral slash setup wizard in Discord, dashboard panels, and a dedicated guild dashboard page. Author: pd-codes · version 1.0.0 · requires Red 3.5.0+.

[p]repo add PDC_Redbot_Cogs https://github.com/pd-codes/PDC_Redbot_Cogs
[p]cog install PDC_Redbot_Cogs channeljoinnotification
[p]load channeljoinnotification
[p]slash sync
[p] is your bot's prefix. The setup UI is a slash command, so run [p]slash sync once after loading. See Installation for the full Downloader walkthrough.
| Command | Type | What it does |
|---|---|---|
/join-notification |
Slash, guild-only | Opens an ephemeral setup wizard (only you can see it). |
There is no prefix command — /join-notification is the only in-Discord entry point.
The wizard keeps everything in a single ephemeral message that edits itself as you go:
- Pick a voice channel from the channel select (restricted to voice channels).
- The message shows the channel's current status (active/disabled) and a preview of its DM text.
- Aktivieren (Enable) opens a modal to type or edit the DM text, then activates the channel.
- Deaktivieren (Disable) turns notifications off for that channel without deleting the text.
The wizard times out after 10 minutes and only responds to the user who opened it.
The DM text supports two placeholders, substituted when the message is sent:
| Variable | Replaced with |
|---|---|
<Username> |
The member's display name |
<Channelname> |
The voice channel's name |
Example template: Hi <Username>! Du bist in <Channelname> gejoint ...
Voice channels only. The cog's listener fires only for
discord.VoiceChanneljoins and ignores bots and channel-to-channel moves where the destination isn't watched. If a member has DMs disabled, the bot fails silently — no error and no public message. (Although the cog is described as covering "voice/stage" channels, the current source filters strictly to voice channels.)
ChannelJoinNotification stores everything per guild (Red Config, identifier 771194222451) under a single notifications map keyed by channel ID:
notifications = {
"<channel_id>": { "enabled": true, "text": "Hi <Username>! ..." }
}
| Key | Type | Meaning |
|---|---|---|
enabled |
bool | Whether a DM is sent on join for this channel. |
text |
string | The DM template (max ~1500–1900 chars depending on entry point). |
A DM is sent only when the joined channel has an entry that is enabled and has non-empty text.
ChannelJoinNotification registers with the PDC Web Dashboard on load and re-attaches if the dashboard cog appears later. It exposes a widget, a panel, a managed list and two dashboard pages:
| Surface | Mount | Permission | Purpose |
|---|---|---|---|
| Widget "Join-Notify Channels" | Dashboard home (KPI, small) | guild_member |
Counts how many channels have notifications enabled. |
| Panel "Join-Benachrichtigungen" | guild_settings |
guild_admin |
Per voice channel: an enable switch and a DM-text textarea with variable hints. |
| List "Konfigurierte Benachrichtigungen" | guild_settings |
guild_admin |
Table of configured channels (channel, active, text preview) with inline edit and delete. |
| Page (home) | dashboard home | — | A small info card noting the integration is active. |
Standalone page channeljoinnotification
|
own page (GET/POST) |
manage_guild / admin / bot owner |
Full editor: add/update an entry (channel + enable + text), remove an entry, and a live table of all entries. |

The standalone page auto-fills the form with a channel's existing settings when you pick it, and offers a separate "remove entry" form so you can clean up channels you no longer want to watch.
The bot only needs to be able to send the user a DM — no special guild permissions are required (none are declared in info.json). The slash setup wizard is available to any member who can run it but only edits config for the channels you select; the dashboard panels require guild_admin, and the standalone page requires manage_guild (or admin / bot owner). Only per-guild settings are stored — channel IDs, enable flags and message templates — no personal data.
See also: Installation · Dashboard Integration · EventMessages · Home
PDC_Redbot_Cogs · GitHub · Issues · Web Dashboard · Built for Red-DiscordBot · 🌐 English / Deutsch
🇬🇧 English
General
Cogs
Engagement & Utility
- Birthday
- StatChannels
- ScheduledMsg
- EventLog
- SocialFeed
- Giveaway
- Leveling
- TempVoice
- Starboard
- Suggestions
- LiveAlerts
Moderation
Fun
Web Dashboard
🇩🇪 Deutsch
Allgemein
Cogs
Engagement & Utility
- Birthday
- StatChannels
- ScheduledMsg
- EventLog
- SocialFeed
- Giveaway
- Leveling
- TempVoice
- Starboard
- Suggestions
- LiveAlerts
Moderation
Fun
Web-Dashboard