问题标签 [hubot]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
node.js - hubot 无法使用 flowdock 适配器启动
我已经设置了环境变量HUBOT_FLOWDOCK_LOGIN_EMAIL
和HUBOT_FLOWDOCK_LOGIN_PASSWORD
,然后尝试了以下。
从 hubot 站点拉下预建的 hubot。如上修改package.json。运行 npm 安装
添加
就在我的依赖项下package.json
从 hubot-scripts.json 中删除了 redis
跑npm install
然后运行./bin/hubot -a flowdock -d
有了这个实现,./bin/hubot - flowdock
产生以下堆栈跟踪:
查看 /Users/gb/workspace/hubot-2.2.0/node_modules/hubot-flowdock/node_modules/flowdock/lib/flowdock.js:49:17,这是响应 statusCode > 300 的失败。
到现在为止还挺好。将 console.log 添加到上面的行会产生未经授权的“401”。
如何?凭据是正确的(我经常使用该电子邮件/密码登录)。
javascript - Can I write scripts for hubot in Javascript?
Hubot is Github's chatroom robot. It's a great tool, except that no one at our company wants to write in Coffeescript....but it appears that we can't write scripts for Hubot in plain old Javascript.
Is this true? Is there something I'm missing here? Coffeescript is "just javascript" but I can't use Javascript with it?
EDIT
I was making 2 absurdly simple mistakes:
- I copied the CoffeeScript comment syntax into my JS file
- I had the script under the hubot-scripts node_module, instead of just under the /scripts/ directory in the main project.
Works perfectly now.
node.js - 是否可以阻止 Node JS 中的父线程?
我正在尝试修复一些第三方 NodeJS(如果有人关心的话,hubot 脚本)。这里的想法是,对于从先前调用返回的每个构建,我们都会与 Teamcity REST API 联系一次,并对其进行迭代,打印一条消息。
问题如下:在for循环开始时,builds有多个对象。这些被迭代,然后输入回调,从而打印出最后一次构建 builds.length 次。
服务器日志如下所示:
虽然预期/期望的行为是:
所以我有两个问题:
1)为什么会发生这种行为?我知道 Node JS 的非阻塞特性导致主线程(for 循环)的执行速度比它的非阻塞子线程(mapBuildTypeIdToName)更快。为什么它仍然不使用正确的值调用嵌套函数?为什么它只被最后一个值调用?
2)我该如何解决这个问题?如何阻止父线程并等待回调,否则,Node JS 中这种性质的问题(实际上是事件驱动的繁忙循环)的规范方法是什么?
adapter - 收听来自 Hubot 脚本的消息的理想方式是什么?
我想创建一个hubot脚本来捕获多用户聊天中的消息并记录它们,包括hubot。问题是hubot没有听到自己的声音。每当发送消息时,适配器似乎都不会发出事件,那么是否有推荐的方法来收听 hubot 消息?
coffeescript - 如何在hubot的robot.router.post块中使用发送/主题
几个星期以来,我一直在使用 hubot 并且很喜欢它,但在下面的代码片段中已经卡住了几天。我有一个侦听器,它通过我们的票务系统中的 webhook 接收事件。效果很好!我遇到的问题是如何将其中一些数据发送到房间并更新主题?
通常这是通过 msg.send 或 msg.topic 回调完成的,该回调使用诸如 robot.respond 之类的函数发送,但是在使用 robots.router.post 时,我不清楚应该引用哪个对象来发送消息。基本上,我如何/在哪里获得在 robots.router.post 中定义的味精?
为新手道歉,我对 javascript/coffeescript 的所有东西都很陌生。谢谢!
coffeescript - Coffeescript 回调范围问题
嗨,我正在尝试为 hubot 编写插件脚本。我似乎对范围界定有疑问。fork 回调中“msg”的引用是未定义的,我似乎没有在回调中得到任何变量。
内置的 jira-issues.coffee 也有同样的问题!昨天在该脚本中,jiraUrl 在回调中未定义。今天早上它再次工作,现在它再次停止工作(在我重新启动hubot之后)。我什至从未修改过它。
有没有人经历过这样的事情?
它编译为
看起来不错,但运行它会产生:
node.js - 我在哪里可以看到 hubot 记录器消息?
我是hubot的新手,在那里我看到了一个声明robot.logger.debug“在#{commit.url}上尝试gitio”
有人可以告诉我在哪里可以看到此调试消息。我正在使用 ./bin/hubot 命令来运行它。有没有办法在调试模式下运行它?所以我可以看到调试消息?
github - 登录聊天室时,Hubot 问候 @username
Hubot 是一个很棒的工具,该机器人集成在我们的聊天室中并部署了多项任务。一些额外的功能已添加到 hubot 中,并在收到命令时打招呼。我不太擅长咖啡脚本,目前想找到一种方法让 Hubot 根据一天中的时间向登录聊天室的用户打招呼(@uersname Good morning, @username Good Afternoon, etc.)
创建了一个简单的 Hello:
hubot - 从另一个命令调用一个命令
我想做某种别名,例如hubot status
应该调用hubot newrelic me
and hubot gauges for today
。
我试图做类似`msg.send“hubot newrelic me”之类的事情,但似乎hubot只是忽略了这条消息。
我怎样才能做到这一点?
hubot - Hubot 的 github-pull-request-notifier.coffee
我最近为 irc 设置了一个 hubot 并且工作正常。我正在尝试添加此脚本。
但是,我并不完全理解设置说明。设置说明阅读
我不明白"url":"<this script url>"
指的是什么。有人知道吗?
如果有帮助,我将部署到 heroku。