Lorsque vous créez des Capteurs pour les terminaux Windows 10, vous devez charger un script PowerShell ou entrer les commandes PowerShell dans la zone de texte proposée lors de la configuration dans la Workspace ONE UEM Console. Ces commandes renvoient les valeurs des attributs du capteur.

Exemples de scripts PowerShell

Les exemples suivants contiennent les paramètres et le code requis. Vous pouvez également visiter https://code.vmware.com/samples?id=4930 pour accéder à d'autres exemples de Capteurs.

Note : Tout capteur qui renvoie une valeur de type de données date-heure utilise le format ISO.
  • Vérifier le niveau de batterie restant
    • Type de valeur : Entier
    • Contexte d'exécution : Utilisateur
      $battery_remain=(Get-WmiObject win32_battery).estimatedChargeRemaining |
      Measure-Object -Average | Select-Object -ExpandProperty Averageecho $battery_remain
  • Obtention du numéro de série
    • Type de valeur : Chaîne
    • Contexte d'exécution : Utilisateur
      $os=Get-WmiObject Win32_bios -ComputerName $env:computername -ea silentlycontinue
      echo $os.SerialNumber
  • Obtention de la date système
    • Type de valeur : DateTime
    • Contexte d'exécution : Utilisateur
      $date_current = get-Date -format s -DisplayHint Date
      echo $date_current
  • Vérification de l'activation du TPM
    • Type de valeur : Booléen
    • Contexte d'exécution : Administrateur
      $obj = get-tpm
      echo $obj.TpmReady
  • Vérification du verrouillage du TPM
    • Type de valeur : Booléen
    • Contexte d'exécution : Administrateur
      $obj = get-tpm
      echo $obj.LockedOut
  • Obtention de l'heure de correction du TPM verrouillé
    • Type de valeur : Chaîne
    • Contexte d'exécution : Administrateur
      $tpm=get-tpm
      echo $tpm.LockoutHealTime
  • Vérification de la présence du SMBIOS
    • Type de valeur : Booléen
    • Contexte d'exécution : Utilisateur
      $os = Get-WmiObject Win32_bios -ComputerName $env:computername -ea silentlycontinue
      echo $os.SMBIOSPresent
  • Vérification de la version BIOS de SMBIOS
    • Type de valeur : Booléen
    • Contexte d'exécution : Utilisateur
      $os = Get-WmiObject Win32_bios -ComputerName $env:computername -ea silentlycontinue
      echo $os.SMBIOSBIOSVersion
  • Affichage de la version du BIOS
    • Type de valeur : Chaîne
    • Contexte d'exécution : Utilisateur
      $os = Get-WmiObject Win32_bios -ComputerName $env:computername -ea silentlycontinue
      echo $os.Version
  • Affichage de l'état du BIOS
    • Type de valeur : Chaîne
    • Contexte d'exécution : Utilisateur
      $os = Get-WmiObject Win32_bios -ComputerName $env:computername -ea silentlycontinue
      echo $os.Status
  • Affichage de l'utilisation moyenne du CPU (%)
    • Type de valeur : Entier
    • Contexte d'exécution : Utilisateur
      cpu_usage= Get-WmiObject win32_processor | Select-Object -ExpandProperty LoadPercentage
      echo $cpu_usage
  • Affichage de l'utilisation moyenne de la mémoire
    • Type de valeur : Entier
    • Contexte d'exécution : Utilisateur
      $os = Get-WmiObject win32_OperatingSystem
      $used_memory = $os.totalvisiblememorysize - $os.freephysicalmemory
      echo $used_memory
  • Affichage de l'utilisation moyenne de la mémoire virtuelle
    • Type de valeur : Entier
    • Contexte d'exécution : Utilisateur
      $os = Get-WmiObject win32_OperatingSystem
      $used_memory = $os.totalvirtualmemorysize - $os.freevirtualmemory
      echo $used_memory
  • Affichage de l'utilisation moyenne du réseau
    • Type de valeur : Entier
    • Contexte d'exécution : Utilisateur
      $Total_bytes=Get-WmiObject -class Win32_PerfFormattedData_Tcpip_NetworkInterface
      |Measure-Object -property BytesTotalPersec -Average |Select-Object -ExpandProperty Average
      echo ([System.Math]::Round($Total_bytes))
  • Affichage de l'utilisation moyenne de la mémoire pour un processus
    • Type de valeur : Chaîne
    • Contexte d'exécution : Utilisateur
      $PM = get-process chrome |Measure-object -property PM -Average|Select-Object -ExpandProperty Average
      $NPM = get-process chrome |Measure-object -property NPM -Average|Select-Object -ExpandProperty Average
      echo [System.Math]::Round(($PM+$NPM)/1KB)
  • Vérification de l'exécution ou de la non-exécution d'un processus
    • Type de valeur : Booléen
    • Contexte d'exécution : Utilisateur
       $chrome = Get-Process chrome -ea SilentlyContinue
      			if($chrome){
      				echo $true
      				}
      			else{
      				echo $false
      				}
  • Vérification de l'activation du démarrage sécurisé
    • Type de valeur : Booléen
    • Contexte d'exécution : Administrateur
      try { $bios=Confirm-SecureBootUEFI }
      catch { $false }
      echo $bios
  • Interface réseau active
    • Type de valeur : Chaîne
    • Contexte d'exécution : Utilisateur
      $properties = @(‘Name’,’InterfaceDescription’)
      $physical_adapter = get-netadapter -physical | where status -eq "up" 
      |select-object -Property $properties
      echo $physical_adapter
  • Vérification de la version de PowerShell
    • Type de valeur : Chaîne
    • Contexte d'exécution : Utilisateur
      $x = $PSVersionTable.PSVersion
      echo "$($x.Major).$($x.Minor).$($x.Build).$($x.Revision)"
  • Vérification de la capacité maximale de la batterie
    • Type de valeur : Entier
    • Contexte d'exécution : Utilisateur
      $max_capacity = (Get-WmiObject -Class "BatteryFullChargedCapacity" -Namespace "ROOT\WMI").FullChargedCapacity | Measure-Object -Sum | 
      Select-Object -ExpandProperty Sum
      echo $max_capacity
  • Vérification de l'état de charge de la batterie
    • Type de valeur : Chaîne
    • Contexte d'exécution : Utilisateur
      $charge_status = (Get-CimInstance win32_battery).batterystatus
      $charging = @(2,6,7,8,9)
      if($charging -contains $charge_status[0] -or $charging -contains $charge_status[1] )
      {
                      echo "Charging"
                      }else{  
                      echo "Not Charging"
      }
  • Profil de gestion de l'alimentation actif
    • Type de valeur : Chaîne
    • Contexte d'exécution : Administrateur
      $plan = Get-WmiObject -Class win32_powerplan -Namespace root\cimv2\power 
      -Filter "isActive='true'" 
      echo $plan
  • Vérification de la présence d'un réseau sans fil
    • Type de valeur : Booléen
    • Contexte d'exécution : Utilisateur
      $wireless = Get-WmiObject -class Win32_NetworkAdapter -filter "netconnectionid like 'Wi-Fi%'"
      	if($wireless){echo $true}
      	else {echo $false}
  • Obtention de la version Java
    • Type de valeur : Chaîne
    • Contexte d'exécution : Utilisateur
      $java_ver = cmd.exe /c "java -version" '2>&1'
      echo $java_ver