Hubot 是由 Github 版本控制系统公司开发的一款聊天机器人框架,目的是帮助开发者快速构建自己的聊天机器人。它可以通过简单的命令来完成各种复杂的任务,例如发送邮件、管理 CI 系统等。
NPM 是 Node.js 的包管理器,它可以方便地将各种包管理起来。本文将介绍如何在 Node.js 环境下使用 Hubot。
前置条件
在开始之前,请确保已经安装了 Node.js。可以在命令行中输入以下命令检查安装是否成功:
$ node -v v11.2.0
同时,确保已经安装了 npm:
$ npm -v 6.4.1
安装 Hubot
使用 npm 安装 hubot:
$ npm install -g yo generator-hubot
安装依赖:
$ npm install
生成 Hubot 项目:
-- -------------------- ---- ------- - -- ----- ----------------------------- - - --- - ---------- ----- --- - ----- ----- - ---------------- ------- - ------- ------- - - ------- --------- ----------------------------- - - ------------ ------ --- --- - --- --- -------- -------- - -- - - -------------------------------- ------ - - - ------ --- ------ - - ------ ------ -- - - --- ----- ----- -- - - --- ------- ---------- - - - - ---- ---- ------ -- ------ - - - -------------------------------- - ------ ------ - --- ----- ------- - ------------ - ------ ------- ----- --- ---- ------- - --- -------- ----- ------ --------- ------ ------------- ------ -------- ------ --------- ------ --------------------- ------ ------------------ ------ ------------- ------ ---------- ------ ------------ ------ ---------------------- ------ --------- ------ -----------
注意,这里会让你填写一些 Hubot 的信息。
安装自己需要的 adapter。这里以 slack 为例:
$ npm install --save hubot-slack
运行 Hubot
启动 Hubot:
$ HUBOT_SLACK_TOKEN=<token> ./bin/hubot --adapter slack
注意将 <token>
替换为你的 Slack API Token。
至此,你已经成功启动了一个可以运行在 Slack 上的 Hubot,并可以跟它进行交互了。
创建自己的脚本
Hubot 有很多内置的脚本,但有时候我们需要创建自己的脚本。可以将脚本放在 scripts
目录下。
以下是一个简单的示例:
-- -------------------- ---- ------- - ------------ - - ------ --- ------ ------ - - ------------- - ---- - - -------------- - ---- - - --------- - ----- ----- - ----- ----- ------ - - ------- - ---- --- -------------- - ------- -- ------------- --------- ----- -- --------- ------ ----- -------
该脚本会回复 Well, hello there!
。
要使用该脚本,需要在 hubot-scripts.json
中添加对应的脚本:
[ "hello.coffee" ]
继续启动 Hubot,这时候就可以通过发送 hubot hello
来触发脚本了。
结语
本文介绍了如何在 Node.js 环境下使用 Hubot,并创建自己的脚本。希望能对大家有所帮助。更多详细信息可以参考 Hubot 官方文档。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/83720