如何为JavaScript编写的Discord机器人设置“请勿打扰”在线状态
实现方案
这个功能完全可以实现,Discord.js 原生支持配置机器人的在线状态和活动提示。
修改说明
你只需要在就绪事件中调用 bot.user.setPresence() 方法即可完成配置:
status参数传dnd即可将状态设置为请勿打扰,对应Discord状态列表里的红圈勿扰标识- 活动文案可以直接改成你需要的提示内容,比如「请勿发送私信 | 服务器内提问即可」
- 注意活动类型参数是枚举值,需要传大写的合法值,你原代码里的
playying是拼写错误,正确值为PLAYING
完整修改后的代码示例
// 如果是 discord.js v14 版本,需要先导入活动类型 // const { ActivityType } = require('discord.js'); bot.once("ready", () => { console.log(chalk`{blue CODED BY MAPLER © 2021 :)}`) console.log(chalk`{green ✔} Ready to give results!`); bot.user.setPresence({ activities: [{ name: '无需向我发送私信 | 有事请在服务器内发起提问', // v13及以下版本用type: 'PLAYING',v14及以上版本用下面这行 // type: ActivityType.Playing type: 'PLAYING' }], status: 'dnd', afk: false }); });
配置说明
- 状态可选值总共有4种:
online(在线)、idle(离开)、dnd(请勿打扰)、invisible(隐身) - 活动类型除了
PLAYING之外,还可以选择WATCHING(正在观看)、LISTENING(正在听)、STREAMING(正在直播)等,可根据你的需求调整
内容的提问来源于stack exchange,提问作者Mapler
相关产品推荐
相关产品推荐

