Verbinding maken een bot via e-mail
VAN TOEPASSING OP: SDK v4
U kunt uw bot configureren om te communiceren met gebruikers via e-mail van Microsoft 365. Wanneer u uw bot configureert voor toegang tot een e-mailaccount, ontvangt deze een bericht wanneer er een nieuwe e-mail binnenkomt. De bot kan vervolgens e-mail gebruiken om te reageren. Als antwoord op het e-mailbericht van een gebruiker kan de bot bijvoorbeeld een e-mailbericht met het bericht 'Hallo! Bedankt voor uw bestelling! We gaan het direct verwerken."
Het e-mailkanaal werkt momenteel alleen met Office 365. Andere e-mailservices worden momenteel niet ondersteund.
Waarschuwing
- Om veiligheidsredenen schakelt Exchange Online basisverificatie uit op 1 oktober 2022. Het e-mailkanaal ondersteunt nu het nieuwe moderne Exchange Online-verificatiemodel. Bots die gebruikmaken van het basisverificatiemodel ondervinden fouten na de wijziging van oktober 2022; of eerder als uw tenantbeheerder basisverificatie voor die datum uitschakelt. Zie Basisverificatie en Exchange Online - update van september 2021 voor meer informatie.
- Het is een schending van de Gedragscode van Bot Framework om 'spambots' te maken, waaronder bots die ongewenste of ongevraagde bulk-e-mail verzenden.
Vereisten
- Als u geen Azure-abonnement hebt, maakt u een gratis account voordat u begint.
- Een speciaal Office 365-e-mailaccount voor de bot.
- Machtiging om de bot
Mail.ReadWrite
enMail.Send
toegang te verlenen. Zie Inzicht in toestemmingservaringen voor microsoft Entra-id-toepassingen voor meer informatie.
Notitie
U mag uw eigen persoonlijke e-mailaccounts niet gebruiken voor bots, omdat elk bericht dat naar dat e-mailaccount wordt verzonden, wordt doorgestuurd naar de bot. Dit kan ertoe leiden dat de bot een reactie naar een afzender ongepast verzendt. Bots mogen daarom alleen toegewezen M365-e-mailaccounts gebruiken.
E-mail configureren voor het gebruik van moderne verificatie
Open de Azure Portal.
Open de azure-botresourceblade voor uw bot.
Selecteer Kanalen in het linkerdeelvenster.
Selecteer E-mail om de blade E-mail configureren te openen.
Stel het verificatietype in op Moderne verificatie (OAUTH).
Voer in Het e-mailadres het toegewezen Office 365-e-mailaccount voor de bot in.
Selecteer Autoriseren.
Wanneer u hierom wordt gevraagd, meldt u zich aan bij het e-mailaccount en verleent u lees-/schrijfmachtigingen en verzendt u machtigingen voor de bot.
Bij succes wordt een pagina geopend met een validatiecode. Kopieer de validatiecode.
Voer in verificatiecode de validatiecode in die u zojuist hebt gekopieerd.
Selecteer Toepassen om de e-mailconfiguratie te voltooien.
E-mail configureren voor het gebruik van basisverificatie
Notitie
- Federatieve verificatie met een leverancier die Microsoft Entra-id vervangt, wordt niet ondersteund.
- Om veiligheidsredenen wordt het gebruik van basisverificatie in Exchange Online uitgeschakeld op 1 oktober 2022. U moet al uw bots migreren om moderne verificatie te gebruiken vóór de deadline.
- Als u Microsoft Exchange Server gebruikt, moet u ervoor zorgen dat u Autodiscover eerst hebt ingeschakeld voordat u e-mail configureert voor het gebruik van basisverificatie.
- Als u een Office 365-account gebruikt waarvoor MFA is ingeschakeld, moet u MFA eerst uitschakelen voor het opgegeven account; vervolgens kunt u het account voor het e-mailkanaal configureren. Anders mislukt de verbinding.
Open de Azure Portal.
Open de azure-botresourceblade voor uw bot.
Selecteer kanalen (preview) in het linkerdeelvenster om de blade Kanalen te openen.
Selecteer E-mail om de blade E-mail configureren te openen.
- Stel het verificatietype in op Basisverificatie (waarbij staring oktober 2022 wordt uitgeschakeld).
- Voer in Het e-mailadres het toegewezen Office 365-e-mailaccount voor de bot in.
- Voer in Wachtwoord het wachtwoord in voor het e-mailaccount.
- Selecteer Toepassen om de e-mailconfiguratie te voltooien.
E-mails aanpassen
Het e-mailkanaal ondersteunt het verzenden van aangepaste waarden om geavanceerdere, aangepaste e-mailberichten te maken met behulp van de activiteitseigenschap channelData
.
In het onderstaande fragment ziet u een voorbeeld van het channelData
voor een binnenkomend aangepast e-mailbericht, van de bot tot de gebruiker.
{
"type": "ActivityTypes.Message",
"locale": "en-Us",
"channelID": "email",
"fromName": { "id": "mybot@mydomain.com", "name": "My bot"},
"recipientName": { "id": "joe@otherdomain.com", "name": "Joe Doe"},
"conversation": { "id": "123123123123", "topic": "awesome chat" },
"channelData":
{
"htmlBody": "<html><body style = \"font-family: Calibri; font-size: 11pt;\" >This is more than awesome.</body></html>",
"importance": "high",
"ccRecipients": "Yasemin@adatum.com;Temel@adventure-works.com",
}
}
Zie Een aangepast e-mailbericht maken voor meer informatie over de activiteitseigenschap.channelData
Problemen oplossen
Zie Understanding Microsoft Entra ID application consent experiences and Unexpected error when performing consent to an application when performing consent to an application. (Informatie over de ervaringen van microsoft Entra ID-toepassingstoestemming en onverwachte fout bij het uitvoeren van toestemming voor een toepassing) voor fouten die kunnen optreden bij het verwerken van toestemming voor een toepassing.
Als uw bot binnen 15 seconden geen HTTP-statuscode van 200 OK retourneert als reactie op een binnenkomend e-mailbericht, probeert het e-mailkanaal het bericht opnieuw te verzenden en ontvangt uw bot mogelijk een paar keer dezelfde e-mailberichtactiviteit. Zie de sectie HTTP-details in Hoe bots werken en het artikel over time-outfouten oplossen voor meer informatie.
Aanvullende bronnen
- een bot naar kanalen Verbinding maken
- Kanaalspecifieke functionaliteit implementeren met de Bot Framework SDK voor .NET
- Lees het naslagartikel over kanalen voor meer informatie over welke functies op elk kanaal worden ondersteund