Aangepaste berichtenverkeerscomponenten toevoegen aan een extern berichtenverkeerskanaal
Pas het kant-en-klare berichtenverkeersoppervlak dusdanig aan dat een AI-agent aangepaste berichtenverkeerscomponenten—zoals formulieren—kan weergeven in verouderde chatkanalen en externe berichtenverkeerskanalen, naast de kant-en-klare reactieformaten.
Vereiste editions
| Ondersteunde editions weergeven. | |
Dit artikel is van toepassing op:
|
Uitgebreide WhatsApp, Standaard en uitgebreide Facebook Messenger, Standaard en uitgebreide sms, Uitgebreide Apple-berichten voor bedrijven, Uitgebreide LIJN en Uw eigen kanaal inbrengen |
Dit artikel is niet van toepassing op:
|
Uitgebreide in-app chat of uitgebreide webchatkanalen |
Pas het kant-en-klare berichtenverkeersoppervlak in Agentforce dusdanig aan dat een AI-agent aangepaste berichtenverkeerscomponenten—zoals formulieren—kan weergeven naast de kant-en-klare reactieformaten. U definieert een aangepaste AiSurface die het op bestanden gebaseerde Berichtenverkeer-oppervlak vervangt, behoudt de bestaande kant-en-klare reactienotaties en voegt een nieuwe AiResponseFormat toe voor elke berichtenverkeerscomponent die u door de agent wilt laten gebruiken.
Wanneer aangepaste berichtenverkeerscomponenten gebruiken
Gebruik aangepaste berichtenverkeerscomponenten wanneer u klanten bedient via verouderde Salesforce-chatimplementaties of berichtenverkeerskanalen van derden, zoals WhatsApp, Apple Messages for Business, Facebook Messenger of LINE, en u de agent rijke, interactieve componenten wilt laten retourneren.
Het aanpasbare Berichtenverkeer-oppervlak behoudt de kant-en-klare berichtenverkeersresponsnotaties (MessagingChoices, MessagingChoicesWithImages, MessagingRichLink en MessagingTimePicker) en laat u er nieuwe componenten bovenop toevoegen.
Randvoorwaarden
- Service Cloud-berichtenverkeerskanaal: Configureer het juiste Service Cloud-berichtenverkeerskanaal voor verouderde chat of uw externe kanaal voordat u de aanpasbare berichtenverkeersverbinding instelt.
- Metagegevens-API-versie: Gebruik versie 66.0 of hoger voor ophalen en implementeren.
- Bestaande agent: Een Agentforce agent die de op bestanden gebaseerde berichtenverkeersverbinding (
SurfaceAction__Messaging) gebruikt. - Component Berichtenverkeer: Een geïmplementeerde berichtenverkeerscomponent (zoals een formulier) waarnaar u kunt verwijzen in de responsindeling.
De manier waarop het werkt...
Het standaardoppervlak voor Berichtenverkeer wordt geleverd als een op bestanden gebaseerd oppervlak (SurfaceAction__Messaging) dat wordt geleverd met vier kant-en-klare reactie-indelingen. Als u een berichtenverkeerscomponent wilt toevoegen, vervangt u het op bestanden gebaseerde oppervlak door een aanpasbare AiSurface die verwijst naar diezelfde vier responsindelingen plus uw nieuwe aangepaste indeling.
Na de implementatie gebruikt de agent de kant-en-klare reactienotaties voor keuzes, rich links en tijdselectors, en selecteert uw aangepaste notatie wanneer de beschrijving en instructies ervan overeenkomen met het verzoek van de klant.
Aangepaste berichtenverkeerscomponenten instellen
Orden uw metagegevensbestanden met behulp van deze structuur en voltooi vervolgens de volgende stappen.
metadataToDeploy/
├── package.xml
├── aiResponseFormats/
│ └── Messaging_Form_Messaging_Component.aiResponseFormat
├── aiSurfaces/
│ └── {CustomMessagingSurface}.aiSurface
└── genAiPlannerBundles/
└── {YourAgentDevName}.genAiPlannerBundleStap 1: GenAiPlannerBundle van de agent ophalen
Haal de GenAiPlannerBundle van uw agent op via de API voor metagegevens. Gebruik deze package.xml voor het ophalen.
<?xml version="1.0" encoding="UTF-8"?>
<Package xmlns="http://soap.sforce.com/2006/04/metadata">
<types>
<members>*</members>
<name>GenAiPlannerBundle</name>
</types>
<version>66.0</version>
</Package>Het ophalen retourneert de GenAiPlannerBundle voor uw agent.
metadataToDeploy/
└── genAiPlannerBundles/
└── {YourAgentDevName}.genAiPlannerBundleStap 2: Het op bestanden gebaseerde berichtenverkeersoppervlak vervangen
Zoek in uw GenAiPlannerBundle de plannerSurfaces waarvan de surface SurfaceAction__Messaging is. Wijzig surface in een unieke ontwikkelaarsnaam voor uw aanpasbare Berichtenverkeer-oppervlak (bijvoorbeeld CustomMessagingSurface). Laat surfaceType ingesteld op Messaging.
<?xml version="1.0" encoding="UTF-8"?>
<GenAiPlannerBundle xmlns="http://soap.sforce.com/2006/04/metadata">
<!-- Other agent configuration -->
<plannerSurfaces>
<adaptiveResponseAllowed>true</adaptiveResponseAllowed>
<callRecordingAllowed>false</callRecordingAllowed>
<surface>CustomMessagingSurface</surface>
<surfaceType>Messaging</surfaceType>
</plannerSurfaces>
</GenAiPlannerBundle>Met deze wijziging wordt het op bestanden gebaseerde Berichtenverkeersoppervlak losgekoppeld en wordt uw aanpasbare Berichtenverkeersoppervlak in plaats daarvan vastgezet.
Stap 3: Het aanpasbare berichtenverkeersoppervlak maken
Maak een aiSurfaces in uw implementatiebundel. Maak daarbinnen een bestand met de naam {the_unique_dev_name_from_step_2}.aiSurface. De naam van de ontwikkelaar van het bestand moet overeenkomen met de surface die u in stap 2 hebt ingesteld.
Het aanpasbare oppervlak moet alle vier kant-en-klare berichtgevingsresponsnotaties bevatten, zodat de standaardwerking van berichtenverkeer blijft werken.
<?xml version="1.0" encoding="UTF-8"?>
<AiSurface xmlns="http://soap.sforce.com/2006/04/metadata">
<description>Customizable Messaging connection</description>
<instructions>
<instruction>Do not use any of the SURFACE_ACTION__* response formats when none of the instructions below are met.</instruction>
<sortOrder>1</sortOrder>
</instructions>
<instructions>
<instruction>Do not use the below instructions when the response contains more than 10 choices.</instruction>
<sortOrder>2</sortOrder>
</instructions>
<instructions>
<instruction>Do not use any of the SURFACE_ACTION__Messaging* type formatting when the response contains only a single, text-only choice and does not include images or URLs.</instruction>
<sortOrder>3</sortOrder>
</instructions>
<masterLabel>Messaging</masterLabel>
<responseFormats>
<enabled>true</enabled>
<responseFormat>SurfaceAction__MessagingChoices</responseFormat>
</responseFormats>
<responseFormats>
<enabled>true</enabled>
<responseFormat>SurfaceAction__MessagingChoicesWithImages</responseFormat>
</responseFormats>
<responseFormats>
<enabled>true</enabled>
<responseFormat>SurfaceAction__MessagingRichLink</responseFormat>
</responseFormats>
<responseFormats>
<enabled>true</enabled>
<responseFormat>SurfaceAction__MessagingTimePicker</responseFormat>
</responseFormats>
<source>SurfaceAction__Messaging</source>
<surfaceType>Messaging</surfaceType>
</AiSurface>Voeg voor elke aangepaste berichtenverkeerscomponent die u de agent wilt laten gebruiken, een responseFormats toe die verwijst naar de naam van de ontwikkelaar van uw aangepaste AiResponseFormat.
<responseFormats>
<enabled>true</enabled>
<responseFormat>Messaging_Form_Messaging_Component</responseFormat>
</responseFormats>Stap 4: Aangepaste AiResponseFormat maken
Maak een aiResponseFormats. Maak daarbinnen een bestand met de naam {FormatDevName}.aiResponseFormat voor elke aangepaste berichtenverkeerscomponent.
In dit voorbeeld wordt een component voor berichtenverkeer voor formulieren gedefinieerd. Het veld input verwijst naar een geïmplementeerde berichtenverkeerscomponent op ontwikkelaarsnaam (of ID) met behulp van het schema van de MessageDefinition. Stel input_strategy in op use_template zodat de agent de sjabloon invult in plaats van ruwe JSON te genereren.
<?xml version="1.0" encoding="UTF-8"?>
<AiResponseFormat xmlns="http://soap.sforce.com/2006/04/metadata">
<description>A response action. Use this when the user wants to create a case. The user is presented with rich UI.</description>
<input>{"template":{"messageType":"FormMessage","id":"{{ uuid4() }}","form":{"formatType":"MessageDefinition","messageDefinitionNameOrId":"Create_Case_Form"}},"input_strategy":"use_template"}</input>
<instructions>
<instruction>Always use this response format to create a case.</instruction>
<sortOrder>1</sortOrder>
</instructions>
<masterLabel>Messaging Form Messaging Component</masterLabel>
</AiResponseFormat>Formuliersjabloonschema
Gebruik dit sjabloonschema voor berichtenverkeerscomponenten voor formulieren. Het veld input in de AiResponseFormat moet een JSON-gecodeerde tekenreeks van één regel zijn. De uitgevouwen versie hier wordt alleen weergegeven voor de leesbaarheid.
{
"template": {
"messageType": "FormMessage",
"id": "{{ uuid4() }}",
"form": {
"formatType": "MessageDefinition",
"messageDefinitionNameOrId": "Create_Case_Form"
}
},
"input_strategy": "use_template"
}| Veld | Beschrijving |
|---|---|
template.messageType |
Het type berichtenverkeerscomponent. Gebruik FormMessage voor formuliercomponenten. |
template.id |
Een unieke identifier voor het bericht. Gebruik {{ uuid4() }} om er een te genereren tijdens run-time. |
template.form.formatType |
Het verwijzingstype voor de component. Gebruik MessageDefinition om te verwijzen naar een geïmplementeerde berichtenverkeerscomponent. |
template.form.messageDefinitionNameOrId |
De ID of ontwikkelaarsnaam van de geïmplementeerde berichtenverkeerscomponent die de agent weergeeft. Vervang deze door de waarde van uw component. |
input_strategy |
Stel dit in op use_template zodat de agent de sjabloon invult in plaats van ruwe JSON te genereren. |
Stap 5: Het bestand package.xml maken
Maak een package.xml aan de root van uw implementatiebundel dat alle drie de typen metagegevens declareert.
<?xml version="1.0" encoding="UTF-8"?>
<Package xmlns="http://soap.sforce.com/2006/04/metadata">
<types>
<members>*</members>
<name>AiResponseFormat</name>
</types>
<types>
<members>*</members>
<name>AiSurface</name>
</types>
<types>
<members>*</members>
<name>GenAiPlannerBundle</name>
</types>
<version>66.0</version>
</Package>Stap 6: Implementeren
Implementeer de metagegevens met Salesforce CLI.
sf project deploy start --manifest metadataToDeploy/package.xmlU kunt ook implementeren met de API-tool van uw voorkeur voor metagegevens. Als u incrementeel implementeert, implementeert u AiResponseFormat vóór AiSurface, omdat het oppervlak verwijst naar de responsnotaties.



