Use Slack and Confluence Data Center together
How do I install the Confluence Data Center for Slack app in Confluence?
Head to the Atlassian Marketplace to download the Confluence Data Center for Slack app.
How do I connect the Confluence Data Center for Slack app to my Confluence site?
Slack を使用するには、Confluence インスタンスに安全な接続 (HTTPS) によってインターネット経由でアクセスできる必要があります。したがって、セキュリティで保護されたポートを開いて、サーバーに有効な証明書があることを確認する必要があります。
このオプションでない場合でも、Confluence から Slack への通知を提供するカスタム Slack アプリを作成して、Slack との制限付きの接続を設定できます。アプリの作成方法については、以下のページをご覧ください。
管理者は、[Confluence 管理] の下に [Slack 統合] ナビゲーション アイテムを確認できます。
ここで [Connect Slack Team] を選択します。
You'll then be taken to Slack's App Directory to install the Confluence Data Center Slack app. Click the green "Install" button for the Slack app and complete Slack's OAuth process.
Once you complete the OAuth process in Slack, you'll then see a new configuration page for your integration. Scroll to the bottom to see the two fields you need to complete. First, add your Confluence Data Center web address. Please do not include a trailing / after your web address. Second, you'll want to copy the contents of box #2 back into your Confluence setup.
Paste the credentials into the Confluence configuration on the Confluence Data Center side. Click save here, and be sure to click "Submit" in your Slack window (screenshot above).
Once the connection has been setup, you'll receive a success notification from Confluence Data Center in your direct message with Slackbot.
どのように Slack に通知を投稿するためのスペースをセットアップしますか?
Slack チャンネルに接続するには、最初に Slack アカウントへのアクセスを確認する必要があります。設定していない場合は (プロジェクト/グローバル管理者を問わず)、Confluence の Slack 統合画面の [接続ステータス] に設定用リンクが表示されます。リンクをクリックすると Slack の認証リンクに転送されて、自身のチャンネルをアプリが参照できるようになります。
このステップを完了すると、"You're accessing Slack as [Your Name
(として Slack にアクセスしています)]" というメッセージが表示されて、ドロップダウンからプライベート チャンネルを選択できるようになります。Slack インテグレーションに自身のプライベート チャンネルを接続するすべてのユーザーは、このステップを実行する必要があります。
Confluence 管理者の場合
管理画面の [アプリケーション] セクションで、[統合] の下に [Slack 統合] が表示されます。ここから、Confluence スペースをさまざまな Slack チャンネルに接続できます。
チャンネルを選択すると、Slack への接続が次の表のように表示されます。また、Slack では、Confluence 通知がセットアップされた旨を示す通知が対象のチャンネルに送信されます。
Confluence の設定メニューから、作成済みのブログ投稿、作成済みのページ、アップデート済みのイベントの通知をサブスクライブまたはサブスクライブ解除することで、そのチャンネルに送信する通知を正確に絞り込めます。
スペース管理者の場合
スペース管理者は、自身の Slack 通知をセットアップして設定できます。Confluence スペースの [スペース ツール] の下に、Slack 統合のリンクが表示されます。スペース管理者はこのページから、対象のスペースで現在接続されている Slack チャンネルを確認したり、新しい接続をセットアップしたりできます。
どのように個人通知を設定しますか?
統合によって、bot からのダイレクト メッセージを介して Slack で特定の個人通知を受信できます。
- Confluence ユーザー プロファイル ページに移動します。
- [設定] > [Slack 通知] の順にクリックします。
- 次のページで、通知を受信するタイミングと希望する Slack ワークスペースに関するオプションを選択します。
How do I connect Confluence Data Center to a direct message or multi party direct message?
Unfortunately, it's not possible to set up Confluence Data Center notifications into Slack's direct messages or multi party direct messages.
Alternatively we suggest setting up a private channel and configuring notifications to route there.
異なる Slack ワークスペースへの接続方法
The Confluence Data Center for Slack app supports the ability to connect to multiple Slack Workspaces, such as in a Slack Enterprise Grid. To do so, on any of the Slack integration pages in Confluence, you should see a dropdown of workspaces at the top. To connect to a new workspace, click this and click "Connect to a new team." Please follow the steps from above to connect your new workspace to this Confluence Data Center instance.
I use multiple Confluence Data Center instances or my instances are behind a firewall. How do I connect them to Slack?
The process for setting up additional Confluence Data Center instances with Slack takes some manual configuration to setup. Please ensure that you follow the below steps perfectly to ensure proper connectivity between your Confluence Data Center instance and Slack. You can repeat this process multiple times for each additional Confluence Data Center instance you have.
始めるには、まず https://api.slack.com/apps?new_classic_app=1 をご確認ください。Slack では、現時点でこのアプリと互換性のない新しい権限モデルがリリースされているため、クラシック スコープでアプリを作成するようにしてください。
スラッシュ コマンド
Confluence インスタンスがファイアウォールに保護されている場合は Slack はアクセスできないので、このセクションをスキップできます。
スラッシュ コマンドを使用すると、ユーザーは Slack のメッセージ ボックスからアプリとのインタラクションを直接トリガーできます。
アプリの設定で [スラッシュ コマンド] に移動します。
[新しいコマンドを作成] をクリックします。
Copy the details of this command over, replacing {{url}} with your Confluence Data Center's URL:
Command name:/confluence_server
Request URL:https://{{url}}/rest/slack/latest/command
Usage hint:account, help
コマンド名が、ワークスペース内の別の Slack アプリで使用されていないことを確認します。
保存すると、新しいスラッシュ コマンドが一覧に表示されます。
[Features] の [OAuth & Permissions] に進みます。
OAuth と権限
First, we'll click "Add New Redirect URL". Set this to http://{{url}}/rest/slack/latest/oauth
. Again, replace {{url}} with your Confluence Data Center's URL. Make sure to click "Save URLs".
次に、[範囲] セクションまで下にスクロールします。次のスコープを追加します。
|
|
|
---|---|---|
|
|
|
|
|
|
すべてのスコープを追加したことを確認したら [Save] をクリックします。
bot はこれらのスコープがすべて設定されている場合にのみ、適切に動作します。bot の動作であとから問題があった場合は、すべての必要な権限が設定されているかどうかをここで確認します。
Bot ユーザー
[Features] ナビゲーション バーで [Bot Users] をクリックして、[Add a Bot User] をクリックします。
表示名と既定のユーザー名には任意の値を設定できます (例: Finance Confluence)。下部にある緑色の [Bot ユーザーを追加] ボタンをクリックします。
イベント サブスクリプション
Confluence インスタンスがファイアウォールに保護されている場合は Slack はアクセスできないので、このセクションをスキップできます。
[Event Subscriptions] ナビゲーション メニュー アイテムをクリックして、[Enable Events] トグル ボタンをクリックします。
Add your Request URL https://{{url}}/rest/slack/latest/event
and click Change. Please validate that it says "Verified" to ensure your connection between Slack and your Confluence Data Center instance
これで、[Workspace Events] で次のイベントをサブスクライブできます。
app_uninstalled | channel_archive | channel_deleted | channel_unarchive | group_archive |
group_deleted | group_unarchive | link_shared | tokens_revoked |
[Bot Events] にスクロールすると、次のイベントを追加できます。
|
|
|
|
|
|
Scroll down to App Unfurl Domains and add your Confluence Data Center domain.
すべてのイベントが追加されたことを確認したら [Save Changes] をクリックします。
アプリのインストール
設定の [Install App] > [Install App to Workspace] をクリックすることで、ワークスペースにアプリをインストールできます。
In the Confluence config screen, click the "Connect to a new Team" menu item. Then click on "advanced" for connection type. You'll need to copy each of the settings from your Slack app configuration into this screen. Once completed, you'll be able to start using your Confluence Data Center integration.
Confluence インスタンスを複数のワークスペースに接続するために作成した Slack アプリを配布できますか?
上記の手順に従ってカスタム アプリを作成した場合は可能です。
まず、インスタンスには、アプリの認証情報を使用するワークスペースとの接続が 1 つ以上必要です。これが必要なのは、統合がアプリのクライアントとシークレットを認識するためです。
次に、Slack でインストール URL を見つけます。
- アプリを Slack API ページで探します。
- [設定] から [配布を管理] に移動します。
- 他のワークスペースで配布を有効化します。そのためには、Slack の要件を満たす必要があります。
- 共有可能な URL をコピーします。
- ブラウザで共有可能な URL に移動します。それによって、インストール フローがトリガーされます。
- ターゲット ワークスペースを選択して続行します。
- この時点で、アプリと統合が正しくセットアップされている場合は、Confluence の統合設定ページにリダイレクトされて新しい接続はすでにセットアップされているはずです。
Data Center 製品での連携の使用可否について
はい、この統合は Confluence Data Center と完璧な互換性があります。
Which Slash commands does the Confluence Data Center integration support?
統合とのやり取りでは、以下のスラッシュ コマンドを使用できます。
スラッシュ コマンド | 操作 |
---|---|
| 特定の用語を Confluence ページとブログ全体で検索 |
/confluence_server account | 現在の Slack ユーザーが接続している Confluence アカウントを表示 |
/confluence_server help | スラッシュ コマンドのヘルプ情報を表示します。 |
どのように統合を微調整できますか?
次の表に示すように、統合の特定の部分を調整できるさまざまなシステム プロパティを使用できます。
システム プロパティ名 | 説明 | プラグインのデフォルト値 |
---|---|---|
slack.client.max.channel.bulk.load | 管理ページで使用される、一度に取得される Slack チャンネルの最大数。どのように Slack のレートが統合を制限するかに影響します。 | 50 |
slack.client.list.all.conversations | 有効にすると、設定ページのチャンネル セレクターのドロップダウンに、ユーザー チャンネルではなく選択したワークスペースのすべての Slack チャンネルが表示されます。
| false |
slack.client.pagination.limit |
| 2 |
slack.client.retry.on.connection.failure | 接続の確立に失敗した場合に再試行する OkHttp3 ブール型フラグ。製品ドキュメント。 | true |
slack.client.connect.timeout | 新しい接続を確立する際の OkHttp3 タイムアウト (ミリ秒)。製品ドキュメント。 | 3000 |
slack.client.read.timeout | データの接続を待機している間の OkHttp 3 タイムアウト (ミリ秒)。製品ドキュメント。 | 10000 |
slack.client.retry.count | Slack クライアントに 5xx レスポンスが返された場合に再試行する回数。バックオフ遅延 (秒) はそれぞれ、1、3、5、8、13、30 秒です。 | 3 |
slack.client.rate.limit.retry.count | Slack から 429 HTTP レスポンスが返された場合に、Slack クライアントが再試行する回数。製品ドキュメント。デフォルトで、Slack は Retry-After ヘッダーを、クライアントが次の試行を遅らせるために使用する時間間隔で返します。 | 3 |
slack.client.thread.pool.size | Slack 通知を処理するスレッドの数と、Slack からの受信リクエストの処理能力など、統合のその他の非同期操作にも影響します。 | 5 |
slack.client.queue.size | 統合によって消費されるメモリを制限します。たとえば、イベントの大きなスパイクによって一度に多数の通知がトリガーされてキューの最大サイズに達すると、新しい通知をスケジュールする試行は失敗してそれらの通知が削除されます。 デフォルト値が 1000 の場合は、処理するキューに変更を加えることなく、基本的に同様に発生する 1001 以上のイベントが必要となることにご注意ください。そのコンテキストで Slack 通知が有効になっている場合は、大規模な一括編集を行うとその制限に達する可能性があります。 | 1000 |
slack.client.cache.expire.seconds | Slack リクエストからキャッシュされた値 (チャンネルやユーザー名など) が失効するまでの時間 (秒)。値は Slack トークンに従ってキャッシュされるため、すべての値はそれぞれの Slack ユーザーに制限されます。 | 900 (15 分) |
slack.search.max.results | 検索スラッシュ コマンドから返される結果の最大件数。 | 5 |
クラスタ環境の場合は、システム プロパティの一部とこれらのプロパティが表す上限がノードに個別に影響します。そのため、キュー サイズなどの制限は、クラスタで使用可能なノードの数に応じて拡張されます。
どのように統合をトラブルシューティングできますか?
デバッグ ロギング
次のパッケージを使用して、設定で DEBUG
レベル ログを有効にできます。
com.atlassian.plugins.slack
com.atlassian.confluence.plugins.slack
Slack からの接続
インスタンスと Slack の間の接続に問題がある場合は、以下を再確認してください。
- Slack は、HTTPS でセキュリティ保護された URL を介してインスタンスに到達できる。
- Slack アプリの設定で、末尾にスラッシュを付けずにベース URL を適切に保存している。
<baseUrl>/rest/slack/latest/*
パスがファイアウォールでホワイトリストに登録されて、セキュリティ フィルターが適用されていることを確認する。- Slack からの受信リクエストでは異なる認証メカニズムが使用されるため、これらのパスによって「匿名」リクエストが許可されることを確認する。
- インスタンスを公開できない場合でも、このページ説明に従ってカスタム アプリを作成することで、通知専用モードで統合を利用できる。
検証イベント エンドポイントにリクエストを実行することで、統合が利用可能かどうかを確認できます。bash ターミナルでは、次のコマンドで実行できます。
curl -X POST \
https://<confluence-base-url>/rest/slack/latest/event \
-H 'Content-Type: application/json' \
-H "X-Slack-Request-Timestamp: $(date +%s)" \
-H 'X-Slack-Signature: any-value' \
-d '{"challenge": "boo","type": "url_verification"}'
Slack でのインスタンス URL の送信失敗
インスタンスの URL を送信する際に、アプリがワークスペースから削除された直後に「Oops」エラーが発生することがあります。これは、Slack がアンインストールを完了する前にインスタンスに到達しようとするためです。
この問題は、15 分以内に自動的に修正されるか Slack によってプロセスが終了します。
ページ アップデートに関する通知が送信されない
ページの編集時にユーザーが「ウォッチャーへの通知」チェックボックスのチェックを外すと、アップデート通知は送信されません。
これはアトラシアンのサポート対象ですか?
はい、もちろんです。この統合機能は、アトラシアンがビルドして保守しています。サポートが必要な場合は、support.atlassian.com にアクセスしてください。