Eventos

Obtenga información sobre cómo rastrear eventos en una aplicación móvil.

La extensión de red perimetral proporciona una API para enviar eventos de experiencia a la red perimetral de plataforma. Un evento de experiencia es un objeto que contiene datos que se ajustan a la definición del esquema XDM ExperienceEvent. Más simplemente, capturan lo que la gente hace en su aplicación móvil. Una vez que Platform Edge Network recibe los datos, estos se pueden reenviar a aplicaciones y servicios configurados en el conjunto de datos, como Adobe Analytics y Experience Platform. Obtenga más información sobre Eventos de experiencias en la documentación del producto.

Requisitos previos

  • Se ha actualizado PodFile con los SDK necesarios.
  • Extensiones registradas en AppDelegate.
  • Se ha configurado MobileCore para que utilice su AppId de desarrollo.
  • SDK importados.
  • La aplicación se ha creado y ejecutado correctamente con los cambios anteriores.

Objetivos de aprendizaje

En esta lección:

  • Aprenda a estructurar los datos XDM basados en un esquema.
  • Envíe un evento XDM basado en un grupo de campos estándar.
  • Envíe un evento XDM basado en un grupo de campos personalizado.
  • Envíe un evento de compra XDM.
  • Valide con Assurance.

Construcción de un evento de experiencia

La extensión Adobe Experience Platform Edge puede enviar eventos que siguen un esquema XDM definido anteriormente a Adobe Experience Platform Edge Network.

El proceso va así…

  1. Identifique la interacción de la aplicación móvil que está intentando rastrear.

  2. Revise el esquema e identifique el evento adecuado.

  3. Revise el esquema e identifique cualquier campo adicional que deba utilizarse para describir el evento.

  4. Construya y rellene el objeto de datos.

  5. Crear y enviar evento.

  6. Validación.

Veamos un par de ejemplos.

Ejemplo 1: grupos de campos estándar

Revise el siguiente ejemplo sin intentar implementarlo en la aplicación de ejemplo:

  1. En su esquema, identifique el evento que está intentando recopilar. En este ejemplo, estamos rastreando una vista de producto.
    esquema de vista de producto

  2. Comience a construir el objeto:

    var xdmData: [String: Any] = [
        "eventType": "commerce.productViews",
        "commerce": [
            "productViews": [
            "value": 1
            ]
        ]
    ]
    
    • eventType: Describe el evento que se produjo y utilice un valor conocido cuando sea posible.
    • commerce.productViews.value: Proporcione el valor numérico del evento. Si es booleano (o "Contador" en Adobe Analytics), el valor será siempre 1. Si es un evento numérico o de divisa, el valor puede ser > 1.
  3. En el esquema, identifique los datos adicionales asociados al evento. En este ejemplo, incluya productListItems que es un conjunto estándar de campos utilizados con eventos relacionados con el comercio:
    esquema de elementos de la lista de productos

    • Observe que productListItems es una matriz para poder proporcionar varios productos.
  4. Expanda el objeto xdmData para incluir datos adicionales:

    var xdmData: [String: Any] = [
        "eventType": "commerce.productViews",
            "commerce": [
            "productViews": [
                "value": 1
            ]
        ],
        "productListItems": [
            [
                "name":  productName,
                "SKU": sku,
                "priceTotal": priceString,
                "quantity": 1
            ]
        ]
    ]
    
  5. Utilice la estructura de datos para crear un ExperienceEvent:

    let productViewEvent = ExperienceEvent(xdm: xdmData)
    
  6. Envíe el evento y los datos a Platform Edge Network:

    Edge.sendEvent(experienceEvent: productViewEvent)
    

Ejemplo 2: grupos de campos personalizados

Revise el siguiente ejemplo sin intentar implementarlo en la aplicación de ejemplo:

  1. En el esquema, identifique el evento que está intentando recopilar. En este ejemplo, rastree una "Interacción de aplicación" que consiste en un evento y un nombre de Acción de aplicación.
    esquema de interacción de la aplicación

  2. Empiece a construir el objeto.

    NOTA

    Los grupos de campos estándar siempre comienzan en la raíz del objeto.

    Los grupos de campos personalizados siempre comienzan bajo un objeto exclusivo de su organización Experience Cloud, "_techmarketingdemos" en este ejemplo.

    var xdmData: [String: Any] = [
    "_techmarketingdemos": [
        "appInformation": [
            "appInteraction": [
                "name": actionName,
                "appAction": [
                    "value": 1
                    ]
                ]
            ]
        ]
    ]
    

    O alternativamente…

    var xdmData: [String: Any] = [:]
    xdmData["_techmarketingdemos"] = [
        "appInformation": [
            "appInteraction": [
                "name": actionName,
                "appAction": [
                    "value": 1
                ]
            ]
        ]
    ]
    
  3. Utilice la estructura de datos para crear un ExperienceEvent.

    let appInteractionEvent = ExperienceEvent(xdm: xdmData)
    
  4. Envíe el evento y los datos a Platform Edge Network.

    Edge.sendEvent(experienceEvent: appInteractionEvent)
    

Añadir el seguimiento de vista de pantalla a la aplicación Luma

Es de esperar que los ejemplos anteriores hayan explicado el proceso de reflexión al construir un objeto de datos XDM. A continuación, agregaremos el seguimiento de vista de pantalla en la aplicación Luma.

  1. Vaya a Home.swift.

  2. Añada el siguiente código a viewDidAppear(...).

            let stateName = "luma: content: ios: us: en: home"
            var xdmData: [String: Any] = [:]
            //Page View
            xdmData["_techmarketingdemos"] = [
                "appInformation": [
                    "appStateDetails": [
                        "screenType": "App",
                        "screenName": stateName,
                        "screenView": [
                            "value": 1
                        ]
                    ]
                ]
            ]
            let experienceEvent = ExperienceEvent(xdm: xdmData)
            Edge.sendEvent(experienceEvent: experienceEvent)
    
  3. Repita el proceso para cada pantalla de la aplicación y actualice stateName a medida que vas.

Validación

  1. Consulte la instrucciones de configuración y conecte su simulador o dispositivo a Assurance.
  2. Realice la acción y busque la variable hitReceived del evento com.adobe.edge.konductor proveedor.
  3. Seleccione el evento y revise los datos XDM en la messages objeto.
    validación de recopilación de datos

Ejemplo 3 - compra

En este ejemplo, suponga que el usuario realizó correctamente la siguiente compra:

  • Producto #1 - Yoga Mat.
    • 49,99 $ x1
    • SKU: 5829
  • Producto #2 - Botella de agua.
    • $10,00 x3
    • SKU: 9841
  • Total de pedido: 79,99 $
  • Id De Pedido Único: 298234720
  • Tipo de pago: Tarjeta de crédito Visa
  • Id. de transacción de pago único: 847361

Esquema

Estos son los campos de esquema relacionados para utilizar:

  • eventType: "commerce.purchases"
  • commerce.purchases
  • commerce.order
  • productsListItems
  • _techmarketingdemos.appStateDetails (personalizado)
SUGERENCIA

Los grupos de campos personalizados siempre se colocan bajo el identificador de organización del Experience Cloud.

"_techmarketingdemos" se sustituye por el valor único de su organización.

esquema de compra

Código

Así es como construiría y enviaría el objeto XDM en la aplicación.

let stateName = "luma: content: ios: us: en: orderconfirmation"
let currencyCode = "USD"
let orderTotal = "79.99"
let paymentType = "Visa Credit Card"
let orderId = "298234720"
let paymentTransactionId = "847361"
var xdmData: [String: Any] = [
  "eventType": "commerce.purchases",
  "commerce": [
    "purchases": [
      "value": 1
    ],
    "order": [
      "currencyCode": currencyCode,
      "priceTotal": orderTotal,
      "purchaseID": orderId,
      "purchaseOrderNumber": orderId,
      "payments": [ //Assuming only 1 payment type is used
        [
          "currencyCode": currencyCode,
          "paymentAmount": orderTotal,
          "paymentType": paymentType,
          "transactionID": paymentTransactionId
        ]
      ]
    ]
  ],
  "productListItems": [
      [
          "name":  "Yoga Mat",
          "SKU": "5829",
          "priceTotal": "49.99",
          "quantity": 1
      ],
      [
        "name":  "Water Bottle",
        "SKU": "9841",
        "priceTotal": "30.00",
        "quantity": 3
      ]
  ]
]

//Custom field group
xdmData["_techmarketingdemos"] = [
  "appInformation": [
    "appStateDetails": [
      "screenType": "App",
      "screenName": stateName,
      "screenView": [
        "value": 1
      ]
    ]
  ]
]
let experienceEvent = ExperienceEvent(xdm: xdmData)
Edge.sendEvent(experienceEvent: experienceEvent)
NOTA

Para una mayor claridad, todos los valores están codificados de forma rígida. En una situación real, los valores se rellenarían dinámicamente.

Implementar en la aplicación de Luma

Debe tener todas las herramientas necesarias para empezar a agregar recopilación de datos a la aplicación de ejemplo de Luma. A continuación se muestra una lista de requisitos de seguimiento hipotéticos que puede seguir.

  • Rastree cada vista de pantalla.
    • Campos de esquema: screenType, screenName, screenView
  • Rastree las acciones que no sean de comercio.
    • Campos de esquema: appInteraction.name, appAction
  • Acciones comerciales:
    • Página de productos: productViews
    • Agregar al carro de compras: productListAdd
    • Eliminar del carro de compras: productListRemovals
    • Iniciar cierre de compra: cierres de compra
    • Ver carro: productListViews
    • Agregar a la lista de deseos: saveForLaters
    • Compra: compras, pedido
SUGERENCIA

Consulte la aplicación completamente implementada para ver más ejemplos.

Validación

  1. Consulte la instrucciones de configuración y conecte su simulador o dispositivo a Assurance.

  2. Realice la acción y busque la variable hitReceived del evento com.adobe.edge.konductor proveedor.

  3. Seleccione el evento y revise los datos XDM en la messages objeto.
    validación de recopilación de datos

Envío de eventos a Analytics y Platform

Ahora que ha recopilado los eventos y los ha enviado a Platform Edge Network, se enviarán a las aplicaciones y servicios configurados en su datastream. En lecciones posteriores, asignará estos datos a Adobe Analytics y Adobe Experience Platform.

Siguiente: WebViews

NOTA

Gracias por invertir su tiempo en obtener información sobre el SDK de Adobe Experience Platform Mobile. Si tiene alguna pregunta, desea compartir comentarios generales o tiene sugerencias sobre contenido futuro, compártalas en este Experience League de debate de la comunidad

En esta página