# イベントマネージャー /Event Manager

> Manage standard and custom events, view event health, and create event parameters in the Event Manager.

イベントマネージャーを使用すると、設定済みイベントを表示して、カスタムイベントを作成できます。イベントは、`newPlayer` (ゲームの新規インストール) や `gameEnded` (ゲームの終了) など、特定のゲーム内行動を追跡します。

## イベントとは

イベントとは、ゲームが実行されるとき、またはプレイヤーが何かを行う (宝物を見つけたりアイテムを買ったりする) ときに、ゲームで発生するアクションです。イベントには、イベントに関連するコンテキスト依存情報 (取得したアイテム、プレイヤーが保持している通貨、アイテムの獲得方法など) が含まれます。これらをゲームに合わせてカスタマイズして、役立つ情報を送信することができます。イベントは、データエクスプローラーやファネルを介して、プレイヤーのエンゲージメント、課金、コンバージョンを測定するために使用できます。

イベントは、その時点でのプレイヤーの状態のスナップショットを提供します。また、履歴の 1 つの時点として、そのプレイヤーの行動の形成に使用されます。イベントは、プレイヤーのアクションと状態が記述された小容量の JSON ドキュメントとして送信されます。

イベントは、ゲームの特定の時点について説明するパラメーターのコレクションです。例えば、`MissionStarted` と `MissionCompleted` にはパラメーター `missionID` および `missionName` が含まれ、どのミッションが開始し、どのミッションが完了したかがわかります。

## イベント

標準イベントはすぐに使用できるイベントであり、インストルメンテーションまたは開発者による設定が必要ありません。これらのイベントは、Unity Analytics で提供される指標や KPI の計算に使用されます。

標準イベントがトリガーされるのは、プレイヤーが主要なアクションを実行するときです。以下のようなことがわかります。プレイヤーのエンゲージメントはどうか、実績が最も高いのはどの国か、実績が低いのはどのオーディエンスか。

使用可能な標準イベント:

| イベント名                | 説明                                                                                                                                      | トリガータイプ                            |
| -------------------- | --------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------- |
| aquisitionSource     | ユーザーが獲得されたチャンネルの情報を記録します。このイベントには、アトリビューションプロバイダーの SDK から得られる情報が設定されます。                                                                 | 手動トリガーが必要                          |
| newPlayer            | 新規プレイヤーがデバイスにアプリケーションをインストールしたときに送信されます。                                                                                                | 自動                                 |
| gameStarted          | 新規セッションの開始時に送信されます。新規セッションは、ユーザーが初めてアプリケーションを起動したときに開始します。                                                                              | 自動                                 |
| gameEnded            | プレイヤーがゲームを終了したときに送信されます。                                                                                                                | 自動                                 |
| gameRunning          | セッションアクティビティを検出するためにアプリケーションが実行されている場合に定期的に送信されます。                                                                                      | 60 秒おきに自動 (最後の確認からイベントが送信されていない場合) |
| clientDevice         | ユーザーが初めてアプリケーションを起動したとき、およびデバイス情報が変更されたときに記録します。                                                                                        | 自動                                 |
| ddnaForgetMe         | プレイヤーがデータ収集をオプトアウトしたときに記録します。                                                                                                           | 自動                                 |
| adImpression         | プレイヤーにゲーム内で広告が表示されたときに手動で送信できます。                                                                                                        | 手動トリガーが必要                          |
| transaction          | プレイヤーがアプリ内課金を行ったときに送信され、購入金額を追跡します。トランザクション検証は [Unity IAP](https://docs.unity3d.com/Manual/UnityIAPValidatingReceipts.html) を介して実行できます。 | 手動トリガーが必要                          |
| transactionFailed    | プレイヤーがアプリ内課金トランザクションに失敗したときに送信されます。成功したトランザクションはトランザクションイベントによって追跡されます。                                                                 | 手動トリガーが必要                          |
| sdkStart             | SDK が初期化したときに送信されます。                                                                                                                    | 自動                                 |
| notificationOpened   | プッシュ通知が開かれたか、ゲームが前面にある間に通知が受信されたときに送信されます。                                                                                              | 自動                                 |
| notificationServices | プレイヤーのプッシュ通知トークンを記録します。                                                                                                                 | 自動                                 |
| outOfGameSend        | プッシュ通知がプレイヤーに送信されたときに送信されます。                                                                                                            | 自動                                 |
| userAssignment       | レポートのためにプレイヤーをキャンペーンに自動的に割り当てます。                                                                                                        | 自動                                 |

## カスタムイベント

Unity Analytics には標準イベントが用意されており、追加設定不要で機能します。ただし、SDK をゲームにダウンロードして実装することで、カスタムイベントを作成できます。カスタムイベント作成ワークフローは、Unity Dashboard で実行できるようになります。いずれ Unity エディターも対応する予定です。

> **Note:**
>
> 従来の Unity Analytics のカスタムイベントは、UGS イベントマネージャーで再び作成する必要があります。そうすることで、送信するデータが、UGS Analytics で受信されて有効と見なされるようになります。

イベントは Unity Dashboard で見ることができます。また、カスタムイベントの作成と編集、イベントパフォーマンスの分析は、データエクスプローラーで行うことができます。

Analytics バックエンドによってイベントが無効として拒否されるシナリオを以下に示します。

* イベントがユーザーのデバイスで収集された時点のタイムスタンプが、イベントがバックエンドサービスに取り込まれる時点のタイムスタンプ **から** 30 日 **よりも前** のものです。
* イベントがユーザーのデバイスで収集された時点のタイムスタンプが、イベントがバックエンドサービスに取り込まれる時点のタイムスタンプ **から** 24 時間 **よりも先** のものです。

### Unity Dashboard でのカスタムイベントの作成

1. **Event Manager** (イベントマネージャー) に移動し、**Add New** (新しく追加) > **Custom Event** (カスタムイベント) を選択し、カスタムイベントの名前と説明を指定します。イベント名の先頭は、文字にする必要があります。名前には英数字とアンダースコアのみを使用してください。カスタムイベントは有効と無効を切り替えることができますが、削除することはできません。
2. イベントマネージャーの作成ウィンドウでパラメーターを割り当てることができます。**Assign Parameter** (パラメーターを割り当てる) > **Create New Parameter** (新しいパラメーターを作成) を選択して、独自のパラメーターを作成します。パラメーターには、名前、説明、データ型が必要です。パラメーター名の先頭は、文字にする必要があります。名前には英数字とアンダースコアのみを使用してください。パラメーターは編集できますが、削除することはできません。データ型は、string、integer、float、bool です。最大 1,500 個のパラメーターを環境に追加できます。
3. イベントが **Enabled** (有効) に設定されていることと、ダッシュボードに定義したスキーマがゲームコードに定義されているスキーマと一致していることを確認します。
4. Event Manager (イベントマネージャー) ページでもパラメーターを作成できます。**Add New** (新しく追加) > **Custom Parameter** (カスタムパラメーター) を選択し、名前、説明、型を指定します。


**Frame:**
![](/api/media?file=/analytics/media/images/event-manager-parameter.png)

5. また、イベントを作成しているときに、イベントの他の環境へのコピーを選択することもできます。**Copy to Environment** (環境にコピー) を選択し、リストから環境を選択します。一度に複数の環境を選択できます。


**Frame:**
![](/api/media?file=/analytics/media/images/event-manager-event-create-on-event-copy.png)

6. **ノート:** **Enable Event** (イベントを有効化) を選択しても、イベントが有効化され、選択した環境にコピーされます。

### カスタムイベントの別の環境へのコピー

イベントマネージャーを使用して複数のカスタムイベントを別の環境にコピーできます。

**ノート:** イベントを別の環境にコピーできないのは、そのイベントがすでにコピー先の環境に存在している場合です。

1. コピーするイベントを選択します。


   **Frame:**
   ![](/api/media?file=/analytics/media/images/event-manager-events-list.png)
2. **Copy to Environment** (環境にコピー) を選択します。
3. イベントのコピー先として 1 つ以上の環境を選択します。


   **Frame:**
   ![](/api/media?file=/analytics/media/images/event-manager-event-copy-drawer.png)
4. コピーしたイベントを作成時に有効にするかどうかを選択します (任意)。
5. **Confirm** (確認) を選択して、コピー操作を実行します。
6. 各イベントコピー操作の結果を確認する通知を受け取ります。


   **Frame:**
   ![](/api/media?file=/analytics/media/images/event-manager-event-copy-notifications.png)

### データエクスプローラーでの標準イベントとカスタムイベントの表示および分析

データエクスプローラーを使用して、一定期間の標準データとカスタムデータをグラフやテーブルで視覚化します。関連付けられたパラメーターを選択し、ディメンションとパラメーターのフィルターを適用します。標準のフィルターは、場所、プラットフォーム、バージョン、オーディエンスです。

カスタムイベントも、該当するパラメーターによってフィルター処理できます。パラメーターは任意ですが、一意ユーザーは常に存在し、特定の日にそのイベントをトリガーした一意ユーザーの数を表します。パラメーターの型は、string、integer、float、bool のいずれかです。


**Frame:**
![イベントに関連付けられているパラメーターのリスト。](/api/media?file=/analytics/media/images/parameters.png)

使用可能なパラメーターをグループ化して、ゲームに関する情報を取得できます。最も人気があるレベルや、多くのプレイヤーが好むプレイの難易度などを、確認します。
