-
Notifications
You must be signed in to change notification settings - Fork 0
Bot
Parent section: Core Components
The SDAC bot is the Discord-facing interface. It handles guided submissions, server setup, polls, guessing games, moderation actions, backups, diagnostics, release notifications, and emergency controls.
For first-time Discord setup, see Bot Setup.
Common user-facing commands include:
-
/commands- shows user command help. -
/submit- starts the guided submission flow. -
/guess- submits an answer for an active guessing game. -
/hint- shows the available hint for the current game. -
/activegame- shows the active guessing game in the channel. -
/polls- lists active polls. -
/votepoll- votes in an active poll. -
/animeactivities,/animeprofile,/animeprofileview,/animeleaderboard,/animechallenge- experimental anime-related activities. These should remain marked as experimental because they may be removed in a future update.
The /submit flow asks the user for a category, content, and confirmation. Submissions can include media or text depending on server settings. When approval is disabled, accepted submissions are reposted to the configured submission/category channel. When approval is enabled, staff review the submission before reposting.
Submissions are tracked in the database with user, guild, category, media, status, votes, and moderation metadata. Media should live under media/ and should not be committed to Git.
Server staff configure where submissions go:
-
/setsubmitsets the default submission channel. -
/clearsubmitclears the default submission channel. -
/setcategorycreates or updates a category. -
/editcategoryrenames or moves a category. -
/deletecategorydeletes a category. -
/categorieslists current configuration. -
/settingssummarizes bot settings.
No channels or categories should be assumed by default in config.json.
The bot supports guessing games started from Discord or from the website-managed library:
-
/startgamestarts a guessing game. -
/startlibrarygamestarts a random/saved library game where available. -
/schedulegame,/scheduledgames,/cancelscheduledgamemanage scheduled games. -
/setguesstimeoutsets wrong-guess cooldowns. -
/setgamesettingsconfigures default game behavior. -
/setgamesummarychanneland/cleargamesummarychannelcontrol where summaries post. -
/sethint,/revealhint,/hint,/correct,/cancelgamemanage active games.
Game data includes answers, aliases, hints, scores, monthly leaderboards, seasons, streak achievements, and top 10 snapshots.
Polls can be created and managed from Discord and from the dashboard:
-
/createpollcreates a poll. -
/pollslists active polls. -
/votepollrecords a vote. -
/closepollcloses a poll.
Polls should respect server scope and admin permissions.
Setup commands help server owners configure SDAC without editing files manually:
-
/setupopens the setup wizard. -
/setupstatusshows progress. -
/setupchecklistshows setup and production checklist items. -
/setuptestruns a setup test. -
/diagnosechecks database, folders, channels, permissions, bot runtime state, public URL, and command sync. -
/checkpermissionschecks channel permissions. -
/repairpermissionsshows missing permissions and a repair link. -
/repositoryshows the configured repository information.
Admin commands include:
-
/admincommands- shows staff command help. -
/setadminroleand/removeadminrole- grant/remove Discord roles that can manage SDAC. -
/setapproval- configures approval-before-repost. -
/setlimit- sets per-server safety limits. -
/setmoderation- configures blocked words, allowed media types, new-user approval, and spoiler approval. -
/removesubmissionand/submissioninfo- inspect or remove submissions. -
/reasonpresets- shows standard action reasons. -
/supportbundle- creates a small diagnostic support bundle.
Operational commands include:
-
/setnotification- routes admin alerts to a channel. -
/seterrorchanneland/clearerrorchannel- route system error notifications. -
/setweeklychannel,/clearweeklychannel,/setweeklytime,/setweeklyday,/settimezone- control weekly posts. -
/setbranding- sets server branding. -
/setfeature- toggles features like submissions, games, approval queues, weekly posts, gallery visibility, and cross-server visibility. -
/setdigest- configures notification digests. -
/sdacpanic- pauses or resumes SDAC activity in a server. -
/sdacreset- restarts the bot process from Discord when allowed.
Server backup commands include:
-
/backupguide- shows provider setup steps. -
/backupsetup- configures provider settings. -
/setserverbackup- sets a server-specific external backup target. -
/backupnow- creates a backup and optionally uploads it. -
/backupstatusand/serverbackupstatus- show backup status.
Supported rclone-backed providers include Google Drive, OneDrive, Dropbox, Mega, S3, Backblaze B2, Box, and SFTP. Do not put provider secrets in the wiki.
The bot can announce official updates to configured Discord channels. When release notification behavior changes, verify:
- The server has update notifications enabled.
- The notification channel is configured.
- The latest official release is detected correctly.
-
latest-experimentalalso works when it should point at the most recent official update.
Anime-related games and activities are experimental. Keep visible warnings that they might be deleted in the future until they are promoted to stable features.