UWAGA: poniższy opis jest w dużej mierze przestarzały. Na szczęście działają skryptozakładki
Instrukcja instalacji modułu MicrosoftTeams PowerShell * Pobieranie listy członków zespołów * Automatyczne dodawanie członków do swoich zespołów

Szczegółowy opis instalacji modułu MicrosoftTeams PowerShell na podstawie
https://docs.microsoft.com/en-us/microsoftteams/teams-powershell-install


… Te instrukcje działają na platformach Azure Cloud Shell, Linux, macOS i Windows.
… Domyślnie Galeria programu PowerShell (PSGallery) nie jest skonfigurowana jako zaufane repozytorium … Odpowiedz “Yes”, aby kontynuować instalację…

Win_X.png

Szczegółowa instrukcja instalacji modułu MicrosoftTeams PowerShell

  1. Uruchamiamy PowerShell w trybie administratora, np. [WinKey+x] \ Program Windows PowerShell (Administrator) (adm)PowerShell.png

  2. Zezwalamy na pracę skryptów PowerShell
    (jeśli nigdy wcześniej tego nie zrobiliśmy):
    Set-ExecutionPolicy RemoteSigned, Y

  3. Instalujemy moduł:
    Install-Module MicrosoftTeams, Y

InstallModule.png

Testowanie modułu

PowerShell_ISE.png Wypakuj i otwórz skrypt Connect-MicrosoftTeams.ps1(.zip) w PowerShell ISE. Po uruchomieniu (F5) należy zalogować się na swoje konto Office365. Zostaną wyświetlone Twoje zespoły i członkowie pierwszego zespołu. Można następnie testować inne funkcje modułu.

Można też skopiować poniższy skrypt i uruchomić.

$ConnectTeams = Connect-MicrosoftTeams
$ConnectTeams #: Account ... TenantDomain
# Lista zespołów - Get-Team bez parametrów się zawiesza, więc coś trzeba podać...
$Team = Get-Team -User $ConnectTeams.Account
$Team | Format-Table
$Team[0].DisplayName
# $Team[0] | Get-TeamChannel
$Team[0] | Get-TeamUser
Write-Host 'Wypróbuj: Get-Team -DisplayName "..." | Get-TeamChannel'

Pobieranie listy członków swoich zespołów

Skrypt GetUsers-Teams.ps1(.zip) pobiera listę zespołów użytkownika Office365 i dla każdego z zespołów pobiera kanały i listę członków zespołu. Wynik zapisuje do pliku CSV (który jest automatycznie otwierany): Credential.png

User Name Role
.. Mój zespół1  
.   Kanał 1
.   Kanał 2
uż.1@o365 Imię Nazw.1 owner
uż.2@o365 Imię Nazw.1 member

Po jednorazowym zapytaniu o login i hasło zapamiętuje je zaszyfrowane w pliku “…!o365.cred”

Jest to wersja dla modułu MicrosoftTeams - General Availability (GA) v.1.1.6, która pozawala zarządzać członkami zespołów. Zarządzanie członkami kanałów jest obecnie (2020r) możliwe tylko w wersji MicrosoftTeams Public Preview (np. v.1.1.7), która wymaga osobnej instalacji. https://docs.microsoft.com/en-us/microsoftteams/teams-powershell-install

  1. Jeśli chodzi o tylko szybkie pobranie listy członków to można to zrobić za pomocą skryptozakładki 4. [TeamsLi].
  2. Jeśli użytkownik ma udział w wielu zespołach to zalogowanie do Teams i pobieranie list może trwać długie minuty. Gdy po długim czekaniu proces zakończy się błędem to warto spróbować ponownie.

Automatyczne dodawanie członków do swoich zespołów

  1. Utwórz zespół/zespoły ręcznie (z wybranych szablonów).
  2. Zapisz plik CSV z wyeksportowanymi zespołami, uruchamiając skrypt GetUsers-Teams.ps1.
  3. Na podstawie tego pliku stwórz nowy, zachowując nagłówek User;Name;Role i sekcję dla modyfikowanego zespołu (może być więcej zespołów, ale wystarczy jeden).
    Możesz też dopisać nowe kanały do automatycznego dodania w tym zespole.
  4. Dopisz członków zespołu do dodania z rolą “owner” (właściciel) lub “member”(członek). Zapisz plik CSV.
  5. W PowerShell ISE uruchom skrypt AddUsers-Teams.ps1.
  6. Zmiany są (raczej) natychmiast widoczne w aplikacji MS Teams.

csvFileDialog.png Skrypt AddUsers-Teams.ps1(.zip) Odczytuje plik CSV o formacie jak w skrypcie GetUsers-Teams.ps1.

Gdy napotka wiersz
..;<nazwa zespołu>;
uaktualnia istniejący zespół zalogowanego użytkownika (albo tworzy nowy, gdy potrzeba - ale raczej powinno się tworzyć zespoły ręcznie korzystając z szablonów).

Dodaje kanały jeśli są nowe, wg. wierszy w CSV .;;<nazwa kanału>.

Dodaje członków wg. odczytywanej listy członków zespołu w CSV, ale tylko jeśli są nowi.
2-ga kolumna (“Name”) jest pomijana podczas operacji dodawania (nie da się w ten sposób zmodyfikować imienia i nazwiska użytkownika).
W 3-ciej kolumnie (“Role”) w przypadku dodawania użytkownika ważny jest wpis “owner”, a każdy inny jest zamieniany na “member”.

Może być wiele sekcji zespół-kanały-użytkownicy.

Skrypt nie usuwa członków, których brak na liście CSV.

Po jednorazowym zapytaniu o login i hasło zapiętuje je zaszyfrowane w pliku “…!o365.cred”, wspólnym dla tej rodziny skryptów.