Dialogfeld "Aufrufen" im Bot mit adaptiver Karte
Sie können Dialoge (in TeamsJS v1.x als Aufgabenmodule bezeichnet) über Teams-Bots aufrufen, indem Sie adaptive Karten oder Bot Framework-Karten verwenden.
Wichtige Features von Dialogen:
- Verbessern Sie die Benutzerfreundlichkeit, indem Sie mehrere Schritte vermeiden.
- Helfen Sie Benutzern, den Botstatus nachzuverfolgen.
- Abrufen von Benutzereingaben und Anzeigen von benutzerdefinierten Webseiteninhalten
Diese Schritt-für-Schritt-Anleitung hilft Ihnen beim Erstellen eines Azure-Beispielbots zum Aufrufen des Teams-Dialogs. Die folgende Ausgabe wird angezeigt:
Voraussetzungen
Stellen Sie sicher, dass Sie die folgenden Tools installieren und Ihre Entwicklungsumgebung einrichten:
Installieren | Zum Benutzen... | |
---|---|---|
Microsoft Teams | Microsoft Teams für die Zusammenarbeit mit allen, mit denen Sie arbeiten, über Apps für Chats, Besprechungen und Anrufe an einem Ort. | |
Visual Studio 2022 |
Sie können die Unternehmensversion in Visual Studio 2022 und die Workloads ASP.NET und Webentwicklung installieren. Verwenden Sie die neueste Version. | |
.NET Core SDK | Angepasste Bindungen für lokales Debuggen und Bereitstellungen von Azure Functions-Apps. Verwenden Sie die neueste Version, oder installieren Sie die portable Version. | |
Entwicklungstunnel | Teams-App-Features (Konversationsbots, Nachrichtenerweiterungen und eingehende Webhooks) erfordern eingehende Verbindungen. Ein Tunnel verbindet Ihr Entwicklungssystem mit Teams. Dev Tunnel ist ein leistungsstarkes Tool, um Ihren Localhost sicher für das Internet zu öffnen und zu steuern, wer Zugriff hat. Dev Tunnel ist in Visual Studio 2022 Version 17.7.0 oder höher verfügbar. Oder Sie können ngrok auch als Tunnel verwenden, um Ihr Entwicklungssystem mit Teams zu verbinden. Dies ist nicht für Apps erforderlich, die nur Registerkarten enthalten. Dieses Paket wird im Projektverzeichnis installiert (mit npm devDependencies ). |
Hinweis
Nachdem Sie ngrok heruntergeladen haben, registrieren Sie sich, und installieren Sie authtoken.
Einrichten einer lokalen Umgebung
Öffnen Sie Microsoft-Teams-Samples.
Wählen Sie Code aus.
Wählen Sie im Dropdownmenü Mit GitHub Desktop öffnen aus.
Wählen Sie Klonen aus.
Registrieren der Microsoft Entra-App
Die folgenden Schritte helfen Ihnen beim Erstellen und Registrieren Ihres Bots im Azure-Portal:
- Erstellen und registrieren Sie Ihre Azure-App.
- Erstellen Sie einen geheimen Clientschlüssel, um die SSO-Authentifizierung des Bots zu aktivieren.
- Fügen Sie den Teams-Kanal hinzu, um den Bot bereitzustellen.
- Erstellen Sie einen Tunnel zu den Endpunkten Ihres Webservers mithilfe von Dev Tunnel (empfohlen) oder ngrok.
- Fügen Sie dem von Ihnen erstellten Entwicklungstunnel einen Messagingendpunkt hinzu.
Hinzufügen der App-Registrierung
Navigieren Sie zum Azure-Portal.
Wählen Sie App-Registrierungen aus.
Wählen Sie + Neue Registrierung aus.
Geben Sie den Namen Ihrer App ein.
Wählen Sie Konten in einem beliebigen Organisationsverzeichnis (Beliebiger Microsoft Entra ID-Mandant – Mehrinstanzenfähig) aus.
Wählen Sie Registrieren aus.
Ihre App ist in der Microsoft Entra-ID registriert. Die App-Übersichtsseite wird angezeigt.
Hinweis
Speichern Sie die App-ID unter Anwendungs-ID (Client) und Verzeichnis-ID (Mandant) zur weiteren Verwendung.
Erstellen eines Tunnels
Öffnen Sie Visual Studio.
Wählen Sie Neues Projekt erstellen aus.
Geben Sie im Suchfeld ASP.NET ein. Wählen Sie in den Suchergebnissen ASP.NET Core Web App aus.
Wählen Sie Weiter aus.
Geben Sie Projektname ein , und wählen Sie Weiter aus.
Wählen Sie Erstellen aus.
Ein Übersichtsfenster wird angezeigt.
Wählen Sie in der Dropdownliste Debug die Option Dev Tunnels (kein aktiver Tunnel)>Tunnel erstellen... aus.
Ein Popupfenster wird geöffnet.
Aktualisieren Sie die folgenden Details im Popupfenster:
- Konto: Geben Sie ein Microsoft- oder GitHub-Konto ein.
- Name: Geben Sie einen Namen für Ihren Tunnel ein.
- Tunneltyp: Wählen Sie in der Dropdownliste die Option Temporär aus.
- Zugriff: Wählen Sie in der Dropdownliste Öffentlich aus.
Wählen Sie OK aus.
Ein Popupfenster wird angezeigt, in dem angezeigt wird, dass der Entwicklungstunnel erfolgreich erstellt wurde.
Wählen Sie OK aus.
Sie finden den tunnel, den Sie erstellt haben, in der Debug-Dropdownliste wie folgt:
Wählen Sie F5 aus, um die Anwendung im Debugmodus auszuführen.
Wenn ein Dialogfeld Sicherheitswarnung angezeigt wird, wählen Sie Ja aus.
Ein Popupfenster wird geöffnet.
Wählen Sie Weiter.
Die Dev Tunnel-Startseite wird in einem neuen Browserfenster geöffnet, und der Entwicklungstunnel ist jetzt aktiv.
Wechseln Sie zu Visual Studio, und wählen Sie Ausgabe anzeigen >aus.
Wählen Sie im Dropdownmenü Ausgabekonsoledie Option Dev Tunnels aus.
In der Ausgabekonsole wird die Dev Tunnel-URL angezeigt.
Hinzufügen einer Webauthentifizierung
Wählen Sie im linken Bereich unter Verwalten die Option Authentifizierung aus.
Wählen SiePlattformweb>hinzufügenaus.
Geben Sie den Umleitungs-URI für Ihre App ein, indem Sie an den vollqualifizierten Domänennamen anfügen
auth-end
. Zum Beispielhttps://your-devtunnel-domain/auth-end
oderhttps://your-ngrok-domain/auth-end
.Aktivieren Sie unter Implizite Genehmigung und Hybridflows die Kontrollkästchen Zugriffstoken und ID-Token .
Wählen Sie Konfigurieren aus.
Wählen Sie unter Web die Option URI hinzufügen aus.
https://token.botframework.com/.auth/web/redirect
eingeben.Klicken Sie auf Speichern.
Erstellen eines geheimen Clientschlüssels
Wählen Sie im linken Bereich unter Verwalten die Option Zertifikate & Geheimnisse aus.
Wählen Sie unter Geheime Clientschlüsseldie Option + Neuer geheimer Clientschlüssel aus.
Das Fenster Geheimen Clientschlüssel hinzufügen wird angezeigt.
Geben Sie Beschreibung ein.
Klicken Sie auf Hinzufügen.
Wählen Sie unter Wertdie Option In Zwischenablage kopieren aus, um den Wert des geheimen Clientschlüssels zur weiteren Verwendung zu speichern.
Api-Berechtigung hinzufügen
Wählen Sie im linken Bereich unter Verwalten die Option API-Berechtigungen aus.
Wählen Sie + Berechtigung hinzufügen aus.
Wählen Sie Microsoft Graph aus.
Wählen Sie Delegierte Berechtigungen aus.
Wählen Sie die folgenden Berechtigungen aus:
- OpenId-Berechtigungen>email, offline_access, openid, profile.
- Benutzer>User.Read.
Wählen Sie Berechtigungen hinzufügen aus.
Hinweis
- Wenn einer App keine Zustimmung des IT-Administrators erteilt wird, müssen Benutzer bei der ersten Verwendung einer App ihre Zustimmung erteilen.
- Benutzer müssen den API-Berechtigungen nur zustimmen, wenn die Microsoft Entra-App in einem anderen Mandanten registriert ist.
Hinzufügen des Anwendungs-ID-URI
Wählen Sie im linken Bereich unter Verwalten die Option API verfügbar machen aus.
Wählen Sie neben Anwendungs-ID-URIdie Option Hinzufügen aus.
Aktualisieren Sie den Anwendungs-ID-URI im
api://your-devtunnel-domain/botid-{AppID}
Format oderapi://your-ngrok-domain/botid-{AppID}
, und wählen Sie Speichern aus.Die folgende Abbildung zeigt den Domänennamen:
Hinzufügen eines Bereichs
Wählen Sie im linken Bereich unter Verwalten die Option API verfügbar machen aus.
Wählen Sie + Bereich hinzufügen aus.
Geben Sie access_as_user als Bereichsnamen ein.
Wählen Sie unter Wer kann zustimmen?die Option Administratoren und Benutzer aus.
Aktualisieren Sie die Werte für die restlichen Felder wie folgt:
Geben Sie Teams kann als Anzeigename der Administratoreinwilligungauf das Profil des Benutzers zugreifen ein.
Geben Sie Erlaubt Teams das Aufrufen der Web-APIs der App als aktuellen Benutzer als Beschreibung der Administratoreinwilligung ein.
Geben Sie Teams kann auf das Benutzerprofil zugreifen und Anforderungen im Namen des Benutzers als Anzeigename für die Benutzereinwilligung stellen ein.
Geben Sie Teams aktivieren ein, um die APIs dieser App mit den gleichen Rechten wie der Benutzer als Beschreibung der Benutzereinwilligung aufzurufen.
Stellen Sie sicher, Zustand auf Aktiviert festgelegt ist.
Klicken Sie auf Bereich hinzufügen.
Die folgende Abbildung zeigt die Felder und die Werte:
Hinweis
Der Bereichsname muss mit dem Anwendungs-ID-URI übereinstimmen, der
/access_as_user
am Ende angefügt ist.
Hinzufügen einer Clientanwendung
Wählen Sie im linken Bereich unter Verwalten die Option API verfügbar machen aus.
Identifizieren Sie unter Autorisierte Clientanwendungen die Anwendungen, die Sie für die Webanwendung Ihrer App autorisieren möchten.
Wählen Sie + Clientanwendung hinzufügen aus.
Fügen Sie Teams mobile oder Desktop- und Teams-Webanwendung hinzu.
Für Teams Mobile oder Desktop: Geben Sie die Client-ID als ein
1fec8e78-bce4-4aaf-ab1b-5451cc387264
.Für Teams-Web: Geben Sie die Client-ID als ein
5e3ce6c0-2b1f-4285-8d4b-75ee78787346
.
Aktivieren Sie das Kontrollkästchen Autorisierte Bereiche .
Wählen Sie Anwendung hinzufügen aus.
Die folgende Abbildung zeigt die Client-ID:
Erstellen Ihres Bots
Erstellen einer Azure-Botressource
Hinweis
Wenn Sie Ihren Bot bereits in Teams testen, melden Sie sich von dieser App und Von Teams ab. Melden Sie sich erneut an, um diese Änderung anzuzeigen.
Wechseln Sie zu Startseite.
Wählen Sie + Ressource erstellen aus.
Geben Sie in das Suchfeld Azure Bot ein.
Drücken Sie die EINGABETASTE.
Wählen Sie Azure Bot aus.
Wählen Sie Erstellen aus.
Geben Sie den Botnamen im Bothandle ein.
Wählen Sie Ihr Abonnement aus der Dropdownliste aus.
Wählen Sie Ihre Ressourcengruppe aus der Dropdownliste aus.
Wenn Sie nicht über eine vorhandene Ressourcengruppe verfügen, können Sie eine neue Ressourcengruppe erstellen. Führen Sie die folgenden Schritte aus, um eine neue Ressourcengruppe zu erstellen:
- Wählen Sie Neu erstellen aus.
- Geben Sie den Ressourcennamen ein, und wählen Sie OK aus.
- Wählen Sie in der Dropdownliste Neuer Ressourcengruppenstandort einen Standort aus.
Wählen Sie unter Preise die Option Plan ändern aus.
Wählen Sie FO Free>Select aus.
Wählen Sie unter Microsoft App-IDdie Option App-Typ als mehrinstanzenfähig aus.
Wählen Sie unter Erstellungstyp die Option Vorhandene App-Registrierung verwenden aus.
Geben Sie die App-ID ein.
Hinweis
Sie können nicht mehr als einen Bot mit derselben Microsoft-App-ID erstellen.
Wählen Sie Überprüfen + erstellen aus.
Nachdem die Überprüfung erfolgreich war, wählen Sie Erstellen aus.
Die Bereitstellung des Bots dauert einige Minuten.
Wählen Sie Zu Ressource wechseln aus.
Sie haben Ihren Azure-Bot erfolgreich erstellt.
Hinzufügen eines Teams-Kanals
Wählen Sie im linken Bereich Kanäle aus.
Wählen Sie unter Verfügbare Kanäledie Option Microsoft Teams aus.
Aktivieren Sie das Kontrollkästchen, um die Nutzungsbedingungen zu akzeptieren.
Wählen Sie Zustimmen aus.
Wählen Sie Anwenden aus.
So fügen Sie einen Messagingendpunkt hinzu
Verwenden Sie die Dev Tunnel-URL in der Ausgabekonsole als Messagingendpunkt.
Wählen Sie im linken Bereich unter Einstellungen die Option Konfiguration aus.
Aktualisieren Sie den Messagingendpunkt im Format
https://your-devtunnel-domain/api/messages
.Wählen Sie Anwenden aus.
Sie haben erfolgreich einen Bot im Azure Bot-Dienst eingerichtet.
Hinweis
Wenn der Application Insights-Instrumentierungsschlüssel einen Fehler anzeigt, aktualisieren Sie mit der App-ID.
Einrichten von App-Einstellungen und Manifestdateien
Wechseln Sie zur appsettings.json-Datei im geklonten Repository.
Öffnen Sie die appsettings.json , und aktualisieren Sie die folgenden Informationen:
- Legen Sie auf MultiTenant fest
"MicrosoftAppType"
. - Legen Sie
"MicrosoftAppId"
auf die Microsoft-App-ID Ihres Bots fest. - Legen Sie auf Wert des geheimen Clientschlüssels fest
"MicrosoftAppPassword"
. - Legen Sie
"MicrosoftAppTenantId"
auf die Mandanten-ID des Mandanten fest, in dem die App verwendet wird. - Legen Sie auf den vollqualifizierten Domänennamen (https zu io) fest
"BaseUrl"
.
- Legen Sie auf MultiTenant fest
Wechseln Sie zur manifest.json-Datei im geklonten Repository.
Öffnen Sie die manifest.json-Datei , und aktualisieren Sie die folgenden Informationen:
- Ersetzen Sie alle Vorkommen von
<<Domain-Name>>
durch Ihre ngrok- oder Dev-Tunneldomäne. - Ersetzen Sie alle Vorkommen von
<<YOUR-MICROSOFT-APP-ID>>
durch die Microsoft App-ID Ihres Bots.
- Ersetzen Sie alle Vorkommen von
Erstellen und Ausführen des Diensts
Verwenden Sie zum Erstellen und Ausführen des Diensts die neueste Version von Visual Studio oder die Befehlszeile.
Öffnen Sie Visual Studio.
Wechseln Sie zu Datei>Projekt>/Projektmappe öffnen....
Wählen Sie die Datei TeamsTaskModule.csproj aus demCsharp-Ordnerbot-task-module>> aus.
Öffnen Sie unter Ansicht den Projektmappen-Explorer.
Press F5 to run the project.
Wählen Sie Ja aus, wenn das folgende Dialogfenster angezeigt wird:
Eine Webseite wird mit einer Nachricht geöffnet. Ihr Bot ist bereit!
App "Aufgabenmodul hochladen"
Navigieren Sie in Ihrem geklonten Repository zu Beispiele>bot-task-module>csharp>TeamsAppManifest.
Erstellen Sie eine .zip-Datei mit den folgenden Dateien, die im Ordner TeamsAppManifest vorhanden sind:
- manifest.json
- icon-outline.png
- icon-color.png
Wählen Sie im Teams-Client das Symbol Apps aus.
Wählen Sie Verwalten Ihrer Apps aus.
Wählen Sie App hochladen aus.
Suchen Sie nach der Option Hochladen einer benutzerdefinierten App. Wenn die Option angezeigt wird, ist der benutzerdefinierte App-Upload aktiviert.
Wählen Sie die .zip Datei aus, die Sie im Ordner TeamsAppManifest erstellt haben, und wählen Sie Öffnen aus.
Klicken Sie auf Hinzufügen.
Geben Sie im Bereich Nachricht verfassen den Text hi ein, und der Bot sendet eine adaptive Karte.
Die App zeigt Den Aufruf des Aufgabenmoduls von hero card und den Aufruf des Aufgabenmoduls von der adaptiven Karte an.
Interagieren mit der App in Teams
Wählen Sie adaptive Karte unter Task Module Invocation from Hero Card (Vorgangsmodulaufruf über Hero-Karte ) oder Task Module Invocation (Vorgangsmodulaufruf von adaptiver Karte) aus.
Geben Sie Hello ein, und wählen Sie Absenden aus.
Adaptive Karte sendet eine Bestätigungsmeldung.
Wählen Sie benutzerdefiniertes Formular unter Aufgabenmodulaufruf von Hero card oder Task Module Invocation from Adaptive Card (Aufgabenmodulaufruf über adaptive Karte) aus.
Geben Sie die erforderlichen Informationen ein:
- Name
- Lieblingsbuch
- Password
- Kennwort bestätigen
Wählen Sie Registrieren aus.
Das benutzerdefinierte Formular sendet eine Bestätigungsnachricht.
Die folgenden Informationen werden im Chat angezeigt:
Wählen Sie Unter Aufgabenmodulaufruf von Hero Card die Option YouTube oder Task Module Invocation von Adaptive Card aus.
Wählen Sie Wiedergeben aus.
Abschließen der Herausforderung
Haben Sie sich so etwas einfallen lassen?
Herzlichen Glückwunsch!
Sie haben das Tutorial für die ersten Schritte mit der Teams-Dialog-App abgeschlossen!
Liegt ein Problem mit diesem Abschnitt vor? Wenn ja, senden Sie uns Feedback, damit wir den Abschnitt verbessern können.