ドキュメント

サポート

Cloud Code

トリガーの構造

Understand the structure of a trigger configuration that defines what to invoke when an event fires.
読み終わるまでの所要時間 2 分最終更新 23日前

トリガー設定では、イベントが発生したときに呼び出す必要のあるものを定義します。 以下のようになります。
{ "name" : "example-trigger", "eventType" : "com.unity.services.{{SERVICE_NAME}}.{{EVENT_NAME}}.v{{EVENT_VERSION}}", "actionUrn" : "urn:ugs:cloud-code:{{SCRIPT}}", "actionType" : "cloud-code", "filter": "data['parameter'] == 'value'"}
  • name
    : トリガーの名前。プロジェクトごとに一意である必要があります。
  • eventType
    : トリガーをイベントと照合するために使用されます。イベント設定の
    eventName
    および
    payloadVersion
    フィールドに対応する
    eventName
    および
    eventVersion
    フィールドから構成されます。
  • actionUrn
    : トリガーが発生したときに呼び出す必要のあるものを定義します。例えば、
    urn:ugs:cloud-code:TestScript
    TestScript
    Cloud Code スクリプトを呼び出し、
    urn:ugs:cloud-code:TestModule/TestFunction
    TestModule
    Cloud Code モジュール内の
    TestFunction
    関数を呼び出します。
  • actionType
    : トリガーが発生したときに実行されるアクションのタイプ。現在、
    cloud-code
    のみがサポートされています。
  • filter
    : トリガーが起動するために満たす必要がある条件を定義する任意のフィールド。条件が満たされない場合、トリガーは起動しません。詳細については、フィルター を参照してください。

イベントとのオーバーラップ

Triggers は、イベントに関連付けられています。イベントが発生すると、関連付けられたトリガーが呼び出されます。イベントとトリガーは、同じ
eventName
および
payloadVersion
設定を共有する必要があります。

スケジュールされたイベント

以下のスケジュール設定があります。
{ "name" : "recurring-schedule", "eventName": "example-event", "type": "recurring", "schedule": "0 0 * * *", "payloadVersion": 1, "payload": "{\"someBoolean\": true, \"someString\": \"something\"}"}
以下のトリガー設定があります。
{ "name" : "example-trigger", "eventType" : "com.unity.services.scheduler.example-event.v1", "actionUrn" : "urn:ugs:cloud-code:my-script", "actionType" : "cloud-code"}
トリガー設定の
eventType
フィールドをスケジュール設定の
eventName
および
payloadVersion
フィールドに設定することでトリガーをイベントタイプに関連付けることができます。
スケジュール設定がデプロイされると、指定された時刻にスケジュールがトリガーされ、イベントが Triggers サービスに送信されて、そこで関連付けられた Cloud Code リソースが呼び出されます。

UGS イベント

UGS からトリガーをイベントタイプに関連付ける場合、トリガー設定でイベントタイプを指定する必要があります。 例えば、Authentication: サインアップ イベントでトリガーを発生させる場合は、以下のトリガー設定を作成できます。
{ "name" : "example-trigger", "eventType" : "com.unity.services.player-auth.signed-up.v1", "actionUrn" : "urn:ugs:cloud-code:my-script", "actionType" : "cloud-code"}
ユーザーがサインアップするたびに、トリガーが発生し、
my-script
Cloud Code スクリプトが呼び出されます。

トリガーごとに複数のイベント

同じイベントを複数のトリガーに関連付けることができます。 例えば、ユーザーがサインアップしたときに呼び出される 2 つのトリガーを作成できます。 最初のトリガーは、
add-cloud-save-data
スクリプトを呼び出して、認証されたユーザーの Cloud Save データエントリーを追加します。
{ "name" : "auth-cloud-save", "eventType" : "com.unity.services.player-auth.signed-up.v1", "actionUrn" : "urn:ugs:cloud-code:add-cloud-save-data", "actionType" : "cloud-code"}
2 番目のトリガーは、
Economy
モジュールから
add-economy-items
エンドポイントを呼び出して、認証されたユーザーに仮想アイテムを追加します。
{ "name" : "auth-economy", "eventType" : "com.unity.services.player-auth.signed-up.v1", "actionUrn" : "urn:ugs:cloud-code:Economy/add-economy-items", "actionType" : "cloud-code"}
ユーザーがサインアップするたびに、両方のトリガーが起動し、関連する Cloud Code リソースが呼び出されます。