[英]How can I access hubot without adding hubot with each message?
我正在使用hubot和hubot-fb适配器开发一个facebook messenger机器人。 所有基本设置都已完成并且工作正常。 但是,为了与机器人聊天,我需要添加所有命令的hubot。 在Facebook聊天的情况下,它没有多大意义。 当前聊天看起来像这样:
user: hubot ping
bot: PONG
user: hubot the rules
bot: 0. A robot may not harm humanity, or, by inaction, allow humanity to come to harm.
1. A robot may not injure a human being or, through inaction, allow a human being to come to harm.
2. A robot must obey any orders given to it by human beings, except where such orders would conflict with the First Law.
3. A robot must p
但是,我希望我的机器人可以在不使用所有messenges的“hubot”的情况下访问。 我如何实现这一目标?
TIA
您可以使用“听觉”方法,而不是“响应”方法。
Hubot有两种方法可以与消息进行交互:
听到 - 只要消息室中的文本与给定的正则表达式匹配,就会调用此方法。 在这种情况下不使用机器人的名称。 例:
module.exports = (robot) ->
robot.hear /ping/i, (res) ->
res.send "PONG"
以下消息将导致调用robot.hear回调:
注意:在这种情况下,正则表达式非常简单,可以修改,因此不会为“我如何ping服务器”案例调用回调。
响应 - 只有当文本与给定的正则表达式匹配时才会调用它,并且紧跟在机器人的名称或别名之后。 例:
module.exports = (robot) ->
robot.respond /ping/i, (res) ->
res.reply "PONG"
以下消息将导致调用robot.respond回调:
由于未使用机器人的名称,因此不会调用以下内容。
有关更多详细信息,请参阅Hubot脚本文档 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.