Połączenie bota do wiadomości e-mail
DOTYCZY: ZESTAW SDK w wersji 4
Bot można skonfigurować tak, aby komunikował się z użytkownikami za pośrednictwem poczty e-mail platformy Microsoft 365. Po skonfigurowaniu bota w celu uzyskania dostępu do konta e-mail otrzyma wiadomość po nadejściu nowej wiadomości e-mail. Bot może następnie użyć wiadomości e-mail, aby odpowiedzieć. Na przykład w odpowiedzi na wiadomość e-mail użytkownika bot może wysłać wiadomość e-mail z wiadomością "Cześć! Dziękujemy za zamówienie! Natychmiast zaczniemy go przetwarzać".
Kanał poczty e-mail obecnie działa tylko z usługą Office 365. Inne usługi poczty e-mail nie są obecnie obsługiwane.
Ostrzeżenie
- Ze względów bezpieczeństwa usługa Exchange Online wyłączy uwierzytelnianie podstawowe 1 października 2022 r. Kanał poczty e-mail obsługuje teraz nowy model nowoczesnego uwierzytelniania usługi Exchange Online. Boty korzystające z podstawowego modelu uwierzytelniania będą doświadczać błędów po zmianie z października 2022 r.; lub wcześniej, jeśli administrator dzierżawy wyłączy uwierzytelnianie podstawowe przed tą datą. Aby uzyskać więcej informacji, zobacz Basic Authentication and Exchange Online - September 2021 Update (Uwierzytelnianie podstawowe i usługa Exchange Online — aktualizacja z września 2021 r.).
- Jest to naruszenie kodeksu postępowania platformy Bot Framework w celu utworzenia "spambotów", w tym botów, które wysyłają niechciane lub niepożądane zbiorcze wiadomości e-mail.
Wymagania wstępne
- Jeśli nie masz subskrypcji platformy Azure, przed rozpoczęciem utwórz bezpłatne konto.
- Dedykowane konto e-mail usługi Office 365 dla bota.
- Uprawnienie do udzielenia botowi
Mail.ReadWrite
iMail.Send
dostępu. Aby uzyskać więcej informacji, zobacz Omówienie środowisk zgody aplikacji Microsoft Entra ID.
Uwaga
Nie należy używać własnych osobistych kont e-mail dla botów, ponieważ każda wiadomość wysłana do tego konta e-mail zostanie przekazana botowi. Może to spowodować niewłaściwe wysłanie przez bota odpowiedzi do nadawcy. Z tego powodu boty powinny używać tylko dedykowanych kont e-mail usługi M365.
Konfigurowanie poczty e-mail do korzystania z nowoczesnego uwierzytelniania
Otwórz portal Azure Portal.
Otwórz blok zasobów usługi Azure Bot dla bota.
W okienku po lewej stronie wybierz pozycję Kanały.
Wybierz pozycję Poczta e-mail , aby otworzyć blok Konfigurowanie poczty e-mail .
Dla ustawienia Typ uwierzytelniania ustaw wartość Nowoczesne uwierzytelnianie (OAUTH).
W polu Adres e-mail wprowadź dedykowane konto e-mail usługi Office 365 bota.
Wybierz pozycję Autoryzuj.
Po wyświetleniu monitu zaloguj się do konta e-mail i przyznaj uprawnienia do odczytu/zapisu i wysyłania do bota.
Po pomyślnym zakończeniu zostanie otwarta strona z kodem weryfikacji. Skopiuj kod weryfikacyjny.
W polu Kod uwierzytelniania wprowadź właśnie skopiowany kod weryfikacji.
Wybierz pozycję Zastosuj , aby ukończyć konfigurację poczty e-mail.
Konfigurowanie poczty e-mail do korzystania z uwierzytelniania podstawowego
Uwaga
- Uwierzytelnianie federacyjne przy użyciu dowolnego dostawcy, który zastępuje identyfikator Entra firmy Microsoft, nie jest obsługiwany.
- Ze względów bezpieczeństwa użycie uwierzytelniania podstawowego w usłudze Exchange Online jest wyłączone 1 października 2022 r. Przed upływem terminu należy zmigrować wszystkie boty do korzystania z nowoczesnego uwierzytelniania .
- Jeśli używasz programu Microsoft Exchange Server, przed skonfigurowaniem poczty e-mail do korzystania z uwierzytelniania podstawowego upewnij się, że włączono funkcję automatycznego wykrywania.
- Jeśli używasz konta usługi Office 365 z włączoną usługą MFA, upewnij się, że najpierw wyłączysz uwierzytelnianie wieloskładnikowe dla określonego konta; Następnie możesz skonfigurować konto dla kanału poczty e-mail. W przeciwnym razie połączenie zakończy się niepowodzeniem.
Otwórz portal Azure Portal.
Otwórz blok zasobów usługi Azure Bot dla bota.
W okienku po lewej stronie wybierz pozycję Kanały (wersja zapoznawcza), aby otworzyć blok Kanały .
Wybierz pozycję Poczta e-mail , aby otworzyć blok Konfigurowanie poczty e-mail .
- Dla ustawienia Typ uwierzytelniania ustaw wartość Uwierzytelnianie podstawowe (wyłączenie wgwiezdania w październiku 2022 r.).
- W polu Adres e-mail wprowadź dedykowane konto e-mail usługi Office 365 bota.
- W polu Hasło wprowadź hasło dla konta e-mail.
- Wybierz pozycję Zastosuj , aby ukończyć konfigurację poczty e-mail.
Dostosowywanie wiadomości e-mail
Kanał poczty e-mail obsługuje wysyłanie niestandardowych wartości w celu utworzenia bardziej zaawansowanych, dostosowanych wiadomości e-mail przy użyciu właściwości działania channelData
.
Poniższy fragment kodu przedstawia przykład channelData
dla przychodzącej niestandardowej wiadomości e-mail od bota do użytkownika.
{
"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",
}
}
Aby uzyskać więcej informacji na temat właściwości działania channelData
, zobacz Tworzenie niestandardowej wiadomości e-mail.
Rozwiązywanie problemów
Aby uzyskać informacje o błędach, które mogą wystąpić podczas przetwarzania zgody na aplikację, zobacz Opis środowisk zgody aplikacji Microsoft Entra ID i Nieoczekiwany błąd podczas wyrażania zgody na aplikację.
Jeśli bot nie zwróci kodu stanu HTTP 200 OK w ciągu 15 sekund w odpowiedzi na przychodzącą wiadomość e-mail, kanał poczty e-mail spróbuje ponownie wysłać wiadomość, a bot może otrzymać te same działania wiadomości e-mail kilka razy. Aby uzyskać więcej informacji, zobacz sekcję Szczegóły protokołu HTTP w artykule How bots work and the troubleshooting timeout errors (Jak działają boty) i troubleshooting timeout errors (Rozwiązywanie problemów z błędami przekroczenia limitu czasu).
Dodatkowe zasoby
- Połączenie bota do kanałów
- Implementowanie funkcji specyficznych dla kanału przy użyciu zestawu Bot Framework SDK dla platformy .NET
- Przeczytaj artykuł referencyjny dotyczący kanałów, aby uzyskać więcej informacji o tym, które funkcje są obsługiwane w poszczególnych kanałach