이 페이지에서: 개별 사용자 또는 대상의 라이브 활동을 원격으로 시작, 업데이트 및 종료할 수 있도록 Journey Optimizer에서 API 트리거 캠페인을 빌드합니다.
모바일 구성을 구성하고 Adobe Experience Platform mobile SDK을 구현한 후 Journey Optimizer에서 라이브 활동을 만들 수 있습니다.
-
캠페인 메뉴에 액세스한 다음 캠페인 만들기를 클릭합니다.
-
API 트리거됨 캠페인 유형을 선택하십시오.
-
대상자 기반 캠페인에 대해 API 트리거 마케팅 선택
-
개별 캠페인에 대해 API 트리거 트랜잭션을(를) 선택하십시오.
note important IMPORTANT API 트리거 트랜잭션의 경우 높은 처리량 옵션을 사용할 수 없습니다.
-
-
속성 섹션에서 Campaign의 제목 및 설명을(를) 편집합니다.
-
작업 섹션에서 라이브 활동을 선택하고 새 구성을 선택하거나 만드십시오.
이 페이지에서 실시간 활동 구성에 대해 자세히 알아보세요.
-
콘텐츠 실험 구성을 시작하고 처리를 만들어 성능을 측정하고 대상 대상에 가장 적합한 옵션을 식별하려면 실험 만들기를 클릭하십시오. 자세히 알아보기
-
대상자 탭에서 ID 유형을 선택합니다. 자세히 알아보기.
note NOTE API 트리거 마케팅 캠페인의 경우 API 페이로드에서 APNs channelID 구독을 확인하기 전에 첫 번째 세그먼테이션으로 작동하는 기존 대상을 선택할 수 있습니다. -
캠페인은 특정 날짜 또는 되풀이되는 빈도로 실행되도록 디자인됩니다. 이 섹션에서 캠페인의 일정을 구성하는 방법을 알아보세요.
-
구성이 완료되면 활성화 검토를 클릭한 다음 활성화를 클릭합니다.
-
캠페인이 활성화되면 제공된 cURL 요청을(를) 템플릿으로 사용하여 라이브 활동 시작, 업데이트 또는 종료 이벤트를 트리거합니다. 실행 전에 특정 데이터로 샘플 페이로드를 업데이트합니다.
페이로드에 포함할 캠페인 ID 식별자도 복사하십시오.
➡️ OAuth 토큰 및 API 키를 포함한 인증 요구 사항은 API 트리거된 캠페인 설명서를 참조하십시오.
라이브 활동을 디자인한 후 기본 제공 보고서를 통해 라이브 활동의 영향을 측정하는 방법을 추적할 수 있습니다.
페이로드 예 payload
페이로드 구조는 iOS이 APNs(Apple 푸시 알림 서비스) aps 개체를 사용하는 플랫폼과 FCM(Firebase Cloud Messaging) fcm 개체를 사용하는 플랫폼에 따라 다릅니다. 플랫폼 및 캠페인 유형에 대해 아래 예를 사용하십시오.
iOS 페이로드
iOS의 경우 APNs aps 개체에 개인화 및 라이프사이클 필드를 배치합니다. attributes-type이(가) 앱의 LiveActivityAttributes 구조체 이름과 일치하고 attributes이(가) 해당 구조체에 정의된 필드와 일치하는지 확인하십시오.
단일 사용 사례(API 트리거 트랜잭션 캠페인)
이 페이로드 예는 API 트리거 트랜잭션 캠페인 유형을 사용하는 개별 캠페인에 대한 것입니다. 다음 페이로드 예제의 필드 대부분은 필수이므로 requestId, dismissal-date 및 alert만 선택 사항입니다.
| code language-json |
|---|
|
브로드캐스트 사용 사례(API 트리거 마케팅 캠페인)
이 페이로드 예제는 API 트리거 마케팅 캠페인 유형을 사용하는 대상자 기반 캠페인에 대한 것입니다.
| code language-json |
|---|
|
Android 페이로드
Android의 경우 FCM(Firebase Cloud Messaging) fcm 개체에 라이브 활동 필드를 배치합니다. 앱의 스타일 공급자가 처리하도록 구성된 custom_key_* 키를 사용하여 content_state에서 동적 값을 정의합니다.
단일 사용 사례(API 트리거 트랜잭션 캠페인)
fcm 개체에는 epoch 초로 표현되는 두 개의 시간 필드가 포함되어 있습니다.timestamp은(는) 메시지 순서를 제어합니다. 각 시작, 업데이트 및 종료 이벤트는 동일한notification_id(또는 브로드캐스트의 경우topic_name)에 대해 이전 이벤트보다 큰 값을 사용해야 합니다. 타임스탬프가 마지막으로 처리된 값보다 최신인 경우에만 업데이트가 표시됩니다. 이전 또는 동일한 타임스탬프는 무시됩니다.when은(는) 알림의 표시 시간을 제어합니다. 이 선택적 필드는 Android의setWhen메서드에 해당하며 메시지 순서에 영향을 주지 않습니다. 오래된 값으로 인해 디스플레이 문제가 발생할 수 있으므로 해당 값을 합리적으로 최신 상태로 유지합니다.
API 트리거 트랜잭션 유형의 개별 캠페인에 이러한 페이로드를 사용합니다.
모든 시작, 업데이트 및 종료 이벤트에 동일한 notification_id을(를) 사용하여 동일한 라이브 활동 인스턴스를 대상으로 하는지 확인하십시오.
| code language-json |
|---|
|
라이브 활동을 업데이트하려면 event_type을(를) update(으)로 설정하고 notification_id을(를) 변경되지 않은 상태로 유지합니다. 최신 상태를 반영하도록 필요에 따라 body, critical_text 및 content_state의 값을 업데이트하십시오.
| code language-json |
|---|
|
라이브 활동을 종료하려면 event_type을(를) end(으)로 설정하십시오. 필요한 경우 dismiss_after을(를) 포함하여 완료된 라이브 활동이 해제되기 전 지연 시간(초)을 지정합니다.
| code language-json |
|---|
|
브로드캐스트 사용 사례(API 트리거 마케팅 캠페인)
API 트리거 마케팅 유형의 대상 기반 캠페인에 이 페이로드를 사용합니다.
사용자의 장치가 구독하는 FCM 항목으로 topic_name을(를) 설정합니다. 모든 업데이트 및 종료 이벤트를 동일한 주제로 보내고, 동일한 라이브 활동 알림을 대상으로 하도록 notification_id을(를) 변경되지 않은 상태로 유지합니다.
| code language-json |
|---|
|
실행 메타데이터로 사용자 지정 데이터 추가 metadata
executionMetadata은(는) API 트리거 트랜잭션 캠페인에만 사용할 수 있습니다.선택적 executionMetadata 필드를 사용하여 주문 ID, 충성도 계층 또는 지역 코드와 같은 프로필에 자신의 사용자 지정 데이터를 첨부하십시오. Journey Optimizer은 실행과 함께 이 데이터를 저장하므로 나중에 라이브 활동 피드백 데이터 세트에서 검색하고 게재 결과를 비즈니스 레코드에 일치시킬 수 있습니다.
API를 통해 이 데이터를 보내려면 executionMetadata 필드에 대한 메시징 API 참조를 참조하십시오. 장치에서 값을 다시 읽으려면 API 트리거에서 실행 메타데이터를 받는 방법에 대한 Mobile SDK 안내서를 참조하십시오.
실행 메타데이터로 사용자 지정 데이터를 추가하려면:
-
userId및namespace옆의 프로필에executionMetadata을(를) 추가합니다. 문자열 키와 문자열 값만 허용됩니다. 문자열을 보내지 않고 모든 비문자열 값을 문자열로 변환하십시오. -
값은 전송된 그대로 기록됩니다.
executionMetadata은(는) 개인화 식을 지원하지 않으므로{{...}}식은 확인되지 않고 리터럴 텍스트로 처리됩니다. 항상 최종 리터럴 값을 전송해야 합니다. -
각 프로필은 최대 50개의 키/값 쌍을 전달할 수 있으며, 모든 키 및 값에 대해 결합된 크기 제한은 2KB입니다. 이 제한을 초과하는 메타데이터는 삭제되지만 라이브 활동은 계속 전달됩니다. 페이로드를 보고 목적에 필요한 정보로 제한합니다.
이 예제에서 orderId, tier, restaurant 및 region은(는) 고유한 값입니다. 라이브 활동이 트리거되면 피드백 데이터 세트에서 다시 읽어 게재를 주문 레코드에 연결할 수 있습니다.
| code language-json |
|---|
|
| note |
|---|
| NOTE |
AJO 메시지 피드백 데이터 세트의 message.feedback 이벤트에서 iOS에서와 동일한 방식으로 Android에서 실행 메타데이터를 검색합니다. 쿼리 예제는 고급: 데이터 세트 쿼리를 통한 디버깅 섹션을 참조하십시오. |
| Android은 모바일 SDK용 오픈 소스 Adobe Experience Platform(AEP) 메시징 확장을 사용합니다. |
이 예제에서 seat 및 type은(는) 예약 세부 정보를 포함하는 사용자 지정 메타데이터 필드입니다. 라이브 활동을 트리거한 후 라이브 활동 피드백 데이터 세트에서 이러한 값을 검색하여 게재 결과를 예약 레코드와 연결합니다.
| code language-json |
|---|
|
사용 방법 비디오
Adobe Journey Optimizer로 iOS 라이브 활동을 구성하여 iPhone 잠금 화면 및 Dynamic Island에서 다양한 실시간 업데이트를 제공하는 방법에 대해 알아봅니다.
This section contains structured knowledge intended to support interpretation, retrieval, and question answering related to this topic.
For complete understanding, this information should be combined with the documentation on this page. Neither source is intended to stand alone; the page describes the feature, while this section provides additional context that helps disambiguate terminology, intent, applicability, and constraints.
- TL;DR: This page explains how to build an API-triggered campaign in Journey Optimizer to remotely start, update, and end Live activities for individual users or audiences, and how to attach custom data to a profile using the optional
executionMetadatafield.
Intents:
- Create an API-triggered campaign for Live activities, selecting API-triggered Marketing for audience-based campaigns or API-triggered Transactional for individual campaigns
- Choose Live activity in the Actions section and select or create a configuration
- Create a content experiment with treatments to measure performance
- Activate the campaign and use the provided cURL request to trigger start, update, or end events
- Attach custom data to a profile using the optional
executionMetadatafield for later retrieval from the Live activity feedback dataset
Glossary:
- API-triggered Marketing: The campaign type used for audience-based campaigns (product-specific)
- API-triggered Transactional: The campaign type used for individual campaigns (product-specific)
- High Throughput: An option that should not be enabled for API-triggered Transactional Live activity campaigns (product-specific)
- Live activity: The action chosen in the Actions section, tied to a selected or newly created configuration (product-specific)
- executionMetadata: An optional field that attaches custom data to a profile, stored alongside the execution and retrievable from the Live activity feedback dataset (product-specific)
- Live activity feedback dataset: The dataset from which stored
executionMetadatavalues can be retrieved to match delivery results to your own records (product-specific) - event (iOS) / event_type (Android): The payload field whose values are
start,update, orend
Guardrails:
- For API-triggered Transactional campaigns, the High Throughput option should not be enabled.
executionMetadatais only available for API-triggered Transactional campaigns.executionMetadataaccepts only string keys and string values; convert any non-string value to a string before sending.executionMetadatadoes not support personalization expressions, so any{{...}}expression is treated as literal text rather than resolved.- Each profile can carry up to 50 key/value pairs in
executionMetadata(hard limit), with a combined size limit of 2 KB for all keys and values (hard limit). Metadata exceeding this limit is discarded, but the Live activity is still delivered. - In the iOS unitary payload example, most fields are mandatory; only
requestId,dismissal-date, andalertare optional.
Terminology:
- Canonical name: Live activity — Acronym: n/a — variants: Live activities
- Synonyms: “Unitary use cases” = “individual campaigns (API-triggered Transactional)”
- Synonyms: “Broadcast use cases” = “audience-based campaigns (API-triggered Marketing)”
- Do not confuse: “API-triggered Marketing” (audience-based campaigns) ≠ “API-triggered Transactional” (individual campaigns)
- Do not confuse: “start” ≠ “update” ≠ “end” (the values of the
eventfield in iOS payloads and theevent_typefield in Android payloads) - Do not confuse: “dismissal-date” (optional; auto-removes the activity when
eventisend) ≠ “timestamp” (current epoch time)
FAQ:
- Q: Which campaign type do I use for Live activities? — API-triggered Marketing for audience-based campaigns; API-triggered Transactional for individual campaigns.
- Q: Should High Throughput be enabled for API-triggered Transactional? — No; for API-triggered Transactional, the High Throughput option should not be enabled.
- Q: How do I trigger start, update, or end events after activation? — Use the provided cURL request as a template, update the sample payload with your specific data, and copy the Campaign ID into your payload.
- Q: What is
executionMetadatafor? — Attaching your own custom data, such as an order ID, loyalty tier, or region code, to a profile; it is stored alongside the execution and retrievable from the Live activity feedback dataset. It is only available for API-triggered Transactional campaigns. - Q: What are the
executionMetadatalimits? — Up to 50 key/value pairs per profile with a combined 2 KB size limit; only string keys and values are accepted, and personalization expressions are not resolved. Metadata exceeding the limit is discarded, but the Live activity is still delivered.