Übersicht
Als Entwickler erstellen Sie eine App für Millionen von Microsoft Teams-Benutzern, um bestimmte Geschäfts- oder Kundenziele zu erreichen. Zu diesem Zweck verteilen Sie es mithilfe einer oder mehrerer der vielen Verteilungsoptionen, die Ihnen zur Verfügung stehen. Nachdem die App veröffentlicht wurde, sollten Sie die Leistung Ihrer App in der Praxis messen.
Sie werden auch daran interessiert sein, viele Datenpunkte zu überwachen, z. B.:
- Wer ist an Ihrer App interessiert?
- Welche Benutzer und Organisationen verwenden Ihre App?
- Wie interagieren Benutzer mit Ihrer App?
- Welche Benutzer sind nach der Verwendung Ihrer App seit einiger Zeit abgewandert?
Diese Informationen helfen Ihnen, die Daten im Hinblick auf Ihre Geschäftsziele zu analysieren und Korrekturmaßnahmen zu ergreifen, indem Sie Probleme beheben. Es hilft Ihnen auch, in die User Journey einzugreifen oder fundierte Entscheidungen in Bezug auf Featureinvestitionen, Verbesserungen und Einführung für die App zu treffen.
Aber der Bericht zur Verwendung der Teams-App muss ausreichen, oder?
Als Entwickler der App können Sie die Nutzung Ihrer App innerhalb einer Woche nach der Veröffentlichung im Microsoft Teams Store im Teams-App-Nutzungsbericht im Partner Center nachverfolgen. Entwickler benutzerdefinierter Apps finden Nutzungsanalysen für ihre benutzerdefinierten Apps im Entwicklerportal für Teams. Der Partner Center-Nutzungsbericht enthält Standardmetriken, mit denen Sie die Benutzernachfrage, die Benutzerabwanderung und die Nutzungshäufigkeit für Ihre App nachverfolgen können. Diese Berichte sind auf aggregierter Ebene verfügbar, z. B.:
- Monatliche, tägliche und wöchentlich aktive Benutzer.
- Aufbewahrungs- und Intensitätsdiagramme.
- Benutzer, die Ihre App im letzten Monat mehr als fünf Tage verwendet haben.
- Plattform, Betriebssystem und geografische Aufteilung der Benutzer für Ihre App usw.
Die vordefinierten Nutzungsberichte, die im Partner Center oder im Entwicklerportal für Teams verfügbar sind, können Ihnen keine detaillierte Analyse der Vorgänge in Ihrer App und spezifische Analysen auf Benutzerebene bieten. Solche Analysen umfassen die Journey eines Benutzers innerhalb Ihrer App oder die Interaktion eines Benutzers mit bestimmten Features und Messszenariovervollständigungen.
Ihre App in Teams ist im Wesentlichen ein webbasierter Dienst, der an anderer Stelle gehostet wird, z. B. in der Azure-Cloud. Sie ist eingebettet und in die Microsoft Teams-Shell eingebettet, in der Benutzer Ihre App verwenden können. Dies gilt unabhängig von den verwendeten Plattformfunktionen für Ihre App, z. B. Registerkarten, Bots, Nachrichtenerweiterungen, Besprechungserweiterungen, Karten, Dialoge (in TeamsJS v1.x als Aufgabenmodule bezeichnet) usw. All diese Funktionen sind ein Mittel, um webbasierte Erfahrungen in Teams zu erstellen.
Planen Sie analysen für die Teams-App auf die gleiche Weise wie für ein SaaS-Produkt, das im Webbrowser ausgeführt wird.
Frühzeitige Planung für Analysen
Planen Sie Analysen für Ihre Teams-App in der Entwicklungsentwurfs- und Lösungsarchitekturphase. Untersuchen Sie, welche der vorhandenen Dateninstrumentierung und -methoden für Ihre Kern-SaaS-Web-App für gehostete Canvas-Konstrukte wie Registerkarten, Dialoge, Besprechungs-Apps usw. in Teams anfallen, die Sie in Teams optimieren oder von Grund auf neu erstellen. Für Teams-spezifische Funktionen, z. B. Konversationskonstrukte wie Bots, Nachrichtenerweiterungen usw., müssen Sie die Analyseinstrumentation planen und implementieren, relevante Ereignisse und Kontexte aus den SDK-Methoden von Grund auf erfassen.
Zu diesem Zeitpunkt ist Ihre Teams-Produktions-App im Teams Store live und Kunden beginnen, sie zu verwenden. Ihre Analyse- und Dateninfrastruktur sollte vollständig betriebsbereit sein. Dadurch wird sichergestellt, dass Sie die Nachverfolgung nicht verpassen:
- Instrumentierungsmarker werden ausgelöst.
- Teams-spezifische Ereignisse und die relevanten Kontextinformationen, die in diesen Ereignissen enthalten sind, von denen einige ausgelöst werden, damit Sie sie zur späteren Verwendung in Ihrem SaaS-Back-End erfassen können.
Beispielsweise sollte die Microsoft Entra-Benutzer-ID für einen Teams-Benutzer erfasst werden, wenn ein bestimmtes Botereignis ausgelöst wird, wenn ein Benutzer die Bot-App installiert. Diese Benutzer-ID kann der realen Profilidentität des Benutzers zugeordnet werden, z. B. der E-Mail-Adresse. Damit können Sie dem Benutzer später proaktive Benachrichtigungen über den Bot senden.
Instrumentieren Ihrer App für Analysen
Die Instrumentierung Ihres Codes mit Analysemarkern (auch als Instrumentierungsmarker bezeichnet) ist eine Standardmethode für die Entwicklung von Webanwendungen. Eine stabile Instrumentierung in Ihrem Code ist entscheidend für den langfristigen Erfolg. Es hilft Ihnen, sowohl aggregierte als auch benutzerspezifische Metriken zu messen.
Hinweis
Bevor Sie beginnen, denken Sie immer daran, Benutzerdaten in Übereinstimmung mit Ihren strengen Datenverarbeitungs- und Datenschutzrichtlinien und in Übereinstimmung mit Ihren gesetzlichen Verpflichtungen zu behandeln.
Die Teams-App ist eine weitere Oberfläche zum Verfügbarmachen Ihrer Lösung für Endbenutzer, ein weiteres Fenster für Ihre SaaS-Landschaft. Da Ihre Lösung auf mehrere Plattformen (Web, mobile Plattformen und Teams) skaliert wird, ist es wichtig, Ihre Instrumentierung in Ebenen anzuzeigen:
Es gibt zwei Arten von Dateninstrumentierung, die für Ihre Lösung relevant sind:
Hinweis
Der Rest dieses Dokuments empfiehlt nur die kontextbezogenen Daten, die Sie verwenden können, ersetzen jedoch nicht Ihre gesetzlichen Verpflichtungen.
Dateninstrumentierung für Ihr SaaS-Kernprodukt oder Ihre SaaS-App
Dies ist die Instrumentierung, die Sie für Ihre browserbasierte SaaS-App durchführen werden, unabhängig davon, ob Sie in Teams integrieren oder nicht. Wenn Sie über eine browserbasierte SaaS-App verfügen, haben Sie diese Instrumentierung aller Wahrscheinlichkeit nach bereits in Ihrem Code ausgeführt. So können Sie Click Analytics und Customer Lifecycle Analytics anzeigen. Sie können auch Konvertierungsanalysemetriken wie Absprungsrate, Seitenaufrufe, eindeutige Besucheranzahl, Sitzungsanzahl, Einsatzzeit, Klickrate und vieles mehr für Ihre Web-App anzeigen.
Dateninstrumentierung in Ihrer App speziell für Teams
Diese Instrumentierung muss zusätzlich in Ihrer SaaS-App durchgeführt werden, da sie jetzt im Teams-Client angezeigt wird. Auf Präsentationsebene wird von Ihrem Endbenutzer über verschiedene Modalitäten hinweg auf Ihre Anwendung zugegriffen. Jede Modalität verfügt über eigene eindeutige Benutzerinteraktionspunkte, Metadaten, die die Erfassung der Instrumentierung ermöglichen, die für diese Modalität eindeutig ist. Beispielsweise kann die Anzeige eines Produkts über die Seitenansicht in einer Web-App und die Bildschirmnachverfolgung in einer mobilen App nachverfolgt werden. Ebenso kann Ihre Teams-App eine oder mehrere der Plattformfunktionen verwendet haben, die nur in Teams verfügbar sind, z. B. Bots, Nachrichtenerweiterungen usw. Oder Sie haben Erfahrungen erstellt, um Anwendungsfälle zu behandeln, die für Teams einzigartig sind, z. B. Besprechungserweiterungen, intelligente M365-fähige Szenarien mit Microsoft Graph, Link-Entflechtung usw. Die Erfassung der Instrumentierung aus diesen einzigartigen Teams-App-Umgebungen wird im weiteren Verlauf dieses Dokuments ausführlicher behandelt.
Instrumentierung für Teams-App-spezifische Analysen
Dieser Abschnitt enthält Richtlinien und Hinweise darauf, wonach Sie suchen, welche Ereignisse erfasst werden sollen, wie Instrumentierungsmarker verwendet werden und wo Sie Teams-relevante Informationen abrufen können, die Ihnen bei der Planung und Implementierung von Analysen für Ihre App helfen. Ihre Teams-Apps können Registerkarten, Bots, Nachrichtenerweiterungen, Karten, Stageviews usw. sein oder eine beliebige Kombination dieser Funktionen und UI-Konstrukte in persönlichen oder freigegebenen Bereichen sein. Es ist am besten, Ihre Instrumentierung für jede dieser Funktionen zu verstehen, zu planen und zu implementieren.
Sie können Teams-Plattformfeatures in zwei Konstrukte klassifizieren:
Gehostete Web canvas-Konstrukte
Visuelle Canvas-orientierte Funktionen sind Teams-fähige Webseiten, die in Microsoft Teams eingebettet sind, z. B. Registerkarten, persönliche Apps, Dialoge (die einen eingebetteten iframe anzeigen), Phasenansichten, Besprechungsregisterkarten, freigegebene Besprechungsphasen und Besprechungsdialoge. Sie werden in der Cloud mit dem Rest Ihrer SaaS-App gehostet, die im Webbrowser ausgeführt wird.
Auf diesen Webseiten wird häufig die Instrumentierung für kerne SaaS-Web-App-Anforderungen durchgeführt. Sie müssen nur Teams-spezifische Ereignisse erfassen und für teamsspezifische Instrumentierung in Ihrem Code behandeln. Es ist praktisch für Ihre Analyseanforderungen, dass Registerkarten "Teams-fähige" Webseiten sind.
Wenn Sie eine Registerkarte erstellen, die die hier definierten Voraussetzungen erfüllt, fügen Sie das Teams JavaScript-Client-SDK der Inhalts- oder Konfigurationsseite Ihrer Registerkarte hinzu. Dadurch wird sichergestellt, dass Ihre Seite auf Teams-spezifische Informationen oder Kontext zugreifen kann. Verwenden Sie diese Informationen für nützliche benutzerspezifische Erkenntnisse, z. B.:
- Microsoft 365-Mandanten-ID (Microsoft Entra-Mandant) für den aktuellen Benutzer (
tid
). In Microsoft 365 oder Microsoft Entra ID ist ein Mandant repräsentativ für eine Organisation, d. h. das Unternehmen des Benutzers. Die Microsoft 365-Mandanten-ID ist nützlich, um herauszufinden und zu protokollieren, zu welchem Microsoft 365-Mandanten der Benutzer gehört. Sobald Sie die Mandanten-ID kennen, können Sie die Mandantendomäne für die Organisation ermitteln, die häufig den Namen der Organisation anzeigt, indem Sie diese Graph-API verwenden. Stellen Sie sicher, dass Sie diese API in Ihrem Microsoft 365 Developer-Mandanten aufrufen, da Sie der erforderlichen Mandantenadministratorberechtigung zustimmen können. - Dem Benutzer zugewiesener Lizenztyp und die SKU für den Mandanten des aktuellen Benutzers. Mögliche Werte sind die Enterprise-Pläne F1, E1, E3 und E5 für (
licenseType
) und enterprise, free, edu und unknown für (tenantSKU
). - Der Kontext, in dem die Registerkarten-URL geladen wird. Einige mögliche Werte können Inhaltsseite, Dialog, Dialogfeld mit Registerkarteneinstellungen, Dialogfeld zum Entfernen von Registerkarten, BesprechungsseitePanel usw. sein. (
frameContext
). - Hostclienttyp, bei dem die Registerkarte geladen wird. Mögliche Werte sind Android, IoS, Web, Desktop, SurfaceHub usw. (
hostClientType
). Sie können Ihre Analysedaten in segmentieren. - Gebietsschema-Bewusstsein für den Benutzer, um sprache anzugeben, z. B. en-us, fr-fr, ja-jp usw. (
locale
). - Benutzerprinzipalname oder Anmeldehinweis (
loginHint
) des aktuellen Benutzers im aktuellen Mandanten (normalerweise die E-Mail-Adresse des Benutzers). - Teamname und Kanalname, auf dem die Kanalregisterkarte hinzugefügt wird (
teamName
,channelName
). - Eindeutige ID für die aktuelle App-Sitzung auf einer Registerkarte, die zum Korrelieren von Instrumentierungsdaten (
appSessionId
) verwendet wird. - Die Besprechungs-ID wird von einer Registerkarte verwendet, die im Besprechungskontext ausgeführt wird, und wird für die Antwortnutzlast (
meetingId
) hinzugefügt. - Microsoft Entra ID des aktuellen Benutzers.
Nachdem Sie die Teams-spezifischen Informationen aus dem Registerkartenkontext extrahiert haben, werden in den folgenden Beispielen einige mögliche Verwendungsmöglichkeiten gezeigt:
Nachverfolgen von Teams-spezifischen Informationen | Ergebnis |
---|---|
Organisation des Benutzers. | Verfolgen Sie die Nachfrage nach Ihrer App nach, insbesondere wenn Sie einen Testzeitraum für neue Registrierungen oder ein Freemium-Angebot für Ihr SaaS-Produkt für vertriebsorientierte Zwecke anbieten, die Organisation integrieren und Unterstützung erhalten. |
Organisationstyp des Benutzers und Rolle des Benutzers. | Verwenden Sie den Lizenztyp und die Mandanten-SKU, um ein Kundenprofil für den Teams-Benutzer zu erstellen. Segmentieren Sie Ihre Analysedaten, z. B. Nutzung, Sitzungen, Aufbewahrung usw. entsprechend, und passen Sie Ihre Features, Erfahrungen usw. an. entsprechend. |
Hostclienttyp, Gebietsschema und Verwendungskontextrückschlüsse aus Team- oder Kanalnamen. | Erweitern Sie das Kundenprofil in Ihrer Benutzeranalyse. |
Framekontext. | Rufen Sie Informationen über den Kontext, in dem der Benutzer Ihre App verwendet, die Journey des Benutzers und das Nutzungsmuster aus verschiedenen Oberflächenbereichen, Funktionen und Bereichen ab. Gestalten Sie die Benutzeroberflächen entsprechend, und investieren Sie mehr in Funktionen, die bei Ihren Benutzern beliebt sind. |
E-Mail-Adresse des Benutzers. | Ordnen Sie dem Teams-Benutzer eine sinnvolle, reale Identität zu, und geben Sie die Domänenadresse der Microsoft 365-Mandantenorganisation an, d. h. contoso.onmicrosoft.com. Identifizieren Sie die Organisation, zu der der Benutzer gehört. Die E-Mail-Adresse des Benutzers kann verwendet werden, um das Profil des Benutzers zu vervollständigen und mit dem Benutzer zu kommunizieren, um aktivierungs-, re-marketing- und re-engagement zu ermöglichen. Achten Sie jedoch darauf, diesen Kanal nicht zu missbrauchen oder den Benutzer zu spamen. |
Microsoft Entra-Benutzer- oder Objekt-ID. | Rufen Sie die eindeutige Microsoft Entra-Benutzer- oder Objekt-ID zum Zeitpunkt der App-Installation (Bot) ab, und speichern Sie sie. Senden Sie eine proaktive Benachrichtigung an den Benutzer über Ihren Bot. |
Konversationskonstrukte
Konversations- oder Chat-orientierte Funktionen umfassen Bots, Nachrichtenerweiterungen, Karten und Dialoge (die eine adaptive Karte anzeigen), die für Teams-Benutzer erstellt werden. Konzeptionell werden diese Erfahrungen nur für Benutzer innerhalb von Teams erstellt und verfügbar. Sie müssen Teams-spezifische Ereignisse erfassen und für teamsspezifische Instrumentierung in Ihrem Code für diese Konstrukte von Grund auf behandeln. Ein Bot kann auf zusätzliche Kontextdaten zu einem Team, Chat, Besprechung, 1:1-Anruf oder Gruppenanruf zugreifen, in dem er installiert ist.
Verwenden Sie diese Informationen, um die Funktionalität des Bots und die Benutzererfahrung anzureichern:
Fragen Sie den Bot nach der Liste der Mitglieder und deren grundlegenden Benutzerprofile ab, einschließlich Teams-Benutzer-IDs und Microsoft Entra-Informationen, z. B. Name und Microsoft Entra-Benutzer- oder Objekt-ID.
Verwenden Sie die Microsoft Entra-Benutzer- oder Objekt-ID des Benutzers, um den Vornamen, Den Nachnamen, die E-Mail-Adresse, die Mandanten-ID und die Rolle des Benutzers im Team zu finden. Nutzen Sie diese Details wie für gehostete Web canvas-Konstrukte beschrieben.
Wenn Ihr Bot in einem Team installiert ist, fragen Sie ihn nach Metadaten zu diesem Team ab, einschließlich der Microsoft Entra-Gruppen-ID und des Teamnamens. Es kann auch die Liste der Kanäle im Team abfragen, die Kanal-IDs und -Namen zurückgibt. Nutzen Sie diese Informationen für die Konfiguration, Einrichtung und Personalisierung.
Rufen Sie mithilfe der Besprechungsdetails-API die statischen Metadaten einer Besprechung oder eines Anrufs ab, z. B. den Besprechungstyp (z
GroupCall
. B. ,MeetNow
OneToOneCall
Broadcast
Recurring
Adhoc
,Scheduled
, oderUnknown
), den Konversationstyp, die Mandanten-ID des Organisators usw.
Jede aktivität, die von Teams an Ihren Bot gesendet wird, enthält das turnContext
Objekt, aus dem alle diese relevanten Felder abgerufen werden können. Sie können sie auf ähnliche Weise nutzen, wie für gehostete Webcanvas-Konstrukte beschrieben.
Da Nachrichtenerweiterungen auf dem Botkanal basieren, gelten die meisten der oben genannten Optionen auch für Nachrichtenerweiterungen.
Aggregieren und benutzerspezifische Erkenntnisse
Abgesehen von den offensichtlichen Metriken in der SaaS-Welt wie tägliche, wöchentliche und monatlich aktive Benutzer und Zeit, die sie mit der Implementierung von Analysen für Ihre Teams-App gemäß den obigen Anleitungen verbracht haben, können Sie Erkenntnisse wie die folgenden erhalten:
Aggregieren von Metriken
- Welche Plattformfunktionen, Oberflächenbereiche (z. B. Registerkarten, Bots, Nachrichtenerweiterungen) und Ui-Konstrukte (Karten, Dialoge, Stageviews), die in Ihrer Teams-App genutzt wurden, fanden die größte Nutzung durch Ihre Benutzer?
- Welcher Bereich oder Einstiegspunkt der Benutzeroberfläche (z. B. persönliche App, Kanal, Gruppenchat) wird von Ihren Benutzern am häufigsten verwendet, um Ihre App aufzurufen und eine neue App-Sitzung in Teams zu starten?
- Wie viele Tage verwenden Benutzer Ihre App durchschnittlich in der ersten Woche nach der Installation der App?
- Was ist die Kohortenanalyse der neuen Benutzeraufbewahrung für Ihre App oder bestimmte Funktionen (z. B. persönliche Apps oder Bots) in Ihrer App?
- Wie viele Benutzer verwenden Ihre App nur auf mobilen Teams-Clients?
- Wie viele Benutzer haben die Kameragerätefunktion in Ihrer App verwendet?
- Was zeigt die Trichteranalyse für Ihre App phasenübergreifend, von der App-Installation über die Aktivierung bis hin zur Bindung, der Aufbewahrung und schließlich der Monetarisierung? Wo werden die Rückgaben durchgeführt?
- Wie viele Benutzer haben Ihre App in den letzten wochen installiert?
- Wie viele Benutzer sind in den letzten drei Monaten von Ihrer App abgewandert? Wie hoch ist die resultierende vierteljährliche Änderungsrate?
- Welche Organisation hat die maximale Anzahl von Installationen für Ihre App in den letzten 30 Tagen gesehen?
- Zu welchen Organisationen gehören die Benutzer, die Ihre App in den letzten 14 Tagen installiert haben?
- Welche Organisation hat die maximale Anzahl von Testanmeldungen für Ihre App in den letzten sieben Tagen gesehen?
- In welchen Arten von Besprechungen (
GroupCall
, ,Adhoc
OneToOneCall
,Broadcast
,MeetNow
Recurring
oderScheduled
) wird Ihre App verwendet?
Benutzerspezifische Metriken
- Welche Benutzer können die Kanalregisterkartenfunktion noch nutzen, die Sie im letzten App-Update in Ihrer App implementiert haben?
- Welche Benutzer haben das Onboarding in der persönlichen App noch nicht abgeschlossen?
- Welche Benutzer sind unter den Benutzern, die die App in der letzten Woche installiert haben, nicht einmal zur App zurückgekehrt, um nach der Installation zu engagieren?
- Welche Benutzer haben die App installiert, sich aber noch nicht bei der App angemeldet?
- Wie oft hat ein bestimmter Benutzer Ihre Teams-App in den letzten 30 Tagen verwendet?
- Wie viele Tage hat ein bestimmter Benutzer Ihre App in den letzten sieben Tagen aktiv genutzt?
- Wann hat ein bestimmter Benutzer Ihre App zuletzt in Teams verwendet?
- Was war die Journey eines bestimmten App-Benutzers innerhalb von Teams?
- Welche Benutzer sind in den letzten drei Monaten von Ihrer App abgewandert?
- Hat ein bestimmter Benutzer Ihre App in einer Teams-Besprechung verwendet?
Als Nächstes erfahren Sie, wie Sie Ihre Strategie für die Dateninstrumentierung methodisch gestalten sollten, und entscheiden Sie, was gemessen werden soll, basierend auf den spezifischen Erkenntnissen, die Sie aus der Nutzung Ihrer Teams-App gewinnen möchten.
Nächster Schritt
Platform Docs