sifue's blog

プログラマな二児の父の日常

ScalaMatsuri祝いにIRCとSlackの相互リレーをするScala製ツールをMITライセンスで公開しました

今日はScalaMatsuriのー日目、皆様お疲れ様でした。

初めてオダスキー先生を見たり、本当に刺激的な内容が多くてとても勉強になりました。

そんな中自分は、Scalaを書きたい欲求が、ガガガーっと沸き上がってきたので、自分が欲しかったIRCとSlackの相互リレーをしてくれるScala製のツールを作りました。きっとIRCとSlackの両運用で一時的に困ってる方が居るかと思いますので、ぜひご活用いただければと思います。

ソースコードはこちら、

sifue/ircslackrelay · GitHub

MITライセンスなので、好きに改変してお使いください。使っている技術としては、

  • sirc
  • akka-acotor
  • dispatch

となります。

 

なお現在の仕様では、IRCの設定、SlackのIRCアダプタの設定、SlackのAPIのトークンの設定をして、相互リレーをするチャンネルを設定することで

IRC→Slackは

23:55 ircslackrelay: u​sername: message
23:55 ircslackrelay: _ u​sername: notice is sanded by undersocre _

こんな形式になります。Slack上ではアンダースコアで挟んでIRCのnoticeを表現。またニックネームは、最初の文字の後にサイズゼロスペースを入れることでnotificationに引っかからないようになっています。

Slack→IRC

23:55 ircslackrelay: u​sername: message

全てnoticeになり同様にニックネームにサイズゼロスペースを入れてあります。

ぜひご活用下さい。素敵なChatOpsを!

 

追伸

なお、使い方やインストール方法をもっと詳しくQiitaの方に書きました。


SlackとIRCを相互リレーする話 - Qiita