Loading
Agentforce kontaktcenter
Innehållsförteckningar
Välj filter

          Inga resultat
          Inga resultat
          Här är några söktips

          Kontrollera stavningen av dina nyckelord.
          Använd mer allmänna söktermer.
          Välj färre filter för att utöka din sökning.

          Sök hela Salesforce-hjälpen
          Använd ett skärmflöde för att skicka indata till ett dynamiskt WhatsApp-flöde

          Använd ett skärmflöde för att skicka indata till ett dynamiskt WhatsApp-flöde

          Skärmflödet kan samla in kunddata och säkert skicka dem till variabler. Dessa variabler kan sedan fungera som indata för det dynamiska WhatsApp-flödet som skapas med en Apex baserad formulärmeddelandekomponent. För att lägga till personligt innehåll i meddelandet, i den Apex komponenten formulärmeddelanden, lägg till dynamiska referenser till dessa indata. Till exempel, för att schemalägga en veterinärbokning samlar skärmflödet in specifika detaljer, som typ av djur och problem, och skickar dynamiskt denna information till den Apex baserade meddelandekomponenten för formulär.

          Versioner som krävs

          Visa versioner som stöds.
          Markering Denna artikel gäller för: Utökade WhatsApp-kanaler, Sammanslagen WhatsApp
          X-ikon Denna artikel gäller inte för: Utökad chatt i app, Utökad webbchatt, Standard och Utökad Facebook Messenger, Standard och Utökade SMS, Utökade Apple-meddelanden för företag, Utökad linje och Bring Your Own-kanal
          Användarbehörigheter som krävs för att
          Skapa meddelandekomponenter:

          Anpassa program OCH Visa inställningar och konfigurering

          ELLER

          Systemadministratör

          Skicka och ta emot meddelanden i Meddelanden: Meddelande agent

          När du skapar en Apex baserad formulärmeddelandekomponent är dessa standardindataparametrar tillgängliga som standard.

          Parameter Beskrivning
          FormData Lagrar indata som skickas till flödet. Data lagras som en JSON-sträng av nyckelvärdepar. För att referera till dessa data måste du definiera datastrukturen i en datamodell. Datamodellens struktur måste matcha JSON:s struktur. Du kan komma åt dessa data med Apex eller ett skärmflöde.
          FormEntryScreenId Lagrar ID för inmatningsskärmen, vilket är den första skärm som den meddelande slutanvändaren ser.

          Du hittar dessa standardparametrar på fliken Parametrar i sektionen Komponentdetaljer.Visar de parametrar för FormData och FormEntryScreenID som skapas som standard.

          För att hjälpa dig förstå hur du använder dessa parametrar och ett skärmflöde för att skicka in indata, låt oss titta på ett exempel.

          1. Öppna flödesformatet för den Apex baserade formulärmeddelandekomponenten.
            1. I formatet Flöde, klicka på Hantera data för att definiera en datamodell för alla indata som skickas in från parametern FormData.

              Till exempel lagrar parametern FormData dessa indata.

              {“FirstName”:“Albert”,“LastName”:“Costa”,“isStudent”:“true”}

            2. För att lägga till ett fält i datamodellen, klicka på Lägg till fält och konfigurera dess egenskaper.
              Utför detta steg för varje fält i parametern FormData. För att skapa en struktur, välj datatypen Objekt för ett fält och lägg till kapslade fält.
              Datamodellen har tre definierade fält.
            3. När du är färdig med att definiera datamodellen, spara den.
          2. För att använda värdet från ett datamodellfält i en flödesegenskap, lägg till en dynamisk referens.
            1. Öppna formatet Flöde och hitta den egenskap som du vill använda en dynamisk referens för.
              Du kan till exempel lägga till en dynamisk referens för fältet Textinnehåll för ett brödtextskärmelement.
            2. I fältet Typ, välj Dynamisk referens.
            3. I fältet Välj referens, välj datamodellfältet.
              Inmatningsfältet FirstName, inmatningsfältet LastName och den valda djurtypen på skärm 1 kan alla användas som dynamisk referens.

              Dynamiska referenser kan hämta data från datamodellfält eller inmatningsfält som definieras i en skärm.

            4. På arbetsytan, förhandsgranska den dynamiska referensen.
              Den dynamiska referensen hämtar data från inmatningsfältet FirstName.
          3. För att skicka data till meddelandekomponenten, skapa ett skärmflöde.
            Skärmflödet kan samla in data från meddelandesessionen och använda dem i den Apex baserade meddelandekomponenten Formulär. För att illustrera hur detta fungerar, låt oss skapa ett exempel på ett skärmflöde.
            1. Definiera skärmflödesvariablerna.
              Variabel Värde
              sessionId Lagrar post-ID för meddelandesession.
              initialData Lagrar indata för det Apex baserade formuläret. Fälten i denna JSON-sträng måste matcha de fältnamn du lade till i datamodellen.
              initialScreenId Lagrar det inledande skärm-ID:t för det Apex baserade formuläret. Detta är den första skärmen som en meddelandeslutanvändare ser.
              meuName Lagrar namnet på den meddelande slutanvändaren.
              items Denna samlingsvariabel lagrar en lista över objekt.
            2. I skärmflödet, lägg till dessa åtgärder i denna ordning. För att hämta data från ett Salesforce-objekt, lägg till åtgärden Hämta poster. För att tilldela värden till skärmvariablerna, lägg till en Tilldelning-åtgärd.
              Åtgärd Beskrivning
              getSession Hämta poster-åtgärd Hämta meddelandesessionen baserat på sessions-ID. Du kan få relevanta data från den meddelandesessionen. I detta fall hämtar och lagrar den fältvärdena Id och MessagingEndUserId.
              getMEU Hämta poster-åtgärd Hämta posten Meddelande användare baserat på MessagingEndUserId.
              setMEUName-tilldelningsåtgärd Ställ in variabeln meuName till värdet för fältet Meddelande användarnamn från posten Meddelande användare.
              getDynamicFlowItem Hämta poster-åtgärd Hämta alla DynamicFlowItem-poster från objektet DynamicFlowItem och lagra fälten ID, ItemId__c och itemTitle__c i items.
              Apex GenerateJson Konverterar indata från variablerna items och meuName till JSON-formatet. Fälten i JSON-objektet mappas till fälten i flödets datamodell. Denna åtgärd baseras på en Apex klass. Se exempel på Apex klass efter denna tabell.
              setData-tilldelningsåtgärd Ställ in variabeln InitialData till värdet för den JSON-åtgärd som skapas.

              Denna Apex klass transformerar strukturerade indata—en användares namn och en lista över Salesforce-poster—till en enda JSON-sträng. Denna JSON-sträng används sedan för att skicka indata till den Apex baserade meddelandekomponenten för formulär.

              public class FlowJSONBuilder {
              
                  // 1. Input parameters
                  public class FlowInput {
                      @InvocableVariable(label='User Name' required=true)
                      public String meuName;
              
                      // CHANGE: Use List<SObject> instead of List<DynamicFlowItems__c> to avoid compile error
                      @InvocableVariable(label='Flow Items' required=true)
                      public List<SObject> items; 
                  }
              
                  // 2. Output parameters
                  public class FlowOutput {
                      @InvocableVariable(label='Generated JSON')
                      public String jsonString;
                  }
              
                  // 3. Internal Wrapper classes
                  public class JSONStructure {
                      public String greeting;
                      public List<ItemWrapper> items;
                  }
              
                  public class ItemWrapper {
                      public String id;
                      public String title;
                  }
              
                  // 4. Main Method
                  @InvocableMethod(label='Generate Custom JSON' description='Builds the JSON string from Flow items')
                  public static List<FlowOutput> generateJson(List<FlowInput> requests) {
                      List<FlowOutput> outputs = new List<FlowOutput>();
              
                      for (FlowInput request : requests) {
                          FlowOutput output = new FlowOutput();
                          
                          JSONStructure jsonRoot = new JSONStructure();
                          jsonRoot.greeting = 'Hello ' + request.meuName + '!';
                          jsonRoot.items = new List<ItemWrapper>();
              
                          if (request.items != null) {
                              // Loop through generic SObjects
                              for (SObject genericRec : request.items) {
                                  // CAST the generic SObject to your specific Custom Object
                                  DynamicFlowItem__c rec = (DynamicFlowItem__c)genericRec;
                                  
                                  ItemWrapper item = new ItemWrapper();
                                  item.id = rec.itemId__c;     
                                  item.title = rec.itemTitle__c; 
                                  jsonRoot.items.add(item);
                              }
                          }
              
                          output.jsonString = JSON.serialize(jsonRoot);
                          outputs.add(output);
                      }
              
                      return outputs;
                  }
              }
            3. Lägg till en skärmåtgärd i skärmflödet och dra sedan komponenten Utökat meddelande till skärmen.
              Komponenten Utökade meddelanden anropar det dynamiska WhatsApp-flödet och ger indata.
            4. För att specificera indata, ange dessa egenskaper för komponenten Utökat meddelande enligt bilden.
              Egenskap Värde
              ID för meddelandesession Välj sessionId, den skärmflödesvariabel som innehåller sessions-ID.
              Meddelandekomponentnamn Välj namnet på den Apex baserade formulärmeddelandekomponent som du skapade.
              Apex formulärdata Välj initialData, den skärmflödesvariabel som innehåller indata.
              Skärm-ID för Apex Välj initialScreenId, den skärmflödesvariabel som innehåller det inledande skärm-ID:t.

              Vid körning åberopar skärmåtgärden den Apex baserade formulärmeddelandekomponenten och skickar dessa indata till den.

            5. Spara och aktivera skärmflödet.
              Komponenten Utökade meddelanden anropar det dynamiska WhatsApp-flödet och ger indata.
          4. För att låta en servicerepresentant köra skärmflödet, bädda in det aktiva skärmflödet på servicekonsolsidan.
            Lägg till exempel till komponenten Flöde på postsidan för meddelandesession.

            Postsidan för meddelandesession har en komponent för flödet.

            Under en meddelandesession kan servicerepresentanten klicka på Nästa för att starta skärmflödet från sidan.

            För att infoga flödets meddelandekomponent i konversationen med kunden kan servicerepresentanten klicka på Infoga meddelande.

            Säljare kan klicka på Infoga meddelande för att skicka det till kunden.

            Servicerepresentanten kan sedan skicka meddelandet till kunden.

           
          Laddar
          Salesforce Help | Article