기술 자료

지원

Cloud Code

Cloud Code

트리거 구조

Understand the structure of a trigger configuration that defines what to invoke when an event fires.
읽는 시간 1분최근 업데이트: 한 달 전

트리거 구성은 이벤트가 발생할 때 호출해야 할 항목을 정의합니다. 예시는 다음과 같습니다.
{ "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
    eventVersion
    필드로 구성되며, 각각 이벤트 구성의
    eventName
    payloadVersion
    필드와 상응합니다.
  • actionUrn
    : 트리거가 발동할 때 호출할 항목을 정의합니다. 예를 들어,
    urn:ugs:cloud-code:TestScript
    TestScript
    Cloud Code 스크립트를 호출하고,
    urn:ugs:cloud-code:TestModule/TestFunction
    TestModule
    Cloud Code 모듈의
    TestFunction
    함수를 호출합니다.
  • actionType
    : 트리거가 발동할 때 실행할 작업 유형입니다. 현재
    cloud-code
    만 지원됩니다.
  • filter
    : 트리거가 실행되기 위해 충족되어야 하는 조건을 정의하는 선택 사항 필드입니다. 조건이 충족되지 않으면 트리거가 실행되지 않습니다. 자세한 내용은 필터를 참고하십시오.

이벤트와 오버랩

트리거는 이벤트와 연결됩니다. 이벤트가 발생하면 연결된 트리거가 호출됩니다. 이벤트와 트리거는 동일한
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 서비스로 전송하며, 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"}
두 번째 트리거는
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 리소스가 호출됩니다.