# Module XmlParser - Parse et generation XML Enocean function Get-DeviceListFromJson { [CmdletBinding()] param( [Parameter(Mandatory)] [string]$JsonContent ) $json = $JsonContent | ConvertFrom-Json $devices = @() if ($json.files) { foreach ($file in $json.files) { $devices += @{ Name = $file.path.name Href = $file.path.href } } } return , $devices } function Parse-EnoceanDeviceXml { [CmdletBinding()] param( [Parameter(Mandatory)] [string]$XmlContent ) [xml]$xml = $XmlContent $config = $xml.EnOceanDevice.Configuration return @{ ResourceNumber = [int]$config.ResourceNumber DeviceId = $config.DeviceId DeviceType = $config.DeviceType } } function New-EnoceanDeviceXml { [CmdletBinding()] param( [Parameter(Mandatory)] [int]$ResourceNumber, [Parameter(Mandatory)] [string]$DeviceId, [Parameter(Mandatory)] [string]$DeviceType ) $xml = @" EnOceanDevice $ResourceNumber EnOcean Device $ResourceNumber $DeviceId $DeviceType 2400 "@ return $xml } Export-ModuleMember -Function Get-DeviceListFromJson, Parse-EnoceanDeviceXml, New-EnoceanDeviceXml