GroupeZ Docs
Modules

Module Chat

Formatage complet du chat, modération, placeholders et fonctionnalités interactives

Fichier : modules/chat/config.yml

Le module Chat est l'un des modules les plus complets de zEssentials. Il gère tous les aspects du chat du serveur : formatage, outils de modération, anti-spam, mentions (pings), chat local, affichage d'objets, liens et commandes cliquables, règles personnalisées, boutons d'action pour les modérateurs et stockage de l'historique du chat. Le module utilise un système de formats basé sur des priorités et des permissions ainsi que MiniMessage pour la mise en forme.

Paper uniquement

Le format du chat est appliqué via l'événement AsyncChatEvent de Paper. Mettez enable-chat-format: false si vous souhaitez qu'un autre plugin de chat gère le formatage.


Permissions de Contournement

Les permissions suivantes permettent aux joueurs de contourner certaines restrictions du chat :

PermissionDescription
essentials.chat.bypass.alphanumericContourne la vérification des caractères autorisés (alphanumeric-regex)
essentials.chat.bypass.dynamic.cooldownContourne le délai dynamique du chat (anti-spam)
essentials.chat.bypass.linkContourne le filtre des liens (link-regex)
essentials.chat.bypass.same.messageContourne la détection des messages identiques
essentials.chat.bypass.capsContourne la détection des majuscules
essentials.chat.bypass.floodContourne la vérification anti-flood
essentials.chat.bypass.disablePermet de parler lorsque le chat est désactivé avec /chatdisable
essentials.chat.moderatorAffiche le bouton moderator-action devant chaque message

Permissions de Formatage du Chat

Ces permissions définissent les balises MiniMessage qu'un joueur peut utiliser dans le chat :

PermissionBalises autorisées
essentials.chat.colorCouleurs (par exemple <red>, <#ff0000>)
essentials.chat.decorationDécorations (<bold>, <italic>, <underlined>, <strikethrough>, <obfuscated>)
essentials.chat.rainbowArc-en-ciel (<rainbow>)
essentials.chat.gradientDégradé (<gradient:couleur1:couleur2>)
essentials.chat.clickÉvénements de clic (<click:action:valeur>)
essentials.chat.hoverÉvénements de survol (<hover:show_text:valeur>)
essentials.chat.newlineRetour à la ligne (<newline>)
essentials.chat.resetRéinitialisation (<reset>)
essentials.chat.fontPolice (<font:nom>)
essentials.chat.keybindTouche (<key:...>)
essentials.chat.linkTransforme automatiquement les liens du joueur en liens cliquables (link-transform). Le joueur doit aussi avoir essentials.chat.click

Configuration Source

Le fichier par défaut (les commentaires de permissions en haut du fichier et certains commentaires répétés sont omis ici) :

enable: true

# Enables verification of authorized characters in chat
enable-alphanumeric-regex: true

# Check whether the message contains links
enable-link-regex: true

# Allows to apply a dynamic cooldown between each message of a player, the more the player will spam the more he will have a great cooldown
enable-chat-dynamic-cooldown: true

# Check player tries to put the same message multiple times
enable-same-message-cancel: true

# Enables local chat where messages are only visible to nearby players unless prefixed with '!'
enable-local-chat: false

# Maximum distance in blocks for local chat messages
local-chat-distance: 100

# Apply a format to the chat, disabled on if you want another plugin to handle this
enable-chat-format: true

# Turns links into clickable links if the player has the essentials.chat.link permission, the player must also have permission: essentials.chat.click
# check out link-transform
enable-link-transform: true

# Stores all player messages in the database. Works only with MYSQL storage
# Also provides access to all player messages with the /chathistory command
enable-chat-messages: true

# Regex to check allowed characters
# You can test the regex here before changing the default one: https://regex101.com/
alphanumeric-regex: '^[a-zA-Z0-9_.?!^¨%ù*&é"#''{(\[-|èêë`\\çà)\]=}ûî+<>:²€$/\\-\\,-â@;ô ]+$'

# Regex to check links
# You can test the regex here before changing the default one: https://regex101.com/
link-regex: '[-a-zA-Z0-9@:%._+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9()@:%_+.~#?&/=]*)'

# Regex to check pub message
pub-regex: '.*(&[0-9a-fk-or]|#[0-9a-fA-F]{6}|%[^%]+%|<[^>]+>).*'

# Allows to activate the flood check in the message, if the player will write messages with too many characters in capital letter, the message will be blocked
enable-caps: true

# Maximum character percentage per sentence, between 0 and 1
caps-threshold: 0.5

# Enable anti-flood regex
enable-anti-flood: true

# Allows players to avoid writing the same characters several times in a row, here 4 times. Thus avoid messages like "AHHHHHHHHHHHH"
anti-flood-regex: "(.)\\1{3,}"

# Set the number of messages and cooldown between each message in milliseconds
# The faster the player will send message the faster the cooldown between each message will be
chat-cooldowns:
  - messages: 2
    cooldown: 1500 # max 1.5s
  - messages: 4
    cooldown: 12000 # max 12s
  - messages: 10
    cooldown: 60000 # max 60s

# Number of messages that will be in memory to be analyzed during the cooldown
chat-cooldown-max: 50

# Chat format with permissions
#
# Use https://webui.advntr.dev/ to create your format quickly
#
# Available placeholder (you can use PlaceholderAPI here):
# %player% - Player's name
# %displayName% - Player's display name
# <message> - Player's message, Attention for message it's not %message% !
# %moderator_action% - Moderation action, see moderator-action
chat-formats:
  - priority: 1
    permission: "essentials.chat.format.vip"
    format: "<hover:show_text:'&cReport this message'><click:run_command:'/report %player% chat'><#ff0000>⚠</click></hover> %moderator_action%<#ffffff><hover:show_text:'#ffd353ℹ Informations#3f3f3f:<newline>#3f3f3f• &7Money#3f3f3f: #4cd5ff%zessentials_user_formatted_balance_money%<newline>#3f3f3f• &7Coins#3f3f3f: #4cd5ff%zessentials_user_formatted_balance_coins%<newline><newline>&f➥ &7Click for more information'>%player%</hover> <#333333>» <#ffff6b><click:suggest_command:'/msg %player% '><hover:show_text:'&fSend a private message'><message></hover></click>"
  - priority: 2
    permission: "essentials.chat.format.admin"
    format: "<#ffffff><hover:show_text:'#ffd353ℹ Informations#3f3f3f:<newline>#3f3f3f• &7Money#3f3f3f: #4cd5ff%zessentials_user_formatted_balance_money%<newline>#3f3f3f• &7Coins#3f3f3f: #4cd5ff%zessentials_user_formatted_balance_coins%<newline><newline>&f➥ &7Click for more information'>%player%</hover> <#333333>» <#ff4444><click:suggest_command:'/msg %player% '><hover:show_text:'&fSend a private message'><message></hover></click>"

# Default chat format
default-chat-format: "<hover:show_text:'&cReport this message'><click:run_command:'/report %player% chat'><#ff0000>⚠</click></hover> %moderator_action%<#ffffff><hover:show_text:'#ffd353ℹ Informations#3f3f3f:<newline>#3f3f3f• &7Money#3f3f3f: #4cd5ff%zessentials_user_formatted_balance_money%<newline>#3f3f3f• &7Coins#3f3f3f: #4cd5ff%zessentials_user_formatted_balance_coins%<newline><newline>&f➥ &7Click for more information'>%player%</hover> <#333333>» <gray><click:suggest_command:'/msg %player% '><hover:show_text:'&fSend a private message'><message></hover></click>"

# Allows players who have the essentials.chat.moderator permission to have a different view from other players.
# By default, moderators will have a button to punish the player
#
# Available placeholder (you can use PlaceholderAPI here):
# %player% - Player's name
moderator-action: "<hover:show_text:'<#ff8888>Punish the player'><click:run_command:'/sc %player%'><#ff8888>✗</click></hover> "

# Turns a link into a clickable link by players
link-transform: "<hover:show_text:'&fOpen the link'><click:open_url:'%url%'>%url%</click></hover>"

# Date format for /chathistory
date-format: "yyyy-MM-dd HH:mm:ss"

# Chat ping

# To ping a player you must use the prefix @<nickname>
enable-ping: true

# Allows to activate the sound during a player ping, the player can disable the sound with the command /pingsound
enable-player-ping-sound: true

# Sound played when player is pinged
player-ping-sound: BLOCK_NOTE_BLOCK_PLING

# Ping sound volume
player-ping-sound-volume: 0.8

# Ping sound pitch
player-ping-sound-pitch: 1

# Color of ping displayed to the player
player-ping-color: "<red>%name%</red><red>"

# Color of ping displayed for other players
player-ping-color-other: "<white>%name%</white>"

# Placeholders

chat-placeholders:
  - name: "ping" # Placeholder name, the name must consist only of lowercase letters, numbers 0 to 9 and characters _ and -
    regex: "(?i)\\[ping\\]" # [ping] placeholder
    result: "%player_ping% ms" # PlaceholderAPI extension Player: https://api.extendedclip.com/expansions/player/
    permission: "zessentials.chat.placeholder.ping" # You must define a permission
  - name: "block"
    regex: "(?i)\\[blocks\\]" # [blocks] placeholder
    result: "&a%statistic_mine_block% &fblocks" # PlaceholderAPI extension Statistic: https://api.extendedclip.com/expansions/statistic/
    permission: "zessentials.chat.placeholder.block"
  - name: "money"
    regex: "(?i)\\[money\\]" # [money] placeholder
    result: "%zessentials_user_formatted_balance_money%"
    permission: "zessentials.chat.placeholder.money"
  - name: "coins"
    regex: "(?i)\\[coins\\]" # [coins] placeholder
    result: "%zessentials_user_formatted_balance_coins%"
    permission: "zessentials.chat.placeholder.coins"
  - name: "playtime"
    regex: "(?i)\\[playtime\\]" # [playtime] placeholder
    result: "&fI've played &7%zessentials_user_playtime_formatted%"
    permission: "zessentials.chat.placeholder.playtime"
  - name: "pos"
    regex: "(?i)\\[pos\\]" # [pos] placeholder
    result: "&bWorld: &f%player_world% &eX: &f%player_x% &eY: &f%player_y% &eZ: &f%player_z%"
    permission: "zessentials.chat.placeholder.pos"

# Displays the item in your hand
item-placeholder:
  enable: true
  regex: "(?i)\\[item\\]|\\[i\\]" # [item] or [i] placeholder
  result: "&bx<amount> &f<item>"
  permission: "zessentials.chat.placeholder.item" # You must define a permission
  # Regex used to ensure item names do not contain forbidden characters when displayed in chat
  item-name-regex: "^[a-zA-Z0-9_.?!^¨%ù*&é\"#'{(\\[-|èêë`\\\\çà)\\]=}ûî+<>:²€$/\\-\\,-â@;ô ]+$"

# Allows to replace a text to transform it into clickable text to suggest a command
# Message: "Please open the auction house with the ./zah" will be transformed into "Please open the auction house with the /zah" with /zah that will be clickable
# If you want to use a command in a sentence, you must do this: ./<your command> [<aliases>].
# Example: "Please use ./zah. to open the auction house"
command-placeholder: # ./<command>. placeholder
  enable: true
  result: "<hover:show_text:'<yellow>Try this command'><click:suggest_command:'/%fixed_command%'><yellow>/%command%</yellow></click></hover>"
  permission: "zessentials.chat.placeholder.command" # You must define a permission

  # Replace check all messages sent to players and replace the command if it exists
  # You must use the ProtocolLib plugin
  # You must be on a paper basis, using spigot will not work
  enable-replace-all-message: false

# Allows to define custom rules with regex
custom-rules:
  - regex: "(can|may|would you like if) i (have|be|become|get|has) (op|admin|mod|builder)"
    permission: "essentials.chat.bypass.custom.rules"
    message: "&cCurrently, we are not looking for new staff."
  - regex: "(do|are) you (need|wish|looking for) (any|some|one|good) (op|ops|operators|admins|mods|builders|new people|ateam)"
    permission: "essentials.chat.bypass.custom.rules"
    message: "&cCurrently, we are not looking for new staff."
  - regex: "((admin|op|team|server|owner) (is|are)) + *(dick|cock|duck|noob)"
    permission: "essentials.chat.bypass.custom.rules"
    message: "&cYet so much hate, we are only love"
  - regex: "this server (is (bad|crappy|shitty)|suck)"
    permission: "essentials.chat.bypass.custom.rules"
    message: "&cNo, the server is great, you’re the bad one!"

Option supprimée

Les options enable-itemadders-font-regex / itemadders-font-regex ont été supprimées en 1.0.3.8 : la fonctionnalité n'a jamais été branchée et ces options n'avaient aucun effet. Vous pouvez les retirer de votre fichier existant sans risque.


Options

Options Générales

OptionTypePar DéfautDescription
enableBooleantrueActive ou désactive entièrement le module Chat
enable-chat-formatBooleantrueApplique le format de chat de zEssentials (chat-formats / default-chat-format). Désactivez-le si un autre plugin formate le chat. Une fois désactivé, les filtres restent actifs mais le formatage, les pings, les placeholders de chat, la transformation des liens et le stockage de l'historique ne sont plus appliqués
enable-chat-messagesBooleantrueEnregistre chaque message du chat en base de données, pour les consulter avec /chathistory. Nécessite un stockage SQL (les messages ne sont pas enregistrés avec le stockage JSON)
date-formatStringyyyy-MM-dd HH:mm:ssFormat de date utilisé par /chathistory. Suit les motifs Java SimpleDateFormat

Filtres

OptionTypePar DéfautDescription
enable-alphanumeric-regexBooleantrueBloque les messages contenant des caractères non autorisés par alphanumeric-regex. Contournement : essentials.chat.bypass.alphanumeric
alphanumeric-regexString(voir ci-dessus)Regex des caractères autorisés
enable-link-regexBooleantrueBloque les messages contenant un lien (les espaces sont retirés avant la vérification). Contournement : essentials.chat.bypass.link
link-regexString(voir ci-dessus)Regex utilisée pour détecter les liens
pub-regexString(voir ci-dessus)Regex du contenu interdit dans les messages /pub (codes couleur, couleurs hexadécimales, placeholders et balises MiniMessage)
enable-capsBooleantrueBloque les messages (de plus de 3 caractères) contenant trop de majuscules. Les pseudos des joueurs connectés sont ignorés. Contournement : essentials.chat.bypass.caps
caps-thresholdDouble0.5Proportion maximale de majuscules, entre 0 et 1. 0.5 bloque les messages contenant plus de 50 % de majuscules
enable-anti-floodBooleantrueBloque les messages correspondant à anti-flood-regex. Contournement : essentials.chat.bypass.flood
anti-flood-regexString(.)\\1{3,}Regex utilisée pour détecter le flood. Par défaut, bloque tout caractère répété 4 fois ou plus d'affilée

Anti-Spam

OptionTypePar DéfautDescription
enable-chat-dynamic-cooldownBooleantrueActive le délai dynamique défini par chat-cooldowns. Contournement : essentials.chat.bypass.dynamic.cooldown
chat-cooldownsListe(voir ci-dessus)Liste de règles, chacune avec messages et cooldown (millisecondes). Une règle signifie : un joueur peut envoyer au maximum messages messages en cooldown millisecondes
chat-cooldown-maxInteger50Nombre de messages récents gardés en mémoire pour chaque joueur afin d'évaluer les règles. Doit être supérieur ou égal à la plus grande valeur de messages
enable-same-message-cancelBooleantrueAnnule un message identique (sans tenir compte de la casse) au message précédent du joueur. Contournement : essentials.chat.bypass.same.message

Délai dynamique

Avec les règles par défaut, un joueur qui envoie :

  • 2 messages en 1,5 seconde,
  • 4 messages en 12 secondes,
  • ou 10 messages en 60 secondes

doit attendre la fin de la fenêtre correspondante avant de pouvoir envoyer un nouveau message. Le temps d'attente est affiché au joueur.

Chat Local

OptionTypePar DéfautDescription
enable-local-chatBooleanfalseActive le chat local : les messages ne sont visibles que par les joueurs du même monde situés à moins de local-chat-distance blocs. Un message commençant par ! est envoyé à tout le monde (le ! est retiré)
local-chat-distanceDouble100Distance maximale en blocs des messages du chat local

Formats de Chat

OptionTypePar DéfautDescription
chat-formatsListe(voir ci-dessus)Formats avec une priority, une permission et un format
chat-formats[].priorityInteger-Parmi les formats dont le joueur possède la permission, celui avec la priorité la plus élevée est utilisé
chat-formats[].permissionString-Permission requise pour ce format
chat-formats[].formatString-Format MiniMessage. Placeholders : %player%, %displayName%, <message> (le message, pas %message%), %moderator_action% et les placeholders PlaceholderAPI
default-chat-formatString(voir ci-dessus)Format utilisé lorsque le joueur ne possède aucune des permissions de chat-formats
moderator-actionString(voir ci-dessus)Texte inséré à la place de %moderator_action% pour les lecteurs ayant essentials.chat.moderator (vide pour les autres). Par défaut, un bouton qui exécute /sc %player%

Liens

OptionTypePar DéfautDescription
enable-link-transformBooleantrueTransforme les URL http:// et https:// des joueurs ayant essentials.chat.link en liens cliquables. Le joueur doit aussi avoir essentials.chat.click
link-transformString(voir ci-dessus)Format MiniMessage d'un lien transformé. %url% est remplacé par l'URL

Depuis la 1.0.3.6, les URL contenant ~, + ou # sont correctement détectées, et les caractères spéciaux d'une URL ne cassent plus le remplacement.

Ping (@Mention)

OptionTypePar DéfautDescription
enable-pingBooleantrueActive les pings : écrire @<pseudo> (3 à 16 caractères) met le pseudo en valeur dans le message
enable-player-ping-soundBooleantrueInterrupteur global du son de ping. Lorsqu'il vaut true, chaque joueur peut encore le désactiver pour lui-même avec /pingsound
player-ping-soundStringBLOCK_NOTE_BLOCK_PLINGSon joué au joueur mentionné. Résolu via l'API XSound de zMenu, il fonctionne donc sur toutes les versions supportées. Un nom inconnu de XSound est joué comme son personnalisé (resource pack)
player-ping-sound-volumeFloat0.8Volume du son de ping
player-ping-sound-pitchFloat1Hauteur (pitch) du son de ping
player-ping-colorString<red>%name%</red><red>Affichage de la mention pour le joueur mentionné. %name% est remplacé par @<pseudo>
player-ping-color-otherString<white>%name%</white>Affichage de la mention pour les autres joueurs

Avant la 1.0.3.8, le son de ping ne se jouait pas sur Paper 1.21.3+ (org.bukkit.Sound est devenu une interface) et enable-player-ping-sound était ignoré. Ces deux problèmes sont corrigés.

Placeholders de Chat

Mots-clés personnalisés remplacés dans les messages du chat.

OptionTypeDescription
chat-placeholders[].nameStringNom unique du placeholder : lettres minuscules, chiffres, _ et - uniquement
chat-placeholders[].regexStringRegex recherchée dans le message (par exemple (?i)\\[ping\\] pour [ping])
chat-placeholders[].resultStringTexte de remplacement. Supporte les couleurs, MiniMessage, %player% et les placeholders PlaceholderAPI (résolus pour l'expéditeur)
chat-placeholders[].permissionStringPermission associée au placeholder

Affichage d'Objets

OptionTypePar DéfautDescription
item-placeholder.enableBooleantrueActive l'affichage d'objets
item-placeholder.regexString(?i)\\[item\\]|\\[i\\]Texte remplacé par l'objet tenu en main principale ([item] ou [i])
item-placeholder.resultString&bx<amount> &f<item>Affichage de l'objet. <amount> et <item> sont remplacés. Le survol affiche l'infobulle de l'objet, le clic ouvre un aperçu de l'objet (via /showitem, valable 5 minutes)
item-placeholder.permissionStringzessentials.chat.placeholder.itemPermission associée à l'affichage d'objets
item-placeholder.item-name-regexString(voir ci-dessus)Regex que le nom de l'objet doit respecter, sinon le message est refusé. Utilise alphanumeric-regex si elle est absente

Placeholder de Commande

OptionTypePar DéfautDescription
command-placeholder.enableBooleantrueTransforme ./<commande> (terminé par un . ou la fin du message) en texte cliquable qui suggère /<commande>
command-placeholder.resultString(voir ci-dessus)Affichage de la commande. %command% est la commande, %fixed_command% la commande avec les apostrophes échappées
command-placeholder.permissionStringzessentials.chat.placeholder.commandPermission associée au placeholder de commande
command-placeholder.enable-replace-all-messageBooleanfalseTransforme aussi les commandes dans tous les messages envoyés aux joueurs. Nécessite ProtocolLib et Paper

Règles Personnalisées

Règles basées sur des regex, vérifiées avant tous les autres filtres. Lorsqu'une règle correspond, le message est annulé et le message de la règle est envoyé au joueur.

OptionTypeDescription
custom-rules[].regexStringRegex comparée au message
custom-rules[].permissionStringFacultatif. Si elle est définie, la règle ne s'applique qu'aux joueurs possédant cette permission ; si elle est absente, la règle s'applique à tout le monde
custom-rules[].messageStringMessage envoyé au joueur lorsque la règle bloque un message

Malgré son nom, la permission essentials.chat.bypass.custom.rules utilisée dans le fichier par défaut n'exempte pas les joueurs d'une règle : une règle avec une permission ne s'applique qu'aux joueurs qui la possèdent. Pour appliquer une règle à tous les joueurs, supprimez sa ligne permission.


Commandes Associées

CommandeAliasPermissionDescription
/chathistory <joueur> [page]ctessentials.chat.historyAffiche les messages enregistrés d'un joueur (10 par page). Nécessite enable-chat-messages et un stockage SQL
/chatclearclessentials.chat.clearVide le chat pour tous les joueurs
/chatenableceessentials.chat.enableRéactive le chat après sa désactivation
/chatdisablecdessentials.chat.disableDésactive le chat (contournement avec essentials.chat.bypass.disable)
/broadcast <message>bcessentials.chat.broadcastDiffuse un message à tous les joueurs
/pingsoundpingsoundsessentials.ping.soundActive ou désactive le son de ping pour vous-même
/pub <message>-essentials.pubEnvoie un message publicitaire mis en avant à tous les joueurs. Les messages correspondant à pub-regex sont refusés
/showitem <code>-essentials.show.itemOuvre l'aperçu d'un objet affiché dans le chat (utilisé par le clic sur [item])

La commande d'historique du chat est /chathistory (alias /ct). /sc est l'alias de /sanction, utilisé par le moderator-action par défaut.

Pour la liste complète des commandes, consultez Commandes & Permissions.


Placeholders Associés

Le module Chat n'enregistre pas de placeholders PlaceholderAPI dédiés. En revanche, n'importe quel placeholder PlaceholderAPI peut être utilisé dans les formats de chat, moderator-action et les placeholders de chat.

Pour la liste complète des placeholders, consultez Placeholders.


Détails des Fonctionnalités

Formats de Chat par Priorité

Parmi les entrées de chat-formats dont le joueur possède la permission, celle avec la priority la plus élevée est utilisée. Si le joueur n'en possède aucune, default-chat-format est utilisé.

chat-formats:
  - priority: 1
    permission: "essentials.chat.format.vip"
    format: "<gold>[VIP] <yellow>%player% <dark_gray>» <white><message>"
  - priority: 2
    permission: "essentials.chat.format.admin"
    format: "<red>[Admin] <white>%player% <dark_gray>» <white><message>"

default-chat-format: "<gray>%player% <dark_gray>» <white><message>"

Un joueur possédant à la fois essentials.chat.format.vip et essentials.chat.format.admin utilise le format admin (priorité 2).

Le message est inséré avec la balise <message>, et non %message%.

Chat Local

Lorsque enable-local-chat vaut true, les messages ne sont envoyés qu'aux joueurs du même monde situés à moins de local-chat-distance blocs de l'expéditeur. Commencez un message par ! pour l'envoyer à tout le serveur, par exemple !Bonjour à tous.

Son de Ping

Lorsqu'un joueur est mentionné avec @<pseudo>, le son configuré lui est joué. Les joueurs que cela dérange peuvent exécuter /pingsound pour le désactiver pour eux-mêmes (le choix est sauvegardé) ; une nouvelle exécution le réactive. Mettez enable-player-ping-sound: false pour désactiver le son pour tout le monde.

Placeholders de Chat Personnalisés

chat-placeholders:
  - name: "money"
    regex: "(?i)\\[money\\]"
    result: "%zessentials_user_formatted_balance_money%"
    permission: "zessentials.chat.placeholder.money"

Lorsqu'un joueur écrit [money] dans le chat, le texte est remplacé par son solde formaté.

Bouton d'Action de Modérateur

Les lecteurs ayant la permission essentials.chat.moderator voient le texte moderator-action à la place de %moderator_action%. Par défaut, il s'agit d'un bouton rouge ✗ qui exécute /sc <joueur> pour ouvrir l'interface de sanction de l'expéditeur.

Sur cette page

GroupeZ MCP

La documentation dans ton IA

Le MCP permet à ton IA de chercher dans la documentation GroupeZ et de lire les exemples à jour pour t’aider à configurer tes plugins.

Lecture seule · Sans clé API côté documentation

1. Copie l’adresse du serveur

Transport : HTTP (Streamable HTTP). Authentification : aucune. Ton outil utilise son propre modèle et ses propres limites d’abonnement.

  1. Ouvre Plugins dans ChatGPT sur le web, puis + → Ajouter un serveur MCP personnalisé.
  2. Nomme-le « GroupeZ Documentation », colle l’URL ci-dessus et choisis « Aucune authentification ». Crée puis installe le plugin.
  3. Dans une conversation, tape @ et sélectionne ce plugin avant d’envoyer ta question. Si nécessaire, active search, get_page et list_pages dans ses paramètres.
Guide officiel de cet outil

3. Pose une question

Utilise le MCP GroupeZ pour m’aider à créer un inventaire zMenu. Recherche les pages pertinentes, lis les exemples et cite tes sources.
Autres clients et dépannage

Pour les clients utilisant mcpServers, adapte cet exemple à leur format :

{
  "mcpServers": {
    "groupez-docs": {
      "url": ""
    }
  }
}

Les outils disponibles sont search, get_page et list_pages. Après une mise à jour, actualise les outils du connecteur. Si ton IA n’y accède pas, vérifie que le connecteur est activé dans la conversation et que ton compte autorise les MCP personnalisés. Ouvrir l’URL dans un navigateur n’est pas un test MCP.