Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Copilot Studio biedt een set knooppunten die u kunt gebruiken voor activiteiten die geen berichten zijn: het knooppunt Gebeurtenisactiviteit , het knooppunt Activiteit aanroepen en andere activiteitsgerelateerde knooppunten die door het activiteitsprotocol worden ondersteund.
Wat is het activiteitenprotocol?
Het activiteitenprotocol is een kernconcept voor transport in Copilot Studio. Het activiteitenprotocol maakt naadloze communicatie mogelijk tussen gebruikers en agents. Er wordt een gestandaardiseerde structuur gedefinieerd voor alle interacties en deze worden gecategoriseerd in verschillende activiteitstypen.
Gebeurtenisactiviteiten en berichtactiviteiten zijn twee verschillende typen binnen het activiteitenprotocol, die elk unieke doeleinden in communicatiewerkstromen dienen.
Berichtactiviteiten vertegenwoordigen de fundamentele communicatie-eenheden tussen gebruikers en agents, en dragen voornamelijk tekstuele, media- of adaptieve kaartinhoud over. Ze zijn ontworpen voor directe interacties, waarbij een gebruiker een query of instructie maakt en de agent dienovereenkomstig reageert.
Gebeurtenisactiviteiten worden daarentegen meestal gebruikt om non-verbale acties of door het systeem gegenereerde updates aan te duiden. Ze maken asynchrone communicatie mogelijk, waarbij specifieke functionaliteiten of workflows worden geactiveerd zonder dat er directe interactie met de gebruiker nodig is. Een gebeurtenisactiviteit kan een agent bijvoorbeeld op de hoogte stellen van de deelname van een gebruiker aan een gesprek of van veranderingen in de context.
Gebeurtenissen verzenden
Het knooppunt Gebeurtenisactiviteit is ontworpen voor het verzenden van gebeurtenisactiviteiten. Gebeurtenisactiviteiten worden verzonden via de agent en kunnen worden onderschept en gebruikt door het kanaal, dat beslist of en hoe de activiteiten moeten worden gebruikt. Wanneer u een gebeurtenis verzendt, geeft u deze een naam en kunt u vervolgens een waarde voor de gebeurtenis instellen. Deze waarde kan een willekeurige indeling hebben:
- Een primitieve letterlijke waarde
- Een variabeleverwijzing
- Een Power Fx-formule.
De waarde wordt geserialiseerd als een letterlijke JSON-waarde en toegevoegd aan de uitgaande activiteit.
Dit knooppunt kan onder meer voor het volgende worden gebruikt:
- Configureer een aangepast webchat-besturingselement voor het afhandelen van gebeurtenissen die vanuit de agent worden verzonden. U kunt bijvoorbeeld zoeken naar een gebeurtenis die terugkomt van de agent en een actie ondernemen op de pagina. Het
04.api/c.incoming-activity-event-voorbeeld in de Microsoft Bot Framework-opslagplaats voor Webchat-voorbeelden op GitHub laat zien hoe gebeurtenisafhandeling kan werken. - Gebruik gebeurtenisactiviteiten om audiocodes-opnameservices te beheren, bijvoorbeeld om de opname van gesprekken te starten of te stoppen. Zie Gesprekken opnemen voor meer informatie.
Clienthulpprogramma's gebruiken
Tijdens de orkestratie voorzien we het taalmodel van een reeks hulpmiddelen. De meeste mensen denken aan hulpprogramma's als het aanroepen van externe systemen.
We kunnen echter ook gebeurtenisactiviteiten gebruiken om hulpprogramma's van de client uit te voeren.
Wanneer de orchestrator besluit een clienthulpprogramma uit te voeren, verzendt de agent een gebeurtenisactiviteit naar de client, inclusief de invoer die in het hulpprogramma is gedefinieerd.
De agent verstuurt de activiteit en wacht vervolgens tot de client de actie uitvoert en een resultaat retourneert. Wanneer de client klaar is, stuurt deze een gebeurtenisactiviteit met het antwoord naar de agent. De agent beschouwt dit antwoord als de respons voor het hulpmiddel en gaat verder met de orkestratie.
Voorbeeldpayloads voor clienthulpmiddelen
Stel dat we een clienthulpprogramma hebben waarmee de tekst op een PowerPoint-dia wordt opgehaald.
De invoer is het paginanummer en de uitvoer is de tekst op de dia.
De agent zou een payload kunnen sturen zoals:
{
"type": "event",
"timestamp": 1738709828,
"from": {
"id": "d9c0dcf9-4045-8062-535b-73fb4dfee954",
"role": 0
},
"name": "getSlideContent",
"replyToId": "f617c120-7b36-496a-a096-ac692efdad04",
"value": {
"page": 5
}
}
Nadat de bewerking is voltooid, stuurt de client zoiets als een payload naar de agent, zoals:
{
"type": "event",
"timestamp": 1738709828,
"name": "getSlideContent",
"replyToId": "f617c120-7b36-496a-a096-ac692efdad04",
"value": {
"content": "QA slide. Next steps"
}
}
Clienthulpprogramma's instellen
Er zijn twee manieren om clienthulpprogramma's te registreren.
U kunt als onderdeel van de inhoud van uw agentonderwerp een speciale clienttaakactie op uw agent registreren met behulp van de code-editor.
Bijvoorbeeld:
description: this tool retrieves the content of a powerpoint slide
schemaName: GetSlideContent
dialog:
kind: TaskDialog
action:
kind: InvokeClientTaskAction
clientActionInputSchema:
kind: Record
properties:
page:
displayName: Page Number
description: The number of the slide
isRequired: true
type: Number
clientActionResponseSchema:
kind: Record
properties:
content:
displayName: Slide Content
description: The content of the slide
type: String
Soms zijn de beschikbare hulpprogramma's dynamisch, op basis van de context van de hostingclient. Voor meer flexibiliteit kunnen makers een systeemvariabele instellen om dynamisch andere clienttools in te stellen die voor deze sessie kunnen worden gebruikt.
- kind: SetVariable
id: setVariable_76NZWK
variable: System.ClientPluginActions
value: |-
=[
{
Description: "this tool retrieves the content of a powerpoint slide",
Identifier: "GetSlideContent",
Name: "GetSlideContent",
Response: {mode: "Generated"},
Inputs: [
{
Description: "The name of the menu for the form to launch",
IsAutomatic: true,
IsRequired: true,
Name: "Page Number",
PropertyName: "page",
Type: {
'$kind': "Number"
}
}
],
Outputs: [
{
Description: "The content of the slide",
Name: "Slide Content",
PropertyName: "content",
Type: {
'$kind': "String"
}
}
]
}
]
Andere soorten activiteiten verzenden
Naast gebeurtenisactiviteiten kunt u ook andere typen activiteiten verzenden met behulp van het knooppunt Activiteit aanroepen. De typen activiteiten die u kunt verzenden zijn een subset van de activiteiten die worden aangeboden in het Bot Framework-schema -ActivityTypes-klasse. Wanneer u dit knooppunt gebruikt, kiest u het type activiteit en stelt u vervolgens desgewenst een naam of waarde in.
Veelvoorkomende typen:
- Typen: hiermee wordt een typeactiviteit verzonden die het kanaal kan kiezen om een type-indicator op de client op te halen en weer te geven.
- Aanroepen en Antwoord aanroepen worden gebruikt voor Microsoft Teams. U maakt een onderwerp met een aanroeptrigger om een inkomende Aanroep vanuit Teams te onderscheppen en gebruikt een knooppunt van het type Respons aanroepen-activiteit om een passend antwoord terug te sturen naar Teams.
- Overdracht verstuurt een overdrachtactiviteit met expliciete controle over de waarde. Een overdracht wordt gebruikt voor externe kanalen, zoals AudioCodes.