我正在制作一个JDA(Java Discord API)程序,它需要检查消息是否是由机器人本身发送的。我怎样才能做到这一点?我想检查消息发送者的用户ID是否等于机器人的用户ID,但我如何在程序中获得机器人本身的用户ID?
如果使用MessageReceiveVent,只需使用:event.getauthor.isbot()
检查发件人是否是bot。
您可以通过访问JDA并调用getSelfUser()来访问bot本身的用户,如下所示,同时记住MessageReceivedEvent:event.getJDA().getSelfUser()
在SelfUser上,您可以调用SelfUser#getid()
或SelfUser#getidlong()
来访问ID。
public class Listener extends ListenerAdapter {
@Override
public void onMessageReceived(MessageReceivedEvent event) {
boolean isBot = event.getAuthor().isBot() //Check if the Message Sender is a bot
long id = event.getJDA().getSelfUser().getIdLong() //the bot ID
}
}
我一直在使用Telegram机器人,并试图从组中获取成员列表,但我不知道我必须使用哪些方法。 https://gram.js.org/beta/classes/TelegramClient.html#getParticipants和我找到了这个文件,但不知道如何使用它。
我一直在使用电报机器人为一个组和用户发送通知。 我已经知道我可以通过使用getUpdates在我的机器人上接收用户的消息来获取聊天ID。 我也知道我可以使用相同的方法获取Group ID... 但我真正需要的是:我的团队中有三个用户。 我的机器人 有可能得到第三个用户的ID吗?PS:我是群主,还将我的机器人添加为管理员... 第三个用户是普通用户。有人能帮我吗? 谢啦!
我做了一个不和谐的机器人,我需要改变发送消息的用户的昵称,例如:人“a”发送一条消息,我想把他的名字改为“B”。
我刚刚开始学习Telegram Bot API,以学习如何通过Java对Bot进行编程。我不明白机器人如何识别通过 然后使用MessageEntity获取实体的类型。getType()。现在,如果我理解的话,有两种类型的提及:
我目前正在用JDA用Java开发我的discord bot。直到两周前都很有效。由于这一次JDA似乎不再能够通过event.getguild().getmembers()获取所有用户,它将只返回自bot启动以来在聊天中写道的成员。使用event.getGuild().getMemberCount()方法,JDA将提供正确的用户数,但是如果我用event.getGuild().getMembers(
我正在开发一个Discord机器人,但当我尝试向频道发送消息时,它不起作用。 我尝试使用代码