mirror of
https://github.com/skylanix/MamieHenriette.git
synced 2026-02-06 06:40:35 +01:00
Améliore la communication et la documentation
This commit is contained in:
20
README.md
20
README.md
@@ -50,12 +50,25 @@ Mamie Henriette est un bot intelligent open-source développé spécifiquement p
|
||||
- **Statuts dynamiques** : Rotation automatique des humeurs (10 min)
|
||||
- **Notifications Humble Bundle** : Surveillance et alertes automatiques (30 min)
|
||||
- **Commandes personnalisées** : Gestion via interface web
|
||||
- **Recherche ProtonDB** : Commande `!protondb <nom_du_jeu>` pour vérifier la compatibilité Linux/Steam Deck
|
||||
- **Modération** : Outils intégrés
|
||||
- **Recherche ProtonDB** :
|
||||
- Commande `!protondb nom_du_jeu` ou `!pdb nom_du_jeu` pour vérifier la compatibilité Linux/Steam Deck
|
||||
- Recherche intelligente avec support des alias de jeux
|
||||
- Affichage du score de compatibilité, nombre de rapports et lien direct
|
||||
- **Modération** : Système complet de modération avec historique
|
||||
- Avertissements : `!averto`, `!warn`, `!av`, `!avertissement`
|
||||
- Gestion des avertissements : `!delaverto`, `!removewarn`, `!delwarn`
|
||||
- Liste des événements : `!warnings`, `!listevent`, `!listwarn`
|
||||
- Inspection utilisateur : `!inspect` (historique complet, date d'arrivée, compte)
|
||||
- Bannissement : `!ban`, `!unban` (avec invitation automatique), `!banlist`
|
||||
- Expulsion : `!kick`
|
||||
- Aide : `!aide`, `!help`
|
||||
- Messages de bienvenue et départ personnalisables
|
||||
- Panneau d'administration web pour consulter l'historique
|
||||
|
||||
### Twitch
|
||||
- **Chat bot** : Commandes et interactions automatiques
|
||||
- **Alertes Live** : Surveillance automatique des streamers (vérification toutes les 5 minutes)
|
||||
- **Alertes Live** :
|
||||
- Surveillance automatique des streamers
|
||||
- Support jusqu'à 100 chaînes simultanément
|
||||
- Notifications Discord avec aperçu du stream
|
||||
- Gestion via interface d'administration
|
||||
@@ -243,6 +256,7 @@ python run-web.py
|
||||
- **GameAlias** : Alias pour améliorer les recherches ProtonDB
|
||||
- **GameBundle** : Historique et notifications Humble Bundle
|
||||
- **Message** : Messages automatiques périodiques (implémenté)
|
||||
- **Moderation** : Historique complet des actions de modération (avertissements, bans, kicks, unbans) avec raison, staff et timestamp
|
||||
|
||||
### Architecture multi-thread
|
||||
- **Thread 1** : Interface web Flask (port 5000) avec logging rotatif
|
||||
|
||||
@@ -704,40 +704,48 @@ async def handle_staff_help_command(message: Message, bot):
|
||||
|
||||
if ConfigurationHelper().getValue('moderation_enable'):
|
||||
value = (
|
||||
"• `!averto @utilisateur [raison]`\n"
|
||||
"• `!delaverto <id>`\n"
|
||||
"• `!averto @utilisateur raison`\n"
|
||||
" *Alias: !warn, !av, !avertissement*\n"
|
||||
"• `!delaverto id`\n"
|
||||
" *Alias: !removewarn, !delwarn*\n"
|
||||
"• `!warnings` ou `!warnings @utilisateur`\n"
|
||||
" *Alias: !listevent, !listwarn*\n"
|
||||
"Exemples:\n"
|
||||
"`!averto @User Spam`\n"
|
||||
"`!averto @User Spam dans le chat`\n"
|
||||
"`!delaverto 12`\n"
|
||||
"`!warnings @User`"
|
||||
)
|
||||
embed.add_field(name="⚠️ Avertissements", value=value, inline=False)
|
||||
embed.add_field(
|
||||
name="🔎 Inspection",
|
||||
value=("• `!inspect @utilisateur` ou `!inspect <id>`\n"
|
||||
value=("• `!inspect @utilisateur` ou `!inspect id`\n"
|
||||
"Affiche les infos détaillées et l'historique de modération\n"
|
||||
"Ex: `!inspect @User`"),
|
||||
inline=False
|
||||
)
|
||||
|
||||
if ConfigurationHelper().getValue('moderation_ban_enable'):
|
||||
value = (
|
||||
"• `!ban @utilisateur [raison]`\n"
|
||||
"• `!unban <discord_id>` ou `!unban #<sanction_id> [raison]`\n"
|
||||
"• `!ban @utilisateur raison`\n"
|
||||
" Bannit définitivement un utilisateur\n"
|
||||
"• `!unban discord_id` ou `!unban #sanction_id raison`\n"
|
||||
" Révoque le ban et envoie une invitation\n"
|
||||
"• `!banlist`\n"
|
||||
" Affiche la liste des utilisateurs bannis\n"
|
||||
"Exemples:\n"
|
||||
"`!ban @User Toxicité`\n"
|
||||
"`!unban 123456789012345678 Erreur`\n"
|
||||
"`!ban @User Comportement toxique répété`\n"
|
||||
"`!unban 123456789012345678 Erreur de modération`\n"
|
||||
"`!unban #5 Appel accepté`"
|
||||
)
|
||||
embed.add_field(name="🔨 Ban / Unban", value=value, inline=False)
|
||||
embed.add_field(name="🔨 Bannissement", value=value, inline=False)
|
||||
|
||||
if ConfigurationHelper().getValue('moderation_kick_enable'):
|
||||
value = (
|
||||
"• `!kick @utilisateur [raison]`\n"
|
||||
"Exemple: `!kick @User Spam`"
|
||||
"• `!kick @utilisateur raison`\n"
|
||||
" Expulse temporairement un utilisateur du serveur\n"
|
||||
"Exemple: `!kick @User Spam de liens`"
|
||||
)
|
||||
embed.add_field(name="👢 Kick", value=value, inline=False)
|
||||
embed.add_field(name="👢 Expulsion", value=value, inline=False)
|
||||
|
||||
try:
|
||||
sent = await message.channel.send(embed=embed)
|
||||
|
||||
@@ -57,7 +57,7 @@
|
||||
<legend>Modération</legend>
|
||||
<label for="moderation_enable">
|
||||
<input type="checkbox" name="moderation_enable" {% if configuration.getValue('moderation_enable') %}checked="checked"{% endif %}>
|
||||
Activer les commandes d'avertissement (!averto, !delaverto, !listaverto)
|
||||
Activer les commandes d'avertissement (!warn, !unwarn, !inspect)
|
||||
</label>
|
||||
|
||||
<label for="moderation_ban_enable">
|
||||
@@ -169,7 +169,7 @@
|
||||
<label for="twitch_channel">Chaîne à rejoindre</label>
|
||||
<input name="twitch_channel" type="text" value="{{ configuration.getValue('twitch_channel') }}"
|
||||
placeholder="#machinTruc" />
|
||||
<input type="Submit" value="Définir">
|
||||
<input type="Submit" value="Enregistrer la configuration Twitch">
|
||||
<p>
|
||||
<a href="{{ url_for('twitchConfigurationHelp') }}">Aide</a>
|
||||
</p>
|
||||
@@ -189,20 +189,22 @@
|
||||
|
||||
<h2>Humble Bundle</h2>
|
||||
<form action="{{ url_for('updateConfiguration') }}" method="POST">
|
||||
<label for="humble_bundle_enable">Activer</label>
|
||||
<input type="checkbox" name="humble_bundle_enable" {% if configuration.getValue('humble_bundle_enable') %}
|
||||
checked="checked" {% endif %}>
|
||||
<label>Activer les notifications Humble Bundle</label>
|
||||
<p>Humble Bundle est un service qui propose des bundles de jeux vidéo à des prix réduits. Il est utile pour trouver des jeux vidéo à des prix intéressants.</p>
|
||||
<p>Il est possible de configurer un canal de notification pour recevoir les notifications des bundles Humble Bundle.</p>
|
||||
<label for="humble_bundle_channel">Canal de notification des packs Humble Bundle</label>
|
||||
<p>Humble Bundle propose régulièrement des bundles de jeux vidéo à des prix réduits. Activez les notifications pour recevoir automatiquement les nouveaux packs disponibles sur votre serveur Discord.</p>
|
||||
|
||||
<label for="humble_bundle_enable">
|
||||
<input type="checkbox" name="humble_bundle_enable" {% if configuration.getValue('humble_bundle_enable') %}checked="checked"{% endif %}>
|
||||
Activer les notifications Humble Bundle
|
||||
</label>
|
||||
|
||||
<label for="humble_bundle_channel">Canal de notification</label>
|
||||
<select name="humble_bundle_channel">
|
||||
{% for channel in channels %}
|
||||
<option value="{{channel.id}}" {% if configuration.getIntValue('humble_bundle_channel')==channel.id %}
|
||||
selected="selected" {% endif %}>
|
||||
{{channel.name}}</option>
|
||||
<option value="{{channel.id}}" {% if configuration.getIntValue('humble_bundle_channel')==channel.id %}selected="selected"{% endif %}>
|
||||
{{channel.name}}
|
||||
</option>
|
||||
{% endfor %}
|
||||
</select>
|
||||
<input type="Submit" value="Définir">
|
||||
|
||||
<input type="Submit" value="Enregistrer la configuration Humble Bundle">
|
||||
</form>
|
||||
{% endblock %}
|
||||
@@ -7,13 +7,53 @@
|
||||
Historique des actions de modération effectuées sur le serveur Discord.
|
||||
|
||||
Le bot enregistre automatiquement les avertissements, exclusions et bannissements.
|
||||
Exemples de commandes :
|
||||
<ul>
|
||||
<li><strong>!kick @utilisateur raison</strong> - !kick @Jean Spam de liens</li>
|
||||
<li><strong>!ban @utilisateur raison</strong> - !ban @Marie Comportement toxique répété</li>
|
||||
<li><strong>!warn @utilisateur raison</strong> - !warn @Paul Langage inapproprié</li>
|
||||
<li><strong>!unwarn @utilisateur</strong> - !unwarn @Paul</li>
|
||||
</ul>
|
||||
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Commande</th>
|
||||
<th>Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><strong>!averto @utilisateur raison</strong><br><small>Alias : !warn, !av, !avertissement</small></td>
|
||||
<td>Avertit un utilisateur et enregistre l'avertissement dans la base de données</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>!delaverto id</strong><br><small>Alias : !removewarn, !delwarn</small></td>
|
||||
<td>Retire un avertissement en utilisant son numéro d'ID</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>!warnings</strong> ou <strong>!warnings @utilisateur</strong><br><small>Alias : !listevent, !listwarn</small></td>
|
||||
<td>Affiche la liste des événements de modération (tous ou pour un utilisateur spécifique)</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>!inspect @utilisateur</strong> ou <strong>!inspect id</strong></td>
|
||||
<td>Affiche des informations détaillées sur un utilisateur : création du compte, date d'arrivée, historique de modération</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>!kick @utilisateur raison</strong></td>
|
||||
<td>Expulse un utilisateur du serveur</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>!ban @utilisateur raison</strong></td>
|
||||
<td>Bannit définitivement un utilisateur du serveur</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>!unban discord_id</strong> ou <strong>!unban #sanction_id raison</strong></td>
|
||||
<td>Révoque le bannissement d'un utilisateur et lui envoie une invitation</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>!banlist</strong></td>
|
||||
<td>Affiche la liste des utilisateurs actuellement bannis du serveur</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>!aide</strong><br><small>Alias : !help</small></td>
|
||||
<td>Affiche l'aide avec toutes les commandes disponibles</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</p>
|
||||
|
||||
{% if not event %}
|
||||
|
||||
Reference in New Issue
Block a user