43 lines
1.3 KiB
Go
43 lines
1.3 KiB
Go
package wemodiscovery
|
|
|
|
import (
|
|
"time"
|
|
|
|
"github.com/fromkeith/gossdp"
|
|
)
|
|
|
|
// Device contains information about a device that has been found on the network
|
|
type Device struct {
|
|
Scan gossdp.ResponseMessage
|
|
DeviceType string `xml:"deviceType"`
|
|
FriendlyName string `xml:"friendlyName"`
|
|
Manufacturer string `xml:"manufacturer"`
|
|
ManufacturerURL string `xml:"manufacturerURL"`
|
|
ModelDescription string `xml:"modelDescription"`
|
|
ModelName string `xml:"modelName"`
|
|
ModelNumber string `xml:"modelNumber"`
|
|
ModelURL string `xml:"modelURL"`
|
|
SerialNumber string `xml:"serialNumber"`
|
|
UDN string `xml:"UDN"`
|
|
UPC string `xml:"UPC"`
|
|
MACAddress string `xml:"macAddress"`
|
|
FirmwareVersion string `xml:"firmwareVersion"`
|
|
IconVersion string `xml:"iconVersion"`
|
|
BinaryState int `xml:"binaryState"`
|
|
ServiceList []Service `xml:"serviceList>service"`
|
|
Timeout time.Duration
|
|
}
|
|
|
|
// Service contains information about a service exposed by the Belkin device
|
|
type Service struct {
|
|
ServiceType string `xml:"serviceType"`
|
|
ServiceID string `xml:"serviceId"`
|
|
ControlURL string `xml:"controlURL"`
|
|
EventSubURL string `xml:"eventSubURL"`
|
|
SCPDURL string `xml:"SCPDURL"`
|
|
}
|
|
|
|
type root struct {
|
|
Device *Device `xml:"device"`
|
|
}
|