有没有办法让 Hubot 回复所有不存在命令的消息?
Is there a way to make Hubot reply to all messages that are not existing commands?
我正在第一次尝试 Hubot,我正在制作一个用于基本对话的对话脚本。我已经完成了很多可能性(我有很多问题和关键字在工作,)但是当用户问或说一些 Hubot 不认识的东西时,它会完全沉默。
我想在 Hubot 找不到现有命令或单词时添加一组默认答案(含糊不清的回复,如“这很有趣”或“告诉我更多信息”。)
有没有办法通过脚本来做到这一点?类似于:
robot.respond / * /, (msg) ->
msg.send ArrayOfVagueReplies
其中 * 是 "everything else"。 "If commands... else..."?
使用robot.catchAll
子句捕获所有不匹配的对话,可以参考https://www.npmjs.com/package/hubot-suggest
由于 hubot 的 robot.respond
方法采用正则表达式,您应该能够只提供 /.*/
作为正则表达式,并让它匹配所有内容。
所以你有:
module.exports = (robot) ->
robot.respond /.*/i, (msg) ->
doSomething(msg)
我正在第一次尝试 Hubot,我正在制作一个用于基本对话的对话脚本。我已经完成了很多可能性(我有很多问题和关键字在工作,)但是当用户问或说一些 Hubot 不认识的东西时,它会完全沉默。
我想在 Hubot 找不到现有命令或单词时添加一组默认答案(含糊不清的回复,如“这很有趣”或“告诉我更多信息”。)
有没有办法通过脚本来做到这一点?类似于:
robot.respond / * /, (msg) ->
msg.send ArrayOfVagueReplies
其中 * 是 "everything else"。 "If commands... else..."?
使用robot.catchAll
子句捕获所有不匹配的对话,可以参考https://www.npmjs.com/package/hubot-suggest
由于 hubot 的 robot.respond
方法采用正则表达式,您应该能够只提供 /.*/
作为正则表达式,并让它匹配所有内容。
所以你有:
module.exports = (robot) ->
robot.respond /.*/i, (msg) ->
doSomething(msg)