Index.js:
const client = new Discord.Client();
require(`./commands/myCommand.js`);
命令/myCommand.js:
[some code that uses the client const]
如何从我的命令文件访问客户端常量?最简单的方法可能是从消息中获取客户端对象。客户端
在index.js中调用commandsexecute函数时,也可以将客户机对象作为参数传递
命令。执行(客户端、消息、参数)
最简单
我做了一个userinfo命令,该命令运行良好,但唯一的问题是,如果用户正在玩游戏,它不会显示用户的游戏。我使用命令时没有任何错误。我正在使用discord.js的12.1.1版本
const{
消息嵌入
}=要求(“discord.js”);
恒力矩=要求(“力矩”);
module.exports.run=async(bot、消息、args)=>{
message.delete()
const user=message.indications.users.first()| | bot.use
我正在为我的discord机器人编写一个server info命令,我想从实际的公会获取所有者用户名或标签。我在discord js 11中找到了一种方法,但在第12版下它不再工作了:
const guild = client.guilds.get(message.guild.id);
message.channel.send(message.guild.member(guild.owner) ? guild.owner.toString() : guild.owner.user.tag);
/
我希望从一个有特定角色的公会接收所有discord用户
自.getGuild().getMembersWithRoles([role])只搜索缓存的用户我不知道怎么做。
注意,discord服务器有数千个用户,因此缓存所有内容都是不好的
我搜索了如下内容:JDABot.retrieveUserByRole([role])但没有找到任何东西
JDA版本:4.2.0\u 214-withDependencies您需要使用Guild\findMembers(谓词)
它看起来像这样:
List<M
我做了这个命令叫p!轮询[message]我希望我的机器人发送一个嵌入[message]的描述,并用表情做出反应您的命令忘记调用命令,这是双括号,()
只需将:client.command()添加到前面不带括号的地方即可修复
最好在消息装饰器中包含“None”,因为它允许成员知道他们必须传递消息,否则它将无法运行该命令
我选择选择性地向命令添加更多功能(仅在您希望使用的情况下),并选择将其发送到其他通道,但我已经尝试过,应该可以工作。希望这有帮助,把它改成你需要的任何东西
@client.com
我正在尝试添加一个静音命令
这是我当前的代码:
if (message.member.roles.cache.some(role => role.name === 'Admin')) {
let target = message.mentions.members.first;
let role = message.member.guild.roles.cache.find(role => role.name === "muted");
targ
好吧,这可能是一个愚蠢的问题,但有没有可能制作一个角色命令来检查你的mudae后宫大小并为你分配合适的角色?差不多
如果MudaeHaremSize>50,则分配角色角色名称,否则答复未满足角色要求
扮演奖励角色,只是想看看是否有可能实现自动化,而不是必须手动完成
我试图获取bot所在服务器的完整成员列表,但最终只能获取bot信息
这就是我所做的
@client.event
async def on_message(message):
if message.content.startswith('-members'):
for guild in client.guilds:
for member in guild.members:
print(member)
看来你失踪了
您需要设置为True,以获取所需信息
你
在我的Discord机器人中,我试图开发一种锁定模式,其中所有者和3名管理员发送一个机器人生成的代码来触发锁定,除管理员和机器人外,服务器的所有成员都被踢出。我已经完成了第一部分,现在我只需要一种方法来踢服务器中的每个人,除了那些具有特定角色的人。我可以得到角色ID,这不是问题,我只需要踢除角色以外的所有人的代码
谢谢,
Conorae先生除非你提议的帮会规模非常小,否则你唯一能踢出帮会所有人的方法就是完全删除帮会
你不可能在短时间内踢出大量的成员,因为这样的行为会对Discord API发送垃
我目前正在编写一个函数,该函数将创建一个新的用户角色,在发出命令的用户之后为该角色分配一个随机的颜色和名称。代码如下:
message.guild.createRole({
data: {
name: 'Super Cool People',
color: 'BLUE',
},
reason: 'we needed a rol
您好,我正在使用静音命令,我提出了以下erorr:
RangeError [BITFIELD_INVALID]: Invalid bitfield flag or number.
at Function.resolve (/app/node_modules/discord.js/src/util/BitField.js:150:19)
at /app/node_modules/discord.js/src/util/BitField.js:148:54
at Array.map
所以。。。为了给你一点背景,我需要告诉你我做了什么。我已经创建了一个discord bot for moderation(mellobot.net),我需要一个命令帮助。我想为实际的bot本身设置一个-uptime命令,以DD HH MM显示时间,但不知道命令行是什么样子。(我想要像NightBots!twitch用户用于twitch streams的正常运行时间这样的东西)有没有任何discord.py nerd可以帮助我解决这个困境?我不确定,但也许你可以使用datetime模块。当机器人准
我最近启动了一个新的discord.js bot,出现了一个“无效令牌”错误。这不可能是因为异步函数,因为我只启动了bot,并且我有0个命令,上次发生这种情况是在我尝试在heroku上托管另一个bot时。我从未找到解决方案,这是我的终端:
C:\Users\Lory\Desktop\pp>node .
(node:3760) UnhandledPromiseRejectionWarning: Error [TOKEN_INVALID]: An invalid token was provi
我正在尝试为我的机器人创建一个服务器/公会端变量(每个服务器中有一个不同值的变量)。我不知道怎么做,所以我真的需要帮助。。。如何让变量在每台服务器中具有不同的值?我相信Tin Nguyen将此想法作为一条评论发布,我只是对此进行了详细说明。为了实现您想要的,您可以使用所谓的“数据字典”,它基本上只是一个存储某个列表的文件
对于您的特定用例,您可以使用一个简单的JSON文件来存储变量。例如,对于您的机器人所在的每个帮会,您可以将一个新对象添加到名为variable.JSON的本地JSON文件中的对
以下是我收到的错误消息:
ECHO正在播放
C:\Users\Administrator\Desktop\bot\bot\Discord Bot\aquabluebot>node.
'node.' is not recognized as an internal or external command, operable
program or batch file.
C:\Users\Administrator\Desktop\bot\bot\Discord Bot\aquabluebo
我正在开发一个使用Discord进行签名的web应用程序,我希望能够在签名后提取用户的公会信息。我已经完成了授权码授予过程,并已成功检索到用户的访问令牌(承载)。访问令牌具有“标识”和“公会”范围。当尝试使用端点检索公会时,我得到一个401“未经授权”错误。我在请求的头中包含了承载访问令牌
端点:GET/guilds/{guild.id}
我看不出我遗漏了什么/做错了什么。任何帮助都将不胜感激
对guilds OAuth作用域的描述不允许访问GET/guilds/{guild.id}路由。该范围
我有一些不和谐的问题
我有3个嵌入:embed1、embed2、embed3,但当我尝试发送带有以下代码的消息的嵌入时:message.channel.send({embed1})
我得到这个错误:
(节点:24120)未处理的PromisejectionWarning:DiscordAPIError:无法发送空消息
这是ES6中没有在对象中添加定义器的原因。变量的名称现在是定义者。
例如:
message.channel.send({embed1});
//Get被翻译为:
message.c
我想知道谁是机器人的邀请者,但我在文档或论坛上找不到任何东西。
如果有人有想法:/编辑
最近,discord在帮会审核日志中添加了一个条目,每次有人向服务器添加机器人时都会记录该条目,因此您可以使用该条目了解是谁添加了机器人。
例如:
//客户端需要是Discord.client的实例
//聆听GuidCreate事件
on(“guildCreate”,异步guild=>{
//获取审核日志
const logs=await guild.fetchAuditLogs()
//查找机器人添加日志
是的,所以我似乎找不到任何代码创建一个邀请最多1人加入。(我正在使用module.exports)您可以使用以下代码轻松完成此操作:
message.channel.createInvite({
maxUses: 1 //maximum times it can be used
})
您可以在文档中找到有关此命令的更多信息:
我正在尝试删除discord.py中指定类别中的每个频道
到目前为止,我的代码是:
category = client.get_channel(my_id_here)
我在考虑遍历该类别中的每个通道,但是我不知道如何去做
我在discord.js中看到了这一点,因此我需要discord.py的等效版本。找到了解决方案,希望它能帮助某人:
category = client.get_channel(id_here)
for channel in category.voice_channels:
嗨,我正在尝试制作一个discord.py机器人,这样我就可以拥有一个gif聊天频道,但当有人在该频道中键入消息时,我的机器人就会开始重复他的消息,如果你知道,请帮助
我的代码:
@client.event
async def on_message(message):
with open("gif_chater.json", "r+") as file:
data=json.load(file)
if str(mes
我试图从消息(特别是命令)中获取用户对象-示例:
$info Account#0001
有时,Discord不注册成员(可能是为了在有大量成员的服务器中节省内存),因此当用户对象不在通道中时,您无法@他们并获取用户对象。我试图让机器人搜索一个成员标记,获取他们的ID,然后它执行命令所做的任何操作
我试过了
message.mentions[0].id
但是,它只在用户被ping时起作用,有什么想法吗?在命令中,您可以为用户添加一个参数:
@bot.command()
异步def foo(ct
我正在尝试制作一个discord机器人,当用户开始说话时自动使其静音(对朋友恶作剧)。但是,我很难确定如何使用此代码的“口语”部分:
client.on('guildMemberSpeaking', (member, speaking) => {
console.log(member, speaking);
if (member.id == 'id-here' && speaking){
member.voice.setMute(true);
}
我发现speak
如何使用异步IO函数交叉命令检查/比较冷却时间?
我在我的机器人中有一个命令,它发送一个嵌入,并在x秒/分钟/小时后编辑嵌入。同时,还有一个命令可以发送消息。执行一次后,只要asyncio事件仍在运行或嵌入未再次编辑,用户就不能使用此命令。我怎样才能做到这一点
应答码,该应答码应具有剩余asyncio时间的冷却时间:
@commands.command()
异步def应答(self、ctx、text:str):
等待ctx.channel.send(文本,删除后=0)
等待ctx.message
我到处找了,但找不到解决问题的办法。
我只想做一个命令,通过它我可以将当前播放的音乐转发到某个时间戳。
我使用的是discord.py 1.6.0。对不起,我知道这不是你问题的答案,但你能把我添加到discord上吗?斯塔特拉克钻石剑#3000
我没有50名代表,因此无法添加评论你说的“搜索”是什么意思?就像谷歌/youtube搜索一样?机器人是在播放音乐还是其他人?你想要类似Shazam的应用程序吗?或者您正在尝试将歌曲转发到某个时间戳?我想将歌曲转发到某个时间戳。计算出曲目中帧数和分钟数之间
当我试图创建Discord.js命令处理程序时,我犯了这个错误。我怎样才能解决这个问题?我检查了我的app.js,没有问题
我的绑定代码:
//忽略所有机器人程序
if(message.author.bot)返回;
//忽略不以前缀开头的消息(在config.json中)
if(message.content.indexOf(client.config.prefix)!=0)返回;
//我们的标准参数/命令名定义。
const args=message.content.slice(client.
我有一个带有静音命令的discord.py重写机器人,我不知道如何使它不只是做分钟数,我可以将它分为小时和分钟,例如,现在它是!静音@user 90,我希望它是!mute@user 1h30m,我该如何实现这一点?实现这一点的最佳方法是正则表达式
import re
REGEX = "([0-9]+)(d|h|m|s)"
DICT = {"d": 86400, "h": 3600, "m": 60, "s
我正试图让我的机器人回复发送给它的任何DM
所以我现在有一个:
client.on('msg', () => {
if (msg.channel.DMChannel) {
msg.reply("You are DMing me now!");
}
});
但不幸的是,它没有回复任何DM
我试图用msg.channel.type='dm'替换msg.channel.DMChannel,但没有成功
我还尝试将msg.reply替换为msg.author.send和msg.ch
我想用一个机器人对discord.js f.e.频道中的每一条消息做出反应。我有一个表情符号竞赛频道,我想登一个广告✅ 和✖ 每个帖子都有反应
在ofc中,所有不必要的消息都会被清除,因此根据
你可以用
从特定通道获取所有消息,然后返回消息集合
然后,您可以使用该函数将您的反应应用于此消息集合,方法是对其进行迭代并调用
编辑:
获取已在具有的通道中发送的消息。
遍历。
加上反应。
当在通道中发送新消息时,还应添加反应。
const emojiChannelID='ChannelIDHere';
我需要设置用户权限,我尝试了
chanel2.overwritePermissions(message.member,{'SEND_MESSAGES': true,'READ_MESSAGES': true})
但它覆盖了每个人的所有权限,不仅是message.member,也不仅仅是添加message.member的特定权限,而且对于1个成员,如果您需要了解有关在频道中设置用户权限的所有信息,请参阅,它会做我需要的事。它似乎出错,因为message.member没有获取要在overwrite
当用户加入服务器时,有没有办法检查他们的帐户创建日期,如果他们的帐户在discord.py中使用超过14天,是否可以给他们一个角色?是
要检查用户何时加入,请使用:
member.joined_at
这将返回一个datetime对象,该对象允许您使用timedelta来确定用户何时应获得角色:
joinedDate = member.joined_at
tdelta = datetime.timedelta(days=14)
dateToAddRole = joinedDate + tdelt
我用groovy机器人在我的discord中演奏音乐。最近我看到有人发垃圾邮件,有些人的轮到我了
如何将歌曲限制为每个用户90秒,以便歌曲在播放后自动停止
我要么向groovy music添加一个命令,要么添加一个单独的bot,以便它在90秒后自动发送stop命令
我尝试添加一个自动回复机器人,但它似乎无法正常工作。
如果可能的话,我也可以切换到一个更好的机器人。,另一个音乐机器人有一个设置最大歌曲长度的选项
现在的设置命令是\u settings
我正在尝试向不同的别名添加变体,而不必重写整个命令:
@bot.command(aliases=['test'])
async def example(ctx)
if alias=='test':
#do something first
else:
#run command
可能的解决方案:
错误是语句的命名。我尝试过使用命令。别名和别名
任何帮助都将不胜感激。ctx.message.content.split(“”)[0].strip(ctx.
My bot用户,拥有除“管理员”之外的所有服务器权限,最高的.raw位置为18(所有角色中最高的):
正在尝试添加此角色(位置为2):
作为对此频道的覆盖权限:
CategoryChannel {
type: 'category',
deleted: false,
id: 'XXXXXXXXX',
name: 'Section Job',
rawPosition: 6,
parentID: null,
}
使用此代码:
await channel.createOver
所以我有一个机器人发送@bumpers时间来碰撞!(仪表板bot的discord bot命令)每隔2小时,问题是有时我需要锁定我的服务器,这意味着删除每个人的所有通话权限(突袭、休息等),当我解锁时,bot停止,我必须进入并重新启动它,这可能非常烦人。我会在下面展示我的代码,这样我可能会有人解释我是如何做到这一点的
@tasks.loop(minutes=120)
async def test():
channel = client.get_channel(778166891017273
我正在尝试制作一个webhook,所以如果有人说“ez”,它会删除它,并用webhook发送一条带有随机消息的消息。原来我在做的是
if "ez" in message.content:
webhook = await message.create_webhook(name=ctx.author.name)
await webhook.send(ezmessages[random.randint(0, len(ezmessages))-
我正在编写一个Discord机器人,当新用户加入我的Discord公会时,它会为他们分配一个角色。假设这个角色被称为“朋友”
bot是用Python编写的,并使用Discord.py库
我正在覆盖on_member_join()函数
@机器人事件
成员加入时的异步定义(成员):
将成员分配给好友角色
我看到成员类中有一个add_roles()函数,但在这种情况下它不起作用,因为新成员没有管理角色的权限。出于安全考虑,默认的@everyone角色不应该具有管理角色的能力,也不应该能够分配它想要
目标:禁止每次在审核日志中发现试图创建频道的用户
代码:
// Channel Create
client.on("channelCreate", async (channel) => {
const FetchingLogs = await client.guilds.cache.get(channel.guild.id).fetchAuditLogs({
limit: 1,
type: "CHANNEL_CREAT
我通过使用一些关于堆栈溢出的教程创建了一个“禁止所有不协调”命令,但问题是bot试图禁止自己,并首先对其进行优先级排序,使bot完全无法工作,有什么建议吗?这是我的密码:
async def ban(ctx):
guild = ctx.message.guild
for member in ctx.guild.members:
try:
await member.ban(reason="Banned")
我目前正在node.js中创建一个discord bot,并不断遇到这个问题。我正在尝试创建一个help命令,但我想在执行该命令之前确保嵌入和填充工作正常,我一直遇到这个奇怪的错误。我放了两个代码示例,一个是命令的代码,另一个是使命令实际工作的代码。有人能帮忙吗
module.exports = {
name: 'command',
description: "Commands for the bot!",
execute(message, args, Discord) {
当我编写嵌入代码时,它不起作用
module.exports = {
name: 'ping',
description: 'it shows the servers ping',
execute(message, args, Discord) {
const newEmbed = new Discord.MessageEmbed()
.setColor('#00A6FF')
.setTitle('Ping')
我想格式化我的discord机器人消息中的文本,但不幸的是,它无法工作:
var string = "```Questionnaire\n${topic}```";
${topic}-无法设置主题,但只有它可以工作:
变量字符串=调查问卷\n${topic}
我的问题是我无法将文本输入到表中,我想在框中获取主题(```)
这应该做到:
var topic=“在框中”;
变量字符串=`\`\`\`
问卷调查
${topic}
\`\`\``;
var string = "```Question
如何添加一个if子句,比如if(特定条件),然后添加一个.addField
let embed2 = new Discord.MessageEmbed()
//.addField('**Description**', )
.setTitle(`**Command name :** ${name}`)
.addField('**Description**', `${command.description}`)
.addField('**Ali
我试图为我的机器人获得反应角色,我该怎么做
if (message.content === '!Sun rr') {
const exampleEmbed = new Discord.MessageEmbed()
.setTitle('Reaction Roles')
.setDescription('React to get your roles!')
我试图使用python为我的服务器创建一个discord bot,但我遇到了一个回溯错误,我不确定如何修复它
import discord
from discord.ext import commands
TOKEN = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
client = commands.Bot(command_prefix="minted ")
@client.event
async
我有这个代码用于冷却,并将错误发送给用户。这是我的代码:
@bot.event
async def on_command_error(ctx, error):
if isinstance(error, commands.CommandOnCooldown):
if error.retry_after>3600:
embed=discord.Embed(title='Cooldown!', description=f"This c
我最近和一个我不再是朋友的人有了很大的麻烦。他们与我共享服务器,在我的机器人的帮助页面中有一个邀请链接(是的,因为我已经删除了该链接,以便该用户停止使用该机器人),但我不希望该用户在历史记录中搜索并看到邀请仍然存在。。。有没有办法使链接不可用?我试图通过将我的机器人设为私有来使其无效,但链接仍然有效
我真的很感激任何帮助。。。我使用discord.js,但我不认为我可以从代码中使它无效,尽管我真的想。。。我不想让我的机器人再参与他们的生活,他们已经做得够多了…更改设置应该可以很好地工作-你可以访
我不知道如何用:one:Emoji和DiscordJs做出反应
通常,在表情符号前放置转义符\n会给出表情符号的id,但使用\
用:one:或one或discord链接进行反应也不起作用
(=>10eead5823437c08b5287cf93bd5223)
使用@Nathn建议的符号时,仍会抛出一个错误:
我的解决方案
我使用的解决方案是从表情符号选择器中选择“E0.6 keycap 1”,而不是“keycap 1”。我建议按照@a2br建议的方式创建自己的emote,这样可以在所有设备上保
我正在尝试填充discord服务器上的用户列表,我可以在小型服务器上这样做,但当有50多个用户时,似乎无法捕获所有用户
def GuildPop(input): #Make a list of users in the server to check if someone is available.
for member in input.guild.members:
global member_list
if any(member.display_name in s for s
每当我尝试运行=help命令时,就会出现错误“TypeError:Class构造函数DiscordPagination不能在没有“new”的情况下调用”。我想用
下面是我的代码:
const Discord = require ('discord.js')
module.exports = {
name: 'hhelp',
description:' new help command',
async execute (message, args) {
const fun
1 2 3 4 5 6 ...
下一页 最后一页 共 22 页