Live-activiteiten oplossen troubleshoot-mobile-live

Live Activiteiten in Adobe Journey Optimizer maken real-time, dynamische updates mogelijk op iOS-vergrendelingsschermen en Dynamic Islands. Ze kunnen alleen worden geactiveerd en beheerd via door API's geactiveerde campagnes.

gevaltypes van het Gebruik:

  • Eenheid: Individueel gericht, transactie (API-teweeggebrachte Transactionele campagnes)
  • Uitzending: Publiek-gericht, massalevering (API-teweeggebrachte Marketing campagnes)

Een frequente uitdaging met Levende Activiteiten is wanneer de API vraag om een Levende Activiteit in werking te stellen of bij te werken a succesvolle reactie (200 O.K.) terugkeert, maar de Levende Activiteit ontbreekt om op het apparaat van de gebruiker te verschijnen of bij te werken. Deze verbinding tussen API bevestiging en daadwerkelijke apparatengedrag kan op veelvoudige punten in de leveringspijpleiding voorkomen. Deze gids verstrekt een systematische het oplossen van problemenbenadering om te identificeren waar de levering ontbreekt, die elk stadium van API verzoekbevestiging door apparatenteruggave onderzoekt.

Vereisten

Zorg ervoor dat u beschikt over:

  • accordion
    Een Assurance-sessie instellen

    Opstelling een zitting van Assurance om de gebeurtenissen van SDK te vangen en de leveringspijpleiding te inspecteren. Assurance biedt zichtbaarheid in:

    • Edge Network-verzoeken en -antwoorden
    • Profielkwalificatiegebeurtenissen
    • Push token-registratie
    • Live Activity LiveCycle-gebeurtenissen

    Leer hoe te opstelling Assurance in de ​ documentatie van Adobe Experience Platform Assurance ​.

    Nota: Voor Live Activiteit van iOS, zorg ervoor uw app op een fysiek apparaat van iOS (iOS 16.1 of later) of de Simulator van Xcode (iOS 16.1 of later) loopt.

  • accordion
    Gegevens over door API gestuurde campagnes verzamelen

    Navigeer naar de via API geactiveerde campagne in Journey Optimizer en zoek de volgende gegevens op:

    • Campagneraam
    • Campagne-id gevonden in de URL- of campagne-eigenschappen
    • Campagneversie indien van toepassing
    • Oppervlakteconfiguratie, iOS-toepassingsoppervlak gebruikt voor Live Activity
  • accordion
    Informatie over API-aanvragen verzamelen

    Sla tijdens het aanroepen van de API de Live-activiteit op:

    • payload van API-aanvragen, inclusief profiel-id's en Live Activity-gegevens
    • API-reactie inclusief statuscode, bericht-id, aanvraag-id
    • Tijdstempel van wanneer de API is aangeroepen
    • Gebruikte eindpunt, bijvoorbeeld /campaign/{CAMPAIGN_ID}/execute
  • accordion
    Het testprofiel identificeren

    Haal het volgende op uit uw API-verzoek:

    • Profielnaamruimte, bijvoorbeeld ECID, e-mail, klant-id
    • Profiel-id gebruikt in API-aanroep

    Controleer of u dit profiel in Adobe Experience Platform kunt opzoeken. Leer hoe te ​ omhoog een profiel in de documentatie van Experience Platform ​ kijken.

  • accordion
    Apparaat- en toepassingsgegevens

    Verzamel het volgende van uw testapparaat:

    • Apparaatmodel, bijvoorbeeld iPhone 14 Pro
    • iOS-versie
    • Id van toepassingspakket
    • APNs-pushtoken
    • De connectiviteitsstatus van het netwerk op het tijdstip van het testen

Algemene scenario's

Problemen met profiel- of pushtoken profile-issue

[​ is op zowel eenheids als uitzendingsgebruiksgevallen ​]{class="badge positive"} van toepassing

De API retourneert HTTP 200, maar de Live Activiteit wordt niet weergegeven. Vaak voorkomende oorzaken:

  • Profiel bestaat niet in Adobe Experience Platform.
  • Pushtoken voor Live-activiteit is niet gesynchroniseerd met profiel.
  • De pushgegevens voor Live-activiteit worden gesynchroniseerd maar bevatten een onjuiste configuratie, bijvoorbeeld onjuist appId of attributeType .

Nota voor de gevallen van het uitzendingsgebruik: Als sommige profielen in uw publiek tekenen missen, slechts zullen die profielen er niet in slagen om de Levende Activiteit te ontvangen. Neem een monster van verschillende profielen van uw publiek om problemen met token te diagnosticeren. Dit is alleen van toepassing op externe start-gebeurtenissen, niet op update- of end-gebeurtenissen.

Voorcontroles

  • iOS-toepassingsvereisten:

    • iOS 16.1+
    • NSSupportsLiveActivities ingesteld op YES in Info.plist
    • ActivityAttributes correct geïmplementeerd.
  • Mobiele SDK-integratie:

    • Adobe Experience Platform Mobile SDK (messaging SDK 5.11.0+)
    • Messaging.registerLiveActivities geïmplementeerd en aangeroepen met pushtoken voor Live-activiteit.

Foutopsporingsstappen

  1. accordion
    Controleren of het profiel bestaat in Adobe Experience Platform
    1. In Journey Optimizer, navigeer aan Klant > Profielen.
    2. Zoeken met naamruimte en identiteitswaarde van API-verzoek.
    3. Als het profiel niet wordt gevonden, bestaat het profiel niet of wordt de opname niet voltooid. Maak het profiel of wacht op opname voordat u de Live-activiteit activeert.
    4. Als er een profiel wordt gevonden, gaat u verder naar stap 2 hieronder om te controleren of de pushtoken is gesynchroniseerd.
  2. accordion
    Controleren of pushtoken voor Live-activiteit is gesynchroniseerd

    U kunt Assurance gebruiken om de tokenregistratie te verifiëren:

    1. In Assurance, van de lijst van Gebeurtenissen, filter of onderzoek naar gebeurtenissen eventType = "liveActivity.pushToStart".
    2. Selecteer de Gebeurtenis en inspecteer de nuttige lading.
    3. Controleer of de waarden voor token, appId en attributeType aanwezig zijn.
    4. Bevestig of de gebeurtenis correct is verzonden.

    U kunt ook het Adobe Experience Platform-profiel inchecken.

    1. In Adobe Experience Platform, van uw Profiel, heb toegang tot Gebeurtenissen tabel.
    2. Zoeken naar liveActivity.pushToStart -gebeurtenissen.
    3. Controleer de even tijdstempel en lading.

    Als er geen gebeurtenissen worden gevonden, roept uw mobiele app Messaging.registerLiveActivity niet correct aan. U moet de SDK-integratie herstellen.

  3. accordion
    Tokendetails in profiel valideren
    1. Van uw Profiel, heb toegang tot Attributen tabel.

    2. Zoek liveActivityPushNotificationDetails .

    3. Verifieer de tokenconfiguratie:

      code language-json
      {
        "liveActivityPushNotificationDetails": [
          {
            "appId": "com.example.myapp",
            "token": "abc123def456...",
            "platform": "apns",
            "denylisted": false,
            "attributeType": "OrderTrackingAttributes",
            "identity": {}
          }
        ]
      }
      

    bevestigt elk gebied:

    table 0-row-3 1-row-3 2-row-3 3-row-3 4-row-3 5-row-3
    Veld Vereiste Vaak probleem
    appId Moet exact overeenkomen met iOS-bundle-id Verkeerde overeenkomst tussen dev/prod bundle IDs
    attributeType Moet exact overeenkomen met SWIFT ActivityAttributes struct-naam (hoofdlettergevoelig) Typo- of onjuiste structuurnaam
    platform Moet "apns" of "apnsSandbox" zijn Onjuiste platformwaarde
    denylisted Moet zijn false Token gemarkeerd als ongeldig of gebruiker uitgeschakeld
    token Geldige APNs-pushtoken Token verlopen of app opnieuw geïnstalleerd

    Als een veld onjuist is: Werk de mobiele app bij, registreer u opnieuw met Messaging.registerLiveActivities, wacht 5-10 minuten en controleer het opnieuw.

    Als liveActivityPushNotificationDetails ontbreekt: het token is nog niet gesynchroniseerd. Wacht 5 tot 10 minuten nadat u de liveActivity.pushToStart -gebeurtenis in Assurance hebt gezien.

Problemen met de configuratie en lading van campagnes payload-issues

[​ is op zowel eenheids als uitzendingsgebruiksgevallen ​]{class="badge positive"} van toepassing

Profiel bestaat met geldige tokens, maar Live activiteit wordt niet weergegeven. Dit kan worden veroorzaakt door:

  • Onjuiste oppervlak- of kanaalconfiguratie.
  • Onjuiste API-laadstructuur.
  • content-state en attributes komen niet overeen met iOS ActivityAttributes -implementatie.
  • Stale timestamp (kritiek voor update/eind).

Nota voor de gevallen van het uitzendingsgebruik: De campagne moet API-getriggerde Marketing (niet Transactioneel) zijn. Bij Payload wordt audience gebruikt in plaats van individuele profile . Verwijs naar ​ deze sectie ​ voor uitzending-specifieke ladingsstructuur en naar ​ documentatie van Adobe Developer ​ voor volledige API specificaties.

Voorcontroles

  • De campagne is API-teweeggebrachte Transactionele (unitaire) of API-teweeggebrachte Marketing (uitzending) en Hoge de optie van de Bedrading moet niet worden toegelaten aangezien het met Levende Activiteit onverenigbaar is.
  • Zorg ervoor dat het profiel bestaat en de tekenen correct gebruikend het ​ hierboven scenario ​ worden gesynchroniseerd.

Foutopsporingsstappen

  1. accordion
    Configuratie van campagneoppervlak verifiëren
    1. In Journey Optimizer, open uw Campagne en navigeer aan het 3} menu van Acties.
    2. Controleer uw Levende activiteitenconfiguratie. Het oppervlak moet voor de iOS-toepassing worden geconfigureerd met een bundle-id die overeenkomt met de appId in het liveActivityPushNotificationDetails -profiel. Als uw profiel bijvoorbeeld "appId": "com.example.myapp" heeft, moet het oppervlak zich richten op dezelfde app.
    3. Controleer dat het type van Activiteit in uw campagneconfiguratie precies attributeType in uw profiel liveActivityPushNotificationDetails aanpast. Als uw profiel bijvoorbeeld "attributeType": "FoodDeliveryLiveActivityAttributes" heeft, moet de campagne hetzelfde type activiteit opgeven.
  2. accordion
    Betalingsstructuur van API valideren

    Wanneer u de campagne uitvoert via de API, moet u ervoor zorgen dat de lading de juiste structuur volgt.

    Eenheids lading:

    code language-json
    {
      "campaignId": "your-campaign-id",
      "recipients": [{
        "type": "aep",
        "userId": "user@example.com",
        "namespace": "email",
        "context": {
          "requestPayload": {
            "aps": {
              "content-available": 1,
              "timestamp": 1756984054,
              "event": "start",
              "attributes-type": "FoodDeliveryLiveActivityAttributes",
              "content-state": { ... },
              "attributes": { ... }
            }
          }
        }
      }]
    }
    

    Gemeenschappelijke payload kwesties:

    table 0-row-3 1-row-3 2-row-3 3-row-3 4-row-3 5-row-3 6-row-3
    Veld Vereiste Vaak probleem
    attributes-type Moet overeenkomen met type campagneactiviteit en profiel attributeType Verkeerd of typefout
    campaignId Moet overeenkomen met de geactiveerde campagne-id Onjuiste of ontbrekende campagne-id
    content-available Moet zijn 1 Ontbrekende of onjuiste waarde
    event Moet "start", "update" of "end" zijn Ongeldig gebeurtenistype
    timestamp Moet altijd de huidige/laatste Unix-tijdperktijd in seconden zijn Tijdstempel gebruiken in oude cache
    userId / namespace Moet overeenkomen met een bestaand profiel in AEP Profiel-id komt niet overeen

    Kritiek: Gebruik altijd recentste timestamp

    • Het timestamp gebied moet altijd de huidige Unix epoche tijd (in seconden) zijn op het ogenblik elke API vraag wordt gemaakt.
    • Dit is op van toepassing alle gebeurtenistypen: start, update, en vooralend.
    • Effect op updates/eindverzoeken: Het gebruiken van een stapel of oude timestamp zal update en eindverzoeken veroorzaken om te ontbreken of door het apparaat worden genegeerd.
    • NIET hergebruik timestamps van vorige verzoeken of gebruik caching waarden.
    • Genereer een nieuwe tijdstempel voor elke API-aanroep.

    Facultatieve gebieden (alle gebeurtenistypen):

    • requestId: Unieke id voor reeksspatiëring (aanbevolen).
    • alert: Object met title en body voor melding (handig om de aandacht op updates te vestigen).

    Ongeveer dismissal-date:

    • Optioneel veld met Unix epoche-tijd (seconden).
    • slechts relevant wanneerevent: "end".
    • Hiermee geeft u aan wanneer de actieve activiteit automatisch van het apparaat moet worden verwijderd.
    • Als deze optie niet wordt opgegeven bij de eindgebeurtenis, blijft Live-activiteit zichtbaar totdat de gebruiker deze uitschakelt.
    • Moet een toekomstig tijdstempel zijn (later dan timestamp).
  3. accordion
    Betalingsbelasting uitlijnen met iOS-implementatie

    Zorg ervoor dat de payload van uw API overeenkomt met de implementatie van uw iOS-app. ActivityAttributes Het Adobe SDK LiveActivityAttributes -protocol breidt iOS ActivityAttributes uit en vereist een liveActivityData -eigenschap.

    bevestigt de afbeelding:

    1. Uw ActivityAttributes moet het Adobe LiveActivityAttributes -protocol implementeren. Voorbeeld:

      code language-swift
      struct FoodDeliveryLiveActivityAttributes: LiveActivityAttributes {
       public struct ContentState: Codable, Hashable {
           var orderStatus: String
           var estimatedDeliveryTime: String
       }
      
       // Adobe SDK requirement
       var liveActivityData: LiveActivityData
      
       // Your custom attributes
       var restaurantName: String
      }
      

      Nota dat het liveActivityData gebied door Adobe SDK wordt vereist en in alle implementaties moet worden omvat.

    2. Uw API-lading moet de iOS-structuur weerspiegelen:

      code language-json
      {
        "aps": {
           "event": "start",
           "timestamp": 1756984054,
           "attributes-type": "FoodDeliveryLiveActivityAttributes",
           "content-state": {
           "orderStatus": "Preparing",
           "estimatedDeliveryTime": "20 mins"
        },
        "attributes": {
          "liveActivityData": {
            "liveActivityID": "order-12345"
          },
          "restaurantName": "Pizza Palace"
        }
        }
      }
      

    checklist van de Bevestiging:

    • Neem alle ContentState -velden op in content-state (vereist voor alle gebeurtenistypen).

    • Neem alle LiveActivityAttributes -velden op in attributes (alleen startgebeurtenissen), inclusief:

      • liveActivityData (vereist; bevat doorgaans liveActivityID of een vergelijkbare id)
      • Alle aangepaste velden uit uw structuur
    • Namen van velden exact overeenkomen (hoofdlettergevoelig).

    • Datatypen afstemmen (String, Int, Bool, geneste objecten).

    • Geneste objectstructuur behouden.

    Gemeenschappelijke fouten:

    table 0-row-3 1-row-3 2-row-3 3-row-3 4-row-3 5-row-3 6-row-3 7-row-3
    Probleem Gevolgen Repareren
    Ontbrekende liveActivityData kenmerken Live-activiteiten wordt niet gestart Object liveActivityData altijd opnemen in gebeurtenis start
    Vereist veld ontbreekt in startgebeurtenis Live-activiteiten wordt niet gestart Alle velden uit iOS-structuur toevoegen
    Onjuiste veldnaam (typefout/hoofdletter) Veld genegeerd of parseerfout IOS-veldnamen exact afstemmen
    Onjuist gegevenstype Parseringsfout Overeenkomstige iOS-gegevenstypen
    Ontbrekend genest object Onvolledige gegevens Alle geneste structuren opnemen
    attributes opnemen in update/end Onnodig, maar meestal genegeerd Alleen attributes instart-gebeurtenis opnemen
    Tijdstempel schalen bij bijwerken/beëindigen Bijwerken/beëindigen genegeerd door apparaat Altijd nieuwe tijdstempel genereren

    Voor meer voorbeelden, verwijs naar ​ creeer Actieve activiteitenpagina ​.

  4. accordion
    Testen met Assurance

    Verifieer de uitvoering van de API en de levering van de lading met Assurance:

    1. Open je Assurance-sessie.

    2. Voer de API-aanroep uit om de Live-activiteit te activeren.

    3. In de Lijst van de Gebeurtenis, controleer voor:

      • Gebeurtenissen tijdens de uitvoering van de campagne.
      • Gebeurtenissen voor de levering van Live Activity.
      • Gebeurtenissen van de Payload-validatie.
    4. Controleren van de te controleren gebeurtenislading:

      • De lading is correct verwerkt.
      • Er zijn geen validatiefouten opgetreden.
      • Live Activiteit is verzonden naar APNs.

Leveringsfouten en foutenanalyse

[​ is op zowel eenheids als uitzendingsgebruiksgevallen ​]{class="badge positive"} van toepassing

In dit scenario zijn alle vorige controles geslaagd:

Maar de Live Activiteit wordt nog steeds niet weergegeven, bijgewerkt of beëindigd zoals u had verwacht. Het probleem kan zich voordoen op het niveau van het Adobe-leveringssysteem of bij de APNs (push notification service provider).

Nota voor de gevallen van het uitzendingsgebruik: De rapporten tonen metriek over alle publieksleden. Sommige profielen kunnen slagen terwijl andere ontbreken.

pre-controles

  • Vorige Gevalideerde Scenario's:

    • Profiel bestaat met juist liveActivityPushNotificationDetails
    • Het campagneoppervlak en het type activiteit zijn correct
    • API-payload is geldig met huidige tijdstempel
    • Tkens voor updates worden gesynchroniseerd (voor update-/eindgebeurtenissen)
  • Bevestigde Vraag van API:

    • De API-aanroep retourneerde HTTP 200 (geslaagd)
    • Campagne-id en de gegevens van de ontvanger zijn juist

Foutopsporingsstappen

  1. accordion
    Campagnerapporten controleren
    1. Navigeer aan uw Levende Campagne van de Activiteit.

    2. Klik de knoop van Rapporten.

    3. Selecteer Mening al tijdrapport.

    4. Bekijk de volgende secties:

      1. Controleer de Verzendende Statistieken metriek om leveringssucces te begrijpen:

        table 0-row-3 1-row-3 2-row-3 3-row-3 4-row-3 5-row-3
        Metrisch Wat het betekent Wat moet u zoeken?
        Gericht Aantal profielen dat is gekwalificeerd voor het publiek Neem uw testprofiel op
        Verzenden Totaal aantal geprobeerd pushmeldingen Moet overeenkomen met uw API-aanroepen
        Afgeleverd Aangeleverd aan apparaten Vergelijk met Verzenden om succespercentage te zien
        Fouten verzenden Push-berichten die niet zijn verzonden Hoge getallen
        Uitsluitingen verzenden Profielen die door Adobe Journey Optimizer zijn uitgesloten Controleren of uw profiel is uitgesloten
      2. Als verzend fouten > 0, controleer de Lijst van de Redenen van de Fout voor specifieke foutencodes en berichten:

        table 0-row-3 1-row-3 2-row-3 3-row-3 4-row-3
        Algemene fout Betekenis Resolutie
        Ongeldig token Push-token is ongeldig of verlopen Tokens voor Live-activiteit opnieuw registreren vanaf apparaat
        Token niet gevonden Geen geldig token gekoppeld aan profiel Controleren of liveActivityPushNotificationDetails bestaat
        APN's afgewezen Apple Push Notification service heeft pushmelding afgewezen APNs-certificaat, bundle ID, omgeving controleren
        Time-out netwerk Kan APNs niet bereiken Voorbijgaande kwestie; probeer de API vraag opnieuw
      3. Als uitsluitingen > 0 verzendt, controleer de Uitgesloten lijst van Redenen:

        table 0-row-3 1-row-3 2-row-3 3-row-3
        Algemene uitsluiting Betekenis Resolutie
        Profiel is uitgeschakeld Gebruiker heeft geen meldingen ontvangen Status van profieltoestemming controleren
        Token gevoegd op lijst van gewenste personen Token gemarkeerd als ongeldig Token opnieuw registreren of de status van de lijst van gewezen personen controleren
        Profiel komt niet in aanmerking Profiel voldoet niet aan campagnecriteria De publieksregels van de campagne bekijken

    Leer meer in de ​ Levende pagina van het activiteitencampagnerapport ​.

  2. accordion
    Feedbackgebeurtenissen voor berichten in profiel controleren
    1. Navigeer aan Klant > Profielen in Journey Optimizer.

    2. Zoek naar en open het profiel.

    3. Selecteer de Gebeurtenissen tabel.

    4. Filter of zoek naar gebeurtenissen met eventType = "message.feedback" .

    5. Zoek naar feedbackgebeurtenissen die overeenkomen met het type liveActivityID en event van uw Live-activiteit.

    6. Bekijk de volgende belangrijke velden:

      table 0-row-3 1-row-3 2-row-3 3-row-3 4-row-3
      Veld Mogelijke waarden Wat het betekent
      feedbackStatus sent, error, denylist Resultaat van levering door serviceprovider
      serviceProvider apns/apnsSandbox Moet APN's zijn voor iOS Live-activiteiten
      errorCode Numerieke code of null APNs-specifieke foutcode indien mislukt
      errorMessage Foutbeschrijving of null Foutbericht voor leesbare tekst
    7. als feedbackStatus: "error":

      • Controleer errorCode en errorMessage op specifieke APNs fouten
      • Veelvoorkomende APNs-fouten zijn verlopen token, ongeldig certificaat, onjuiste bundel-id
    8. als geen terugkoppel gebeurtenis vond:

      • Het pushbericht is mogelijk niet geprobeerd
      • Controleer of het profiel is uitgesloten in campagnerapporten, zoals beschreven in stap 1 hierboven.
  3. accordion
    Levering van Live-activiteiten aan APN<>s in Assurance controleren
    1. Open uw Assurance-sessie. Deze moet actief zijn tijdens de API-aanroep.

    2. Voer de API-aanroep uit (start, update of end).

    3. In de Lijst van de Gebeurtenis, zoek de Actieve gebeurtenissen van de Activiteit.

    4. Zoeken naar gebeurtenissen die te maken hebben met APNs-push.

    5. Controleren op de volgende indicatoren:

      • duw verzoek aan APNs: Bevestigt Adobe verzendt de duw naar de servers van Apple
      • APNs reactie: Toont of APNs of de duw goedkeurde verworpen
      • Status van de Levering: De aanwijzing van het succes of van de mislukking
    6. Als er problemen worden gevonden, raadpleegt u de volgende algemene APNs-leveringsproblemen:

      table 0-row-3 1-row-3 2-row-3 3-row-3 4-row-3 5-row-3
      Probleem Symptoom in Assurance Resolutie
      APNs-certificaat verlopen Verificatiefout Nieuw APN-certificaat vernieuwen en uploaden
      Verkeerde omgeving (dev vs prod) Fout door token Zorg ervoor dat het certificaat overeenkomt met het type App-build
      Bundel-id komt niet overeen Ongeldige bundle-id Identieke overeenkomende certificaatbundel-id verifiëren
      Token is verlopen InvalidToken-fout van APNs Tokens voor live activiteiten opnieuw registreren
      Snelheidbeperking Te veel verzoeken API-aanroepfrequentie verminderen
  4. accordion
    Ga door met aanvullende diagnostische controles
    1. Metrische gegevens over de levenscyclus van actieve activiteiten controleren in het campagnerapport.

      In het campagnerapport, herzie de Levende sectie van de activiteitenlevenscyclus:

      table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2
      Metrisch Te controleren wat
      Extern starten Het aantal API-gestuurde start moet worden weergegeven
      Updates Aantal updategebeurtenissen weergeven
      Eindigt Aantal eindgebeurtenissen weergeven
      Aantal totalen Totaal gebeurtenisvolume van Live Activity

      Als deze cijfers nul zijn of niet overeenkomen met uw API-aanroepen, is er een leveringsprobleem tussen Adobe en APNs.

    2. Als Adobe een succesvolle levering weergeeft, maar het apparaat de Live-activiteit niet weergeeft:

      • Controleer iOS-apparaatlogboeken op fouten met Live Activity.
      • Controleer of de app op de voor- of achtergrond staat (niet is afgesloten).
      • Bevestig apparaat heeft netwerkconnectiviteit.
      • Test op meerdere apparaten om apparaatspecifieke problemen uit te sluiten.
      • Controleer of iOS-versie 16.1 of hoger is.
  5. accordion
    Doorverwijzing naar Adobe-ondersteuning

    Als u alle stappen hebt uitgevoerd en het probleem niet is opgelost, neemt u contact op met de klantenservice van Adobe via:

    Vereiste informatie:

    • Campagne-id en naam

    • Profielnaamruimte en -id

      • liveActivityID van API-payload
    • Tijdstempels van API-aanroepen

    • Screenshots van:

      • Campagnerapporten (verzenden van statistieken, oorzaken van fouten, uitgesloten redenen)
      • Profielgebeurtenissen (liveActivity.updateToken, message.feedback)
      • Assurance-sessie met leveringsgebeurtenissen
    • Volledige lading voor API-verzoek

    • APNs-certificaatdetails (vervaldatum, omgeving, bundel-id)

Uniespecifieke scenario's

Token voor update van actieve activiteit is niet gesynchroniseerd token-not-synced

De liveactiviteit wordt op het apparaat gestart, maar volgende update - of end API-aanroepen (die HTTP 200 retourneren) kunnen de live activiteit niet bijwerken of sluiten. Dit komt voor wanneer het Levende het updatetoken van de Activiteit niet behoorlijk aan het systeem van Adobe wordt gesynchroniseerd.

Begrijpend updatetokens

Wanneer een Live-activiteit op een apparaat wordt gestart, genereert iOS een uniek updatetoken voor die specifieke Live-activiteit-instantie. Dit token is vereist voor:

  • Updates verzenden voor de live activiteit
  • Live activiteiten extern beëindigen

Elke instantie van Live-activiteit heeft een eigen unieke update-token. Adobe heeft dit token nodig om update- en end-gebeurtenissen te leveren.

Verwacht gedrag

Update- en end-gebeurtenissen werken alleen als het volgende plaatsvindt:

  1. Live-activiteit wordt op het apparaat gestart.
  2. Apparaat genereert een updatetoken voor die Live Activity-instantie.
  3. Mobile SDK legt de updatetoken vast en stuurt deze naar Adobe.
  4. Het updatetoken wordt gesynchroniseerd en opgeslagen in het Adobe-systeem.
  5. Volgende API-aanroepen voor bijwerken/beëindigen gebruiken dit token voor levering.

pre-controles:

  • Toestemming van de Gebruiker: De eerste keer een Levende Activiteit begint op een apparaat, toont iOS een systeemherinnering: "Toestaan [ Naam van de App ] om Actieve updates van de Activiteit te verstrekken?" De gebruiker moet "toestaan"tikken voor updatetokens om worden geproduceerd en worden gesynchroniseerd. Als de gebruiker op "Niet toestaan" tikt, worden geen updatetokens gemaakt en mislukken de update-/eindaanvragen. Dit is een eenmalige machtiging per app.
  • Bevestiging van het Profiel en van de Campagne: Volledige ​ Scenario 1 ​ en ​ Scenario 2 ​ controles om profiel, tekenen, en campagneconfiguratie te verzekeren zijn correct.

Foutopsporingsstappen

  1. accordion
    Synchronisatie van updatetoken verifiëren in Assurance
    1. Open je Assurance-sessie.

    2. Zorg ervoor dat de sessie actief was toen de Live-activiteit op het apparaat werd gestart.

    3. Filter of zoek naar gebeurtenissen met eventType = "liveActivity.updateToken" .

    4. Selecteer de gebeurtenis en controleer de lading:

      • Controleer of het veld token een geldige token-tekenreeks voor updates bevat.
      • Controleer of liveActivityID overeenkomt met uw Live Activity-instantie.
      • Bevestig dat de activityType overeenkomen met uw attributes-type .
    5. Als de gebeurtenis niet wordt gevonden:

      • Het updatetoken is niet gegenereerd of vastgelegd door de SDK.
      • Controleer of de gebruiker Live-activiteit-machtigingen heeft verleend.
      • Controleer of Live-activiteit daadwerkelijk op het apparaat is gestart.
      • Controleer of de mobiele SDK correct is geïntegreerd om updatetokens vast te leggen.
    6. Ga door met Stap 2 als een gebeurtenis wordt gevonden.

  2. accordion
    Update-token verifiëren bij profielgebeurtenissen
    1. Navigeer aan Klant > Profielen in Journey Optimizer.

    2. Zoek naar en open het profiel.

    3. Selecteer de Gebeurtenissen tabel.

    4. Zoek naar liveActivity.updateToken -gebeurtenissen.

    5. Controleer de gebeurtenisdetails:

      • Controleer of de tijdstempel recent is (komt overeen met het moment dat Live-activiteit is gestart).
      • Bevestig dat token en liveActivityID aanwezig zijn.
      • Controleer of activityType juist is.
    6. Als de gebeurtenis niet wordt gevonden in profiel:

      • Het is mogelijk dat de update-token-gebeurtenis nog niet aan het profiel is toegevoegd.
      • Wacht 5-10 minuten en controleer het opnieuw.
      • Als er na 15 minuten nog steeds een fout optreedt bij het opnemen van de gebeurtenis.
    7. Als er een gebeurtenis wordt gevonden, is het updatetoken gesynchroniseerd. U kunt doorgaan naar stap 3.

  3. accordion
    Live Activity-leveringsgebeurtenissen controleren in Assurance
    1. Voer in uw Assurance-sessie een update uit of sluit een API-aanroep af.

    2. In de Lijst van de Gebeurtenis, zoek de Levende gebeurtenissen van de Activiteit van de Activiteit (APNs duw gebeurtenissen).

    3. Controleren op gebeurtenissen die aangeven:

      • Pushmelding verzonden naar APNs.
      • Reactie van APNs (succes of fout).
      • Bevestiging van levering.
    4. Als APNs leveringsgebeurtenis aanwezig is: De pushmelding is verzonden. Als het apparaat nog steeds niet wordt bijgewerkt, bevindt het probleem zich mogelijk aan de apparaatzijde (toepassing die de push niet afhandelt, netwerkproblemen enzovoort).

    5. Als APNs-gebeurtenis voor levering ontbreekt: Het updatetoken wordt mogelijk niet correct opgeslagen of gekoppeld aan het profiel in het Adobe-systeem.

    6. Als er foutgebeurtenissen aanwezig zijn: controleer de foutdetails om specifieke mislukkingsredenen (ongeldige token, APNs afgewezen, enz.).

Uitzendspecifieke scenario's

Configuratie van de campagne voor uitzending en problemen met de lading broadcast-config

Deze sectie behandelt het oplossen van problemenscenario's specifiek om Levende Activiteiten uit te zenden, die verschillende het zuiveren benaderingen dan eenheidscampagnes vereisen.

Wanneer profielen geldige tokens hebben maar de Actieve Activiteit niet verschijnt, bijwerkt, of zich zoals verwacht voor publieksleden gedraagt, komt de kwestie typisch uit één van het volgende voort:

  • De campagne is niet geconfigureerd als API-getriggerde marketing.
  • De API-payload gebruikt een onjuiste uitzendstructuur (ontbreekt audience of input-push-channel ).
  • De velden content-state en attributes komen niet overeen met de iOS ActivityAttributes -implementatie.
  • input-push-channel is niet correct gemaakt op de Apple Developer Portal.

Dit scenario voor probleemoplossing is van toepassing op alle gebeurtenissen Live Activity in uitzendcampagnes: start, update en end .

pre-controles:

  • Type van Campagne:

    • Verifieer dat de campagne als API-teweeggebrachte Marketing (die voor uitzending/op publiek-gebaseerde campagnes wordt vereist) wordt gecreeerd.
    • Bevestig dat een publiek in de campagneconfiguratie wordt bepaald.
  • Profiel en Symbolische Bevestiging: Steek veelvoudige profielen van het publiek om te verifiëren zij geldig liveActivityPushNotificationDetails hebben. Voor gedetailleerde bevestigingsstappen, volg ​ Scenario 1 ​.

Foutopsporingsstappen

  1. accordion
    Configuratie voor publiek campagne controleren
    1. Open uw API teweeggebrachte de Marketing Campagne van de Marketing in Journey Optimizer.

    2. Navigeer aan de sectie van het publiek en verifieer:

      • Er is een publiek geselecteerd voor de campagne.
      • De gebruikers-id komt overeen met de id die wordt gebruikt in uw API-payload.
      • Het publiek bevat de verwachte profielen.
    3. Navigeer aan de sectie van Acties.

    4. Controleer de Levende activiteitenconfiguratie:

      • De configuratie moet worden ingesteld voor de iOS-toepassing met de juiste bundle-id.
      • Het type Activiteit moet overeenkomen met attributes-type in uw API-payload. Als uw lading bijvoorbeeld "attributes-type": "AirplaneTrackingAttributes" bevat, moet de campagne dit zelfde type van Activiteit specificeren.
  2. accordion
    Payloadstructuur van uitzendings-API valideren

    De structuur van de uitzendingslading verschilt van eenheidscampagnes. Verifieer dat uw lading het correcte uitzendingsformaat volgt.

    Vereiste gebieden voor uitzending:

    code language-json
    {
      "campaignId": "878a11d4-b519-47bd-8313-fecfee19857b",
      "audience": {
        "id": "8c3dbdea-2957-401f-acf0-3966fba1601e"
      },
      "context": {
        "requestPayload": {
          "aps": {
            "input-push-channel": "FEt0NgvLEfEAAOqA6AXdIQ==",
            "content-available": 1,
            "timestamp": 1771829292,
            "event": "update",
            "attributes-type": "AirplaneTrackingAttributes",
            "content-state": { ... },
            "attributes": { ... }
          }
        }
      }
    }
    

    Gemeenschappelijke payload kwesties:

    table 0-row-3 1-row-3 2-row-3 3-row-3 4-row-3 5-row-3 6-row-3 7-row-3
    Veld Vereiste Vaak probleem
    campaignId Moet overeenkomen met de geactiveerde marketingcampagne-id Onjuiste campagne-id of Transactionele campagne gebruiken
    audience.id Moet overeenkomen met een bestaand publiek in AEP Onjuiste publiek-id of publiek bestaat niet
    input-push-channel Vereist voor uitzending - Unieke id voor deze uitgezonden instantie Ontbreekt of komt niet overeen met channelID in liveActivityData
    timestamp Moet altijd de huidige/laatste Unix-tijdperktijd in seconden zijn Tijdstempel gebruiken in oude cache
    event Moet "start", "update" of "end" zijn Ongeldig gebeurtenistype
    attributes-type Moet overeenkomen met het type campagneactiviteit Verkeerd of typefout
    content-available Moet zijn 1 Ontbrekende of onjuiste waarde

    Kritieke uitzending-specifieke gebieden:

    • input-push-channel:

      • Vereist voor alle uitzending Live Activiteiten.
      • Fungeert als een unieke id voor deze specifieke uitzendingsinstantie.
      • Alle profielen in het publiek ontvangen Live Activiteiten die aan dit kanaal zijn gekoppeld.
      • Moet overeenkomen met channelID in liveActivityData.channelID (zie Stap 3).
      • Moet door de client worden gemaakt voor de appID op de Apple Developer Portal.
      • Alleen kanalen die voor de specifieke appID zijn gemaakt, kunnen worden gebruikt voor het uitzenden van Live-activiteit op die app.
    • audience.id:

      • Moet verwijzen naar een geldig publiekssegment dat in Adobe Experience Platform is gemaakt.
      • Alle profielen in dit publiek zijn gericht op Live-activiteit.
      • Het publiek moet worden geactiveerd en profielen met geldige waarden bevatten liveActivityPushNotificationDetails .

    altijd gebruik recentste timestamp:

    • Het veld timestamp moet voor elke API-aanroep altijd de huidige Unix-epoche-tijd (in seconden) zijn.
    • Deze vereiste geldt voor alle gebeurtenistypen: start , update en end .
    • Kritiek voor updates/eind: Het gebruiken van stapeltimestamps veroorzaakt update en eindverzoeken om te ontbreken.
    • Genereer een nieuwe tijdstempel voor elke API-oproep voor uitzending.

    Facultatieve gebieden:

    • dismissal-date: Unix tijdperk voor automatisch ontslag (alleen relevant voor end -gebeurtenissen)
    • alert: Object met title en body voor melding

    Verwijs naar de ​ documentatie van API van het Overseinen van Adobe Journey Optimizer ​ voor volledige API specificaties.

  3. accordion
    Inhoudsstatus, kenmerken en invoerpushkanaal uitlijnen met iOS-implementatie

    Zorg ervoor dat de payload-velden overeenkomen met de ActivityAttributes -implementatie van uw iOS-app en dat de input-push-channel overeenkomt met de channelID in liveActivityData .

    1. Bekijk de definitie van iOS ActivityAttributes.

    Uw aangepaste ActivityAttributes struct moet het Adobe LiveActivityAttributes -protocol implementeren:

    code language-swift
    struct AirplaneTrackingAttributes: LiveActivityAttributes {
     public struct ContentState: Codable, Hashable {
         var journeyProgress: Int
     }
    
     // Adobe SDK requirement
     var liveActivityData: LiveActivityData
    
     // Your custom attributes
     var arrivalAirport: String
     var departureAirport: String
     var arrivalTerminal: String
    }
    
    1. Wijs iOS-velden toe aan de uitzending van de API.

    Neem voor alle gebeurtenissen zowel attributes als content-state op:

    code language-json
          {
          "aps": {
           "input-push-channel": "FEt0NgvLEfEAAOqA6AXdIQ==",
           "event": "start",
           "timestamp": 1771829292,
           "attributes-type": "AirplaneTrackingAttributes",
           "content-state": {
             "journeyProgress": 0
           },
           "attributes": {
             "arrivalAirport": "DEL",
             "departureAirport": "MUM",
             "arrivalTerminal": "T1",
             "liveActivityData": {
               "channelID": "FEt0NgvLEfEAAOqA6AXdIQ=="
             }
           }
          }
          }
    

    Kritiek: input-push-channel moetchannelID aanpassen

    • De input-push-channel -waarde in de hoofdmap van aps moet exact overeenkomen met de channelID in liveActivityData .
    • In het bovenstaande voorbeeld zijn beide waarden "FEt0NgvLEfEAAOqA6AXdIQ==" .
    • Deze overeenkomst koppelt de uitzendingsinstantie aan de Levende gegevens van de Activiteit.
    • Bij een onjuiste overeenkomst treden leveringsfouten op.

    Zeer belangrijke bevestigingspunten:

    • Neem alle ContentState -velden op in content-state voor alle gebeurtenistypen.
    • Neem alleen voor startgebeurtenissen alle aangepaste LiveActivityAttributes velden in attributes op.
    • Voor start-gebeurtenissen moet liveActivityData.channelID overeenkomen met input-push-channel .
    • Veldnamen zijn hoofdlettergevoelig en moeten exact overeenkomen.
    • De gegevenstypen moeten overeenkomen (String, Int, Bool, geneste objecten, enz.).
    • Voor update-/end-gebeurtenissen gebruikt u dezelfde input-push-channel als de oorspronkelijke start-gebeurtenis.

    Gemeenschappelijke fouten:

    table 0-row-3 1-row-3 2-row-3 3-row-3 4-row-3 5-row-3 6-row-3 7-row-3
    Probleem Gevolgen Repareren
    Ontbrekend input-push-channel Uitzenden werkt niet Unieke kanaal-id toevoegen voor elke uitzending
    input-push-channel komt niet overeen met channelID Live-activiteiten wordt niet gestart Zorg ervoor dat beide waarden identiek zijn
    Verschil input-push-channel voor bijwerken/beëindigen De update/end zal niet de Levende Activiteiten bereiken Dezelfde kanaal-id gebruiken gedurende de hele levenscyclus
    Ontbrekend liveActivityData.channelID Live activiteit is niet gekoppeld aan uitzenden channelID opnemen in kenmerken voor startgebeurtenis
    Vereist veld ontbreekt in startgebeurtenis Live-activiteiten wordt niet gestart Alle velden uit iOS-structuur toevoegen
    Onjuiste veldnaam (typefout/hoofdletter) Veld genegeerd of parseerfout IOS-veldnamen exact afstemmen
    Tijdstempel schalen bij bijwerken/beëindigen Bijwerken/beëindigen genegeerd door apparaten Altijd nieuwe tijdstempel genereren
  4. accordion
    Testen met Assurance

    Verifieer de uitvoering van de API en de levering van de lading met Assurance:

    1. Open uw Assurance-sessie op een testapparaat dat deel uitmaakt van het publiek.

    2. Voer de uitzending API vraag uit.

    3. In de Lijst van de Gebeurtenis, zoek:

      • Gebeurtenissen tijdens de uitvoering van de campagne.
      • Gebeurtenissen voor de levering van Live Activity.
      • Foutgebeurtenissen die mislukte payload-validatie aangeven.
    4. Inspecteer gebeurtenisladingen om te bevestigen:

      • De lading is correct verwerkt.
      • De lus input-push-channel is aanwezig.
      • Er zijn geen validatiefouten opgetreden.
      • Live-activiteiten zijn naar APN's verzonden voor publieksleden.

Profiel niet in publieksopname of opname van een vergelijkbaar publiek

In dit scenario worden de campagne en de lading correct gevormd, maar de specifieke profielen ontvangen niet de Levende Activiteit. Dit gebeurt gewoonlijk wanneer:

  • Het profiel is geen lid van het publiek dat aan de campagne is gekoppeld.
  • Het publiek is een batchpubliek en bevat een verouderde momentopname van profielgegevens.
  • De tokens voor Live-activiteit van het profiel zijn onlangs toegevoegd, maar zijn nog niet in de momentopname van het publiek weerspiegeld.

Dit het oplossen van problemenscenario is specifiek op uitzendingscampagnes gebruikend op publiek-gebaseerd richten van toepassing.

Begrijpend publieksevaluatie

Adobe Experience Platform gebruikt verschillende methoden voor publieksevaluatie die bepalen wanneer profielupdates in het publiek worden weerspiegeld:

Methode
Evaluatiefrequentie
Gegevensversheid
Best voor
Batch
Eenmaal daags (gepland)
Mag maximaal 24 uur houdbaar zijn
Groot publiek, niet-tijdgevoelig
Streaming
In real time (op profielveranderingen)
Bijna real-time voor bijgewerkte profielen
Tijdgevoelig, vereist profielupdates

pre-controles:

  • Campagne en Bevestiging van de Lading:

    • Voltooi de controles in ​ dit scenario ​ om de campagne en de lading te verzekeren correct zijn.
    • Controleer of de audience.id in de API-payload overeenkomt met de configuratie van de campagne.
  • Profiel bestaat: Bevestig dat het profiel in AEP met geldig liveActivityPushNotificationDetails bestaat.

Foutopsporingsstappen

  1. accordion
    Controleren of het profiel in het publiek aanwezig is

    Bevestig eerst of het profiel dat de live activiteit moet ontvangen, daadwerkelijk deel uitmaakt van het publiek.

    1. Navigeer aan Soorten publiek in Adobe Experience Platform.

    2. Zoek naar en open het publiek gebruikend audience.id van uw campagne.

    3. Klik doorbladeren of profielen van de Steekproef om publieksleden te bekijken.

    4. Zoek naar uw testprofiel gebruikend namespace en identiteitswaarde.

    5. als het profiel niet in het publiek wordt gevonden:

      • Het profiel voldoet niet aan de publiekscriteria of segmentregels.
      • Bekijk de publieksdefinitie om inzicht te krijgen in de lidmaatschapsvereisten.
      • Werk de profielgegevens of publieksdefinitie bij om het profiel op te nemen.
      • Wacht op publieksevaluatie om te voltooien (zie Stap 2).
    6. als het profiel in het publiek wordt gevonden: ga aan Stap 2 te werk om gegevensversheid te controleren.

  2. accordion
    Type en planning van publieksevaluatie controleren

    Identificeer of het publiek batch- of streaming evaluatie gebruikt, aangezien dit gegevensversheid bepaalt.

    1. Op de pagina van de Details van het publiek, controleer de methode van de Evaluatie:

      • Partij: Evalueerde eens per dag op een programma.
      • Streaming: die in real time wordt geëvalueerd wanneer de profielupdates voorkomen.
      • Edge: Evaluated bij randplaatsen in real time.

    Volg de aangewezen die het oplossen van problemenstappen op de evaluatiemethode worden gebaseerd:

    als het publiek de evaluatie van de Partij gebruikt:

    1. begrijp de beperkingen van het partijpubliek:

      • Het batchpubliek wordt eenmaal per dag geëvalueerd (doorgaans 's nachts).
      • De momentopname van het publiek kan tot 24 uur oud zijn.
      • Als een profiel onlangs de Actieve tokens van de Activiteit registreerde, kunnen die tokens niet in de huidige momentopname zijn.
      • Updates voor profielen worden pas in de volgende batchevaluatie weergegeven.
    2. Controle toen laatste evaluatie voorkwam:

      • In de publieksdetails, zoek Laatste evaluatie timestamp.
      • Als het profiel liveActivityPushNotificationDetails na deze tijdstempel is bijgewerkt, heeft het publiek vaste gegevens.
    3. los stale gegevens op:

      1. Optie 1: Wacht op geplande partijevaluatie

        • De volgende batchevaluatie bevat de bijgewerkte profielgegevens.
        • Dit gebeurt automatisch eenmaal per dag.
        • Het beste voor niet-dringende scenario's.
      2. Optie 2: Trigger op bestelling publieksevaluatie

        1. Navigeer aan Soorten publiek in AEP.
        2. Selecteer uw publiek.
        3. Klik evalueer nu of activeer op bestelling.
        4. Wacht tot de evaluatie is voltooid (dit kan enkele minuten tot uren duren, afhankelijk van de grootte van het publiek).
        5. Controleer of het profiel nu bijgewerkte gegevens bevat in de momentopname van het publiek.
        6. Probeer de API-aanroep van de uitzending opnieuw.

    als het publiek het Streamen evaluatie gebruikt:

    1. Begrijp het stromen publieksgedrag:

      • Streaming publiek wordt in realtime geëvalueerd wanneer profielupdates plaatsvinden.
      • Nieuwe profielen: Kwalificeer kort na verwezenlijking als zij segmentcriteria voldoen.
      • Bijgewerkte profielen: Kwalificeer of diskwalificeer kort na wordt bijgewerkt.
      • Bestaande ongewijzigde profielen: Zijn niet hergeëvalueerd tenzij een update voorkomt.
    2. identificeer de kwestie:

      • Als een profiel al bestaat en aan de segmentcriteria voldoet, maar er vindt geen update voor dat profiel plaats, wordt het mogelijk niet toegevoegd aan een nieuw gemaakt streaming publiek.
      • Het profiel moet een update (elke wijziging in kenmerken) ontvangen om herevaluatie te starten.
    3. los de kwestie op:

      • voor nieuwe profielen: Zij kwalificeren automatisch als de criteria worden voldaan aan. Geen actie nodig.

      • voor bestaande profielen zonder recente updates:

        • Een kleine update van het profiel uitvoeren (bijvoorbeeld een tijdstempelveld bijwerken).
        • Dit activeert het stromen evaluatie en voegt het profiel aan het publiek toe.
        • Alternatief: gebruik een batchpubliek of een randpubliek voor bestaande profielen.
recommendation-more-help
b22c9c5d-9208-48f4-b874-1cefb8df4d76