Skip to content

Commit a487e36

Browse files
committed
Write-Progress
1 parent 6feef99 commit a487e36

File tree

2 files changed

+16
-2
lines changed

2 files changed

+16
-2
lines changed

Slack.Backup/Private/backup/Invoke-ChannelBackup.ps1

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ function Invoke-ChannelBackup {
2020
$start = $last.ts
2121
}
2222
Write-Verbose "Get-ChannelNewMessages [$ChannelId][$(Convert-EpochToDate $Start)]"
23+
Write-Progress -Activity "Get-ChannelNewMessages [$ChannelId][$(Convert-EpochToDate $Start)]" -Status 'Get-FullHistory'
2324
[array]$newMessages = Get-FullHistory -Token $Token -ChannelId $ChannelId -Start $start
2425

2526
$ids = $messages.ts
@@ -49,7 +50,12 @@ function Invoke-ChannelBackup {
4950
}
5051

5152
if ($newMessages.Count -gt 0) {
52-
$messages += $newMessages | % { Invoke-MessageProcessingPipeline -SlackMessage $_ }
53+
$cur = 0
54+
$messages += $newMessages | % {
55+
$perc = ((100.0 * $cur++) / $newMessages.Count)
56+
Write-Progress -Activity "Message $($_.ts) FROM $ChannelID" -PercentComplete $perc -Status "Running MessageProcessingPipeline"
57+
Invoke-MessageProcessingPipeline -SlackMessage $_
58+
}
5359
$messages | Sort-Object -Property @{Expression = { [double]$_.ts } } | ConvertTo-Json -Depth 100 | Set-Content -Path $Location
5460
}
5561
}

Slack.Backup/Private/backup/Invoke-FilesBackup.ps1

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,13 +25,21 @@ function Invoke-FilesBackup {
2525

2626
$files = Get-FilesList -Token $Token -TsFrom $start
2727
if ($files.ok) {
28-
foreach ($f in $files | Select-Object -ExpandProperty files) {
28+
$cur = 0
29+
$files = $files | Select-Object -ExpandProperty files
30+
foreach ($f in $files) {
2931
$ext = $f.filetype
3032
$path = "$backupLoc/$($f.id)"
33+
$perc = ((100.0 * $cur++) / $files.Count)
34+
Write-Progress -Activity "File $($f.id)" -PercentComplete $perc -Status "Downloading"
3135
$slackFile = Get-SlackFile -Token $Token -Uri $f.url_private
36+
37+
Write-Progress -Activity "File $($f.id)" -PercentComplete $perc -Status "Running FileDataProcessingPipeline"
3238
$slackFile = Invoke-FileDataProcessingPipeline -SlackFile $slackFile -Metadata $f
3339
[System.IO.File]::WriteAllBytes("$path.$ext", $slackFile)
3440
Remove-Variable -Name slackFile
41+
42+
Write-Progress -Activity "File $($f.id)" -PercentComplete $perc -Status "Running FileProcessingPipeline"
3543
$f | Invoke-FileProcessingPipeline | ConvertTo-Json -Depth 10 | Set-Content -Path "$path.json"
3644
}
3745
}

0 commit comments

Comments
 (0)