ruboty で Wikipedia の記事を検索して URL を出力してくれるプラグインを作って公開しました。

https://github.com/dounokouno/ruboty-wikipedia

私は主に Slack で ruboty を動かしていますが、以前は Wikipedia の URL を Slack に貼っても OGP 的なものは出力してくれなかったんだけど、今日、確認してみたら Wikipedia の各ページに OGP が設定されていたので、 ruboty が Wikipedia の記事を検索してくれて、 Slack 上に Wikipedia の記事の URL が出力されて、 OGP 的なものは Slack が出力してくれたら、わからない単語とかについてざっくり知りたいときなどに便利かな、と思ったので実際に作ってみました。

あと ruboty の Wikipedia プラグインがなかったので、無いなら作るかーっと思った次第です。

インストール方法

README に書いてある通りですが、 Gemfile に ruboty-wikipedia を追加して、 bundle install してください。

設定

各種初期設定は英語にしておきました。英語の方がユーザーが多いかと思ったので。

日本語で利用する場合は下記の2点を適宜、設定してください。

設定例

WIKIPEDIA_DOMAIN = ja.wikipedia.org
WIKIPEDIA_MESSAGE_WHEN_NOT_FOUND = 記事は見つかりませんでした。

使い方

これも README に書いてある通りですが、 ruboty に「wikipedia <keyword>」 または 「wiki <keyword>」と話しかけてください。

記事検索の精度

「ガンダム」で検索すると記事が見つかるけど、「ガンダ」で検索すると記事が見つからないので、検索精度はそんなに高くないっぽいです。

Wikipedia の記事検索には wikipedia-client っていう gem を使ってるので、そっち側のことはよくわかっていません…。

https://github.com/kenpratt/wikipedia-client

(画像の @senkosha っていうのがプライベートで使っている Slack で飼っている ruboty の名前です。なぜ先行者なのかというと、「ロボットと言えば先行者」な世代なもので…。)

URL を貼り付けても OGP を出力しないチャットツールもあるんじゃない?

それはその通りなんですが、とりあえず Slack は OGP を出力してくれるので、まぁこれでいいかなと思っています。

OGP を出力してくれないチャットツールに対しては、 Wikipedia の記事の summary とかを出力するようにしてもいいかもしれないなぁと思っています。そのようなチャットツールをご利用の方は Pull request をください。

gem を RubyGems.org に公開してみた

これは余談ではあるのですが、 ruboty-wikipedia を RubyGems.org に公開してみました。

初めての公開したので、ちょっとドキドキです。たくさんの人に使ってもらえたらいいなぁ。

まとめ

以上、 ruboty-wikipedia っていう ruboty プラグインを公開した話でした。

不具合を発見されたり、いいカスタマイズができた場合はお気軽に Pull request いただければと思います!

https://github.com/dounokouno/ruboty-wikipedia