Node.js 带输入/参数的tmi.js消息?
我正在使用tmi.js-npm开发一个twitch机器人,我有一个问题要问 我想用输入生成一个类似-“!giveway”的命令,它可以是任何东西。例如“!赠品pg”。然后它应该返回“!pg”。所以关键字“赠送”应该是固定的,但是空白之后的部分可以是输入的任何东西。 我的脚本如下所示:Node.js 带输入/参数的tmi.js消息?,node.js,twitch,Node.js,Twitch,我正在使用tmi.js-npm开发一个twitch机器人,我有一个问题要问 我想用输入生成一个类似-“!giveway”的命令,它可以是任何东西。例如“!赠品pg”。然后它应该返回“!pg”。所以关键字“赠送”应该是固定的,但是空白之后的部分可以是输入的任何东西。 我的脚本如下所示: client.on("chat", function (channel, user, message, self) { if (message === "!Giveaway" + " " + "input"){
client.on("chat", function (channel, user, message, self) {
if (message === "!Giveaway" + " " + "input"){
if(user["display-name"] === "username"){
client.say("channel", "!" + "input");
} else {
client.say("channel", "No permissions");
}
};
});
谢谢:)像这样的东西是最常用的,建议添加更多支票,但这取决于您的需要 检查传入消息以查看它是否以特定命令开头,如:
message.startsWith("!giveaway")
还有其他逻辑
if (message.startsWith("!giveaway")) {
var input = message.split(' ')[1];
if (input.count < 2) return;
if (user["display-name"] === "username") {
client.say("channel", "!" + input);
} else {
client.say("channel", "No permissions");
}
}
if(message.startsWith(“!giveaway”)){
var输入=message.split(“”)[1];
如果(input.count<2)返回;
如果(用户[“显示名称”]=“用户名”){
客户端。说(“频道”、“!”+输入);
}否则{
客户端。说(“频道”,“无权限”);
}
}
谢谢,这是否也适用于“message.endsWith”之类的内容?如果您想查看邮件的结尾,当然可以。