Како да извезете историју ћаскања МС Теамс помоћу ПоверСхелл-а

Admin

У овом чланку ћемо погледати како да приступимо и извеземо историју Мицрософт Теамс разговора за ћаскање користећи ПоверСхелл.

Тимски разговори се чувају у скривеном Историја разговора\Тимско ћаскање фасцикла у а заједничко поштанско сандуче, који се аутоматски креира када креирате нову Мицрософт 365 групу (ово ће тренутно креирати групу тимова, веб локацију, СхареПоинт Онлине библиотеку, Иаммер групу итд.).

Можете спречити кориснике Мицрософт 365 закупца да креирају нове групе тимова.

Међутим, не можете да приступите заштићеној фасцикли са историјом ћаскања Теамс-а користећи Оутлоок или другу апликацију. Можете извозите садржај Екцханге Онлине поштанског сандучета у ПСТ датотеку Користећи Цонтент Сеарцху Центар за безбедност и усклађеност, а затим повежите ПСТ датотеку у Оутлоок. Али није превише згодно. Много је лакше користити ПоверСхелл да бисте добили листу Теамс порука за ћаскање.

Да бисмо се повезали са Мицрософт 365 закупцем, користићемо Мицрософт Грапх АПИ.

Раније смо вам показали како да пошаљите поруку у МС Теамс ћаскање користећи ПоверСхелл и Мицрософт Грапх АПИ.
  1. Створити нова аппТеамсВиев апликација на Азуре порталу (Азуре АД -> Регистрација апликације -> Нова регистрација);
  2. Копирајте следеће вредности:
    ИД апликације (клијента): your_app_ID
    ИД именика (закупца): your_tenant_ID
  3. Идите на АПИ дозволе, кликните на Мицрософт Грапх -> Дозволе апликације -> Канал -> изаберите Канал. Басиц. РеадАлл и ЦханнелМессаге. читати.Све. Додајте групу дозвола -> Група. Читати. Све. Дајте исте дозволе у Мицрософт Грапх -> Делегиране дозволе и такође у Именик. АццессАсУсер. Све.
  4. Кликните Дајте сагласност администратора за…Додели дозволе за апликацију у Азуре-у
  5. Затим креирајте тајну за приступ апликацији. Иди на Сертификати и тајне -> Нове тајне клијената, наведите име кључа и период његовог важења.
    Копирајте вредност из Валуе поље:
    вредност: your_secret
Креирајте тајну за Азуре апликацију
Сазнајте више о како повезати Мицрософт Грапх АПИ са ПоверСхелл-ом.

Затим се можете повезати на Мицрософт Ентра ИД (Азуре АД) из ПоверСхелл-а и добити токен за приступ.

$clientId = "your_app_ID"
$tenantName = "yourtenant.onmicrosoft.com"
$clientSecret = "your_secret"
$resource = "https://graph.microsoft.com/"
$Username = "[email protected]"
$Password = "yourpassword"
$ReqTokenBody = @{ Grant_Type = "Password" client_Id = $clientID Client_Secret = $clientSecret Username = $Username Password = $Password Scope = "https://graph.microsoft.com/.default"
}
$TokenResponse = Invoke-RestMethod -Uri "https://login.microsoftonline.com/$TenantName/oauth2/v2.0/token" -Method POST -Body $ReqTokenBody. 
Можете користити аутентификација заснована на сертификатима у Мицрософт 365 из ваше ПоверСхелл скрипте.

Сада можете да добијете различите податке од свог Мицрософт 365 закупца.

Наведите тимове у вашем закупцу:

#Getting all Teams. $header= @{Authorization = "Bearer $($TokenResponse.access_token)"}
$BaseURI = "https://graph.microsoft.com/beta"
$AllMicrosoftTeams = (Invoke-RestMethod -Uri "$($BaseURI)/groups?'$filter=resourceProvisioningOptions/Any(x: x eq 'Team')" -Headers $header -Method Get -ContentType "application/json").value. $AllMicrosoftTeams| FT id, DisplayName, Description. 

Затим прикажите листу канала у групи Тимови према ИД-у:

# List channels in Team. $TeamsID="your_team_id"
$TeamsChannels = (Invoke-RestMethod -Uri "$($BaseURI)/teams/$($TeamsID)/channels" -Headers $Header -Method Get -ContentType "application/json").value. $TeamsChannels | FT id, DisplayName, Description
ПоверСхелл: Листа канала у тиму

Можете да користите следећу ПоверСхелл скрипту да бисте добили листу порука и одговора са канала Теамс:

$ChannelID="your_chat_id "
$Header =@{Authorization = "Bearer $($Tokenresponse.access_token)"} $apiUrl = "https://graph.microsoft.com/beta/teams/$TeamsID/channels/$ChannelID/messages"
$Data = Invoke-RestMethod -Uri $apiUrl -Headers $header -Method Get. $Messages = ($Data | Select-Object Value).Value. class messageData. { [string]$dateTime [string]$from [string]$body [string]$re messageData() { $this.dateTime = "" $this.from = "" $this.body = "" $this.re = "" }
}
$messageSet = New-Object System.Collections.ArrayList; foreach ($message in $Messages)
{ $result = New-object messageData $result.DateTime=Get-Date -Date (($message).createdDateTime) -Format 'yyyy/MM/dd HH: mm' $result.from = $message.from.user.displayName $result.body = $message.body.content $messageSet.Add($result) #parsing replies $repliesURI = "https://graph.microsoft.com/beta/teams/" + $TeamsID + "/channels/" + $ChannelID + "/messages/" + $message.ID + "/replies?`$top100" $repliesResponse = Invoke-RestMethod -Method Get -Uri $repliesURI -Headers $header foreach ($reply in $repliesResponse.value) { $replyData = New-Object messageData $replyData.dateTime = Get-Date -Date (($reply).createdDateTime) -Format 'yyyy/MM/dd HH: mm' $replyData.from = $reply.from.user.displayName $replyData.body= $reply.body.content $replyData.re="RE" $messageSet.Add($replyData) } }
$messageSet|ConvertTo-Html | Out-File c:\ps\teams_chat_history.html -Encoding utf8. 

Ова скрипта добија листу разговора са наведеног канала, добија листу одговора за сваки разговор и генерише ХТМЛ датотеку са пуним садржајем ћаскања. Одговори на дискусију у табели садрже кључно поље RE.

Погледајте наше ГитХуб спремиште за овај код скрипте: https://github.com/maxbakhub/winposh/blob/main/teams/export_messages_teams_chat.ps1

Извезите Мицрософт Теамс ћаскање у хтмл помоћу ПоверСхелл-а

Како да извезете историју ћаскања МС Теамс помоћу ПоверСхелл-а
Како да извезете историју ћаскања МС Теамс помоћу ПоверСхелл-а

У овом чланку ћемо погледати како да приступимо и извеземо историју Мицрософт Теамс разговора за ...