iPadのアプリ開発ならiOSに強い株式会社まえびーにお任せ下さい!

Application & Software & System DevelopmentiPad / iPhone / Android

スマートフォン・タブレットのアプリ開発 / WEBシステム開発/ ソフトウェア開発

ブログBlog

HOMEブログ │ 社内チャットコミュニケーションツール「Mattermost」のご紹介

社内チャットコミュニケーションツール「Mattermost」のご紹介

Mattermostとは

 

皆様は社内等の組織内での連絡方法として、どのような手段を利用していますか?
ビジネスでの連絡手段としては、メールを使うことが多くあり、社内連絡ツールとしてもメールを主として使ってらっしゃる方も多いと思います。

最近は、様々なチャットツールも存在しており[※1]SkypeChatworkSlackといったツールを利用して、社内でのコミュニケーションを行っている方も増えてきているように感じます。

チャットツールでのコミュニケーションは、メールほど格式張っておらず、比較的気軽にやり取りを行うことができます。また、社内の部署ごとや、案件ごとにグループを作ることにより、情報共有・管理効率が向上するメリットもあります。

弊社ではこれまでに、様々なチャットツールを試してきましたが、その中で、「Mattermost」というツールをご紹介します。

 

Mattermostは、Mattermost is an open source, self-hosted Slack-alternative”[※2]を掲げており、オープンソースで開発されつつ、Slackに近い機能を利用することができます。

クラウドサービス前提のツールと異なり、自社サーバー等に構築することができるため、ローカルで構築したい要求がある場合にも利用できるかもしれません。

Mattermostのパッケージとしては、無償で利用できるオープンソース版と、中〜大規模組織で細かなユーザーを管理などを行いたい方向けの有償Enterprise版があります[※3]

 

この記事では、無償で利用できるオープンソース版をご紹介します。

 

上記スクリーンショットが、Mattermostにログイン後の画面です。
Slackを利用したことがある方は、スムーズに利用できるかと思います。

Mattermostの全てをここで紹介することはできませんが、弊社で利用していて便利だと感じている機能をピックアップしてご紹介します。

 

Mattermostの便利な特徴

 

■「チーム」と呼ばれる大きな括りの中に、複数の「チャンネル」を複数作成可能

 

● 「チーム」は1組織(大きなグループ)、「チャンネル」はチャットルームのようなもの。
● たとえば、次のような形でグループ運用が考えられます。
○ 「チーム」として、会社全体で使うチームを1つ作成。
○ そのチームに、「チャンネル」として、案件A”案件B”…を作成。
○ このような構成にすると、案件ごとの情報共有場を作成できます。
● もちろん、組織の規模や、運用単位によって、「チーム」を案件ごとにし、「チャンネル」をアプリ開発メンバーチャンネル、デザインメンバーチャンネル、といった形の運用も考えられます。

 

■デスクトップアプリ、モバイル向けアプリ(iOS, Android)も公式提供

 

● ブラウザからのアクセスだけではなく、各OS向けのアプリも提供されています。
● モバイル向けアプリに対しては構築方法次第で、Push通知にも対応可能です。

 

■ソースコードのSyntaxハイライト表示や、Markdown記法に対応

 

● 我々のようなIT業界の方にとっては、嬉しい機能です。
● ちょっとしたソースコードTipsを情報共有する時にも、Syntaxハイライトされて表示されるかどうかで、見やすさが全く異なります。
● Markdown記法にも対応していることで、投稿本文中に強調したい部分がある場合や、表組み表示をしたいときなど、手軽に見やすい投稿が可能です。

Markdown記法でのメッセージ投稿例

 

■Webhookを用いた他サービスとの連携や、カスタムコマンド拡張が可能

 

● Webhook連携
○ Webhookは、複数のサービス間で連携を行う際の手法で、例えば、サービスA”で処理が完了した時に、サービスB”の特定のURLを叩くことによって、サービスBへ通知を行うような仕組みです。
○ Mattermostではこの仕組みによる連携が可能で、Jenkins[※4]でのビルド完了時などに、Mattermostへ完了通知を投稿する、といった連携が可能です。

 

● カスタムスラッシュコマンド
○ Mattermostでは「スラッシュコマンド」と呼ばれる、”/”(スラッシュ)から始まるコマンドが組み込まれており、自分のステータス(オンライン、離席中etc…)の切り替えや、他のチャンネルへの参加などの操作が、コマンドから実行できます。
■ もちろん、これらは、コマンドを使わずUIからマウス操作で操作も可能です。
○ この組み込みのスラッシュコマンドに、独自のコマンドを追加できる機能が「カスタムスラッシュコマンド」です。
○ 普段の作業で、「チャットツールと連携していれば便利なのに・・・」といった機能を独自拡張することが可能となります。
○ 弊社では、この機能を使い、「TODO管理機能」を実装し、連携拡張を行ってみました。

組み込みスラッシュコマンドのHint表示例

 

カスタムスラッシュコマンドを使った「TODO管理機能」とは

 

Slackなどの一部チャットツールには、リマインダー機能が組み込まれています。

この機能は、タスクをチャットツールから登録し、期日が近づくと、チャットシステム側からタスクがあることをユーザーにお知らせする仕組みです。

Mattermostでは、本記事執筆現在、標準コマンドとしてまだ実装されていないため、カスタムスラッシュコマンドを利用し、弊社の環境に合わせて実装してみました。

下記は、実装したTODO管理機能を実際に使ったときの流れです。

例えば、@demo さん宛に、資料確認のTODOを登録してみます。

上記コマンドを打つと、@demoさん宛に、TODOの登録があったことが通知されます。

また、月〜金曜日の朝とお昼明けに、未完了のTODOを定期お知らせしてくれます。
当日が期日のものや、期日を超過してしまっているものは強調表示されます。

(本記事用にテスト実行しているため、画像内の時刻は気にしないでください)

さらに、自分が他のメンバーに対して登録した未完了のTODOもコマンドを使って確認できます。お互いにうっかり忘れていないかも確認することができます。

このように、Webhookや、カスタムスラッシュコマンドを使うことで、標準機能にない仕組みを比較的簡単に実装することが可能です。

 

チャットツールをつかって日々の業務を効率的に

 

今回は、Mattermostの魅力や、その拡張性の高さについてご紹介しました。

チャットツールは、運用の仕方により、情報がとても見つけやすくなり、業務を効率的に進めることができる強力なツールとなります。
Webhookやスラッシュカスタムコマンドのような拡張性により、Webシステムを開発する際にMattermostに通知を連携させる、といったことも可能です。
このような連携は可能?といったご質問も、お気軽にお問い合わせください。

 

 

[※1]  総務省メールマガジン「M-ICTナウ」バックナンバー - 働き方改革×チャットツールのビジネス活用
http://www.soumu.go.jp/menu_news/s-news/02tsushin02_04000041.html

[※2] Mattermost公式サイト
https://www.mattermost.org/

[※3] Matttermost - Pricing
https://mattermost.com/pricing/

[※4] Jenkins - Wikipedia
https://ja.wikipedia.org/wiki/Jenkins

PAGETOP