Configurer un bot de recherche Google Sheets sur Discord
Sheet Lookup de Build Discord Bots lit un seul onglet Google Sheets volontairement publié en CSV. Il recherche une clé exacte et renvoie les champs choisis dans une réponse privée à une commande slash. Commencez avec des données de test anodines : publier rend l’onglet accessible à toute personne disposant du lien.
Commencer gratuitementCommencez gratuitement. Pro coûte 9,99 USD par mois.
Avant de commencer
- Activez le module Pro Sheet Lookup sur un bot d’un serveur Discord que vous gérez. Choisissez un serveur ou un salon de test avant de partager la commande.
- Préparez un onglet avec des en-têtes non vides et au moins deux colonnes. Choisissez une colonne de clés uniques et des colonnes dont le contenu peut être affiché sur Discord.
- N’incluez aucune donnée privée, sensible ou à accès restreint. Le module accepte un lien CSV publié, pas une feuille privée ; toute personne disposant du lien peut accéder à l’onglet publié.
Préparer un petit onglet avec des clés uniques
Utilisez la première ligne comme en-têtes et ajoutez des lignes de test anodines. Par exemple, Item peut servir de clé et Answer de sortie. Chaque clé doit apparaître une seule fois. La recherche supprime les espaces autour de la clé et ignore la casse, mais ne recherche pas de texte partiel et ne choisit pas entre des doublons.
Il faut au moins deux colonnes, des en-têtes non vides et des lignes ayant autant de champs que les en-têtes. Le module rejette les CSV mal formés, les colonnes sélectionnées absentes et les clés en double.
Publier cet onglet sous forme de lien CSV
Dans Google Sheets, publiez sur le Web l’onglet préparé au format valeurs séparées par des virgules (.csv), puis copiez le lien HTTPS obtenu. Sheet Lookup valide une URL de feuille publiée sur docs.google.com avec le chemin de publication et le paramètre output=csv. Il peut conserver gid et single=true s’ils font partie de cette URL.
N’utilisez pas le lien d’édition, une exportation de fichier, une URL d’API ou un lien nécessitant une connexion : la validation les rejette. Vérifiez dans une session privée du navigateur que le lien correspond bien à l’onglet que vous souhaitez partager.
Configurer le lien et les colonnes de réponse
Ouvrez l’onglet des modules du bot, sélectionnez Sheet Lookup et le serveur, puis collez le lien CSV publié. Choisissez la colonne de clé unique et les champs à afficher. Le module accepte une colonne de clé et une à dix colonnes de sortie ; les positions internes commencent à zéro.
Gardez lookup comme nom pour le premier test ou choisissez un nom en minuscules composé de lettres, chiffres, tirets ou traits de soulignement. Il doit compter un à 32 caractères et ne pas remplacer une commande réservée. Enregistrez et activez les recherches pour le serveur après avoir vérifié les données publiques.
Tester une clé exacte sur Discord
Exécutez /lookup avec une valeur de la colonne de clé. Dans l’exemple Item et Answer, /lookup key:rules correspond à une cellule Rules malgré les différences de casse ou les espaces autour. Les champs choisis apparaissent dans une réponse éphémère, visible uniquement par la personne qui exécute la commande.
Testez une clé connue et une clé inconnue. La clé inconnue reçoit une réponse sans résultat, sans recherche partielle. Si la clé apparaît sur plusieurs lignes, le module signale le doublon. Corrigez les données et recommencez.
Comprendre l’actualisation et les erreurs
Le module récupère l’onglet lors d’une recherche. Il peut conserver les données valides en mémoire jusqu’à cinq minutes, ou moins selon la politique de cache de la source. La réponse indique la dernière actualisation réussie ; une modification récente peut ne pas apparaître dès la recherche suivante.
Si le lien échoue, republiez l’onglet en CSV et vérifiez l’adresse HTTPS de docs.google.com. Si des colonnes manquent, vérifiez leurs positions et les en-têtes. Les limites sont de 1 MiB, 5 000 lignes de données non vides et 100 colonnes. Évitez les tentatives répétées après un échec : un délai de 30 secondes s’applique entre les actualisations.
Maintenir une référence claire et limitée
Expliquez aux membres le nom de la commande et la clé attendue : un libellé de règle, un code d’article ou un autre identifiant exact. Ne présentez pas ce module comme une recherche dans le chat : il ne prend pas en charge les recherches approximatives ou partielles, plusieurs onglets, l’évaluation de formules ou l’écriture.
Vérifiez l’onglet si vous modifiez les en-têtes ou les champs affichés. Changer l’URL ou désactiver le module efface le cache en mémoire. Le module ne conserve pas l’historique des recherches sur disque ; une réponse ne prouve pas que la feuille est privée ou permanente.
Questions fréquentes
Peut-il consulter une feuille privée ?
Pas avec Sheet Lookup. Il accepte uniquement un onglet Google Sheets volontairement publié en CSV ; n’utilisez pas de données qui doivent rester privées.
Comment la clé est-elle comparée ?
Les espaces autour sont supprimés et la casse est ignorée, mais la correspondance doit être exacte. Les recherches partielles ou approximatives ne sont pas prises en charge ; les clés en double provoquent une erreur.
Qui voit le résultat ?
Seule la personne qui exécute la commande voit la réponse éphémère. La source CSV publiée reste accessible par son lien.
Pourquoi une modification n’apparaît-elle pas immédiatement ?
Les données valides peuvent rester en mémoire jusqu’à cinq minutes, ou moins selon la politique de cache de la source. Vérifiez l’heure d’actualisation dans la réponse.
Modules associés (anglais)
Guides associés (anglais)
Prêt à configurer votre bot ?
Commencer gratuitementCommencez gratuitement. Pro coûte 9,99 USD par mois.
Sources vérifiées
Les références de fichier et de ligne étayent les fonctions, les limites et la configuration décrites.
- server/lib/botGenerator.js:2743-2747
- client/src/components/SheetLookupSettings.tsx:23-78
- server/templates/modules/sheetlookup/settings.js:2-39
- server/templates/modules/sheetlookup/sheet.js:3-32
- server/templates/modules/sheetlookup/sheet.js:69-119
- server/templates/modules/sheetlookup/index.js:45-94
