bdaybot is a birthday bot written for the discord server of the Guild Wars 2 guild The Arctic [Arc]. Running it for different use cases is not officially supported. Running it on different servers (even multiple at once) should still be possible without problems.
- Post a message if it's someone's birthday. (Optionally as an embed to prevent pinging the user.)
- Give a birthday role to the birthday person for the duration of their birthday.
- List all birthdays for the server or just the next few upcoming ones.
- Full configuration via commands.
- Supports different time zones (configurable per server).
git clone https://github.com/seeeeew/bdaybot.git
cd bdaybot
npm installCopy config.json.template to config.json and edit it to suit your use case. Run node . in the installation directory to start the bot. Optionally you can create a systemd service to run the bot permanently.
Default prefix is @<bot-account> . Successfull commands always give a response.
These commands allow users to view birthdays and manage their own.
<prefix>bday set <MM-DD>– set your birthday (without year)<prefix>bday set <YYYY-MM-DD>– set your birthday (with year)<prefix>bday remove– remove your birthday<prefix>bday list– list all birthdays<prefix>bday next– show the next upcoming birthdays<prefix>help– print help and general info
These commands allow admin users to manage the per-server bot configuration.
<prefix>config show– shows current configuration<prefix>config help– shows current configuration with descriptions<prefix>config set <option> <value>– set<option>to<value><prefix>config reset <option>– reset<option>to the default value
Available configuration options:
-
prefix
command prefix this bot should react to (e. g.!orbb!)
@<bot-account>always works, even if this is unset -
admin_roles
roles allowed to use admin commands (links or ids)
server owner is always allowed, even if this is unset -
command_channels
channels in which the bot will react to commands (links or ids)
leave unset to allow all channels -
alert_channel
channel in which the bot will post birthday alerts (link the channel)
leave unset to disable this feature -
alert_message
template for the birthday alert message ({user}will be replaced with the user link)
uses default message if unset -
alert_message_age
template for the birthday alert message if the user's age is available ({user},{age}and{ageth}will be replaced)
uses default message without age if unset -
alert_embed
post the birthday alert as an embed to prevent pinging the birthday person (true/false, default: false) -
alert_time
time at which the bot posts the birthday alert (format:HH:MM)
defaults to midnight if unset -
timezone
time zone to be used for this server (full name from the IANA tz database, e. g.Europe/Berlin)
defaults to time zone of the machine the bot is running on if unset -
bday_role
role that will be given to the birthday person for the duration of their birthday (link the role)
leave unset to disable this feature