This document defines structures for how the Discord Server shall be configured. Including comments with reasoning behind selected configuration options. Acts as a backup if the Discord Server gets compromised or an authorized user changes unintended settings without documentation.
Categories (which acts like folders) are defined as Markdown code brackets
.
Channel for chatting is defined with Markdown bold.
Thread for temporary chatting is defined with Markdown italics
A channel only used for threads is defined with Markdown bold italics.
Comments are defined as > Markdown quotes
.
See example below:
CATEGORY
Comment on category
- Channel
Comment about channel
- Thread Exclusive Channel
- Thread name example 1
- Example 2
Comment on individual thread or the thread channel as a whole
- Channel-2
- ...
- Channel
These are tools provided by discord that can help both users and moderators to find information about events, channels and members.
- Events
Only users who have the "Create Events" or "Manage Events" permissions are allowed to see this tool by default. If there is a planned event or ongoing event, then everyone will be able to see the button with additional information.
- Browse Channels
Everyone is allowed to browse channels of the Discord Server. It is an accessibility tool intended for massive community servers with personalization. Our server is not intended to be massive by any means, the feature is redundant for our use case. Browse Channels do support "Onboarding" which is accessible through
Server Settings > Community > Onboarding
or by right-clicking "Browse Channels" button and then "Edit Onboarding". Onboarding is a discord feature that lets newcomers be guided through the personalization process and incentivize a first chat message. Onboarding could be a replacement for a traditional #roles channel. - Members
The Members Page is a tool for moderators and admins to manage members of the server. Discord gives access to the tool if a user has at least one of the following permissions: administrator, manage server, manage roles, manage nicknames, ban members, timeout members, or kick members. This tool can be useful for changing previous students to alumni after a summer break. For more information regarding the tool, visit support.discord.com.
INFORMATION
- rules
Includes opening hours, what food to bring, the user must behave well, etc. The user needs to accept the terms to access the discord server.
- Accept Rules
Thread for new users to write their name to change their discord nickname and accept the rules.
- Accept Rules
- announcements
- info-hub
A resource channel for getting good general information, like opening hours during summer, or how to change nickname, or how to borrow equipment, etc. It is an information hub with resources on how to navigate the discord server.
- rules
LAB
- general
- memes
- discussions
- Games to buy
- Any plans to hold a movie night?
- Etc
A thread channel dedicated to discussions, anyone can create a thread in that channel and the discord bot may reformat the thread to be "
@user
wish to discuss about#Games to buy
". (Subject to change, it is a very long message for it to be spammed in a single channel).
- help
- loan-equipment
A channel dedicated for discord-bot to manage renting equipment. It is read only, but admins can send a command for the discord-bot to keep track of responsibility and return date.
GROUPS
- 3d-print
- ai-arena
- code-crafter
STUDY
- software-engineering
- other-program-overview
Dedicated channels for students to see their program overview of courses. The channel is read only and is managed by admins through discord-bot commands. Only the users with the specific
@program
role will have access to their dedicated channel. The last message will always be a reaction message to toggle visibility of all program overviews. - all-courses
- XX0000 - Web programming
- XX0000 - Introduction to software
- Etc
A dedicated channel for all university courses that are relevant to our discord server. This will act as a registry for any student user to look for struggles and solutions from previous students. Only the discord-bot will manage this channel by creating threads based on program overviews defined above. The last message will always be instructions on how to use Discord's search threads function in the top right corner.
RODENTS
- general
- happenings
- Robotics Workshop
- Open House
- Lab Meeting 2024-08-13
A channel that acts as both announcements and events in one. Admins can announce upcoming meetings. Moderators can create threads to plan upcoming happenings. Here lies an opportunity for the discord bot to summarize past meetings to create an opening speech for a new meeting. Perhaps
/meeting
is a suitable command.
- lab-suggestions
A forum to discuss how to improve the lab
- discord-logs (Subscribed to discord newsletter)
Mainly a channel for admins to see new discord features. Could include threads that has the purpose of logging the server or new members joining.
- Member Log
- Change Log
- Bot Activity Log
A list of roles supported by the discord server. The headers should be surrounded by two "●" in the server to distinguish them from regular roles. They are not meant to be assignable.
On the roles that has an emoji present, it is not part of the role title but a way to dictate what should be added to a user's username. The discord bot should automatically assign the emojis when a role changes.
- ●● Admin ●●
- Ratministrator
Role dedicated to manage the discord server itself. It is a dangerous role because it has the same privileges as Lab Director and could change anything. This role is on the top of the list so that it has access to change all other roles.
- Ratministrator
- ●● Lab Employees ●●
- Lab Director 🥼
Employee responsible for the lab.
- Lab Researcher 🥼
University Professors who are active in creating workshops and making projects.
- Lab Director 🥼
- ●● Lab Assistants ●●
- Rat King 👑
- Lab Rat 🐀
- Lab Mouse 🐁
- Lab Escapee 🚪
- ●● Study Programs ●●
- SE-BSc
- SE-Civ
- Sec-BSc
- Sec-Civ
- AI Study
- Web Study
- Game Study
- Other Study
- ●● Lab Visitors ●●
Set of roles for members outside the lab. For example, a professor from a different program or an external company employee.
- Visitor 🎩
- BTH
- ●● Hobby Groups ●●
A dynamic list of roles for dedicated groups within the lab. Such as hobbyist or participents in weekly activities. The Hobby Groups roles is the only set of roles that are expected to grow and shrink over time. The discord bot should have a command to manage these groups.
- Ninja Maker/3D Printmaster
- Code Crafter
- AI Arena
- ...
- ●● Rat King Tools ●●
A set of roles that Rat King should manage on the fly. None of them should effect the user experience.
- Test Subject 🧪
A role given to newcomers. Will be removed after they've accepted the
#rules
. - Lender 📤
- Borrower 📥
Roles given to the labrat lending and the user recieving respectevely.
- Study Curious
A role for displaying all courses and program information.
- Test Subject 🧪
All roles not specified shall have the default role color and keep the extra display options disabled.
- Lab Employees has a blue color to represent the university color. Lab Director has a brighter color to signify their importance while Lab Researcher has the darker blue color. Lab Director always has both roles. Only Lab Researcher shall enable the "Display role members separately from online members". The color is based on the university color
#055064
but at 30 and 40 percent brighter respectively. - Lab Assistants Lab Rat and Lab Mouse shall display role members seperate from others and anyone should be able to @mention the role.
- Rat King shall have a gold color
#FFD700
to represent their royalty as well as be part of Lab Rat to be grouped together.
- Rat King shall have a gold color
- Study Programs has each field of study represented by a color. Master's has a brighter color of the bachelor's color, this is to follow the similar logic in Lab Employees.
- Lab Visitors with its BTH role has the blue color
#377383
which is 20% brighter version of the university color#055064
.
If not specified every role has the same permissions as @everyone
. The exception is the Ratministrator
role which has the same permissions as Lab Director
. Test Subject
has no permissions.
Permission | @everyone |
Mouse | Rat | King | Researcher | Director |
---|---|---|---|---|---|---|
General Permissions | ||||||
View Channels | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Manage Channels | ➖ | ➖ | ➖ | ➖ | ➖ | ✅ |
Manage Roles | ➖ | ➖ | ➖ | ✅ | ➖ | ✅ |
Create Expressions | ➖ | ✅ | ✅ | ➖ | ✅ | ✅ |
Manage Expressions | ➖ | ➖ | ✅ | ➖ | ✅ | ✅ |
View Audit Log | ➖ | ➖ | ➖ | ➖ | ➖ | ✅ |
View Server Insights | ➖ | ➖ | ➖ | ➖ | ➖ | ✅ |
Manage Webhooks | ➖ | ➖ | ➖ | ➖ | ➖ | ✅ |
Manage Server | ➖ | ➖ | ➖ | ✅ | ➖ | ✅ |
Membership Permissions | ||||||
Create Invite | ➖ | ➖ | ➖ | ➖ | ➖ | ✅ |
Change Nickname | ➖ | ➖ | ➖ | ✅ | ➖ | ✅ |
Manage Nicknames | ➖ | ➖ | ➖ | ✅ | ➖ | ✅ |
Kick Members | ➖ | ➖ | ✅ | ➖ | ✅ | ✅ |
Ban Members | ➖ | ➖ | ➖ | ➖ | ✅ | ✅ |
Timeout Members | ➖ | ✅ | ✅ | ➖ | ✅ | ✅ |
Text Channel Permissions | ||||||
Send Messages | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Send Messages in Threads | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Create Public Threads | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Create Private Threads | ➖ | ➖ | ➖ | ✅ | ➖ | ✅ |
Embed Links | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Attach Files | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Add Reactions | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Use External Emoji | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Use External Stickers | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Mention @everyone , @here and All Roles |
➖ | ➖ | ✅ | ➖ | ✅ | ✅ |
Manage Messages | ➖ | ➖ | ✅ | ✅ | ✅ | ✅ |
Manage Threads | ➖ | ➖ | ✅ | ✅ | ✅ | ✅ |
Read Message History | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Send TTS Messages | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
Send Voice Messages | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
Create Polls | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Voice Channel Permissions | ||||||
Connect | ✅ | ✅ | ✅ | ➖ | ✅ | ✅ |
Speak | ✅ | ✅ | ✅ | ➖ | ✅ | ✅ |
Video | ✅ | ✅ | ✅ | ➖ | ✅ | ✅ |
Use Soundboard | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
Use External Sounds | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
Use Voice Activity | ✅ | ✅ | ✅ | ➖ | ✅ | ✅ |
Priority Speaker | ➖ | ➖ | ✅ | ➖ | ✅ | ✅ |
Mute Members | ➖ | ✅ | ✅ | ➖ | ✅ | ✅ |
Deafen Members | ➖ | ➖ | ✅ | ➖ | ➖ | ✅ |
Move Members | ➖ | ➖ | ✅ | ➖ | ➖ | ✅ |
Set Voice Channel Status | ✅ | ✅ | ✅ | ➖ | ✅ | ✅ |
Apps Permissions | ||||||
Use Application Commands | ✅ | ✅ | ✅ | ➖ | ✅ | ✅ |
Use Activities | ➖ | ✅ | ✅ | ➖ | ✅ | ✅ |
Use External Apps | ➖ | ➖ | ➖ | ➖ | ➖ | ✅ |
Stage Channel Permissions | ||||||
Request to Speak | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
Events Permissions | ||||||
Create Events | ➖ | ✅ | ✅ | ✅ | ✅ | ✅ |
Manage Events | ➖ | ➖ | ✅ | ✅ | ✅ | ✅ |
Administrator | ➖ | ➖ | ➖ | ➖ | ➖ | ✅ |
Any channel that doesn't specify permissions should have grayed out permissions. This will make the role default to its own permissions, which we defined right above, here.
INFORMATION
@everyone
View Channels ✅ | Manage Channels ❌ | Manage Permissions ❌ | Manage Webhooks ❌ | Send Message ❌ | Send Message in Threads ❌ | Create Public Threads ❌ | Create Private Threads ❌ | Read Messsage History ✅ |
@Rat King
Send Messages ✅ | Send Messages in Threads ✅ |- rules
- announcements
@Lab Rat
Send Messages ✅ |
@Lab Researcher
Send Messages ✅ | - info-hub
LAB
- general
- memes
- discussions
- help
- loan-equipment
@everyone
View Channels ✅ | Send Message ❌ | Send Message in Threads ❌ | Create Public Threads ❌ | Create Private Threads ❌ | Read Messsage History ✅ |
@Rat King
Send Messages ✅ | Send Messages in Threads ✅ | Create Public Threads ✅ | Create Private Threads ✅ |
GROUPS
- 3d-print
- ai-arena
- code-crafter
STUDY
Not Implemented
- software-engineering
- other-program-overview
- all-courses
RODENTS
Private Category! Roles that has access:
@Lab Mouse
,@Lab Rat
,@Lab Researcher
,@Rat King
- general
- lab-suggestions
- happenings
- discord-logs
This is a place for students to hang out, study, chill, and engage in activities. Everyone is welcome, but please follow our guidelines to ensure a positive experience for all. Violating the rules may result in revoked access to the lab.
**1. Closing Hours** Ericsson Space closes at 23:00. Do not stay in the lab after closing time.
**2. Food** Only wrapped candy or bars are allowed in the lab; other food is prohibited.
**3. Drinks** Water is allowed. Other drinks are permitted as long as they are in resealable containers. Alcohol is not allowed.
**4. Noise Level** Respect each other by keeping noise levels down. People may be studying.
**5. Tidyness** Return all chairs to their desks after use. Keep walkways and workspaces clear.
**6. Consoles** Handle all gaming controls for PS4 and PS5 with care. Return them to the charging stations after use.
**7. Cables** Do not unplug or move cables. If any cables are missing, contact the labrats.
**8. Contact** If Ericsson Space is messy, equipment is damaged, or anything is missing, notify `@Lab Rat` to address the issue quickly.
To **accept** these rules, write your name here 👉 {_thread_}
**Welcome to the #info-hub!**
If any information is unclear, feel free to ask us `@Lab Rat`s in #help.
**🕒 ● Opening Hours**
Ericsson Space Lab has the same opening hours as BTH Campus, with the exception of students who study within [DIPT](https://www.bth.se/om-oss/institutioner/dipt/) or [DIDA](https://www.bth.se/om-oss/institutioner/dida/) who has access on both weekends and to 23:00.
`08:00-17:00` on regular work days.
`08:00-23:00` on all days for [DIPT](https://www.bth.se/om-oss/institutioner/dipt/) & [DIDA](https://www.bth.se/om-oss/institutioner/dida/) students.
**🎓 ● Change Your Study Program**
You can customize your discord experience and what you study in <id:browse>. If the link is not working you can go to the top left of your discord client (above the #rules channel) and find a channel labeled `#Browse Channels` or equivalent in your language.
**✉️ ● Server Link for Inviting Others**
We use the following link: `https://discord.gg/QSkpKzeXsZ`
**📅 ● Know when the Lab is Occupied**
Sometimes we hold events in the lab for external visitors. You can see upcoming events on the TV in the projector room. You can also subscribe to one of the calendars in our [linktree](https://serlatbth.github.io/linktree/) if you wish to see it on your personal calendar. Some events will simply be a lunch meeting and others might occupy an entire day. We will also send a message in #announcements.
**🧸 ● How do I borrow equipment?**
At the moment we don't have a system to lend out equipment. When it is ready, everything will be handled in #loan-equipment channel. Stay tuned :)
This is a discord feature for moderators to handle incoming new members. The Onboarding feature has 5 setup stages to it and we will go through them here.
In DM and Spam Protection there is "Members must accept rules before they can talk or DM" configuration. This should be disabled as we already have a #rules
channel and with Onboarding you can only see the rules once. It could be usefull for c"common sense" rules like do not send adult content, or do not spam, etc. Might be a consideration if someone is really rude, but for now #rules
should be enough.
The default channels for new comers will be the following categories categories:
- INFORMATION
- LAB
- GROUPS
Pre-join Questions will be which program the members is studying. It will include both Study Programs
and Lab Visitors
roles. An answer is required and only one is allowed.
@sample role
Sample Answer Sample Description@SE-BSc
Software Engineering Software Engineering@SE-MSc
Civilingenjör i Mjukvaruutveckling Master of Science in Engineering: Software Engineering@Sec-BSc
Högskoleingenjör i IT-säkerhet Bachelor of Science in Engineering: Computer Security@Sec-MSc
Civilingenjör i Datorsäkerhet Master of Science in Engineering: Computer Security@AI Study
AI Programmet AI Studies@Web Study
Webbutveckling Web Studies@Game Study
Spelutveckling Game Studies@Other Study
Annat Program Other Studies@BTH
Anställd på BTH BTH Employee@Visitor
Bara Besöker Only Visiting
Post-join Questions will be Hobby Groups
roles that people can join to get notified about their activities.
Welcome Sign is an automated welcome message sent to new members. A user needs the Manage Roles and Manage Server permissions to be an author. This is a perfect place to utilize Rat King to greet our new members to the lab.
Welcome [@username] to the Ericsson Space Lab!
We created this Discord server to be our communication hub for the Space Lab. Here, you can participate in activities and discussions about school, technology, and various projects.
To help you get started, I've curated some useful tasks below:
New Member To Do's consists of 3 to 5 tasks that gets recommended to new members. "Read the rules" is always a task, so technically it is minimum 4 tasks.
- Look at upcoming activities
#announcements
- Understand the info-hub
#info-hub
- Check out our equipment
#loan-equipment
- Visit general chat
#general
(temporary until#loan-equipment
is functional) - Read the rules
Resource Pages reshapes a chat channel to be more article like. This will be useful for multiple channels in our use case.
#rules
#info-hub
#loan-equipment
- Other program overviews
Last step in the process. Not much to say here. Review the onboarding configurations and enable the feature.