我是编程新手,目前正在使用javascript构建聊天机器人。我现在面临的主要问题是我试图将其设置为我的机器人只对特定级别的用户运行对文本命令的响应。我将尝试为多个不同的命令执行此操作。
这是我到目前为止所拥有的。
}).on("chat", function (name, text, role, params) {
if (text == "!command") {
channel.sendMessage("response");
console.log(params);
}
我在机器人的}).on("chat", function (name, text, role, params) {
下面还有另一段代码,只允许某些用户级别在聊天中发布链接。
if (text.indexOf("http://") > -1 || text.indexOf("https://") > -1) {
var isSub = params.isSubscriber;
var isOwner = params.isOwner;
var isStaff = params.isStaff;
var user = params.role;
if (isOwner || isStaff || user) {}
else if (!isSub) {
moderation.timeout(name, 5);
channel.sendMessage(name + ", only subs can post links.");
}
我知道我要说的不是DRY代码,而是在这里。我确实尝试了这些变量,if和else if语句,并将它们添加到“!命令”中,但由于某种原因,它完全忽略它们并响应在聊天室中说“!command”的任何人。
只需注意:user = chatroom主持人,anon =普通聊天室用户,guest =来宾聊天室用户,订阅者=订阅聊天室的人员,工作人员=网站工作人员(不包括聊天室主持人和我,因为我们不是员工。 ),所有者=我是聊天室所有者。
我正在尝试将它发送到anon和guest无法从“!command”获得响应的地方
我很抱歉,如果我听起来像个白痴或做错了什么,我仍然是编程和javascript的新手。实际上我确实将机器人连接到聊天室并正常工作。我偶尔会遇到这样的小问题。