Private/UserAgent.ps1
. "$PSScriptRoot/../Public/WaykNowPackage.ps1" $OS_VERSION_UNKNOWN = "Unknown"; function Get-WaykNowUserAgent(){ return Build-UserAgent } function Build-UserAgent(){ return (Get-ProductInfo) + " " + (Get-PlatformInfo) } function Get-ProductInfo(){ return "WaykNow/" + (Get-WaykNowVersion) } function Get-PlatformInfo(){ if (Get-IsWindows) { $version = $OS_VERSION_UNKNOWN $versionExtra = $OS_VERSION_UNKNOWN $osVersion = (Get-ItemProperty -path "HKLM:SOFTWARE\Microsoft\Windows NT\CurrentVersion").ProductName $osVersionExtra = (Get-ItemProperty -path "HKLM:SOFTWARE\Microsoft\Windows NT\CurrentVersion").ReleaseId if($osVersion){ $version= $osVersion } if($osVersionExtra){ $versionExtra = $osVersionExtra } return "(Windows; $version $versionExtra)" } elseif ($IsMacOS) { $version = $OS_VERSION_UNKNOWN $versionExtra = $OS_VERSION_UNKNOWN $osVersion = $(Invoke-Process -FilePath "sw_vers" -ArgumentList "-productVersion") $osVersionExtra = $(Invoke-Process -FilePath "sw_vers" -ArgumentList "-buildVersion") if($osVersion){ $version= $osVersion -replace "`n", "" } if($osVersionExtra){ $versionExtra = $osVersionExtra -replace "`n", "" } return "(macOS; $version $versionExtra)" } elseif ($IsLinux) { $version = $OS_VERSION_UNKNOWN $osVersion = $(Invoke-Process -FilePath "lsb_release" -ArgumentList "-d -s") if($osVersion){ $version= $osVersion -replace "`n", "" } return "(Linux; $version)" }} |