Dokumentation / Core Services / Announcements
Built in Service id announcements 3 commands

Announcements

Write a post once and let the bot publish it at the minute you chose, or every day, week or month in your own time zone. You manage it from a calendar on the web. Members just see a normal message from the bot.

Turn it onDashboard, Services, Announcements, switch to Enabled
First stepRun setup once
PlanEvery feature included for every server

Set it up

1. Switch it on

Open the dashboard, pick the server and go to Services. The card is called Scheduled Announcements; use its switch to enable it. The bot needs View Channel, Send Messages and Embed Links in every channel it will post to, and Pin Messages if you want the setup guide pinned. The server owner and managers can create and change announcements; viewers can look.

Optional: on the Announcements page, the Setup button runs a one-click setup. It looks for an existing #announcements, #announcement or #news channel. When none exists it creates #announcements, readable by everyone and writable only by the bot, and pins a short guide in it. An existing channel is left untouched. You can still pick any channel per announcement.

2. Send one right now

In Discord, run /announce now with a channel and a message. The bot confirms privately and posts the text within about 30 seconds. Role and user mentions ping; @everyone and @here do not. On the dashboard, "Fire now" next to a waiting or failed announcement posts it at once, after a confirm that asks "Post this announcement now?".

3. Schedule one from the dashboard

On the Announcements page click "+ New Announcement", or click a day on the calendar to start with 09:00 on that date. Fill in:

  • Internal label (optional): shown in the dashboard list, never posted.
  • Channel: a text or announcement channel. If the list cannot load, paste the channel ID.
  • Timezone: starts as your Server Timezone (see step 4). Invalid names are rejected.
  • Message: up to 2000 characters; Discord markdown works. A Discord preview on the right updates as you type and shows when it fires.
  • Recurrence: "Once (specific date/time)" plus "Send at (in the timezone above)".
  • Embeds (advanced, optional): raw Discord embed JSON, one object or up to 10. A message or an embed is required.

Click Schedule. A server can hold up to 100 waiting announcements.

4. Repeat it, in your server's timezone

Pick "Every day", "Weekly (pick weekdays)" or "Monthly (pick day of month)", set "Time of day (HH:MM, 24-hour)" and, for monthly, a day or "Last day of month". Days past a month's length fall back to its last day. Two optional bounds: "End date" and "Max occurrences". The first post is the next matching time after you save. If the bot was offline at a slot, that post goes out once when it is back, then the schedule continues.

The Timezone field is pre-filled with the Server Timezone from the Bot page (UTC until you set one). 09:00 in that zone stays 09:00 through daylight-saving changes. Each announcement keeps the zone it was saved with; changing the Server Timezone later does not move existing announcements. Edit them to switch zones.

5. Ping roles

Under Mentions, "Allow role mentions" is on by default and "Allow @everyone / @here" is off by default, so a scheduled post cannot mass-ping by accident. User mentions always notify. To ping a role, write it in the message as a role mention (<@&ROLE_ID>); the preview shows the role's name and colour. With "Allow role mentions" off, the role name appears but nobody is pinged.

6. Pause, resume or cancel

The Announcements page groups entries as Pending (Edit, Fire now, Pause, Cancel), Paused (Edit, Resume, Cancel), Recently completed, Cancelled and Failed. Pause keeps an announcement for later; Resume re-plans a repeating one from now, while a one-time one keeps its date. Cancel asks "Cancel this announcement? This cannot be undone." and ends a repeating series. From Discord, /announce list shows each waiting announcement with its number and /announce cancel takes that number.

7. When a channel breaks

If a target channel is deleted or the bot loses access, the entry gets a CHANNEL DELETED or NO ACCESS tag, a banner says "Some announcements cannot be delivered. The channel was deleted or the bot lost access. Edit the announcement and pick a new channel.", and the server's owner and managers get a dashboard notification. A one-time announcement moves to Failed; a repeating one keeps its schedule and skips the broken slot. Edit it, pick a new channel and save; a failed one is re-armed by that save.

So funktioniert es

  1. Run setup once. The wizard finds your #announcements channel or creates one where members can read but not post, then pins a short guide.
  2. Write the post. Text with Discord markdown, up to 2,000 characters, plus optional embeds. A live preview renders it the way Discord will.
  3. Pick when. Once at an exact minute, or every day, week or month in the time zone you choose. Add an end date or a maximum number of posts if it should stop on its own.
  4. Let it run. The scheduler checks every 30 seconds. Pause, resume, cancel or fire early from the calendar whenever you like.

Permissions the bot needs

Generated

The invite link grants these. If one is missing the service page in the dashboard shows a re-grant banner, and the affected commands say what they cannot do instead of failing silently.

View ChannelSend MessagesEmbed LinksPin Messages

Befehle

GeneratedEvery command in detail
BefehleWas dies bewirktWho by default
/announce nowSend an announcement immediately.Server managers
/announce listList pending announcements for this server.Everyone
/announce cancelCancel a pending announcement.Server managers

Everything it does

Writing the post

The compose form is a small text editor with a preview that behaves like Discord.

Discord markdown, up to 2,000 characters. Bold, italic, headings, code blocks, quotes, links and mentions all render. The limit is Discord's own.
Up to 10 embeds. Paste one embed or a list of them as JSON in the Embeds field. An embed can carry an image by URL.
A live preview. The edit page draws the message as Discord will, with the bot tag, role names in their colours and timestamp tokens in every Discord format.
A private label. Name each announcement, up to 200 characters. The label shows in your calendar and history and never in Discord.
A real channel picker. Choose from your server's text and announcement channels, grouped by category. Only channels in this server are offered.

Scheduling

One-time or recurring, always in the time zone you set for that post.

Once, to the minute. Pick a date and a time in any time zone.
Daily, weekly or monthly. Weekly posts run on any set of weekdays. Monthly posts run on a day of the month or on the last day, and a day past the end of a short month moves to its last day.
Your time zone, not the server's. A recurring post fires in its own time zone, so 9 am on Monday means 9 am where you are. Any IANA zone name is accepted, and the form suggests the common ones.
Stop on its own. Give a series an end date, a maximum number of posts, or both.
Counters you can see. Each series shows how many times it has fired and when it last fired.

Managing the queue

Everything waiting to go out lives on one calendar, with the history underneath it.

A month calendar. Every upcoming post appears on its day, one-time posts in one colour and recurring posts in another, with every occurrence for the visible month expanded. Hover a day to see what fires, click a day to schedule something for it.
Pause and resume. A paused post skips its slot without being cancelled. Resuming a series moves its next run into the future so nothing fires late.
Fire now. Send any announcement within the next check, including one that already completed.
Edit until it fires. Pending and paused posts stay fully editable. Completed and cancelled posts are kept as history.
History by state. Pending, paused, recently completed, cancelled and failed each have their own list with the actions that fit.

Mentions

Pings are opt-in per post, and the setting is enforced in what is sent to Discord.

@everyone and @here stay off unless you turn them on. The switch is per announcement. It is applied in the message payload, not only in the form.
Role mentions on by default. Turn them off for a post when you only want the text.
Slash-command posts are always safe. /announce now suppresses everyone and here and has no switch to change that.

Delivery that repairs itself

The scheduler assumes channels get deleted, bots lose permissions and workers restart.

A check before every send. Before each post the bot confirms the channel still exists and it can still post there. A deleted or locked channel is flagged, the owner is told once a day, and the schedule is kept.
A second net after the send. If Discord rejects a post that the check could not predict, that exact announcement is flagged the same way.
Nothing lost to a restart. A post claimed by a worker that crashes mid-send is picked up again within five minutes. Two workers can never send the same post twice.
Missed slots fire once. If the bot was offline at the scheduled minute, the post goes out at the next check and the series continues from there.
Impossible schedules surface. A weekly series with no weekdays selected is marked failed instead of quietly vanishing.

In the dashboard

Scheduled Announcements The month calendar with previous, next and today, a legend, the pending count, and the pending, paused, completed, cancelled and failed lists with inline actions.
New Announcement Channel, time zone, one-time or recurring settings, end date and maximum posts, mention switches, embeds, and the live preview. Clicking a calendar day opens this form with that date filled in.
Edit Announcement The same form with the saved values, for anything still pending or paused. A failed post can be pointed at a working channel and it re-arms itself.
Announcements Setup The one-click wizard that finds or creates #announcements with read-only permissions for members and pins a short guide. Safe to run again.
Who can do what Viewers can open the calendar and lists. Managers can create, edit, pause, resume, cancel, fire and run setup. Every change is written to the server's audit log.

Runs on its own

Checks every 30 seconds. The scheduler runs in the bot worker and claims up to 100 due posts per pass.
Sends through the normal action queue. The post goes out from whichever bot runs your server, the shared bot or your own.
Switched off, nothing lost. If Announcements is disabled at fire time, the post waits and goes out once the service is enabled again.
Marks your charts. When Analytics auto-annotations are on, each announcement that fires becomes a labelled marker on your activity charts.

Limits

WhatWertHinweise
Pending announcements per server100One-time and recurring posts still waiting to fire.
Message length2,000 charactersDiscord's limit for a message.
Embeds per announcement10Discord's limit.
Label length200 charactersDashboard only, never posted.
Recurrencedaily, weekly, monthlyWeekly on any weekdays. Monthly on a day of the month or the last day.
Scheduler passevery 30 sUp to 100 posts claimed per pass.

Safety

Managers only. Creating, editing, pausing, cancelling and firing need the manager role on the dashboard. Viewers can look.
Command locks. Each slash command can be restricted to chosen roles. The server owner always passes.
The channel must be yours. The dashboard checks that the chosen channel belongs to this server before saving.
Mention settings are enforced. The everyone and here switch is applied in the message payload, so a form glitch cannot ping the whole server.
Setup asks for little. The wizard grants the bot only view, send, embed, manage messages and add reactions in the channel it creates, trimmed to what the bot already holds.
No member data. The service stores the post, its schedule and the staff member who created it. Nothing about members.

What it does not do

  • No file or image uploads. An embed can reference an image by URL.
  • No buttons, menus or forms attached to a post.
  • No test send to a private channel. Fire now is a real send.
  • No yearly schedule and no every-N-days interval. The options are daily, weekly and monthly.
  • No templates library or bulk import. Each announcement is created on its own.
  • No per-member delivery, opt-in roles or read tracking. A post goes to a channel.
  • No cross-server broadcast. Each announcement belongs to one server.

Fragen

What happens if the bot is offline when a post is due?

It posts once at the next 30-second check after the bot is back, then the series continues on its normal schedule.

Can I post an image?

Not as an upload. Put the image URL in an embed and it renders in Discord.

Will a post ping everyone?

Only if you switch on everyone and here for that announcement. The default is off, and the slash command cannot turn it on.

What if I delete the channel a series posts to?

The next send is skipped, the series is flagged and the owner is notified once a day. Edit the announcement, choose a new channel, and it re-arms.

Who can schedule announcements?

Anyone with the manager role for your server on the dashboard. The slash commands follow your per-command role locks, and the server owner always can.

Does it work with my own bot token?

Yes. Posts go through the same queue as everything else, so they come from whichever bot runs your server.

YourBot docs Reference tables are generated from the code that is running. Ask in Discord Suggest a correction