Skapa och visa erbjudanden med Beslutshantering

Lär dig hur du visar erbjudanden från Journey Optimizer Decision Management i dina mobilappar med Experience Platform Mobile SDK.

Med Journey Optimizer Decision Management kan ni leverera det bästa erbjudandet och upplevelsen till era kunder över alla kontaktytor vid rätt tidpunkt. När ni väl utformat er målgrupp kan ni inrikta er på personaliserade erbjudanden.

Arkitektur

Beslutshantering förenklar personaliseringen med ett centralt bibliotek med marknadsföringserbjudanden och en beslutsmotor som tillämpar regler och begränsningar på komplexa realtidsprofiler som skapats av Adobe Experience Platform. Resultatet blir att ni kan skicka rätt erbjudande till kunderna vid rätt tidpunkt. Mer information finns i Om beslutshantering.

NOTE
Den här lektionen är valfri och gäller endast för Journey Optimizer-användare som vill använda beslutsstyrningsfunktionen för att visa erbjudanden i en mobilapp.

Förhandskrav

  • App med SDK:er har installerats och konfigurerats.
  • Konfigurera appen för Adobe Experience Platform.
  • Åtkomst till Journey Optimizer - Beslutshantering med rätt behörighet att hantera erbjudanden och beslut enligt beskrivningen här.

Utbildningsmål

I den här lektionen ska du

  • Uppdatera din Edge-konfiguration för beslutshantering.
  • Uppdatera taggegenskapen med tillägget Journey Optimizer - Decisioning.
  • Uppdatera ditt schema för att hämta offerthändelser.
  • Validera inställningar i Assurance.
  • Skapa ett offertbeslut baserat på erbjudanden från Journey Optimizer - Beslutshantering.
  • Uppdatera appen och registrera tillägget Optimizer.
  • Implementera erbjudanden från Beslutshantering i appen.

Inställningar

TIP
Om du redan har konfigurerat miljön som en del av Konfigurera A/B-tester med Target -lektionen kanske du redan har utfört några av stegen i det här installationsavsnittet.

Uppdatera datastream-konfiguration

För att säkerställa att data som skickas från din mobilapp till Platform Edge Network vidarebefordras till Journey Optimizer - Beslutshantering uppdaterar du din datastam.

  1. I användargränssnittet för datainsamling väljer du Datastreams och markerar ditt datastream, till exempel Luma Mobile App.

  2. Välj Mer för Experience Platform och välj Redigera Edit på snabbmenyn.

  3. Kontrollera att Offer Decisioning, Edge Segmentation och Adobe Journey Optimizer är markerade på skärmen Datastreams > Mapp > Adobe Experience Platform. Om du ska göra mållektionen väljer du också Personalization Destinations. Mer information finns i Adobe Experience Platform-inställningar.

  4. Välj Save om du vill spara dataströmskonfigurationen.

    AEP-datastream-konfiguration

Installera Journey Optimizer - Decisioning-taggtillägg

  1. Navigera till Tags och hitta din mobila taggegenskap och öppna egenskapen.

  2. Välj Extensions.

  3. Välj Catalog.

  4. Sök efter tillägget Adobe Journey Optimizer - Decisioning.

  5. Installera tillägget. Tillägget kräver ingen ytterligare konfiguration.

    Lägg till beslutstillägg

Uppdatera ditt schema

  1. Navigera till gränssnittet för datainsamling och välj Schemas i den vänstra listen.
  2. Välj Browse i det övre fältet.
  3. Välj ditt schema för att öppna det.
  4. Välj Lägg till Add bredvid Fältgrupper i schemaredigeraren.
  5. I dialogrutan Add fields groups Sök efter proposition, markera Experience Event - Proposition Interactions och välj Add field groups. Den här fältgruppen samlar in data om upplevelsehändelser som är relevanta för erbjudanden: vilket erbjudande som presenteras, som en del av vilken samling, vilket beslut och andra parametrar (se senare i den här lektionen). Men vad händer med erbjudandet? Visas den, interagerar med den, stängs av och så vidare.
    Föreslå
  6. Välj Save om du vill spara ändringarna i ditt schema.

Validera inställningar i Assurance

Så här validerar du inställningarna i Assurance:

  1. Gå till försäkringsgränssnittet.
  2. Markera Configure i den vänstra listen och välj Lägg till intill Validate Setup under ADOBE JOURNEY OPTIMIZER DECISIONING.
  3. Välj Save.
  4. Välj Validate Setup i den vänstra listen. Både datastream-konfigurationen och SDK-konfigurationen i ditt program valideras.
    Verifiering av AJO-beslut

Skapa placering

Innan ni kan skapa erbjudanden måste ni definiera hur och var dessa erbjudanden kan placeras i mobilappen. I Beslutshantering definierar du placeringar för detta ändamål och du definierar en placering för den mobila kanal som stöder en JSON-nyttolast:

  1. I Journey Optimizer-gränssnittet väljer du Komponenter Components från DECISION MANAGEMENT i den vänstra listen.

  2. Välj Placements i det övre fältet.

  3. Om ingen placering med namnet Mobile JSON, Mobile som Channel type och JSON som Content type visas, måste du skapa en placering. Annars fortsätter du med att skapa erbjudanden.

Så här skapar du Mobile JSON-placeringen:

  1. Välj Lägg till Skapa placering.

    1. i avsnittet Details anger du Mobile JSON som Name, väljer Mobile från Channel type och JSON från Content type.
    2. Välj Save om du vill spara placeringen.

    Skapa placering

Skapa erbjudanden

  1. I Journey Optimizer-gränssnittet väljer du Erbjudanden Offers från DECISION MANAGEMENT i den vänstra listen.

  2. På skärmen Offers väljer du Browse för att se listan över erbjudanden.

  3. Välj Create offer.

  4. I dialogrutan New offer väljer du Personalized offer och klickar på Next.

  5. I Details-steget i Create new personalized offer:

    1. Ange Name som erbjudande, till exempel Luma - Juno Jacket, och ange Start date and time och End date and time. Utanför dessa datum väljs inte erbjudandet av beslutsmotorn.

    2. Välj Next.

      Erbjudanden - information

  6. I Add representations-steget i Create new personalized offer:

    1. Välj Mobil Mobile i listan Channel och välj Mobile JSON i listan Placement.

    2. Välj Custom för Content.

    3. Välj Add content. I dialogrutan Add personalization:

      1. Om en Mode-väljare är tillgänglig kontrollerar du att den är inställd på JSON.

      2. Ange följande JSON:

        code language-json
        {
            "title": "Juno Jacket",
            "text": "On colder-than-comfortable mornings, you'll love warming up in the Juno All-Ways Performance Jacket, designed to compete with wind and chill. Built-in Cocona™ technology aids evaporation, while a special zip placket and stand-up collar keep your neck protected.",
            "image": "https://luma.enablementadobe.com/content/dam/luma/en/products/women/tops/jackets/wj06-purple_main.jpg"
        }
        
      3. Välj Save.

        Erbjudanden - anpassat innehåll

    4. Välj Next.

      Erbjud representationer

  7. I Add constraints-steget i Create new personalized offer:

    1. Ange Priority till 10.

    2. Växla Include capping av.

    3. Välj Next.

      Erbjudanden - begränsningar

  8. I Review-steget av Create new personalized-erbjudandet:

    1. Granska erbjudandet och välj sedan Finish.
    2. Välj Save and approve i dialogrutan Save offer.
  9. Upprepa steg 3-8 för att skapa ytterligare fyra erbjudanden med olika namn och innehåll. Alla andra konfigurationsvärden, till exempel Startdatum och -tid eller Prioritet, liknar det första erbjudandet du skapade. Du kan snabbt skapa dubbletter och redigera erbjudanden.

    1. I Journey Optimizer-gränssnittet väljer du Erbjudanden Offers i den vänstra listen och sedan Erbjudanden i den övre raden.

    2. Markera raden i erbjudandet som du skapade.

    3. Välj Mer More actions i den högra rutan och välj Duplicera Duplicate på snabbmenyn.

      Använd tabellen nedan för att definiera de fyra andra erbjudandena.

      table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 layout-fixed
      Namn på erbjudande Erbjud innehåll i JSON
      Luma - vattenflaskan har fastnat { "title": "Affirm Water Bottle", "text": "You'll stay hydrated with ease with the Affirm Water Bottle by your side or in hand. Measurements on the outside help you keep track of how much you're drinking, while the screw-top lid prevents spills. A metal carabiner clip allows you to attach it to the outside of a backpack or bag for easy access.", "image": "https://luma.enablementadobe.com/content/dam/luma/en/products/gear/fitness-equipment/ug06-lb-0.jpg" }
      Luma - Önskat träningsträd { "title": "Desiree Fitness Tee", "text": "When you're too far to turn back, thank yourself for choosing the Desiree Fitness Tee. Its ultra-lightweight, ultra-breathable fabric wicks sweat away from your body and helps keeps you cool for the distance.", "image": "https://luma.enablementadobe.com/content/dam/luma/en/products/women/tops/tees/ws05-yellow_main.jpg" }
      Luma - Adrienne Trek Jacket { "title": "Adrienne Trek Jacket", "text": "You're ready for a cross-country jog or a coffee on the patio in the Adrienne Trek Jacket. Its style is unique with stand collar and drawstrings, and it fits like a jacket should.", "image": "https://luma.enablementadobe.com/content/dam/luma/en/products/women/tops/jackets/wj08-gray_main.jpg" }
      Luma - Aero Daily Fitness Tee { "title": "Aero Daily Fitness Tee", "text": "Need an everyday action tee that helps keep you dry? The Aero Daily Fitness Tee is made of 100% polyester wicking knit that funnels moisture away from your skin. Don't be fooled by its classic style; this tee hides premium performance technology beneath its unassuming look.", "image": "https://luma.enablementadobe.com/content/dam/luma/en/products/men/tops/tees/ms01-black_main.jpg" }
  10. Som sista steg måste ni skapa ett reserverbjudande, som är ett erbjudande som skickas till kunderna om de inte är berättigade till andra erbjudanden.

    1. Välj Create offer.

    2. I dialogrutan New offer väljer du Personalized offer och sedan Next.

    3. I Details-steget av Create new fallback offer anger du en Name för erbjudandet, till exempel Luma - Fallback Offer, och väljer Next.

    4. I Add representations-steget i Create new fallback offer:

      1. Välj Mobil Mobile i listan Channel och välj Mobile JSON i listan Placement.

      2. Välj Custom för Content.

      3. Välj Add content.

      4. Ange följande JSON i dialogrutan Add personalization och välj Save:

        code language-json
        {
           "title": "Luma",
           "text": "Your store for sports wear and equipment.",
           "image": "https://luma.enablementadobe.com/content/dam/luma/en/logos/Luma_Logo.png"
        }
        
      5. Välj Next.

  11. I Review-steget av Create new fallback-erbjudandet:

    1. Granska erbjudandet och välj sedan Finish.
    2. Välj Save and approve i dialogrutan Save offer.

Du bör nu ha följande lista över erbjudanden:
Erbjudandelista

Skapa en samling

För att kunna presentera ett erbjudande för din mobilappsanvändare måste du definiera en erbjudandesamling som består av ett eller flera av de erbjudanden du har skapat.

  1. I Journey Optimizer-gränssnittet väljer du Offers i den vänstra listen.

  2. Välj Collections i det övre fältet.

  3. Välj Lägg till Create collection.

  4. I dialogrutan New collection anger du Name för din samling, till exempel Luma - Mobile App Collection, väljer Create static collection och klickar på Next.

  5. I Luma - Mobile App Collection väljer du de erbjudanden du vill inkludera i samlingen. I den här självstudiekursen väljer du fem erbjudanden du skapat. Du kan enkelt filtrera listan med hjälp av sökfältet, till exempel genom att skriva Luma.

  6. Välj Save.

    Erbjudanden - samling

Skapa ett beslut

Det sista steget är att definiera ett beslut, vilket är kombinationen av ett eller flera beslutsomfattningar och ditt reserverbjudande.

Ett beslutsomfång är en kombination av en specifik placering (till exempel HTML i ett e-postmeddelande eller JSON i en mobilapp) och ett eller flera utvärderingskriterier.

Ett utvärderingskriterium är en kombination av

  • en erbjudandesamling,
  • regler för behörighet: Erbjudandet gäller t.ex. endast en viss målgrupp.
  • en rangordningsmetod: när det finns flera erbjudanden att välja mellan, vilken metod använder du för att rangordna dem (t.ex. efter erbjudandeprioritet, med en formel eller en AI-modell).

Se Viktiga steg för att skapa och hantera erbjudanden om du bättre vill förstå hur placeringar, regler, rankningar, erbjudanden, representationer, samlingar, beslut och så vidare, interagerar och relaterar till varandra. Den här lektionen handlar endast om att använda beslutsresultatet i stället för att vara flexibel när det gäller att definiera beslut inom Journey Optimizer - Beslutshantering.

  1. I Journey Optimizer-gränssnittet väljer du Offers i den vänstra listen.

  2. Välj Decisions i det övre fältet.

  3. Välj Lägg till Create decision.

  4. I Details-steget i Create a new offer decision:

    1. Ange en Name för beslutet, till exempel Luma - Mobile App Decision, ange Start date and time och End date and time.
    2. Välj Next.
  5. I Add decision scopes-steget i Create a new offer decision:

    1. Välj Mobile JSON i listan Placement.

    2. I rutan Evaluation Criteria väljer du Lägg till Add.

      1. Välj din erbjudandesamling i dialogrutan Add Offer Collection. Exempel: Luma - Mobile App Collection.

      2. Välj Add.

        Beslut - Välj samling

    3. Kontrollera att None är markerat för Eligibility och att Offer priority är markerat som Ranking method.

    4. Välj Next.

      Beslutsomfattningar .

  6. I Add fallback offer-steget i Create a new offer decision:

    1. Välj ditt reserverbjudande, till exempel Luma - Fallback offer.
    2. Välj Next.
  7. I Summary-steget i Create a new offer decision:

    1. Välj Finish.
    2. Välj Save and activate i dialogrutan Save offer decision.
    3. På fliken Decisions ser du ditt beslut med statusen Live.

Ditt beslut om erbjudandet, som består av en uppsättning erbjudanden, är nu klart att användas. Om du vill använda beslutet i din app måste du i koden hänvisa till beslutsomfånget.

  1. I Journey Optimizer-gränssnittet väljer du Offers.

  2. Välj Decisions i det övre fältet.

  3. Välj ditt beslut, till exempel Luma - Mobile App Decision.

  4. Välj Kopiera Copy i rutan Decision scopes.

  5. Välj Decision scope på snabbmenyn.
    Kopiera beslutsomfattning

  6. Använd en textredigerare för att klistra in beslutsomfånget för senare bruk. Beslutsomfånget har följande JSON-format.

    code language-json
    {
        "xdm:activityId":"xcore:offer-activity:xxxxxxxxxxxxxxx",
        "xdm:placementId":"xcore:offer-placement:xxxxxxxxxxxxxxx"
    }
    

Implementera erbjudanden i din app

Som tidigare nämnts tillhandahåller installation av ett mobiltaggtillägg bara konfigurationen. Därefter måste du installera och registrera Optimera SDK. Om de här stegen inte är tydliga går du igenom avsnittet Installera SDK.

NOTE
Om du har slutfört avsnittet Installera SDK:er är SDK redan installerat och du kan hoppa över det här steget.
  1. Kontrollera att AEP-optimering har lagts till i listan över paket i paketberoenden i Xcode. Se Hanteraren för wift-paket.

  2. Navigera till Luma > Luma > AppDelegate i Xcode Project-navigatorn.

  3. Se till att AEPOptimize ingår i din lista över importer.

    code language-swift
    import AEPOptimize
    
  4. Kontrollera att Optimize.self är en del av den array med tillägg som du registrerar.

    code language-swift
    let extensions = [
        AEPIdentity.Identity.self,
        Lifecycle.self,
        Signal.self,
        Edge.self,
        AEPEdgeIdentity.Identity.self,
        Consent.self,
        UserProfile.self,
        Places.self,
        Messaging.self,
        Optimize.self,
        Assurance.self
    ]
    
  5. Navigera till Luma > Luma > Model > Data > decisions i Xcode Project-navigatorn. Uppdatera värdena activityId och placementId med beslutsscopeinformationen som du kopierade från Journey Optimizer-gränssnittet.

  6. Navigera till Luma > Luma > Utils > MobileSDK i Xcode Project-navigatorn. Hitta funktionen func updatePropositionOD(ecid: String, activityId: String, placementId: String, itemCount: Int) async. Lägg till följande kod:

    code language-swift
    // set up the XDM dictionary, define decision scope and call update proposition API
    Task {
       let ecid = ["ECID" : ["id" : ecid, "primary" : true] as [String : Any]]
       let identityMap = ["identityMap" : ecid]
       let xdmData = ["xdm" : identityMap]
       let decisionScope = DecisionScope(activityId: activityId, placementId: placementId, itemCount: UInt(itemCount))
       Optimize.clearCachedPropositions()
       Optimize.updatePropositions(for: [decisionScope], withXdm: xdmData)
    }
    

    Den här funktionen:

    • anger en XDM-ordlista xdmData som innehåller ECID för att identifiera den profil som du måste presentera erbjudandena för.

    • definierar decisionScope, ett objekt som baseras på det beslut som du har definierat i Journey Optimizer - Beslutshantering och som definieras med hjälp av det kopierade beslutsomfånget från Skapa ett beslut. Luma-appen använder en konfigurationsfil (decisions.json) som hämtar omfångsparametrarna, baserat på följande JSON-format:

      code language-swift
      "scopes": [
          {
              "name": "name of the scope",
              "activityId": "xcore:offer-activity:xxxxxxxxxxxxxxx",
              "placementId": "xcore:offer-placement:xxxxxxxxxxxxxxx",
              "itemCount": 2
          }
      ]
      

      Du kan dock använda vilken implementeringsmetod som helst för att se till att API:erna för Optimera får rätt parametrar (activityId, placementId och itemCount) för att skapa ett giltigt DecisionScope -objekt för implementeringen.
      För din information: övriga nyckelvärden i filen decisions.json är för framtida bruk och är inte relevanta och används för närvarande i den här lektionen och som en del av självstudiekursen.

    • anropar två API: Optimize.clearCachePropositions och Optimize.updatePropositions. Dessa funktioner rensar alla cachelagrade offerter och uppdaterar propositionerna för den här profilen.

  7. Navigera till Luma > Luma > Views > Personalization > EdgeOffersView i Xcode Project-navigatorn. Hitta funktionen func onPropositionsUpdateOD(activityId: String, placementId: String, itemCount: Int) async och kontrollera koden för den här funktionen. Den viktigaste delen av den här funktionen är API-anropet Optimize.onPropositionsUpdate som

    • hämtar förslagen för den aktuella profilen baserat på beslutsomfånget (som du har definierat i Journey Optimizer - Beslutshantering),
    • hämtar erbjudandet från erbjudandet,
    • frigör innehållet i erbjudandet så att det kan visas korrekt i appen, och
    • utlöser åtgärden displayed() för erbjudandet som skickar en händelse tillbaka till Edge Network som talar om att erbjudandet visas.
  8. I EdgeOffersView lägger du till följande kod i modifieraren .onFirstAppear. Den här koden ser till att callback-funktionen för uppdatering av erbjudanden registreras endast en gång.

    code language-swift
    // Invoke callback for offer updates
    Task {
        await self.onPropositionsUpdateOD(activityId: decision.activityId, placementId: decision.placementId, itemCount: decision.itemCount)
    }
    
  9. I EdgeOffersView lägger du till följande kod i modifieraren .task. Den här koden uppdaterar erbjudandena när vyn uppdateras.

    code language-swift
    // Clear and update offers
    await self.updatePropositionsOD(ecid: currentEcid, activityId: decision.activityId, placementId: decision.placementId, itemCount: decision.itemCount)
    

Validera med appen

  1. Återskapa och kör appen i simulatorn eller på en fysisk enhet från Xcode med Play .

  2. Gå till fliken Personalisation.

  3. Välj Edge Personalisation.

  4. Bläddra till toppen så visas två slumpmässiga erbjudanden från samlingen som du har definierat i DECISION LUMA - MOBILE APP DECISION-rutan.

    {width="300"}

    Anbuden är slumpmässiga eftersom ni har gett alla erbjudanden samma prioritet och rangordningen för beslutet baseras på prioritet.

Validera implementering i Assurance

Så här validerar du erbjudandeimplementeringen i Assurance:

  1. Granska avsnittet Installationsanvisningar för att ansluta simulatorn eller enheten till Assurance.

  2. Markera Configure i den vänstra listen och välj Lägg till intill Review & Simulate under ADOBE JOURNEY OPTIMIZER DECISIONING.

  3. Välj Save.

  4. Välj Review & Simulate i den vänstra listen. Både datastream-konfigurationen valideras och SDK-inställningen i ditt program.

  5. Välj Requests i det övre fältet. Du ser dina Offers-begäranden.
    Verifiering av AJO-beslut

  6. Du kan utforska flikarna Simulate och Event List om du vill ha mer funktionalitet och kontrollera hur du har konfigurerat Journey Optimizer Decision Management.

Nästa steg

Nu bör du ha alla verktyg du behöver för att börja lägga till fler funktioner i implementeringen av Journey Optimizer - Beslutshantering. Exempel:

  • tillämpa olika parametrar för erbjudandena (till exempel prioritet, capping)
  • samla in profilattribut i appen (se Profil) och använd dessa profilattribut för att skapa målgrupper. Använd sedan dessa målgrupper som en del av reglerna för behörighet i ditt beslut.
  • kombinerar mer än ett beslutsområde.
SUCCESS
Du har aktiverat appen för att visa erbjudanden med tillägget Journey Optimizer - Decisioning för Experience Platform Mobile SDK.
Tack för att du lade ned din tid på att lära dig om Adobe Experience Platform Mobile SDK. Om du har frågor, vill dela allmän feedback eller har förslag på framtida innehåll kan du dela dem i det här Experience League-diskussionsinlägget.

Nästa: Utför A/B-tester

recommendation-more-help
9fed61f5-c338-47ad-8005-0b89a5f4af8b