Logs Serveur & Channels (CRUD salons, rôles, guild) #7

Open
opened 2026-05-31 01:52:38 +02:00 by raphael · 0 comments
Owner

Description

Logger les modifications structurelles du serveur : création/suppression/modification de salons et de rôles, ainsi que les changements de nom/icône du serveur.

Events à traiter

Event Discord Struct Serenity Lien docs.rs
CHANNEL_CREATE ChannelCreateEvent https://docs.rs/serenity/latest/serenity/model/event/struct.ChannelCreateEvent.html
CHANNEL_DELETE ChannelDeleteEvent https://docs.rs/serenity/latest/serenity/model/event/struct.ChannelDeleteEvent.html
CHANNEL_UPDATE ChannelUpdateEvent https://docs.rs/serenity/latest/serenity/model/event/struct.ChannelUpdateEvent.html
GUILD_ROLE_CREATE RoleCreateEvent https://docs.rs/serenity/latest/serenity/model/event/struct.RoleCreateEvent.html
GUILD_ROLE_DELETE RoleDeleteEvent https://docs.rs/serenity/latest/serenity/model/event/struct.RoleDeleteEvent.html
GUILD_ROLE_UPDATE RoleUpdateEvent https://docs.rs/serenity/latest/serenity/model/event/struct.RoleUpdateEvent.html
GUILD_UPDATE GuildUpdateEvent https://docs.rs/serenity/latest/serenity/model/event/struct.GuildUpdateEvent.html

Critères d'acceptation

  • Salon créé : nom, type, position, catégorie parente, créateur (via audit log si possible).
  • Salon supprimé : nom, type, ID.
  • Salon modifié : diff des changements majeurs (nom, topic, NSFW, sync permissions, overwrites simplifiés).
  • Rôle créé/supprimé : nom, couleur, permissions (format simplifié), mentionnable.
  • Rôle modifié : changements de permissions / nom / couleur / séparation.
  • Serveur modifié : changement de nom, icône, banner, vanity URL, niveau de vérification.

Notes d'implémentation

  • Les permissions overwrites peuvent être verbeuses ; limiter l’embed aux 3-4 premiers changements et mettre le reste en spoiler ou fichier.
  • GuildUpdate contient old_data si le cache est activé ; utile pour diff.
### Description Logger les modifications structurelles du serveur : création/suppression/modification de salons et de rôles, ainsi que les changements de nom/icône du serveur. ### Events à traiter | Event Discord | Struct Serenity | Lien docs.rs | |---------------|-----------------|--------------| | `CHANNEL_CREATE` | `ChannelCreateEvent` | https://docs.rs/serenity/latest/serenity/model/event/struct.ChannelCreateEvent.html | | `CHANNEL_DELETE` | `ChannelDeleteEvent` | https://docs.rs/serenity/latest/serenity/model/event/struct.ChannelDeleteEvent.html | | `CHANNEL_UPDATE` | `ChannelUpdateEvent` | https://docs.rs/serenity/latest/serenity/model/event/struct.ChannelUpdateEvent.html | | `GUILD_ROLE_CREATE` | `RoleCreateEvent` | https://docs.rs/serenity/latest/serenity/model/event/struct.RoleCreateEvent.html | | `GUILD_ROLE_DELETE` | `RoleDeleteEvent` | https://docs.rs/serenity/latest/serenity/model/event/struct.RoleDeleteEvent.html | | `GUILD_ROLE_UPDATE` | `RoleUpdateEvent` | https://docs.rs/serenity/latest/serenity/model/event/struct.RoleUpdateEvent.html | | `GUILD_UPDATE` | `GuildUpdateEvent` | https://docs.rs/serenity/latest/serenity/model/event/struct.GuildUpdateEvent.html | ### Critères d'acceptation - [ ] **Salon créé** : nom, type, position, catégorie parente, créateur (via audit log si possible). - [ ] **Salon supprimé** : nom, type, ID. - [ ] **Salon modifié** : diff des changements majeurs (nom, topic, NSFW, sync permissions, overwrites simplifiés). - [ ] **Rôle créé/supprimé** : nom, couleur, permissions (format simplifié), mentionnable. - [ ] **Rôle modifié** : changements de permissions / nom / couleur / séparation. - [ ] **Serveur modifié** : changement de nom, icône, banner, vanity URL, niveau de vérification. ### Notes d'implémentation - Les permissions overwrites peuvent être verbeuses ; limiter l’embed aux 3-4 premiers changements et mettre le reste en spoiler ou fichier. - `GuildUpdate` contient `old_data` si le cache est activé ; utile pour diff.
raphael added this to the Logs System milestone 2026-05-31 01:52:38 +02:00
raphael self-assigned this 2026-05-31 01:52:38 +02:00
raphael added this to the TTY project 2026-05-31 01:52:38 +02:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Reference
raphael/tty#7
No description provided.