Documentation ¶
Index ¶
- Constants
- Variables
- type APIError
- type AirQualitySensor
- func (a *AirQualitySensor) GetAirQuality(_ context.Context, _ *traits.GetAirQualityRequest) (*traits.AirQuality, error)
- func (a *AirQualitySensor) GetUpdate() error
- func (a *AirQualitySensor) PullAirQuality(request *traits.PullAirQualityRequest, ...) error
- func (a *AirQualitySensor) StartPollingForData()
- type Client
- type Code
- type DeviceData
- type DeviceDataEntry
- type Driver
- type EventPoint
- type EventPoints
- type Occupancy
- type PointsetEventMessage
- type SensorResponse
- type TemperatureSensor
- func (a *TemperatureSensor) GetAirTemperature(_ context.Context, _ *traits.GetAirTemperatureRequest) (*traits.AirTemperature, error)
- func (a *TemperatureSensor) GetUpdate() error
- func (a *TemperatureSensor) PullAirTemperature(request *traits.PullAirTemperatureRequest, ...) error
- func (a *TemperatureSensor) StartPollingForData()
- type UdmiServiceServer
- func (u *UdmiServiceServer) GetExportMessage(_ context.Context, _ *gen.GetExportMessageRequest) (*gen.MqttMessage, error)
- func (u *UdmiServiceServer) OnMessage(_ context.Context, _ *gen.OnMessageRequest) (*gen.OnMessageResponse, error)
- func (u *UdmiServiceServer) PullControlTopics(_ *gen.PullControlTopicsRequest, _ gen.UdmiService_PullControlTopicsServer) error
- func (u *UdmiServiceServer) PullExportMessages(request *gen.PullExportMessagesRequest, ...) error
Constants ¶
View Source
const DriverName = "steinel-hpd"
View Source
const PointsetVersion = "1.0.0"
Variables ¶
View Source
var Factory driver.Factory = factory{}
Functions ¶
This section is empty.
Types ¶
type APIError ¶
type AirQualitySensor ¶
type AirQualitySensor struct { traits.UnimplementedAirQualitySensorApiServer gen.UnimplementedMqttServiceServer gen.UnimplementedUdmiServiceServer AirQualityValue *resource.Value // contains filtered or unexported fields }
func NewAirQualitySensor ¶
func (*AirQualitySensor) GetAirQuality ¶
func (a *AirQualitySensor) GetAirQuality(_ context.Context, _ *traits.GetAirQualityRequest) (*traits.AirQuality, error)
func (*AirQualitySensor) GetUpdate ¶
func (a *AirQualitySensor) GetUpdate() error
func (*AirQualitySensor) PullAirQuality ¶
func (a *AirQualitySensor) PullAirQuality(request *traits.PullAirQualityRequest, server traits.AirQualitySensorApi_PullAirQualityServer) error
func (*AirQualitySensor) StartPollingForData ¶ added in v0.2024.5
func (a *AirQualitySensor) StartPollingForData()
StartPollingForData starts a loop which fetches data from the sensor at a set interval
type Client ¶
type Client struct { // BaseURL is the root of the API. // e.g. https://1.2.3.4/api/ BaseURL url.URL Client *http.Client Password string `default:""` }
func NewInsecureClient ¶
NewInsecureClient creates a Client that connects over HTTPS but does not verify the server certificate.
type Code ¶
type Code int
const ( CodeInvalidSettings Code = 10010 CodeInvalidContentType Code = 11000 CodeEmptyRequest Code = 11001 CodeContentLengthRequired Code = 11002 CodeInvalidJSON Code = 11100 CodeInvalidTimeFormat Code = 11200 CodeTimeInPast Code = 11201 CodeUpdateDowngrade Code = 21000 CodeUpdateUploading Code = 21001 CodeUpdateInstalling Code = 21002 CodeUpdateInvalid Code = 21003 CodeBackupIPSettingsChanged Code = 21100 CodeBackupNewerVersion Code = 21101 CodeDataPushIDModeError Code = 31000 CodeDataPushAgentTriggerBusy Code = 31001 )
type DeviceData ¶
type DeviceData struct {
Entries []DeviceDataEntry
}
type DeviceDataEntry ¶
type DeviceDataEntry struct {
Name string `json:"name"`
}
type EventPoint ¶ added in v0.2024.5
type EventPoint[T any] struct { PresentValue T `json:"present_value"` }
type EventPoints ¶ added in v0.2024.5
type EventPoints struct { // Generic points DeviceType *EventPoint[string] `json:"DeviceType,omitempty"` // air quality related points Co2Level *EventPoint[float32] `json:"Co2Level,omitempty"` VocLevel *EventPoint[float32] `json:"VocLevel,omitempty"` AirPressure *EventPoint[float32] `json:"AirPressure,omitempty"` InfectionRisk *EventPoint[float32] `json:"InfectionRisk,omitempty"` IAQ *EventPoint[float32] `json:"IAQ,omitempty"` // TemperatureValue related points Temperature *EventPoint[float64] `json:"Temperature,omitempty"` Humidity *EventPoint[float32] `json:"Humidity,omitempty"` // OccupancyValue related points PeopleCount *EventPoint[int32] `json:"PeopleCount,omitempty"` OccupancyState *EventPoint[string] `json:"OccupancyState,omitempty"` }
type Occupancy ¶
type Occupancy struct { traits.UnimplementedOccupancySensorApiServer gen.UnimplementedUdmiServiceServer OccupancyValue *resource.Value // contains filtered or unexported fields }
func NewOccupancySensor ¶
func (*Occupancy) GetOccupancy ¶
func (*Occupancy) PullOccupancy ¶
func (o *Occupancy) PullOccupancy(request *traits.PullOccupancyRequest, server traits.OccupancySensorApi_PullOccupancyServer) error
func (*Occupancy) StartPollingForData ¶ added in v0.2024.5
func (o *Occupancy) StartPollingForData()
StartPollingForData starts a loop which fetches data from the sensor at a set interval
type PointsetEventMessage ¶ added in v0.2024.5
type PointsetEventMessage struct { Version string `json:"version"` Timestamp time.Time `json:"timestamp"` PartialUpdate bool `json:"partial_update,omitempty"` Points EventPoints `json:"points"` }
type SensorResponse ¶
type SensorResponse struct { SensorName string `json:"SensorName"` SensorSWVersion string `json:"SensorSWVersion"` DetectorFWVersion string `json:"DetectorFWVersion"` Motion1 bool `json:"Motion1"` Presence1 bool `json:"Presence1"` TruePresence1 bool `json:"TruePresence1"` Brightness1 int `json:"Brightness1"` Temperature float64 `json:"Temperature"` Humidity float64 `json:"Humidity"` VOC int `json:"VOC"` CO2 int `json:"CO2"` AirPressure float64 `json:"AirPressure,omitempty"` Noise int `json:"Noise,omitempty"` AerosolStaleAirStatus int `json:"AerosolStaleAirStatus,omitempty"` AerosolRiskOfInfectionStatus int `json:"AerosolRiskOfInfectionStatus,omitempty"` ComfortZone bool `json:"ComfortZone,omitempty"` DewPoint float64 `json:"DewPoint,omitempty"` AerosolStaleAir int `json:"AerosolStaleAir,omitempty"` AerosolRiskOfInfection int `json:"AerosolRiskOfInfection,omitempty"` ZonePeople0 int `json:"ZonePeople0,omitempty"` IAQ int `json:"IAQ,omitempty"` }
type TemperatureSensor ¶
type TemperatureSensor struct { traits.UnimplementedAirTemperatureApiServer TemperatureValue *resource.Value // contains filtered or unexported fields }
func NewTemperatureSensor ¶
func (*TemperatureSensor) GetAirTemperature ¶
func (a *TemperatureSensor) GetAirTemperature(_ context.Context, _ *traits.GetAirTemperatureRequest) (*traits.AirTemperature, error)
func (*TemperatureSensor) GetUpdate ¶
func (a *TemperatureSensor) GetUpdate() error
func (*TemperatureSensor) PullAirTemperature ¶
func (a *TemperatureSensor) PullAirTemperature(request *traits.PullAirTemperatureRequest, server traits.AirTemperatureApi_PullAirTemperatureServer) error
func (*TemperatureSensor) StartPollingForData ¶ added in v0.2024.5
func (a *TemperatureSensor) StartPollingForData()
StartPollingForData starts a loop which fetches data from the sensor at a set interval
type UdmiServiceServer ¶ added in v0.2024.5
type UdmiServiceServer struct { gen.UnimplementedUdmiServiceServer // contains filtered or unexported fields }
func NewUdmiServiceServer ¶ added in v0.2024.5
func (*UdmiServiceServer) GetExportMessage ¶ added in v0.2024.5
func (u *UdmiServiceServer) GetExportMessage(_ context.Context, _ *gen.GetExportMessageRequest) (*gen.MqttMessage, error)
func (*UdmiServiceServer) OnMessage ¶ added in v0.2024.5
func (u *UdmiServiceServer) OnMessage(_ context.Context, _ *gen.OnMessageRequest) (*gen.OnMessageResponse, error)
func (*UdmiServiceServer) PullControlTopics ¶ added in v0.2024.5
func (u *UdmiServiceServer) PullControlTopics(_ *gen.PullControlTopicsRequest, _ gen.UdmiService_PullControlTopicsServer) error
func (*UdmiServiceServer) PullExportMessages ¶ added in v0.2024.5
func (u *UdmiServiceServer) PullExportMessages(request *gen.PullExportMessagesRequest, server gen.UdmiService_PullExportMessagesServer) error
Source Files ¶
Click to show internal directories.
Click to hide internal directories.