Partage
  • Partager sur Facebook
  • Partager sur Twitter

[DISCORD) Bot ne répond qu'en message privé

24 septembre 2022 à 22:06:21

Bonsoir,

Je me suis lancé par curiosité dans la création d'un bot pour mon serveur Discord.

J'en suis au tout début mais je rencontre déjà quelques soucis. J'ai créé une commande simple, qui à l’exécution répond un texte pré-défini.

Mon code sur le fichier source :

const CommandoClient = require('./client');
const path = require('path');

const client = new CommandoClient({
	commandPrefix: '!',
	owner: '251452735390482434',
    disableMentions: 'everyone'
});

client.registry
    .registerDefaultTypes()
    .registerGroups([
        ['divers', 'Divers'], // la première valeur correspond à la section 'group' de votre commande, la deuxième valeur sera utilisée pour l'affichage du nom du groupe, dans l'aide par exemple.
    ])
    .registerCommandsIn(path.join(__dirname, 'commands'))
;

client.on('ready', () => {
    console.log(`Je suis prêt !`);
});

client.on('error', console.error);

client.login("Token supprimé pour le post");

Fichier client :

const { CommandoClient } = require('discord.js-commando')

module.exports = class BotClient extends CommandoClient {
    constructor(options) {
        super(options);
    }
};

Exemple d'une commande :

const { Command } = require('discord.js-commando');

module.exports = class HelloCommand extends Command {
    constructor(client) {
        super(client, {
            name: 'hello',
            memberName: 'hello',
            group: 'divers',
            aliases: ['Hi'],
        });
    }

    async run(msg) {
        msg.say(`Bonjour, je suis ${this.client.user.tag} (\`${this.client.user.id}\`)`);
    }
};

La commande fonctionne parfaitement, mais seulement en DM.

Pourtant j'ai essayé sur un channel text privé, où il dispose des autorisations, son rôle est admin (venant de la création de l'app sur Discord Dev) etc

Je ne sais pas d'où ça peut venir d'autre ?

Merci d'avance !



  • Partager sur Facebook
  • Partager sur Twitter
21 février 2023 à 21:37:37

Bonsoir j'ai exactement le même problème même si je code en python , une simple instruction de ping/pong il ne repond que aux messages privés mais pas à ceux envoyés dans le serveur avez-vous trouvé la solution ? 

-
Edité par LeoxE-GTAV 21 février 2023 à 21:39:02

  • Partager sur Facebook
  • Partager sur Twitter
22 février 2023 à 18:53:28

Bonjour,

Le message qui suit est une réponse automatique activée par un membre de l'équipe. Les réponses automatiques leur permettent d'éviter d'avoir à répéter de nombreuses fois la même chose, ce qui leur fait gagner du temps et leur permet de s'occuper des sujets qui méritent plus d'attention.
Nous sommes néanmoins ouverts et si vous avez une question ou une remarque, n'hésitez pas à contacter la personne en question par Message Privé.

Pour plus d'informations, nous vous invitons à lire les règles générales du forum

Déterrage

Citation des règles générales du forum :

Avant de poster un message, vérifiez la date du sujet dans lequel vous comptiez intervenir.

Si le dernier message sur le sujet date de plus de deux mois, mieux vaut ne pas répondre.
En effet, le déterrage d'un sujet nuit au bon fonctionnement du forum, et l'informatique pouvant grandement changer en quelques mois il n'est donc que rarement pertinent de déterrer un vieux sujet.

Au lieu de déterrer un sujet il est préférable :

  • soit de contacter directement le membre voulu par messagerie privée en cliquant sur son pseudonyme pour accéder à sa page profil, puis sur le lien "Ecrire un message"
  • soit de créer un nouveau sujet décrivant votre propre contexte
  • ne pas répondre à un déterrage et le signaler à la modération

Je ferme ce sujet. En cas de désaccord, me contacter par MP.

  • Partager sur Facebook
  • Partager sur Twitter

Pas d'aide concernant le code par MP, le forum est là pour ça :)