Teams für Hackathon
Der Hackathon 2020 sollte aufgrund von Covid19 als Hybrid-Veranstaltung stattfinden, d.h. die Teilnehmer sind im HNF gemäß dem Hygienekonzept mit Abstand aktiv und einige Aktionen passieren komplett virtuell. Roboter bauen und IoT-Geräte programmieren geht nur bedingt "virtuell", sondern nur mit Hardware während App und Game-Entwicklung als reine Software auch zuhause erfolgen kann. Hier beschreibe ich die Überlegungen und Einrichtungen eines Hackathon-Teams in einem Office 365-Tenant.
- Paderborn ist Informatik
https://paderborn-ist-informatik.de/entdecke-deine-zukunft/pit-hackathon/ - Aufgrund der derzeitigen Corona
Situation wird der 5. PIT Hackathon als
Hybridveranstaltung stattfinden
[Themenabhängig]! Termine: 06.11.2020 & 20.
– 22.11.2020
https://paderborn-ist-informatik.de/5-pit-hackathon-wird-aufgrund-der-derzeitigen-corona-situation-eine-hybridveranstaltung/
Überlegungen
Es gibt ja ganz viele Möglichkeiten der Zusammenarbeit und der 1.-4. Hackathon wurde per Mail und Slack koordiniert. Anstatt nun für Meetings noch ein Programm wie Zoom einzubinden und Dropbox für Dateiablagen haben wir den 5. Hackathon mit Microsoft Teams organisiert. Teams enthält fast alle Komponenten, mit denen so ein Event durchgeführt werden kann. Indem Zuge sei auf folgende Dokumente von Microsoft hingewiesen:
- Guidance for delivering Virtual Events
https://adoption.microsoft.com/virtual-event-guidance/
https://teamworktools.azurewebsites.net/hub/MicrosoftVirtualEventPlaybook_v1.pdf -
Teams Event Organizer Checklist
https://aka.ms/OrganizerChecklist
Im März 2020 habe ich erlebt, wie Microsoft innerhalb 14 Tage den MVP-Summit von "Vor Ort" auf Microsoft-Teams umgestellt hat. Die Analogien sind frappierend aber es gibt auch Unterschiede.
- Ein Microsoft Team für gesamten Event
Ein Team ist der Container, in dem sich eine Gruppe von Personen zu einer kooperativen Zusammenarbeit zusammenfinden. Beim MVP-Summit hat Microsoft ebenfalls genau ein Team mit vielen öffentlichen Kanälen pro Thema aufgebaut. Wenn Microsoft mehrere tausend MVPs in einem einzelnen Team hosten kann, dann sollte das auch für einen Hackathon passen. Da in dem gesamten Tenant auch weitere Veranstaltungen möglich sind, legen wir ein privates Team mit dem Namen "PIT Hackathon 2020" an und addieren die ersten Mitglieder.
Auch das Logo des Kanals kann hier gleich geändert werden.
Alle anderen Berechtigungen sind eigentlich passend, insbesondere für Gäste. - Öffentlicher Kanal
"Allgemein
Dieser Kanal wird vom Event genutzt, um allgemeine Informationen bereit zu stellen aber auch große Meetings abzuhalten. Gäste dürfe hier aber nicht schreiben, sondern nur Orgatoren/Mentoren. Daher wird der Kanal entsprechend angepasst
In dem Kanal landen öffentliche Ankündigungen, allgemeine Termine aber auch Dokumente zur Agenda, die Hausordnung, Kontaktpersonen, etc. Ausgewählte Dokumente können als Karteikarte im Kanal favorisiert werden. Denkbar ist auch die Ablage im Wiki oder OneNote - #random-Kanal
Der früher in Slack vorhandene "#random"-Kanal für alles mögliche, wird natürlich auch angelegt, damit die anderen Kanäle frei von nicht themenspezifischen Diskussionen bleiben. Leider ist "#" kein gültiges Zeichen für einen Teams-Kanal, so dass es nur ein "Random" wurde.
Tipp: mit "Windows "." können Sie
Emojis in den Kanalnamen addieren. So kann
man auch ein "#" einfügen.
Add emoji to your Channels in Microsoft Teams
https://www.jumpto365.com/blog/add-emoji-to-your-channels-in-microsoft-teams
- Kanal: Spielplatz
Es gibt immer "neueinsteiger" in Teams und auch Mentoren und Besitzer wollen mal was testen. Das sollte man nicht in produktiven Kanälen machen, sondern einem Spielplatz, der jederzeit wieder gelöscht werden kann. Damit stört man nicht die Hauptkanäle. - Öffentlicher Kanal pro
Thema:
Für jeden Themenbereich (IoT, Game, App Development, Robotik, CodeCamp) gibt es dann einen eigenen Kanal, indem die Teilnehmer miteinander chatten und Dokumente teilen aber auch Meetings für das gesamte Thema abhalten können. Die Einstellungen zu Berechtigungen (Jeder kann posten) und Moderation (Off) bleiben unverändert je Kanal - Arbeitsgruppen.
Weitere Kanäle sind zwar möglich aber für eine individuelle Kleingruppe nicht geplant. Sie können ja jederzeit ein privates Meeting starten und darin auch Chatten und Dateien teilen
Eigene Kanäle für die einzelnen Teams sind aktuell nicht geplant. Die Arbeitsgruppen können ja jederzeit ein "privates Meeting" starten - Private Kanäle
Für die interne Kommunikation der Mentoren und Organisation ist ein privater Kanal vorgesehen.
- Private
Mentoren-Kommunikation in
einem Themengebiet
Anstatt nun für jedes Themengebiet noch weitere private Kanäle anzulegen, können die Mentoren jederzeit wie die Teilnehmer einen geschlossenen privaten Chat starten. Sie brauchen dazu kein vollwertiges Team. - Kanalinhalte
Gäste können in den öffentlichen Kanälen des Teams neue Nachrichten posten und Dateien ablegen und bearbeiten. Ziel ist nicht die Verhinderung von Zugriffen, auch wenn theoretisch ein Teilnehmer "stören" könnte. Allerdings erfolgen alle Zugriffe nicht anonym und im Extremfall muss ein Teilnehmer aus dem Team ausgeschlossen werden. Mentoren können Beiträge löschen und frühere Versionen von Dokumenten wieder herstellen. Code und Entwicklung findet nicht in im Team sondern z.B. in GIT/GitHub statt.
Gäste können die Kanäle nicht anpassen. Sie können aber die Mentoren darum bitten, z.B. ein OneNote, Planner, GitHub, oder andere Apps im Kanal einzurichten. - Meetings
Die Orgatoren, die ein Exchange Postfach haben, können sogar Meetings "planen" und diese an den Kanal anpinnen. So können die Kanal-Teilnehmer das Meeting schnell finden. Allerdings muss man wissen, dass ein geplantes Meeting in einem Kanal auch an alle Mitglieder per Mail gesendet wird. - Gruppenchats
Neben den Kanälen gibt es weiterhin die Möglichkeit, dass sich Anwender Die Teilnehmer können sich natürlich auch in einen "private Besprechung" zurückziehen und dort ihre Themen bearbeiten. Dort gibt es auch einen eigenen Dateibereich und AdHoc-Meetings.
Das Ergebnis ist dann ein überschaubares Team. Der private Kanal ist natürlich nur für die Mitglieder sichtbar, die berechtigt sind, d.h. die Mentoren. Daneben habe ich mal ein anderes Event-Team mit Kanälen bereitgestellt. Hier gibt es z.B. deutlich mehr private Kanäle.
Bei einem anderen Event mit z.B. mehr Sprechern und Vorträgen wäre auch ein Kanal für "Speaker Support" ratsam
Die Reihenfolge der Teams kann leider nicht vorgegeben werden aber einer der ersten Schritte der Mentoren und Teilnehmer ist sowieso die individuelle Einrichtung des Teams für ihre Bedürfnisse.
Arbeiten mit dem Event-Team
Die Nutzung der neuen Plattform muss den Teilnehmern natürlich erläutert werden. Entsprechend der Tätigkeiten und Rollen sind Sachverhalte zu erklären. Beim Hackathon liegt der Schwerpunkt nicht auf Vorträgen, die durch Sprecher gehalten werden. Bei anderen Events kann es andere Schwerpunkte geben.
Person | Rolle | Aufgaben |
---|---|---|
Orga-Team |
Besitzer |
|
Mentor |
Mitglied |
Bei Mentoren ist die Frage, ob sie einen "lizenzpflichtigen" Benutzer im Tenant bekommen oder als "Gast" im Tenant mitarbeiten. Die größte Einschränkung eines Gastes besteht darin, dass er kein Postfach im Tenant hat und daher auch keine Termine planen kann. Als Gast kann ich damit auch keine Termine an einen Kanal anheften. Besprechungen könnten daher nur "adhoc" erfolgen der müssen stellvertretend durch das Orgateam geplant werden. Als Gast gibt es Einschränkungen beim Aufzeichnen, LobbySteuerung, Anlegen von Kanälen u.a. etc. Auch aus "Datenschutzüberlegungen" ist es vielleicht besser, wenn die Daten des Events alle in dem Tenant bleiben und sich nicht mit anderen Teams-Konten in der Firma eines Mentor vermischen. |
Teilnehmer |
Gast |
|
- Teams Besitzer
Initiale Anlage des Team und der Kanäle, Bereitstellen der Dokumente und Informationen in "Allgemein", Einladen der "Gäste" in das Team - Mentoren (Teams Besitzer)
Mitlesen in ihrem Kanal, Planen/Einladen von Meetings. Die Mentoren arbeiten NICHT als Gast im Team sondern als benutzer@paderborn-ist-informatik.de und haben hier auch ein Postfach um Meetings zu planen und Teilnehmer einzuladen (Outlook/Teams) - Gäste
Alle Teilnehmer sind "nur" Gäste aber könne in allen öffentlichen Kanälen mitarbeiten.
Anleitung: Meeting im Kanal vs. "privates" Meeting, wo liegt "Code" (GIT)
Einrichten der "Kanalbenachrichtigungen"
Besitzer/Gast/Mitglied
Je nach Berechtigung im Teams sind verschiedene Aktionen möglich. Die Tabelle soll ihnen einen Einblick geben, wer was kann und was nicht möglich ist. Die Funktion "Team anlegen" wird über eine Azure-Gruppe gesteuert und ist für Gäste nicht möglich. Gäste sind sowohl AzureB2B Konten aus anderen Tenants als auch Azure B2C-Konten mit privaten Konten. Alle Funktionen basieren auf den "Default Richtlinien"
Aufgabe | Besitzer | Mitglied | Gast |
---|---|---|---|
Team Anlegen |
Ja |
Ja |
Nein |
Kanal anlegen |
Ja |
Nein |
Nein |
Gruppenmeetings |
Ja |
Ja |
Ja |
Meetings Planen |
Ja (mit Postfach) |
Ja (mit Postfach) |
Nein |
Meetings in Kanal anhängen |
Ja |
Nein |
Nein |
Meeting im Kanal |
Starten Planen Teilnehmen |
Starten Planen Teilnehmen |
nur Teilnehmen |
1:1 Chat mit anderen Teilnehmern und Gästen |
Ja |
Ja |
Ja |
1:N Chat und private Meetings |
Ja |
Ja |
Ja |
Berechtigungen im Team für Mitglieder Folgende Berechtigungen kann der Besitzer eines Team für die Mitglieder steuern. Gäst haben diese Rechte nicht Enable channel creation, adding apps, and more Allow members to create and update channels Allow members to create private channels Allow members to delete and restore channels Allow members to add and remove apps Allow members to upload custom apps Allow members to create, update, and remove tabs Allow members to create, update, and remove connectors Owners can delete all messages Give members the option to delete their messages Give members the option to edit their messages |
entfällt |
Einzelne pro Team aber für alle Mitglieder steuerbar |
Nein |
Berechtigungen im Team für Gäste Für die Gäste gibt es nur zwei Einstellungen: Allow guests to create and update channels Allow guests to delete channels |
entfällt |
entfällt |
Pro Team einstellbar |
Berechtigungen für Mitglieder in privaten Kanälen Allow members to create, update, and remove tabs Owners can delete all messages Give members the option to delete their messages Give members the option to edit their messages |
entfällt |
pro Team einstellbar |
entfällt |
Audio/Video Meetings
Folgende Funktionen sind mit den Standard-Richtlinien von Teams möglich.
- Gäste können keine Meetings "planen" sondern nur "AdHoch starten
- Mitglieder eines Teams mit Exchange Postfach können auch Termine Planen und am Kanal anheften
- Geplante Termine werden an alle Team-Mitglieder (und Gäste) gesendet
- AdHoc Meetings im Kanal können von Gästen und Mitgliedern gestartet werden
- Nur geplante Meetings kann man auch an einen Kanal "anheften"
- Einladungen eines Termins gehen an Besitzer, Mitglieder und Gäste des Teams
- Im privaten Kanal kann keinen Termin
geplant werden
Das ist unschön, da so die Organisatoren auch keine Serientermine als "Team" senden können - Gestartete Meeting werden nach
individueller Kanaleinstellung benachrichtig
Offene Fragen
- Eigener Kanal für "Teams Support/Speaker-Support/" ?
- Einbinden von GIT u.a. Webseiten nur im Kanal und nicht pro Arbeitsgruppe
- Zugriff als Gast mit Mobile App?
- Gast-Lizenz-Limit in Azure B2C
- NDI-Freischaltung für Präsentation
- "angeheftet meeting" ohne Einladung an die Teilnehmer
- Breakout Rooms?
- Mentoren/Speaker als Mitglied oder reicht Gast
Identitäten
Mit Ausnahme von einer anonymen Meeting-Teilnehmer müssen sich alle Nutzer in Teams authentifizieren. Das geht recht einfach mit einem Office 365 Konto in dem entsprechenden Tenant, welches die Berechtigungen und Teams Policies bekommt. Aber es gibt noch viel mehr Optionen, denn ich möchte ja nicht jedem Teilnehmer ein aktives Konto in dem Office 365 Tenant geben. Dazu müssen wir erst einmal die verschiedenen Konten kennenlernen:
- Konto im Veranstaltungs-Tenant
Das ist die klassische Lösung innerhalb einer Firma, bei die Mitarbeiter ein natives Konto nutzen. In der Regel wird das Konto durch ADSync angelegt und die Anmeldung erfolgt über PHS, PTA oder auch ADFS. Dieses Konto kann auch entsprechende Richtlinien bekommen, die Funktionen steuern, z.B. welche Einschränkungen er bei Meetings unterliegt.
Das Konto kann in einem Team entsprechend "Manager" oder "Teilnehmer" sein. - Gast-User im Veranstaltungs-Tenant mit
Tenant-Wechsel
Office 365 kennt natürlich auch Gast-Benutzer, d.h. das sind Office 365 Konten in einem anderen Tenant, die über die Funktion "Gast-Zugriff" auf ausgewählte Daten im fremden Tenant zugreifen dürfen. Wenn im Tenant des Teams der Gastzugriff erlaubt ist und der Teams-Besitzer die andere Person aus einem anderen Tenant in sein Team eingeladen hat, dann kann der andere Anwender auf die Daten zugreifen. Er muss dazu natürlich "den Tenant" wechseln. Er sieht dann aber auch das Team und die Kanäle und kann mitarbeiten. - Gast-User im Veranstaltungs-Tenant ohne
Tenant-Wechsel
Ein Benutzer kann durchaus "Gast in einem anderen Tenant sein aber für Meetings muss er keinen Tenant-Wechsel vornehmen. Er bekommt die Besprechungseinladungen sowieso per Mail an sein primäres Konto und kann in Outlook oder seinem Teams einfach ins Meeting eintreten. Allerdings verhält sich Teams dann etwas anders, denn er ist ja immer noch in seinem eigenen Tenant und nutzt nur das Meeting des anderen Tenant. - Federated-User, d.h. ohne Gast-Konto im
Veranstaltungs-Tenant
Diese Teilnehmer nutzen Teams in ihrem eigenen Tenant aber sind kein Gast im Veranstaltungs-Tenant - MSN/Google/u.a.-Konto
Mittlerweile kann ein Teams-Besitzer auch Personen in das Team einladen, die selbst gar kein Office 365 Konto haben. Im Teams-Tenant wird dazu natürlich wieder ein Gast-Konto angelegt, welches aber auf eine beliebige Mailadresse eines Anwender laufen kann. Greift der Gast dann auf Teams zu, bekommt er ein Einmal-Kennwort an seine Mailadresse, um sich zu authentifizieren. - Anonymer Teilnehmer
Die letzte Teilnehmerklasse sind Personen, die einfach in ein Teams-Meeting über einen Outlook-Termineinaldung oder den Meeting-Link zu einem Meeting gebeten werden. Der Anwender klickt auf den Link und ist mehr oder weniger im Meeting. Meist nutzt er den Browser, er kann aber auch den Teams Client als reinen Konferenzklient nutzen.
Funktionen
Nicht alle Funktionen sind mit allen Typen nutzbar. Ein "Ja" bedeutet, dass es prinzipiell geht, wenn keine Vorbehalte gibt
Funktion | Tenant User | Gast im Tenant | Gast im eigenen Tenant | Federated User External Access |
MSN/Google Konto | Anonymer Teilnehmer |
---|---|---|---|---|---|---|
Zugriff auf Teams/Channel | Ja |
Ja |
Nein |
|
|
|
Planen von Meetings | Ja |
|
|
|
|
|
Meetings im Kanal sehen und teilnehmen | Ja |
|
|
|
|
|
Desktop Freigabe | Ja |
|
|
|
|
|
Team/Kanal: Chat | Ja |
Ja |
Nein |
|
|
|
Team/Kanal: Dateizugriff | Ja |
Ja |
Nein |
|
|
|
Team/Kanal: xxxx | Ja |
Ja |
Nein |
|
|
|
Meeting Audio/Video | Ja |
Ja |
Ja |
Ja |
Ja |
J |
Meeting Desktop Freigabe | Ja |
|
|
|
|
|
Meeting Chat und Dateien | Ja |
|
|
|
|
|
GroupChat: Audio/Video Freigabe | Ja |
|
|
|
|
|
GroupChat: Desktop Freigabe | Ja |
|
|
|
|
|
Zugriff auf Aufzeichnungen (Streams) | Ja |
|
|
|
|
|
OneDrive Sync des Kanals |
|
|
|
|
|
|
Funktionen
- 1:1 Chat "Federation"
Mentoren sind "Teams User im Veranstaltungstenant" und keine Gäste ?
set-CsTeamsMessagingPolicy -Identity Global -AllowOwnerDeleteMessage $true
Post-Event
Wenn der Event vorbei ist, muss der Organisator natürlich überlegen, was er mit den Daten im Teams und vor allem den Zugängen macht. Das Team könnte relativ schnell gelöscht werden, wenn die Daten wirklich nicht mehr benötigt werden. In einer ersten Stufe sollte das Teams nur "ReadOnly" gesetzt werden. So können Sie auch einige Zeit später noch einmal nachvollziehen, was beim Event abgelaufen ist.
Auch eine Information an die Teilnehmer wäre vor einer finalen Löschung angeraten, damit die Teilnehmer vielleicht die ein oder andere Information noch einmal mitnehmen können. Das gilt umso mehr, wenn Sie im Team auch die Nachbereitung, z.B.: Filme, Bilder, Teilnahmebescheinigungen bereitstellen.
Auf der anderen Seite müssen Sie natürlich verhindern, dass die Teilnehmer auch noch lange nach dem Event in den Teams weiter an Dateien arbeiten oder sogar Meetings starten. Dies können Sie über mehrere Wege erreichen.
- Anmeldung des Gast unterbinden
Alle Teams Nutzer haben eine Identität im AzureAD des Tenants und können dort deaktiviert werden. Sie können ja alle Mitglieder des Teams per PowerShell einfach deaktivieren. Dumm nur, wenn die Gäste noch in anderen Teams des gleichen Tenant aktiv sind. - Gast aus dem Team entfernen
Damit kann der Gast auch nicht mehr "ReadOnly" auf das Team zugreifen. Allerdings sollten Sie sich merken, wozu der Gast einmal berechtigt war, denn vielleicht wollen Sie den Gast generell mal entfernen - Gast löschen
Das ist natürlich die harte Variante, bei der Teilnehmer sowohl den Zugriff verliert aber auch im Tenant aufgeräumt wird. Das ist aber nur möglich, wenn der Gast nur in dem einen Event dabei war.
Einen goldenen Weg gibt es hier leider nicht, da Gäste in einem Teams immer "Tenant-weit" angelegt sind und Sie vor dem Löschen eines Gast-Kontos zumindest sicherstellen müssen, dass es nicht noch andere Daten im Tenants verwenden muss.
Weitere Links
- Guidance for delivering Virtual Events
https://adoption.microsoft.com/virtual-event-guidance/
https://teamworktools.azurewebsites.net/hub/MicrosoftVirtualEventPlaybook_v1.pdf - Teams Meetings
- Meeting-Knigge
- AzureAD Identitäten
- Office 365 Gast-Konten / Azure B2B
- Teams Gastzugang
-
Microsoft 365 – Gäste und die
Zusammenarbeit, ein Überblick
https://www.rakoellner.de/2019/07/microsoft-365-gaeste-und-die-zusammenarbeit-ein-ueberblick/ -
Wie ist das mit Teams, Teammitgliedern,
Einladungen zu Videokonferenzen und so ?
https://www.derdecker.at/cloud/2020/04/16/wie-ist-das-mit-teams-teammitgliedern-einladungen-zu-videokonferenzen-und-so/ -
Add emoji to your Channels in Microsoft Teams
https://www.jumpto365.com/blog/add-emoji-to-your-channels-in-microsoft-teams