介绍
hubot-annict 是一个针对 Annict 的 Hubot 脚本。Annict 是一个支持记录、查看日本动画的 Web 服务,可以记录动画观看进度,查看自己与好友的动画观看情况等等。
hubot-annict 可以通过 Hubot 与 Annict 进行交互。你可以通过它查询自己、好友的动画观看记录,以及其他与 Annict 相关的信息。
安装
推荐使用 npm 进行安装:
npm install -g yo generator-hubot mkdir my-hubot cd my-hubot yo hubot npm install hubot-annict --save
如何使用
首先需要在 Annict 创建自己的应用程序,获取客户端ID 和客户端秘密。具体可以参考 Annict 的文档:OAuth 認証
然后,在 Hubot 中添加以下环境变量:
export ANNR_PGUSER=<PostgreSQL 的用户名> export ANNR_PGPASS=<PostgreSQL 的密码> export ANNR_PGHOST=<PostgreSQL 的主机名> export ANNR_PGPORT=<PostgreSQL 的端口> export ANNR_PGDB=<PostgreSQL 的数据库名> export ANNR_CLIENT_ID=<客户端ID> export ANNR_CLIENT_SECRET=<客户端秘密>
接下来,就可以使用以下命令与 Annict 进行交互了:
获取自己的动画观看记录
hubot annict me
获取好友的动画观看记录
hubot annict friend <好友的用户名>
搜索动画,获取动画的详情
hubot annict search <查询字符串> hubot annict anime <anime_id>
获取动画相关的时间表信息
hubot annict timetable <时间表类型> <查询时间>
获取当前季度的动画列表
hubot annict upcoming
获取单个动画的详细信息
hubot annict info <anime_id>
同步自己的动画观看记录
hubot annict sync <数字ID>
示例代码
获取自己的动画观看记录
robot.respond(/annict me$/i, function(msg) { robot.loadFile(id, 'scripts/annict.js').then(function(annict) { annict.me(msg); }); });
获取好友的动画观看记录
robot.respond(/annict friend (\S+)$/i, function(msg) { var username = msg.match[1]; robot.loadFile(id, 'scripts/annict.js').then(function(annict) { annict.friend(msg, username); }); });
搜索动画,获取动画的详情
-- -------------------- ---- ------- --------------------- ------ -------- ------------- - --- ----- - ------------- ------------------ ------------------------------------------ - ------------------ ------- --- --- --------------------- ----- --------- ------------- - --- -- - ------------- ------------------ ------------------------------------------ - ----------------- ---- --- ---
获取动画相关的时间表信息
robot.respond(/annict timetable (weekly|monthly) (.+)$/i, function(msg) { var type = msg.match[1]; var date = msg.match[2]; robot.loadFile(id, 'scripts/annict.js').then(function(annict) { annict.timetable(msg, type, date); }); });
获取当前季度的动画列表
robot.respond(/annict upcoming$/i, function(msg) { robot.loadFile(id, 'scripts/annict.js').then(function(annict) { annict.upcoming(msg); }); });
获取单个动画的详细信息
robot.respond(/annict info (\d+)$/i, function(msg) { var id = msg.match[1]; robot.loadFile(id, 'scripts/annict.js').then(function(annict) { annict.info(msg, id); }); });
同步自己的动画观看记录
robot.respond(/annict sync (\d+)$/i, function(msg) { var id = msg.match[1]; robot.loadFile(id, 'scripts/annict.js').then(function(annict) { annict.sync(msg, id); }); });
总结
通过 hubot-annict,我们可以通过 Hubot 与 Annict 进行交互,查询自己、好友的动画观看记录,以及其他与 Annict 相关的信息。这极大地提高了我们查询和管理动画观看记录的效率。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6005517b81e8991b448cecb7