在哪里放置Discord JS Bot Presence代码?

时间:2019-01-27 09:17:57

标签: discord.js

因此,我试图将代码放入Discord机器人中,以便为用户提供自定义状态,以便用户查看,然后发现代码时,我不知道将代码放在何处。
这是代码:我应该放在哪里?

    * Sets the full presence of the client user.
   * @param {PresenceData} data Data for the presence
   * @returns {Promise<ClientUser>}
   * @example
   * // Set the client user's presence
   * client.user.setPresence({ game: { name: 'with discord.js' }, status: 'idle' })
   *   .then(console.log)
   *   .catch(console.error);
   */
  setPresence(data) {
    return new Promise(resolve => {
      let status = this.localPresence.status || this.presence.status;
      let game = this.localPresence.game;
      let afk = this.localPresence.afk || this.presence.afk;

      if (!game && this.presence.game) {
        game = {
          name: this.presence.game.name,
          type: this.presence.game.type,
          url: this.presence.game.url,
        };
      }

上面的代码属于ClientUser.js文件。它可能属于其他文件,例如Presence.js

2 个答案:

答案 0 :(得分:3)

client.on('ready', () => {
    console.log(`Logged in as ${client.user.tag}!`);

    client.user.setPresence({
        status: 'online',
        activity: {
            name: ".help",
            type: "PLAYING"
        }
    });
});

状态可以是 onlineidledndinvisible。 (dnd 是请勿打扰)

这里的另一个变量是活动。它是一组两个变量:nametype

名称是机器人正在做什么。这是您选择的字符串。类型是帮助它显示为的另一件事。它可以是 "PLAYING""STREAMING""WATCHING""LISTENING""CUSTOM_STATUS"

答案 1 :(得分:1)

您可以将其放置在任何地方,但很可能希望将其放置在ready事件中,例如

    client.on('ready', () => {
        client.user.setPresence({ game: { name: 'with discord.js' }, status: 'idle' })
        console.log(`${client.user.username} is up and running!`);
    })