0

我将 Hubot 与 Hubot-Flowdock 适配器一起使用。

robot.hear用来回复带有特定字符串的消息(例如“巧克力”)。

然后我用一条消息调用msg.send,其中也恰好包含触发字符串(“巧克力”)。

这会导致 Hubot 听到自己的声音,然后无休止地循环,一遍又一遍地触发。

我试图找到一种方法让 Hubot 不对自己做出响应。

据我所知,Hubot Campfire 适配器似乎包含一项特定检查,以防止 Hubot 监听自身:

https://github.com/github/hubot/blob/b96ea30654ef2dbf93f710c6e310c909fa1bdd65/src/adapters/campfire.coffee#L71

但是,其他适配器似乎没有这个。

有没有另一种方法来编写一个 Hubot 脚本,robot.hear这样msg.send它就不会响应自己?

4

1 回答 1

2

我找到了答案——Hubot并不是要自己响应/听到。

每个适配器负责处理过滤掉这些消息。

一些适配器(例如hubot-hipchat)实际上会将hubot bot 名称设置为您在Hubot 中进行身份验证的用户的名称。

在 hubot-flowdock 的情况下,它将检查 hubot bot 名称与您身份验证的用户的 Flowdock “显示名称” - 所以您只需要确保它们匹配(通过更改“显示名称” Flowdock 账户页面,或使用-n标志或HUBOT_NAME环境变量设置机器人名称)。

于 2014-09-24T01:12:15.590 回答