首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >用一个脚本登录多个机器人账号的方法?

用一个脚本登录多个机器人账号的方法?
EN

Stack Overflow用户
提问于 2020-08-19 10:35:16
回答 2查看 900关注 0票数 1

我尝试过的方式。循环通过令牌,这是很好的,但没有太多的空间来定制机器人做什么。例如,每个机器人类型都在一个特定的通道中,通过这种方式,我已经意识到机器人类型在相同的位置上彼此紧随其后。

代码语言:javascript
运行
复制
const auth = require('./tokens.json')
const Discord = require('discord.js')

for (const token of auth.Tokens) {
    const client = new Discord.Client()
    client.on('ready', () => {
        console.log('I am ready !')
        console.log(client.user.id)
    })
    client.login(token)
}

还可以通过创建discord.client的多个实例

代码语言:javascript
运行
复制
const Discord = require('discord.js');
const client1 = new Discord.Client();
const client2 = new Discord.Client();
ect...

client1.once('ready',() => {
})
client1.on('message', async(message) => {

})

client2.once('ready',() => {
})
client2.on('message', async(message) => {

})

client1.login(CONFIG.Token1);
client2.login(CONFIG.Token2);

我只是想知道是否有其他的方法来做到这一点,假设我有5-6个机器人,我做了第二个方法,代码会变得相当长,这取决于我想要添加什么。我确实想过添加一个循环,就像这样。

代码语言:javascript
运行
复制
for(var i = 0; i < token.length; i++)

并且具有链接到特定号码的信道id,因为i++正在增加它。因此,每个机器人都会有自己的编号和频道id,但我不确定这是不是可以工作,或者它是否足够好用。如有任何建议,我们将不胜感激,感谢您的阅读。

EN

回答 2

Stack Overflow用户

发布于 2020-08-19 18:38:37

我认为你的第二种方法:

创建discord.client的多个实例将是最好的方法。

为机器人提供特定通道的最简单方法是更改它们的不一致权限,并以物理方式为它们分配通道。

另一种方式可以是这样的:

代码语言:javascript
运行
复制
client.channelID = <ID of channel you want the bot in>
client2.channelID = <ID of channel you want the bot in>

// ... code

client.on('message', message => {
   if (message channel.id !== client.channelID) return;
   // ...
票数 0
EN

Stack Overflow用户

发布于 2020-09-14 20:46:17

我可以使用下面的代码从同一个脚本运行多个机器人:

代码语言:javascript
运行
复制
const auth = ['TOKEN1', 'TOKEN2']
const Discord = require('discord.js')

for (const token of auth) {
    const client = new Discord.Client()
    client.on('ready', () => {
        console.log('I am ready !')
        console.log(client.user.id)
    });
    client.on('message', (msg) => {
        if (msg.content === '!ping') {msg.reply('pong!')}
    });
    client.login(token);
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63479217

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档