Mattermostでプライベートチャットシステムを構築!

最近ではメールの代わりにチャットを使って連絡する機会が増えています。
チャットはメールと比べて短いテキストの送受信に適しており、特に複数のユーザーが同時にやり取りする必要がある場面などではその便利さが際立ちます。
チャットツールとしては、クラウドサービスとして提供されている「Slack」などが広く知られていますが、その一方でクラウド基盤上の自社が作成した仮想マシンにインストール・運用することができるオープンソースソフトウェアの「Mattermost」も注目を集めています。
このコラムではMattermostの概要について解説するとともに、Mattermostのセットアップ方法などの基本的な使い方について紹介します。

Mattermostについて

Mattermostとは何か

Mattermostはオープンソースソフトウェアのチャットアプリケーションであり、クラウド基盤に作成した仮想マシン上でプライベートなチャットシステムを構築・運用することができます。
Mattermostは米国のMattermost, Inc.によって開発され、2015年にバージョン1.0がリリースされました。
基本的なチャット機能を備えた「Team Edition」とActive Directory連携やアクセス制御などのエンタープライズ向け機能を含む「Enterprise Edition」の2つのエディションが提供されています。前者のTeam EditionはMIT Licenseのオープンソースソフトであることが特徴の一つであり、後者のEnterprise Editionは商用サポートを含まれることが特徴です。
Term Editionはオープンソースであることから自社のニーズに応じてソースコードを自由に変更することが可能であり、また、ライセンスがMIT Licenseなのでソースコードに加えた変更を公開することを強制されません。
なお、MattermostはGoogleのプログラミング言語である「Go」とFacebookのJavaScriptライブラリである「React」を使用して開発されており、チャットデータなどを保存するためのデータベース管理システムとしてMySQLまたはPostgreSQLを使用することができます。

MattermostとSlackの違い

Slackはもともと開発者の間で人気のあるチャットサービスでしたが、現在では他のユーザーにおいても徐々に使われ始めています。
SlackとMattermostはいずれもチャット機能を備えるという点では共通しており、ルック&フィールやWebhookなどの連携機能もよく似ています。
しかしながら、Slackは、ChatWorkなどと同様に、クラウドサービスとして提供されていて、Mattermostはオープンソースソフトウェアとして提供されていることが異なります。
また、Slackはプロプライエタリなサービスであり、そのサービス運用をするために使用しているソフトウェアのソースコードは公開されていないため、オープンソースソフトウェアであるMattermostとは異なり、クラウド基盤に作成した仮想マシン上にプライベートなチャットシステムを構築することや、自社のニーズに応じてソースコードを変更することなどができません。
なお、MattermostのWebサイトやGitHubページでは「Slack-alternative」という言葉がたびたび登場しており、「Slackの代替手段」としてのポジションを目指していることが見受けられます。

Mattermostの使い方

前段ではMattermostの概要についてSlackとの違いなどを踏まえて解説しました。
Mattermostはオープンソースソフトウェアであるため、ソースコードをGitHubから入手してすぐに試すことができます。
以下、Mattermostのセットアップ方法などの基本的な使い方について紹介します。

セットアップ

Mattermostのセットアップ方法としては「Linux Install」と「Docker Install」の2つがあり、トライアルには「Docker Install」の方が適しています。

Docker Installを行うには、ターミナルを起動して下記のコマンドを実行します。

docker run --name mattermost-preview -d --publish 8065:8065 mattermost/mattermost-preview

MattermostのDockerコンテナーを起動するためにDockerイメージのダウンロードが開始するので、完了するまでしばらく待機します。
なお、ダウンロードされたDockerイメージはローカルに保存されるため、次回以降はすぐにMattermostのDockerコンテナーを起動することができます。
Dockerイメージのダウンロードが完了した後は自動的にMattermostのDockerコンテナーが起動されます。

Dockerコンテナーが起動した後、Webブラウザを起動して下記のURLへアクセスします。

http://localhost:8065/signup_email

Mattermostのサインアップページが表示されるので、Dockerコンテナーが起動していることを確認することができます。

サインアップ

Mattermostのセットアップが完了したら、次にサインアップを行ってアカウントを作成します。
サインアップを行うには、サインアップページでメールアドレス・ユーザー名・パスワードの3点を入力してから「Create Account」ボタンをクリックします。

チームの選択ページが表示された後、ページ内にある「Create a new team」リンクをクリックします。

チームの作成ページが表示された後、チーム名を入力してから「Next」ボタンをクリックします。

チームのURLページが表示された後、ページの下側にある「Finish」ボタンをクリックします。

チャットページが表示されるので、ページの左上に自分のユーザー名やチーム名が表示されることを確認することができます。

サインアップした直後はWelcomeページが表示され、「Next」ボタンをクリックすると説明が表示されます。

3枚目のWelcomeページの「Next」ボタンをクリックすると、Town Squareチャンネルのタイムラインが表示され、チャットができる状態になります。

2名のユーザー同士でチャットができることを確認するため、アカウントをもう一つ作成します。
アカウントをもう一つ作成するにはページ右上のメニューアイコンをクリックすると表示されるメニューの中から「Invite People」を選んでクリックします。

メンバーの招待ページが表示された後、ページの中央付近にある「Copy Link」ボタンをクリックします。

ブラウザのシークレットウィンドウ機能を使用するか、別のブラウザを起動して、クリップボードへコピーされたURLへアクセスします。

サインアップページが表示されるので、同様の手順でアカウントを作成してチャットできる状態まで操作します。

チャット

メッセージを送信するにはページの下側にあるテキストエリアにメッセージを入力してからEnterキーを押します。

送信したメッセージがタイムラインの末尾に追加されます。

また、別のユーザーのタイムラインにもメッセージが表示されます。

テキストだけではなく絵文字を送信することもできます。
絵文字を送信するには、ページ右下のスマイルマークをクリックして表示されるグリッドの中から絵文字を選んでクリックします。

絵文字を示すテキスト(例えば:grinning:など)がテキストエリアに追加された後、Enterキーをクリックします。

タイムラインに絵文字が表示されます。

また、別のユーザーのタイムラインにもメッセージが表示されます。

クリーンアップ

下記のコマンドを入力してDockerコンテナーを削除します。

docker rm mattermost-preview

おわりに

チャットはメールと比べて気軽にメッセージが送れるため、ともすると五月雨で大量にメッセージを送ってしまい、相手を辟易させてしまうかもしれません。
メールからチャットへとツールが変わってもコミュニケーションの原理原則は変わらないため、メッセージを送信する際には受け手の立場になって、理解しやすいように表現を工夫したり、文字数や回数をなるべく少なくしたりすることが大切です。

移行準備段階で知っておくべきAmazon Web Servicesの
サービスを学び、具体的にクラウド検討を考える!

移行準備段階で知っておくべきMicrosoft Azureの
サービスを学び、具体的にクラウド検討を考える!

クラウド移行を活用した重要システム環境の見直しをしてみましょう!

コールセンターでもクラウド活用を検討しましょう!

肥大するファイルサーバー。クラウド活用した現代のファイルサーバーを検討しましょう!

Amazon Web Services(AWS)、Microsoft Azureの
導入支援サービスのご相談、お問い合わせをお待ちしております。

ページ上部へ戻る