首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ROBLOX机器人

ROBLOX机器人
EN

Stack Overflow用户
提问于 2020-03-23 19:51:19
回答 1查看 869关注 0票数 0

我正在尝试创建一个不和谐的机器人,它连接到我创建的一个Roblox帐户。我正在尝试创建一个命令,该命令将在组中呼喊一条消息,但在登录时出现了问题,我不知道如何解决这个问题。

代码语言:javascript
复制
let roblox = require('noblox.js');
const { Client } = require("discord.js");
const { config } = require("dotenv");

const client = new Client({
    disableEveryone: true
});

config({
    path: __dirname + "/.env"
});

let prefix = process.env.PREFIX
let groupId = groupid;

client.on("ready", () => {
    console.log("I'm Ready!");

function login() {
    roblox.cookieLogin(process.env.COOKIE)
}

login()
    .then(function () {
        console.log(`Logged in to ${username}`);
    })
    .catch(function (error) {
        console.log(`Login error: ${error}`);
    });

client.on("message", async message => {
    console.log(`${message.author.username} said: ${message.content}`);
    if (message.author.bot) return;
    if (message.content.indexOf(prefix) !== 0) return;

    const args = message.content.slice(prefix.length).trim().split(/ +/g);
    const command = args.shift().toLowerCase();

    if (command === "shout") {
        if (!args) { 
            return;
            message.reply("You didn't specify a message to shout.")
        }
        const shoutMSG = args.join(" "); 

        roblox.shout(groupId, shoutMSG)
            .then(function() {
                console.log(`Shouted ${shoutMSG}`); 
            })
            .catch(function(error) { 
                console.log(`Shout error: ${error}`)
            });
    }
})

client.login(process.env.TOKEN);

它给出了一个错误:Shout error: Error: Shout failed, verify login, permissions, and message

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-03-23 20:50:14

一开始你不会关闭你的 client.on('ready')状态。

代码语言:javascript
复制
        if (!args) { 
            return;
            message.reply("You didn't specify a message to shout.")
        }

这个函数永远不会回复,因为你在回复之前使用了return。

您的groupId看起来像undefined,因为您将其声明为let groupId = groupid;,所以这是获得此错误的原因之一。

代码语言:javascript
复制
let roblox = require('noblox.js');
const { Client } = require("discord.js");
const { config } = require("dotenv");

const client = new Client({
    disableEveryone: true
});

config({
    path: __dirname + "/.env"
});

let prefix = process.env.PREFIX
let groupId = groupid;

client.on("ready", () => {
    console.log("I'm Ready!");
})

function login() {
    roblox.cookieLogin(process.env.COOKIE)
}

login()
    .then(function () {
        console.log(`Logged in to ${username}`);
    })
    .catch(function (error) {
        console.log(`Login error: ${error}`);
    });

client.on("message", async message => {
    console.log(`${message.author.username} said: ${message.content}`);
    if (message.author.bot) return;
    if (message.content.indexOf(prefix) !== 0) return;

    const args = message.content.slice(prefix.length).trim().split(/ +/g);
    const command = args.shift().toLowerCase();

    if (command === "shout") {
        if (!args) return message.reply("You didn't specify a message to shout.")
        const shoutMSG = args.join(" "); 
        roblox.shout(groupId, shoutMSG)
            .then(function() {
                console.log(`Shouted ${shoutMSG}`); 
            })
            .catch(function(error) { 
                console.log(`Shout error: ${error}`)
            });
    }
})

client.login(process.env.TOKEN);
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60813045

复制
相关文章

相似问题

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