概要
Ruboty ソムリエ
報告者: tbpgr
2015年01月会報
Ruboty の Plugin や ツールなどを独断と偏見で紹介する企画です。
Ruboty ソムリエ企画への参加者募集中です。
Ruboty ソムリエの細則・目的などについては、下記のレギュレーションのリンクを参照ください。
レギュレーション
こちらを参照
Ruboty ソムリエ レギュレーション
実用編
ruboty-cron
- Author: r7kamura さん
- RubyGems: https://rubygems.org/gems/ruboty-cron
- GitHub: https://github.com/r7kamura/ruboty-cron
- Blog or Other Links: Ruboty | ruboty-cron を利用して、Ruboty に始業・昼休み・終業を通知させる
- tbpgr コメント
Ruboty の作者である r7kamura さん の Plugin 。
chatops で ruboty を利用するなら、必ず出てきそうな
cron を使って定刻に処理を行う際に活躍します。
リンク先の記事は私が利用サンプルとして公開した記事です。
ruboty-gen
- Author: blockgiven さん
- RubyGems: http://rubygems.org/gems/ruboty-gen
- GitHub: https://github.com/blockgiven/ruboty-gen
- Blog or Other Links: Ruboty | 【怠惰は正義】ruboty-gen で Handlers と Actions のひな形を作成
- tbpgr コメント
Ruboty Handler Plugin を作成する際に、ひな形を生成してくれる generator 。
私も pull request でお手伝いした gem 。
Ruboty Handler Plugin を作る際は、お決まりの記述が多いので、このツールを使うと
必要最小限の記述で済んで楽だし、タイポなどによる時間の浪費から解放されます。
ruboty-hatena_hotentry
- Author: fukuiretu さん
- RubyGems: https://rubygems.org/gems/ruboty-hatena_hotentry
- GitHub: https://github.com/fukuiretu/ruboty-hatena_hotentry
- Blog or Other Links: 「ホッテントリを表示」、「BOTの応答メッセージの語尾に任意の文字を付与」するためのgemをリリースした
- tbpgr コメント
「みんなが大好きなはてブのホッテントリを表示するプラグイン」作者さん談
例えば、 Slack は外部システムの連携機能がありますが、無料範囲で利用したい場合に連携数に制限があります。
無料範囲を越えた場合、利用者数が多い場合は結構バカにならない金額になります。
無料範囲で、有益な情報を享受したい場合は Slack の 外部連携 相当の機能を自前で実装するのも良いですね。
そして、その実装内容を Ruboty コミュニティ全体で流用すれば無料で利用できる範囲がどんどん増えます。
おもしろ編
ruboty-lgtm
- Author: negipo さん
- RubyGems: https://rubygems.org/gems/ruboty-lgtm
- GitHub: https://github.com/negipo/ruboty-lgtm
- Blog or Other Links: --
- tbpgr コメント
GitHub のコメントのやりとりなどでお馴染みの LGTM の画像を表示する Plugin 。
開発チームのコミュニケーション円滑化、楽しい雰囲気作りに役立ちそうですね。
例えばこんな出力になります。
$ ruboty lgtm dog http://lgtm.herokuapp.com/http://media.tumblr.com/c8d0e3445ffcd9349697f78f303762 4e/tumblr_inline_naytlxTiTP1rnrgq3.gif
※実際の画像 => lgtm dog
ruboty-nullpo
- Author: mallowlabs さん
- RubyGems: --
- GitHub: https://github.com/mallowlabs/ruboty-nullpo
- Blog or Other Links: codefirst が作った Ruboty プラグイン
- tbpgr コメント
何か特定の入力に対して特定の出力を・・・と考えた時に多くの方が思いつきそうな定番
「ぬるぽ」「ガッ」
するアレです。
Rich Style まで用意されています。
Λ_Λ \\ ( ・∀・) | | ガッ と ) | | Y /ノ 人 / ) < >_Λ∩ _/し´ //. V`Д´)/ (_フ彡 / >>@mallowlabs
ruboty-calendar
- Author: youyo さん
- RubyGems: https://rubygems.org/gems/ruboty-calendar
- GitHub: https://github.com/youyo/ruboty-calendar
- Blog or Other Links: ruboty-calendar作った
- tbpgr コメント
cal コマンドの内容を Ruboty Plugin にしてみたもの。
この Plugin 自体というよりは、ブログも含めた Plugin 作成の過程が良かったので紹介します。
Ruboty の Plugin って、結局は何かの機能のラッパー的で、
その機能の出力を Ruboty の Plugin 形式で提供していることになります。
そのため、無理に Plugin に全機能を詰め込むとテストが難しかったり、
単体の機能として使いまわした時に使いにくかったりします。
そこで、 こちらの記事で作者さんが行っているように、まずは機能を gem に切り出してから
Plugin 化するのはとても良いやりたかだな、と思います。
私も同じような考え方で、 Ruby Advent Calendar 中に下記のような記事を作成しました。
Extract gem Pattern を用いて Ruboty Plugin 内で利用する一塊の機能を持つロジックを外部 gem 化する
2015/01/05 時点の Ruboty ダウンロードランキング
※検索条件は ruboty-
です。
rank | gem name | author | downloads |
---|---|---|---|
1 | ruboty-slack | Ryo Nakamura | 1739 |
2 | ruboty-ymcrawl | mpk | 1544 |
3 | ruboty-weather | Ryoichi SEKIGUCHI | 1404 |
4 | ruboty-hipchat | Ryo Nakamura | 1363 |
5 | ruboty-rss | Ryota Arai | 1264 |
6 | ruboty-redis | Ryo Nakamura | 1155 |
7 | ruboty-alias | Ryo Nakamura | 1095 |
8 | ruboty-lgtm | negipo | 1006 |
9 | ruboty-gamification | Yoshiori SHOJI | 948 |
10 | ruboty-cron | Ryo Nakamura | 946 |
11 | ruboty-idobata | Seiei Higa | 935 |
12 | ruboty-github | Ryo Nakamura | 886 |
13 | ruboty-google_image | Ryo Nakamura | 839 |
14 | ruboty-syoboi_calendar | Ryo Nakamura | 824 |
15 | ruboty-megen | tbpgr | 712 |
16 | ruboty-twitter | Ryo Nakamura | 698 |
17 | ruboty-response | kaihar4 | 695 |
18 | ruboty-gen | block_given? | 676 |
19 | ruboty-japan_weather | Taiki ONO | 652 |
20 | ruboty-trust_me | block_given? | 634 |
Ruboty 定番情報
Ruboty ってなに?
Ruboty って何?どうやって動かすの? Hubot と何が違うの?どっちを使えばいいの?
Ruboty の基本構成図
Ruboty のリポジトリ
Ruboty を Slack にデプロイしたい
Ruby製HubotクローンのRubotyをSlackで動かす
Ruboty の Plugin を楽して作成したい
Ruboty | 【怠惰は正義】ruboty-gen で Handlers と Actions のひな形を作成
Ruboty の Plugin の README を楽して作成したい
Ruboty | Ruboty Handler Plugin 作成時の README テンプレートジェネレータ ruboty-megen を作成した
Ruboty の Plugin を Qiita の記事にする時楽をしたい
Ruboty | Ruboty Handler Plugin 作成時に公開するための Markdown 形式の技術エントリ テンプレートジェネレータ ruboty-articlegen