hubot - 如何从hubot控制台触发事件?
问题描述
我正在尝试从 hubot 控制台调试和使用 hubot。
Hubot 脚本对编写在 hubot 控制台中的消息作出反应。
因此,如果我有这样的脚本:
module.exports = (robot) ->
robot.respond /hi/, (msg) ->
msg.send "hi guy"
在我的hubot控制台中,我写了“hubot hi”,然后hubot会这样回应:
$hubot> hubot hi
$hubot> hi guy
我的问题是我怎样才能对事件(robot.on
)做同样的事情。
就像我有这样的代码:
module.exports = (robot) ->
robot.on "github-repo-event", (event) ->
console.log "grrrr, I'm triggered"
那么我将如何从 hubot 控制台触发这个事件呢?
有没有这样的……?
$hubot> hubot trigger-event:github-repo-event
解决方案
我发现我能做的最简单的事情是添加一个脚本来发出我想要的事件。
所以添加这样的东西:
# debug-script.coffee
module.exports = (robot) ->
robot.respond /debug-github-repo-event/, (msg) ->
robot.emit 'github-repo-event', eventData
然后从控制台你可以实现这个
$hubot> hubot debug-github-repo-event
$hubot> grrrr, I'm triggered
我不喜欢这个,但它有效。
我不想创建一个将事件添加到 shell 适配器的适配器。
推荐阅读
- unit-testing - 如何从 DD 路径测试中找到独立路径?
- angular - 使用 ngFor 时在迭代中同时设置类和数据
- c++ - SetWindowRgn 将窗口主题更改为 Classic
- c++ - 如何在给定位置反转 std::list?
- jquery - ASP.NET MVV Core 应用程序:加载资源失败:服务器响应状态为 404(未找到)bootstrap.css:1
- swagger - 我想从给定的 swagger.json 创建 curl 请求?
- sql - 将查询结果作为 CSV 文件从 Docker PostgreSQL 容器导出到本地机器
- mongodb-query - MongoDB 通配符索引 - 如何用索引覆盖投影
- c++ - 是否需要使用 Json::value object=Json::objectValue 来初始化?
- database - 使用实体框架的一对一关系