のろける

のろける話をかく

僕とはてなとIRC


我が家のアドベントカレンダー。
お菓子やさんに行くと色々あって楽しいですよ。

Hatena::Staff Advent Calendar 2011の11日目の記事です!

こんにちは、はてなでアプリケーションエンジニアをしている id:r_kurain です。普段は人に言えないような秘密の業務をしています(キリッ)。

僕とはてなの出会いについて書いても良かったのですが二番煎じもいかがな物かと思うので、今日ははてなの社内ツールについてお話しします。

はてなでは、普段からIRCと呼ばれる古くからあるチャットシステムが利用されていて、オフィスの空間は静かなのに、画面なかでワイワイやっているということが度々あります。IRCぐらい使ってるIT系企業はいくらでもあると思うのですが、人事からサポート部の方々までいるのは珍しいのでは無いでしょうか。

基本的にはチーム毎にチャンネルがあって、それぞれのプロダクトについて議論や報告が交わされているのですが、中には新発売のガジェットについて話し合うチャンネルなどもあって、盛り上がると海外に発注まで掛けてくれる人がいる大変便利なツールになっています。

結構な流量で、会話が流れていくので仕事に集中しているとIRCに気づかずログが流れて行ってしまうことも多々あります。各々にロガーを仕掛けたりもしているのですが、もうすこし便利に気づくものがあっても良かろうという話をしていたら、

"ゆっくりが読みあげたらいいんじゃね!"

という話になったので実際に作って見ました。

なるべく簡単に事を済ませたいので、IRCクライアントは社内推奨クライアントである limechat を使っていると仮定します。limechat はログをファイルに書き出す機能があるのでこれを設定します。


"設定"にありますよ!log tarnscripts を有効に!

無事設定できるとチャンネル毎にファイルが作成されるので、これをどうにか読み上げることにします。

ゆっくりといえばSoftalk さんですが、残念ながら OSX では動かないので近いものを探すことにします。SayKanaが非常に近い感じで喋ってくれるのでこれを採用します。

ひらがなとカタカナしか読みあげてくれないので、MeCab を利用してひらがなに変換した上で、SayKana に渡すようなスクリプトを書きます。

あとは、先のlimechatが吐き出す log をこのスクリプトに渡すだけでゆっくりが読みあげてくれるというわけです。

tail -f ~/YOUR_LOG_DIR/current_log.txt | ./speak_irc.pl

実際運用してみたのですが、だれかの発言に気づかない事もなくなり、"う◯こ"と連呼する同期エンジニアに悩まされつつも便利なIRCライフを送っています。

それでは皆様もIRCで素敵なクリスマスをお送りくださいませ。

次回は気鋭の新人デザイナー id:ueday 君ですね! 楽しみ!