En esta página: Cree una campaña activada por API en Journey Optimizer para poder iniciar, actualizar y finalizar de forma remota actividades en directo para usuarios o audiencias individuales.
Después de configurar la configuración móvil e implementar el SDK móvil de Adobe Experience Platform, puede empezar a crear la actividad en directo en Journey Optimizer:
-
Acceda al menú Campañas y haga clic en Crear campaña.
-
Seleccione el tipo de campaña API desencadenada.
-
Seleccione Marketing activado por API para las campañas basadas en públicos
-
Seleccione Transaccional activado por API para campañas individuales.
note important IMPORTANT Tenga en cuenta que para Transaccional activado por API, la opción Alto rendimiento no debería estar habilitada.
-
-
En la sección Propiedades, edite el Título y la Descripción de su campaña.
-
En la sección Acciones, elija Actividad en directo y seleccione o cree una nueva configuración.
Obtenga más información acerca de la configuración de actividades en vivo en esta página.
-
Haga clic en Crear experimento para comenzar a configurar el experimento de contenido y crear tratamientos para medir su rendimiento e identificar la mejor opción para la audiencia objetivo. Más información
-
En la ficha Audiencia, elija su tipo de identidad Más información.
note NOTE Para campañas de marketing activadas por API, puede seleccionar una audiencia existente que actúe como la primera segmentación antes de comprobar la suscripción de ID de canal de APN desde la carga útil de API. -
Las campañas están diseñadas para ejecutarse en una fecha específica o en una frecuencia recurrente. Aprenda a configurar la programación de su campaña en esta sección.
-
Una vez configurada, haz clic en Revisar para activar y luego haz clic en Activar.
-
Una vez activada la campaña, usa la solicitud cURL proporcionada como plantilla para almacenar en déclencheur los eventos de inicio, actualización o finalización de la actividad. Actualice la carga útil de ejemplo con los datos específicos antes de la ejecución.
Asegúrese de copiar también los identificadores de ID de campaña para incluirlos en su carga útil.
➡️ Consulte la Documentación de campañas activadas por API para conocer los requisitos de autenticación, incluidos tokens de OAuth y claves de API.
Después de diseñar la actividad en vivo, puede hacer un seguimiento para medir el impacto de su actividad en vivo con informes integrados.
Ejemplos de carga útil payload
La estructura de carga útil depende de la plataforma en la que iOS usa el objeto aps del servicio de notificaciones push de Apple (APN), mientras que Android usa el objeto fcm de Firebase Cloud Messaging (FCM). Utilice los ejemplos siguientes para su plataforma y tipo de campaña.
Carga útil de iOS
Para iOS, coloque los campos de personalización y ciclo vital en el objeto APNS aps. Asegúrese de que attributes-type coincida con el nombre de la estructura LiveActivityAttributes de su aplicación y que attributes coincida con los campos definidos en esa estructura.
Casos de uso unitarios (campaña transaccional activada por API)
Este ejemplo de carga útil es para campañas individuales que utilizan el tipo de campaña Transaccional activada por API. Tenga en cuenta que la mayoría de los campos del siguiente ejemplo de carga útil son obligatorios, solo requestId, dismissal-date y alert son opcionales.
| code language-json |
|---|
|
Casos de uso de difusión (campaña de marketing activada por API)
Este ejemplo de carga útil es para campañas basadas en audiencias que utilizan el tipo de campaña Marketing activado por API.
| code language-json |
|---|
|
Carga útil de Android
Para Android, coloque campos de actividad activos en el objeto fcm de Firebase Cloud Messaging (FCM). Defina valores dinámicos en content_state con custom_key_* claves que el proveedor de estilos de la aplicación está configurado para administrar.
Casos de uso unitarios (campaña transaccional activada por API)
fcm contiene dos campos de tiempo, ambos expresados en segundos epoch:timestampcontrola el orden de los mensajes. Cada evento de inicio, actualización y finalización debe utilizar un valor mayor que el evento anterior para el mismonotification_id(otopic_namepara las difusiones). Las actualizaciones solo se muestran si su marca de tiempo es más reciente que el último valor procesado. Se omiten las marcas de tiempo antiguas o iguales.whencontrola la hora mostrada de la notificación. Este campo opcional corresponde al métodosetWhende Android y no afecta a la ordenación de mensajes. Mantenga su valor razonablemente actualizado, ya que un valor obsoleto puede causar problemas de visualización.
Utilice estas cargas para campañas individuales del tipo Transaccional activado por API.
Use el mismo notification_id para todos los eventos de inicio, actualización y finalización para asegurarse de que se dirigen a la misma instancia de actividad en directo.
| code language-json |
|---|
|
Para actualizar una actividad en vivo, establezca event_type en update y mantenga notification_id sin cambios. Actualice body, critical_text y los valores de content_state según sea necesario para reflejar el estado más reciente.
| code language-json |
|---|
|
Para finalizar una actividad en vivo, establezca event_type en end. Opcionalmente, incluya dismiss_after para especificar el retraso, en segundos, antes de que se descarte la actividad en directo completada.
| code language-json |
|---|
|
Casos de uso de difusión (campaña de marketing activada por API)
Utilice esta carga para campañas basadas en audiencias del tipo Marketing activado por API.
Establezca topic_name en el tema de FCM al que se suscriben los dispositivos de los usuarios. Envíe todos los eventos de actualización y finalización al mismo tema y mantenga notification_id sin cambios para direccionar la misma notificación de actividad en directo.
| code language-json |
|---|
|
Añadir datos personalizados con metadatos de ejecución metadata
executionMetadata solo está disponible para campañas transaccionales activadas por API.Adjunte sus propios datos personalizados a un perfil, como un ID de pedido, un nivel de lealtad o un código de región, usando el campo opcional executionMetadata. Journey Optimizer almacena estos datos junto con la ejecución para que pueda recuperarlos más tarde de su conjunto de datos de comentarios de actividades en directo y hacer coincidir los resultados de la entrega con sus propios registros comerciales.
Para enviar estos datos a través de la API, consulte la referencia de API de mensajería para el campo executionMetadata. Para volver a leer los valores en el dispositivo, consulte la guía de Mobile SDK sobre la recepción de metadatos de ejecución desde el déclencheur de la API.
Para agregar datos personalizados con metadatos de ejecución:
-
Agregar
executionMetadataa un perfil, junto auserIdynamespace. Solo se aceptan claves de cadena y valores de cadena. Convierta cualquier valor que no sea de cadena en una cadena antes de enviarla. -
Los valores se registran exactamente como enviados.
executionMetadatano admite expresiones de personalización, por lo que cualquier expresión{{...}}se trata como texto literal en lugar de resolverse. Siempre debe enviar valores literales finales. -
Cada perfil puede llevar hasta 50 pares de clave/valor, con un límite de tamaño combinado de 2 KB para todas las claves y valores. Los metadatos que exceden este límite se descartan, pero la actividad en directo sigue entregándose. Limite la carga útil a la información necesaria para los informes.
En este ejemplo, orderId, tier, restaurant y region son sus propios valores. Una vez activada la actividad Live, puede leerlas desde el conjunto de datos de comentarios para vincular la entrega al registro de pedidos.
| code language-json |
|---|
|
| note |
|---|
| NOTE |
Recupere los metadatos de ejecución en Android del mismo modo que en iOS: desde message.feedback eventos en el conjunto de datos de comentarios de mensajes de AJO. Para ver ejemplos de consultas, consulte la sección Avanzado: depurar mediante consultas de conjuntos de datos. |
| Android utiliza la extensión de mensajería de código abierto Adobe Experience Platform (AEP) para Mobile SDK. |
En este ejemplo, seat y type son campos de metadatos personalizados que contienen los detalles de la reserva. Después de activar la actividad Live, recupere estos valores del conjunto de datos de comentarios de la actividad Live para asociar los resultados de la entrega con el registro de reserva.
| code language-json |
|---|
|
Vídeo tutorial
Descubra cómo configurar las actividades en directo de iOS con Adobe Journey Optimizer para ofrecer actualizaciones enriquecidas en tiempo real en la pantalla de bloqueo de iPhone y 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.