public/Get-TrueNasInterface.ps1
function Get-TrueNasInterface { [CmdletBinding()] [Alias()] Param () Begin { $uri = "api/v2.0/interface" } Process { $result = Invoke-TrueNasRestMethod -Uri $Uri -Method Get } End { for ($i = 0; $i -lt $result.Count; $i++) { foreach ($item in $result[$i]) { [PSCustomObject]@{ id = ($result[$i].id) Name = ($result[$i].name) Fake = ($result[$i].fake) Type = ($result[$i].type) Aliases = ($result[$i].aliases) "Dhcp ipv4" = ($result[$i].ipv4_dhcp) "Dhcp ipv6" = ($result[$i].ipv6_auto) Description = ($result[$i].description) Options = ($result[$i].options) "Name parent" = ($result[$i].state.name) "Origin Name" = ($result[$i].state.description) "Description parent" = ($result[$i].state.description) MTU = ($result[$i].state.mtu) Cloned = ($result[$i].state.cloned) Flags = ($result[$i].state.nd6_flags) "Link state" = ($result[$i].state.link_state) "Media type" = ($result[$i].state.media_type) "Active media type" = ($result[$i].state.active_media_type) "Supported_media" = ($result[$i].state.supported_media) "Media options" = ($result[$i].state.media_options) "Mac Address" = ($result[$i].state.link_address) } } } } } |