6
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

「ホッテントリを表示」、「BOTの応答メッセージの語尾に任意の文字を付与」するためのgemをリリースした #ruboty

Last updated at Posted at 2014-12-22

AdventCalendarにエントリーするつもりはなかったのですが、空きがあったのでエントリーしてみました。ちょうどRubyの勉強がてらに2つgem(プラグイン)をリリースしたので、リリースしたgemについて紹介させて頂きます。

ホッテントリを表示するプラグインについて(ruboty-hatena_hotentry)

概要

  • みんなが大好きなはてブのホッテントリを表示するプラグイン
  • 内部的には、はてなから提供されているRSSフィードを取得し、Nokogiriを使用してパースしています

公開情報

インストール手順はGitHubのREADMEをご参照ください

使用方法

※ rubotyの部分は自分でつけたBOTの名前に適宜置き換えてください

全体

ruboty hotentry all

世の中

ruboty hotentry social

政治と経済

ruboty hotentry economics

暮らし

ruboty hotentry life

学び

ruboty hotentry knowledge

テクノロジー

ruboty hotentry it

おもしろ

ruboty hotentry fun

エンタメ

ruboty hotentry entertainment

アニメとゲーム

ruboty hotentry game

使用例

ruboty-slackと組み合わせてitカテゴリのホッテントリを表示した例が以下となります。
RubotyとSlackを連携させる方法に関しては、Rubotyの作者である@r7kamuraさんの記事、Ruby製HubotクローンのRubotyをSlackで動かすを読めば容易に導入できるかと思います。

slack_ex1_141221.png

ruboty-cronと組み合わせて、よく見るカテゴリを定期的に表示させるようにしてもいいかもしれません。

ちなみにBOTのアイコンは小さくてわかりずらいですが、パズドラのハクというキャラです。

BOTの応答メッセージの語尾に任意の文字を付与するプラグインについて(ruboty-message_suffix)

概要

  • 機能的には名前の通りですが、プラグインと呼ぶのはちょっと違うかもしれません
  • BOTに対し、より愛着が湧くかもしれません
  • 内部的にはオープンクラスを使用し、Ruboty::Message#replyを書き換えている

公開情報

インストール手順はGitHubのREADMEをご参照ください

使用方法

環境変数RUBOT_MESSAGE_SUFFIXに語尾に付与したい文字を設定するだけです。
例えば、京都弁チックなBOTにするために「どすぅ」を語尾に付与したい場合、
export RUBOT_MESSAGE_SUFFIX=どすぅを設定します。

また、Rubotyにはdotenvを利用するための口が用意してあるので、カレントディレクトリに.envファイルを置いて、.envファイルにRUBOT_MESSAGE_SUFFIX=どすぅを定義し、ruboty --dotenvで起動する手もあります。

使用例

ruboty-slackruboty-talkと組み合わせてみます。語尾(RUBOT_MESSAGE_SUFFIX)には、少し前に流行った侵略!イカ娘の主人公イカ娘(古い?)の口癖である「でゲソ」と「イカ?」を設定してみます。候補を複数設定する場合は、カンマ区切りでexport RUBOT_MESSAGE_SUFFIX=でゲソ,イカ?と設定します。これで「でゲソ」か「イカ?」がランダムで抽出されます。

ruboty-talkの詳細については、DocomoruでBOTと雑に会話するを読むと良いと思います。

会話してみた結果がこちら
スクリーンショット_2014_12_22_23_59.png

と、ちょっとよくわからない会話になってしまいましたが、どこかで誰かが言ってた言葉を借りると、BOTはちょっと頭が悪いくらいがかわいいと思います。

所感

  • Rubyの会社でChatOpsの導入を検討しているのであれば、HubotよりもRubotyの方が個人的には推し。CoffeeScriptが苦でなければHubotでもいいかもしれない。(弊社もHubotだけど、いつかしれっと乗り換えたい)
  • 何か要望等あればPRお待ちしております

謝辞

参考サイト

参考書籍

明日の記事は...

@tbpgrさんとなります

6
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?