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 i Mail.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

  1. Otwórz portal Azure Portal.

  2. Otwórz blok zasobów usługi Azure Bot dla bota.

  3. W okienku po lewej stronie wybierz pozycję Kanały.

  4. Wybierz pozycję Poczta e-mail , aby otworzyć blok Konfigurowanie poczty e-mail .

    Configure email settings

    1. Dla ustawienia Typ uwierzytelniania ustaw wartość Nowoczesne uwierzytelnianie (OAUTH).

    2. W polu Adres e-mail wprowadź dedykowane konto e-mail usługi Office 365 bota.

    3. Wybierz pozycję Autoryzuj.

      1. Po wyświetleniu monitu zaloguj się do konta e-mail i przyznaj uprawnienia do odczytu/zapisu i wysyłania do bota.

      2. Po pomyślnym zakończeniu zostanie otwarta strona z kodem weryfikacji. Skopiuj kod weryfikacyjny.

        Interaction with validation code

    4. W polu Kod uwierzytelniania wprowadź właśnie skopiowany kod weryfikacji.

    5. 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.
  1. Otwórz portal Azure Portal.

  2. Otwórz blok zasobów usługi Azure Bot dla bota.

  3. W okienku po lewej stronie wybierz pozycję Kanały (wersja zapoznawcza), aby otworzyć blok Kanały .

  4. Wybierz pozycję Poczta e-mail , aby otworzyć blok Konfigurowanie poczty e-mail .

    Enter email credentials

    1. Dla ustawienia Typ uwierzytelniania ustaw wartość Uwierzytelnianie podstawowe (wyłączenie wgwiezdania w październiku 2022 r.).
    2. W polu Adres e-mail wprowadź dedykowane konto e-mail usługi Office 365 bota.
    3. W polu Hasło wprowadź hasło dla konta e-mail.
    4. 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