# プロジェクトインテグレーションワークフロー

> Integrate Unity Build Automation with external services for notifications and workflow automation.

Unity Build Automation (UBA) を使用して Unity Cloud プロジェクトを外部サービスに接続し、ビルドの状態やその他の重要なイベントに関する通知を自動的に受信できるようにします。これらのインテグレーションにより、チームにリアルタイムで情報が提供されるため、ワークフローの合理化に役立ちます。

新しいプロジェクトインテグレーションを作成するには、以下のタスクを完了します。

1. [プロジェクトインテグレーションへのアクセス](#access-project-integrations)
2. [インテグレーションの作成](#create-the-integration)
3. [サービスとイベントのサブスクライブ](#subscribe-to-services-and-events)
4. [インテグレーションの保存](#save-the-integration)
5. [インテグレーションのテスト](#test-your-integration)
6. [インテグレーションの編集と管理](#edit-and-manage-your-integration)

## プロジェクトインテグレーションへのアクセス##access-project-integrations

Project integrations (プロジェクトインテグレーション) ページには、プロジェクトに構成されているすべてのインテグレーションのリストが、現在の状態とともに表示されます。

1. [Unity Dashboard](https://cloud.unity.com) で、**Administration** (管理) タブを選択します。
2. **Integrations** (インテグレーション) の **Project Integrations** (プロジェクトインテグレーション) を選択します。

### サポート対象のインテグレーション##supported-integrations

UBA では現在、以下のインテグレーションをサポートしています。

* **Discord**
* **Microsoft Teams**
* **Slack**
* **ウェブフック**

> **Note:**
>
> **ノート**: Slack メッセージのフォーマットのカスタマイズなどの詳細設定については、統合する特定のサービスのドキュメントを参照してください。

## インテグレーションの作成##create-the-integration

1. **Project integrations** (プロジェクトインテグレーション) ページで、**New integration** (新規インテグレーション) を選択します。
2. ドロップダウンメニューから設定するインテグレーションの種類を選択します。
3. 選択したインテグレーションサービスの接続の詳細と設定を入力します。

### ウェブフックインテグレーションの構成##configure-a-webhook-integration

カスタムウェブフックを使用して通知を送信するサードパーティ製のインテグレーションの場合、以下のフィールドを構成する必要があります。

| フィールド                                                  | 説明                                                                                                                            |
| ------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------- |
| **Display name** (表示名)                                 | ウェブフックインテグレーションを識別するための名前。                                                                                                    |
| **Webhook URL** (ウェブフック URL)                           | UBA が `HTTP POST` リクエストを送信するエンドポイント。設定に応じて、この URL がパブリックインターネットまたはプライベートネットワークからアクセスできることを確認します。                              |
| **Authorization secret** (承認シークレット) (任意)               | 選択した **承認タイプ** に応じて、UBA がリクエストのヘッダーまたはペイロードに加えるシークレットトークン。このシークレットトークンを使用して、受信したリクエストが UBA から発信されていることを確認します。                 |
| **Authorization type** (承認タイプ)                         | UBA が承認シークレットを送信する方法: \_ **共有シークレット**: UBA では、ヘッダーまたはペイロードフィールドにシークレットが含まれます (サービスによって異なります)。\_ 設定によっては、他のオプションが表示される場合もあります。 |
| **Content type** (コンテンツタイプ)                            | UBA がデータ送信に使用する形式。例えば `application/json` などです。                                                                                |
| **Disable SSL/TLS verification** (SSL/TLS 検証の無効化) (任意) | 有効にすると、UBA は SSL 証明書を検証しません。これはローカルでのテストや自己署名証明書には便利ですが、本番環境では推奨されません。                                                        |

> **Note:**
>
> **ノート**: 一部のサービスでは、受信したリクエストが正当なものであることを確認するために共有シークレットまたはトークンが必要です。Unity 側と外部サービス側の両方で、これが正しく構成されていることを確認してください。


**custom-webhook-config:**
![custom-webhook-config](/api/media?file=/build-automation/media/images/build-automation/integrations/custom-webhook.png "UBA * カスタムウェブフック")

## サービスとイベントのサブスクライブ##subscribe-to-services-and-events

インテグレーションを設定するときに、サブスクライブし、通知を受け取るサービスとイベントを選択します。UBA では、以下のイベントから選択できます。

* ビルド成功
* ビルド失敗
* ビルドキュー入り
* ビルド開始
* ビルドキャンセル
* ビルド再起動
* アップロードローカルビルド

> **Note:**
>
> **ノート**: 必要なイベントのみをサブスクライブします。すべてのイベントをサブスクライブすると、チャネルに不要なノイズが発生する可能性があります。


**uba-events:**
![uba-events](/api/media?file=/build-automation/media/images/build-automation/integrations/uba-integration-events.png "UBA * インテグレーションイベント")

### インテグレーションの保存##save-the-integration

**Create** (作成) を選択して、新しいインテグレーションを **Project Integrations** (プロジェクトインテグレーション) リストに追加します。

> **Note:**
>
> **ノート**: Slack または Discord のインテグレーションの場合、インテグレーションを保存する前に、**Authenticate & create** (認証と作成) を選択して外部サービスで認証します。

## インテグレーションのテスト##test-your-integration

1. Unity Build Automation でビルドをトリガーします。例えば、コードのコミットやビルドの手動開始などです。
2. Slack や Discord チャンネルなどの外部サービスが対応する通知を受信することを確認します。

## インテグレーションの編集と管理##edit-and-manage-your-integration

インテグレーションを作成後、**Project Integrations** (プロジェクトインテグレーション) ページでインテグレーションを管理できます。

* **編集**: インテグレーションの名前、ウェブフック URL、サブスクライブするイベントを更新します。
* **Disable**: インテグレーションを完全に削除せずに、通知を一時的に無効にします。
* **削除**: プロジェクトからインテグレーションを完全に削除します。
