Mattermost 記事まとめ: https://blog.kaakaa.dev/tags/mattermost/
Twitter: @mattermost_jp で Mattermost に関する日本語の情報を提供しています。
はじめに
2022/04/16 に Mattermost の新しいバージョン v6.6.0
がリリースされました。
本記事は、個人的に気になった新しい機能などを動かしてみることを目的としています。 変更内容の詳細については公式のリリースを確認してください。
アップグレード時の注意事項
Mattermostと他システムを連携する仕組みの一つであるMattermost Apps Frameworkのプロトコルの一部に破壊的な変更があります。今までのバージョンでbinding
やform
のリクエストを送信する際にcall
要素として設定していた値が、submit
,form
,refresh
,lookup
要素に分割されました。以前のバージョンで動作するよう開発していたAppsは、新しいプロトコル向けに修正する必要があります。
各機能の見出し前の記号は、その機能が利用可能なエディションを表しています。
見出しの前に何もない場合、Starter(OSS 版)でも利用可能な機能です。
また、各見出しにPrefixとしてMattermostの機能分類を記述しています。
- Channels: 従来のチャット機能
- Playbook: Mattermost v6.0から追加されたインシデント管理機能
- Boards: Mattermost v6.0から追加されたKanbanボード機能 (Focalboard)
Channels: トリガーとアクション
ユーザーがMattermost上で特定の行動(トリガー)を行った場合に、自動で実行されるアクションをMattermost上で定義できるようになりました。対象となるのは後述する2つのトリガー/アクションのみですが、コードを書くことなく、Mattermost上の操作だけで設定することができます。
(本機能はMattermost Plugin Playbooks v1.27により追加される機能だと思われます。そのため、Playbooksプラグインのバージョンが古い、Playbooksプラグインが有効になっていない等の場合は後述のChannel Actionsを追加するメニューが表示されません。メニューが表示されない場合は、システムコンソール > プラグイン管理 > インストール済みプラグインからPlaybooks v1.27が有効になっていることを確認してみてください。)
設定方法
トリガーとアクションはチャンネルごとに チャンネルメニュー > Channel Actions から設定することができます。設定するにはチャンネル管理者の権限が必要です。
トリガー1: ユーザーがチャンネルに参加した時
“ユーザーへ一時的なウェルカムメッセージを送信する“を設定することで、新たにユーザーがチャンネルに参加した際に、そのユーザーのみが閲覧できるメッセージを表示することができます。新たにチャンネルに参加したユーザーに目を通しておいて欲しい情報や、チャンネルの運用ルール等を自動で伝えることができます。
また、”ユーザーのサイドバーカテゴリにチャンネルを追加する“から、参加したチャンネルを左サイドバーのどのカテゴリに追加するかを指定することもできます。参加したユーザーの左サイドバーに追加先のカテゴリが存在しない場合は自動で作成されます。
このチャンネルアクションを設定したチャンネルに参加すると、以下のように左サイドバーの指定したカテゴリにチャンネルが表示され、ウェルカムメッセージが表示されます。(左サイドバーのカテゴリに移動するまでに多少時間がかかることがあります。)
トリガー2: 特定のキーワードを含むメッセージを投稿した時
“これらのキーワードを含むメッセージが投稿された場合“で設定したキーワードを含むメッセージが投稿された際に、Playbookを開始するかどうかを尋ねるダイアログを自動で表示することができます。
この機能を使うことで、例えば「システムのモニタリングツールがpriority: high;
というキーワードを含むメッセージをMattermostに投稿すると、SREチームがインシデント対応手順を即座に開始する」というようなフローを組むことができるようになります。
Channels: メッセージアクションの表示位置変更
PluginやAppsによりメッセージのコンテキストメニューに独自のメニューを追加することができますが、このメニューの表示位置が変更されました。
今までのバージョンでは、Plugin/Appsによって追加されたメニューもMattermostデフォルトのメッセージアクション(編集、削除など)と並列に表示されていましたが、本バージョンからはカスタムアクション専用のボタンが表示されるようになりました。
(Enterprise) Playbooks: レトロスペクティブメトリクス
Playbookの各実行完了後に、任意のメトリクスを4つまで入力できるようになりました。入力したメトリクス値の統計情報を自動で計算・表示してくれるため、インシデント対応のパフォーマンス指標などに利用することができます。
(Enterprise限定機能であるかのように説明されていますが、Team Editionでも利用できそう?)
設定
まず、Playbookに関するメトリクスを収集するために、収集対象のキーメトリクスを設定する必要があります。キーメトリクスとは、Playbook編集画面のレトロスペクティブ
タブから設定することができます。
メトリクス値の入力
Playbookにキーメトリクスを設定しておくと、Playbookの実行が完了した後に入力を促されるレトロスペクティブ編集画面で、設定したキーメトリクスの入力欄が表示されるようになります。
メトリクス統計情報の確認
キーメトリクスを入力してレトロスペクティブを発行すると、Playbook概要ページのキーメトリクス
タブから、入力したメトリクスの統計値や推移を確認できるようになります。
その他の変更
Integrations: App FrameworkがGeneral Availabilityに
開発者プレビュー版として公開されていたMattermost Apps FrameworkがGeneral Availabilityになりました。 App Frameworkは、Plugin機能に近い拡張性を持ち、どんなプログラミング言語でも記述でき、さらにサーバーレス技術を使ったホスティングも可能なMattermostの統合機能です。
今までのバージョンでは、App Frameworkを利用するにはmattermost-plugin-appsというプラグインを自身でアップロードする必要がありましたが、このv6.6からは全てのMattermostサーバーで自動で有効になります。
Mattermost Apps Frameworkについて日本語で書かれている記事は、以下のようなものがあります。
(Mattermost Apps Frameworkの開発者向けプレビュー版が公開された当時に書かれたもののため、記述内容が古くなっている可能性があります。)
- Mattermost Apps Frameworkを触ってみた
- Mattermost Apps Framework をJava (JAX-RS)で試してみた – maruTA(Bis5)’s Weblog – Side T:echnology
チャンネル情報が右サイドバーに
チャンネル情報を表示するためのボタンがチャンネルヘッダ部分に追加されました。 ボタンをクリックすると、右サイドバーにチャンネル情報が表示されます。
おわりに
次のv6.7
のリリースは 2022/05/16(Mon)を予定しています。