/
rpc.go
28 lines (23 loc) · 1.01 KB
/
rpc.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
package interfacediagnostics
type InterfaceDiagnosticsRpc struct {
Information struct {
Diagnostics []PhyDiagInterface `xml:"physical-interface"`
} `xml:"interface-information"`
}
type PhyDiagInterface struct {
Name string `xml:"name"`
Diagnostics struct {
LaserBiasCurrent float64 `xml:"laser-bias-current"`
LaserOutputPower float64 `xml:"laser-output-power"`
LaserOutputPowerDbm string `xml:"laser-output-power-dbm"`
ModuleTemperature struct {
Value float64 `xml:"celsius,attr"`
} `xml:"module-temperature"`
ModuleVoltage float64 `xml:"module-voltage,omitempty"`
RxSignalAvgOpticalPower float64 `xml:"rx-signal-avg-optical-power,omitempty"`
RxSignalAvgOpticalPowerDbm string `xml:"rx-signal-avg-optical-power-dbm,omitempty"`
LaserRxOpticalPower float64 `xml:"laser-rx-optical-power,omitempty"`
LaserRxOpticalPowerDbm string `xml:"laser-rx-optical-power-dbm,omitempty"`
NA string `xml:"optic-diagnostics-not-available"`
} `xml:"optics-diagnostics,omitempty"`
}