Récupérer les infos de vitemadose en Powershell

Ouh le vilain covid

On va faire simple et sans explication. En gros, on va chercher un JSON sur le site vitemadose.gitlab.io en fonction du département, on le parse, et on affiche un truc moche. Comme il y a plein d’informations à récupérer, vous pouvez les visualiser directement dans votre navigateur en accédant à l’URL, avec Firefox par exemple c’est très joli…

[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12 #pas besoin mais ça ne fait pas de mal

$departement="95" #indiquez ici votre département (2A/2B pour la Corse, gaffe à la majuscule sinon 404 pan sur les doigts)
$result=invoke-webrequest("https://vitemadose.gitlab.io/vitemadose/$($departement).json") | ConvertFrom-Json

foreach($centre in $result.centres_disponibles)
{
    Write-Host "*** $($centre.nom) ***"
    $centre.metadata.address

    if($centre.metadata.phone_number)
    {
        $phone=$centre.metadata.phone_number -replace '^\+33',''
        $phone="{0:0# ## ## ## ##}" -f [int]$phone
        Write-Host "Tel : $phone"
    }

    Write-Host "GPS : https://www.google.com/maps/search/?api=1&query=$($centre.location.latitude),$($centre.location.longitude)"
    Write-Host "URL prise de rdv : $($centre.url)"
    Write-Host "Vaccins disponibles :"
    foreach($vaccin in $centre.vaccine_type)
    {
        Write-Host "- $vaccin"
    }

    Write-Host "Nb rdv demain : $($centre.appointment_schedules.'1_days')"

    $date = [DateTime]::Parse($centre.prochain_rdv).ToString('dddd dd/MM/yyyy à HH:mm')
    Write-Host "Prochain rendez-vous dispo : $date"
    if($centre.metadata.business_hours)
    {
        Write-Host "Horaires d'ouverture :"
        foreach($jour in $centre.metadata.business_hours.psobject.properties.name)
        {
            Write-host "$jour : $($centre.metadata.business_hours.$($jour))"
        }
    }

    Write-Host
}

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *