こんにちは、技研の「むらたん」です。
ChatOpsやってますか?「乗るしかない このビッグウェーブに」ということで、今期の開発技術SIGでも「定形作業の自動化 powered by ChatOps」をテーマとしています。
ChatOpsするなら、
ChatツールとしてSlackを導入して、HubotでBotスクリプトを開発して、「PING」って書き込むと「PONG」って返ってきたり、「PUG」って書き込むと、可愛いワンちゃんの画像を探してくれるんです。
みたいな内容はよく見かけますが、エンタープライズ利用を考えると、そう甘くはありません。
弊社の現状における課題と対策
「Slack」のエンタープライズ利用
- GmailやOffice365を利用しているのに、これ以上、コミュニケーションインフラを増やすことはできません。
- 今回はOffice365に含まれる「Yammer」でやってみることにしました。
「Hubot」でBotスクリプトを開発
- Hubotって、Javascriptを便利にしたCoffeeScriptで開発する必要がありますが、そんな言語を書いたことはありません。
- HubotのRuby版であるLitaなどの利用も考えましたが、Yammerとの接続アダプタが公開されていません。
- 今回は開発量を最小限とするため、CoffeeScriptを覚えながら、Hubotで開発することにしました。
「PING」って書き込むと「PONG」って返ってくる
- 特定の入力に対して特定の反応をするのは簡単そうですが、状態の管理はどうするのでしょう。
- Yammerは「チャット」ではなく「ソーシャル」ですが、Slackと同じ感覚で使えるのでしょうか。
- 今回のエントリーはこのあたりの課題をどのように乗り越えたか、を紹介します。