Initial upload: immich-tv-viewer
This commit is contained in:
@@ -0,0 +1,63 @@
|
||||
param(
|
||||
[string]$Server = "http://192.168.1.29:2283",
|
||||
[int]$Size = 250
|
||||
)
|
||||
|
||||
if (-not $env:IMMICH_KEY -and -not $IMMICH_KEY) {
|
||||
Write-Host "ERREUR: définis d'abord la clé API :" -ForegroundColor Red
|
||||
Write-Host '$env:IMMICH_KEY = "TA_CLE_API"'
|
||||
exit 1
|
||||
}
|
||||
|
||||
$key = if ($env:IMMICH_KEY) { $env:IMMICH_KEY } else { $IMMICH_KEY }
|
||||
|
||||
$total = 0
|
||||
$page = 1
|
||||
$nextPage = "1"
|
||||
|
||||
while ($null -ne $nextPage -and $nextPage -ne "") {
|
||||
Write-Host "Lecture page $page..." -ForegroundColor Yellow
|
||||
|
||||
$body = @{
|
||||
type = "IMAGE"
|
||||
size = $Size
|
||||
page = $page
|
||||
order = "desc"
|
||||
withArchived = $false
|
||||
withDeleted = $false
|
||||
withPeople = $false
|
||||
withStacked = $true
|
||||
} | ConvertTo-Json
|
||||
|
||||
$result = Invoke-RestMethod `
|
||||
-Uri "$Server/api/search/metadata" `
|
||||
-Headers @{ "x-api-key" = $key } `
|
||||
-Method POST `
|
||||
-ContentType "application/json" `
|
||||
-Body $body
|
||||
|
||||
$items = @()
|
||||
if ($result.assets -and $result.assets.items) {
|
||||
$items = @($result.assets.items)
|
||||
$nextPage = $result.assets.nextPage
|
||||
} elseif ($result.items) {
|
||||
$items = @($result.items)
|
||||
$nextPage = $result.nextPage
|
||||
} else {
|
||||
$nextPage = $null
|
||||
}
|
||||
|
||||
$imageItems = @($items | Where-Object { $_.type -eq "IMAGE" -and $_.isTrashed -ne $true })
|
||||
$total += $imageItems.Count
|
||||
|
||||
Write-Host "Page $page : $($imageItems.Count) photos, total provisoire : $total" -ForegroundColor Cyan
|
||||
|
||||
if ($null -eq $nextPage -or $nextPage -eq "") {
|
||||
break
|
||||
}
|
||||
|
||||
$page = [int]$nextPage
|
||||
}
|
||||
|
||||
Write-Host ""
|
||||
Write-Host "TOTAL PHOTOS COMPTEES : $total" -ForegroundColor Green
|
||||
Reference in New Issue
Block a user