Как вызвать событие из консоли hubot? - PullRequest
0 голосов
/ 28 июня 2018

Я пытаюсь отладить и играть с 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

1 Ответ

0 голосов
/ 19 августа 2018

Я обнаружил, что самое простое, что я могу сделать, это добавить скрипт, который генерирует желаемое событие.

Итак, добавьте что-то вроде этого:

# 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

Мне это не нравится, но это работает.

Я не хотел создавать адаптер, который добавляет события в адаптер оболочки.

...