{"id":193123,"date":"2025-08-17T19:54:41","date_gmt":"2025-08-17T17:54:41","guid":{"rendered":"https:\/\/fivemx.com\/?p=193123"},"modified":"2026-08-12T15:40:38","modified_gmt":"2026-08-12T13:40:38","slug":"configuration-de-txadmin-discord","status":"publish","type":"post","link":"https:\/\/rpcrate.com\/fr\/txadmin-discord-setup\/","title":{"rendered":"Comment connecter txAdmin \u00e0 Discord : Statut, r\u00f4les et liste blanche"},"content":{"rendered":"<p><strong>Pour connecter txAdmin \u00e0 Discord, cr\u00e9ez une application et un bot Discord d\u00e9di\u00e9s, invitez-le sur le bon serveur avec uniquement les autorisations dont il a besoin, copiez le jeton du bot dans les param\u00e8tres Discord de txAdmin et configurez les messages d'\u00e9tat et l'acc\u00e8s bas\u00e9 sur les r\u00f4les comme des fonctionnalit\u00e9s distinctes.<\/strong> Gardez le jeton confidentiel : il authentifie le bot et ne devrait jamais appara\u00eetre sur des captures d'\u00e9cran, des fichiers clients ou un d\u00e9p\u00f4t public.<\/p>\n<h2 id=\"separate-the-four-moving-parts\">Distinguez les quatre composants<\/h2>\n<div aria-label=\"Tableau \u00e0 d\u00e9filement horizontal\" class=\"fmx-guide-table\" role=\"region\" tabindex=\"0\">\n<table>\n<thead>\n<tr>\n<th>Partie<\/th>\n<th>But<\/th>\n<th>\u00c9chec typique<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Application et bot Discord<\/td>\n<td>Identit\u00e9 utilis\u00e9e par txAdmin<\/td>\n<td>Mauvaise application, bot d\u00e9sactiv\u00e9 ou jeton r\u00e9g\u00e9n\u00e9r\u00e9<\/td>\n<\/tr>\n<tr>\n<td>Statut du serveur<\/td>\n<td>Publie ou met \u00e0 jour le statut dans un canal choisi<\/td>\n<td>Mauvais canal ou permissions de vue\/envoi\/int\u00e9gration manquantes<\/td>\n<\/tr>\n<tr>\n<td>R\u00f4les ou liste blanche<\/td>\n<td>Mappe l'adh\u00e9sion\/les r\u00f4les Discord \u00e0 la r\u00e8gle d'acc\u00e8s configur\u00e9e<\/td>\n<td>ID de serveur ou de r\u00f4le incorrect, hi\u00e9rarchie des r\u00f4les ou exigence relative aux intents des membres<\/td>\n<\/tr>\n<tr>\n<td>Permissions txAdmin<\/td>\n<td>Contr\u00f4le qui peut administrer le serveur FiveM<\/td>\n<td>R\u00f4le Discord suppos\u00e9 pour accorder automatiquement les droits txAdmin<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<p>Ne d\u00e9boguez pas ces \u00e9l\u00e9ments comme une seule fonctionnalit\u00e9. Prouvez d'abord que le bot est en ligne, puis prouvez qu'il peut acc\u00e9der \u00e0 un canal, puis ajoutez le comportement de statut, et seulement ensuite testez la logique optionnelle de r\u00f4le ou de liste blanche.<\/p>\n<h2 id=\"step-1-create-a-dedicated-discord-application\">\u00c9tape 1 : cr\u00e9ez une application Discord d\u00e9di\u00e9e<\/h2>\n<ol>\n<li>Ouvrez le portail des d\u00e9veloppeurs Discord et cr\u00e9ez une nouvelle application pour ce serveur.<\/li>\n<li>Ajoutez un bot \u00e0 l'application.<\/li>\n<li>Donnez-lui un nom clair afin que le personnel puisse distinguer la production de la pr\u00e9-production.<\/li>\n<li>G\u00e9n\u00e9rez ou r\u00e9initialisez le jeton uniquement lorsque vous \u00eates pr\u00eat \u00e0 le stocker en toute s\u00e9curit\u00e9.<\/li>\n<\/ol>\n<p>Un jeton de bot est un secret, pas un ID d'application ou une cl\u00e9 publique. S'il est expos\u00e9, r\u00e9initialisez-le dans Discord et mettez \u00e0 jour txAdmin imm\u00e9diatement. Ne stockez le remplacement que dans le param\u00e8tre c\u00f4t\u00e9 serveur destin\u00e9 au jeton.<\/p>\n<h2 id=\"step-2-invite-the-bot-with-minimal-permissions\">\u00c9tape 2 : invitez le bot avec des autorisations minimales<\/h2>\n<p>Utilisez le flux d'installation OAuth2 de Discord pour l'application et s\u00e9lectionnez la port\u00e9e du bot requise par la configuration actuelle. Commencez avec les permissions de canal les plus petites qui satisfont la fonctionnalit\u00e9 : afficher le canal s\u00e9lectionn\u00e9, envoyer des messages, int\u00e9grer des liens et lire l'historique des messages l\u00e0 o\u00f9 la mise \u00e0 jour du statut en a besoin. \u00c9vitez Administrateur \u00e0 moins que l'int\u00e9gration officielle ne l'exige explicitement et que vous ayez examin\u00e9 pourquoi.<\/p>\n<p>Restreignez le bot \u00e0 un canal de statut ou d'administration d\u00e9di\u00e9 lorsque cela est pratique. Apr\u00e8s l'avoir invit\u00e9, confirmez qu'il appara\u00eet dans le serveur Discord pr\u00e9vu. \u00catre r\u00e9pertori\u00e9 comme hors ligne est normal jusqu'\u00e0 ce que txAdmin se connecte avec succ\u00e8s avec le jeton.<\/p>\n<h2 id=\"step-3-configure-the-bot-in-txadmin\">\u00c9tape 3 : configurez le bot dans txAdmin<\/h2>\n<p>Ouvrez txAdmin en tant qu'administrateur autoris\u00e9 et localisez les param\u00e8tres d'int\u00e9gration Discord dans votre version install\u00e9e. Collez le jeton dans le champ du jeton sans guillemets ni espaces suppl\u00e9mentaires. S\u00e9lectionnez le serveur et le canal Discord pr\u00e9vus \u00e0 l'aide des entr\u00e9es fournies par txAdmin. Enregistrez, puis red\u00e9marrez uniquement le composant ou le serveur si l'interface le demande.<\/p>\n<p>Si vous construisez le c\u00f4t\u00e9 FiveM \u00e0 partir de z\u00e9ro, utilisez le <a href=\"https:\/\/rpcrate.com\/fr\/comment-creer-un-serveur-fivem\/\">chemin de configuration du serveur FiveM<\/a> premi\u00e8rement. Discord ne peut pas r\u00e9parer un FXServer d\u00e9fectueux ou une instance txAdmin inaccessible.<\/p>\n<h2 id=\"configure-status-messages-separately\">Configurez les messages de statut s\u00e9par\u00e9ment<\/h2>\n<p>Activez la fonction de statut et s\u00e9lectionnez un canal o\u00f9 le bot peut publier. Commencez par une simple mise \u00e0 jour de test avant d'ajouter une formulation ou des int\u00e9grations personnalis\u00e9es. Confirmez que le message change lorsque le serveur FiveM d\u00e9marre, s'arr\u00eate ou modifie le nombre de joueurs conform\u00e9ment au comportement document\u00e9 par votre version txAdmin.<\/p>\n<p>Si le bot se connecte mais qu'aucun statut n'appara\u00eet, v\u00e9rifiez l'ID du canal s\u00e9lectionn\u00e9 et les remplacements sp\u00e9cifiques au canal. Un r\u00f4le \u00e0 l'\u00e9chelle du serveur peut autoriser l'envoi tandis qu'un remplacement de canal le refuse. Inspectez \u00e9galement la sortie console\/journal de txAdmin pour la r\u00e9ponse de l'API Discord plut\u00f4t que de r\u00e9g\u00e9n\u00e9rer le jeton \u00e0 plusieurs reprises.<\/p>\n<h2 id=\"configure-roles-or-whitelist-rules-separately\">Configurez les r\u00f4les ou les r\u00e8gles de liste blanche s\u00e9par\u00e9ment<\/h2>\n<p>L'acc\u00e8s bas\u00e9 sur les r\u00f4les n\u00e9cessite les identifiants exacts du serveur et du r\u00f4le Discord attendus par l'int\u00e9gration. Activez le mode d\u00e9veloppeur de Discord pour copier les identifiants lorsque la configuration actuelle les demande. Les noms de r\u00f4les ne sont pas des identifiants stables et deux r\u00f4les peuvent partager un nom similaire.<\/p>\n<p>Testez avec un compte qui a le r\u00f4le requis et un autre qui ne l'a pas. Supprimez et rajoutez le r\u00f4le, reconnectez-vous et confirmez lorsque l'int\u00e9gration actualise l'adh\u00e9sion. Ne supposez pas qu'un r\u00f4le Discord accorde automatiquement les autorisations d'administrateur txAdmin ; le mod\u00e8le d'autorisation propre \u00e0 txAdmin reste un contr\u00f4le distinct, \u00e0 moins que la fonctionnalit\u00e9 document\u00e9e ne les mappe explicitement.<\/p>\n<h2 id=\"protect-the-token-and-permission-boundary\">Prot\u00e9gez le jeton et la limite d'autorisation<\/h2>\n<ul>\n<li>Ne collez jamais le jeton dans le chat Discord, un ticket de support visible par d'autres ou une ressource c\u00f4t\u00e9 client.<\/li>\n<li>Ne l'enregistrez pas dans Git ni dans une capture d'\u00e9cran publique.<\/li>\n<li>Limitez l'acc\u00e8s \u00e0 l'application du portail des d\u00e9veloppeurs Discord et aux param\u00e8tres txAdmin.<\/li>\n<li>R\u00e9initialisez le jeton apr\u00e8s exposition ou lorsqu'un administrateur ayant acc\u00e8s part.<\/li>\n<li>V\u00e9rifiez r\u00e9guli\u00e8rement les autorisations du bot sur le serveur et les canaux.<\/li>\n<\/ul>\n<h2 id=\"troubleshooting-checklist\">Liste de contr\u00f4le de d\u00e9pannage<\/h2>\n<div aria-label=\"Tableau \u00e0 d\u00e9filement horizontal\" class=\"fmx-guide-table\" role=\"region\" tabindex=\"0\">\n<table>\n<thead>\n<tr>\n<th>Sympt\u00f4me<\/th>\n<th>V\u00e9rifier<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Le bot reste hors ligne<\/td>\n<td>Le jeton appartient au bon bot, ne contient pas d'espaces, n'a pas \u00e9t\u00e9 r\u00e9initialis\u00e9, et les journaux txAdmin montrent une tentative de connexion<\/td>\n<\/tr>\n<tr>\n<td>Le bot est en ligne mais ne peut pas publier<\/td>\n<td>Canal s\u00e9lectionn\u00e9, autorisations d'affichage\/envoi\/int\u00e9gration et remplacements de canal<\/td>\n<\/tr>\n<tr>\n<td>Le statut ne se met jamais \u00e0 jour<\/td>\n<td>Fonctionnalit\u00e9 de statut activ\u00e9e, canal correct, \u00e9tat txAdmin\/FXServer et journal d'int\u00e9gration<\/td>\n<\/tr>\n<tr>\n<td>Le membre du r\u00f4le est rejet\u00e9<\/td>\n<td>ID de serveur et de r\u00f4le correct, r\u00f4le effectivement attribu\u00e9, comportement d'actualisation et de reconnexion, et tout intent relatif aux membres requis<\/td>\n<\/tr>\n<tr>\n<td>Le membre non autoris\u00e9 est accept\u00e9<\/td>\n<td>R\u00e8gles d'acc\u00e8s de secours, plusieurs r\u00f4les autoris\u00e9s et configuration des autorisations c\u00f4t\u00e9 serveur<\/td>\n<\/tr>\n<tr>\n<td>Cela s'est arr\u00eat\u00e9 apr\u00e8s une r\u00e9initialisation de jeton<\/td>\n<td>txAdmin a toujours l'ancien jeton ; enregistrez le nouveau et red\u00e9marrez si n\u00e9cessaire<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<h2 id=\"final-verification\">V\u00e9rification finale<\/h2>\n<ol>\n<li>Le bot se connecte apr\u00e8s un red\u00e9marrage propre sans erreurs de jeton.<\/li>\n<li>Le statut ne s'affiche que dans le canal pr\u00e9vu.<\/li>\n<li>Le r\u00f4le minimum du bot peut mettre \u00e0 jour le message sans privil\u00e8ges de serveur plus larges.<\/li>\n<li>L'utilisateur de test autoris\u00e9 passe la r\u00e8gle de r\u00f4le\/liste blanche.<\/li>\n<li>L'utilisateur de test non autoris\u00e9 \u00e9choue \u00e0 la m\u00eame r\u00e8gle.<\/li>\n<li>Ni l'acc\u00e8s Discord ni un bouton d'interface utilisateur cach\u00e9 ne contournent les propres autorisations d'administrateur de txAdmin.<\/li>\n<\/ol>\n<p>Une fois que ces v\u00e9rifications passent ind\u00e9pendamment, l'int\u00e9gration est plus facile \u00e0 maintenir : une identit\u00e9 de bot, un secret prot\u00e9g\u00e9, un acc\u00e8s au canal \u00e9troitement d\u00e9fini et des r\u00e8gles explicites pour le statut, la liste blanche et l'administration.<\/p>\n<h2 id=\"reference-documentation\">Documentation de r\u00e9f\u00e9rence<\/h2>\n<p><a href=\"https:\/\/docs.fivem.net\/docs\/resources\/txAdmin\/\">Cfx.re \u2014 txAdmin<\/a> \u00b7 <a href=\"https:\/\/docs.discord.com\/developers\/quick-start\/getting-started\">Source : docs.discord.com<\/a> \u00b7 <a href=\"https:\/\/docs.discord.com\/developers\/topics\/oauth2\">Source : docs.discord.com<\/a><\/p>","protected":false},"excerpt":{"rendered":"<p>Pour connecter txAdmin \u00e0 Discord, cr\u00e9ez une application et un bot Discord d\u00e9di\u00e9s, invitez-le sur le bon serveur avec uniquement les autorisations n\u00e9cessaires, copiez le jeton du bot dans les param\u00e8tres Discord de txAdmin, et configurez les messages de statut et l'acc\u00e8s bas\u00e9 sur les r\u00f4les comme fonctionnalit\u00e9s distinctes. Gardez le jeton priv\u00e9 : il authentifie le bot et ne doit jamais appara\u00eetre dans des captures d'\u00e9cran, des fichiers clients ou un d\u00e9p\u00f4t public.<\/p>","protected":false},"author":1,"featured_media":193124,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2885],"tags":[],"class_list":["post-193123","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-discord-guides"],"_links":{"self":[{"href":"https:\/\/rpcrate.com\/fr\/wp-json\/wp\/v2\/posts\/193123","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/rpcrate.com\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/rpcrate.com\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/rpcrate.com\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/rpcrate.com\/fr\/wp-json\/wp\/v2\/comments?post=193123"}],"version-history":[{"count":2,"href":"https:\/\/rpcrate.com\/fr\/wp-json\/wp\/v2\/posts\/193123\/revisions"}],"predecessor-version":[{"id":213836,"href":"https:\/\/rpcrate.com\/fr\/wp-json\/wp\/v2\/posts\/193123\/revisions\/213836"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/rpcrate.com\/fr\/wp-json\/wp\/v2\/media\/193124"}],"wp:attachment":[{"href":"https:\/\/rpcrate.com\/fr\/wp-json\/wp\/v2\/media?parent=193123"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/rpcrate.com\/fr\/wp-json\/wp\/v2\/categories?post=193123"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/rpcrate.com\/fr\/wp-json\/wp\/v2\/tags?post=193123"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}