import "code.pfad.fr/gohmekit/hapip/characteristic"
const AccessoryFlags_RequiresAdditionalSetup = AccessoryFlags_Type(1 << 0)
const Active_Active = Active_Type(1)
const Active_Inactive = Active_Type(0)
const AirParticulateSize_10M = AirParticulateSize_Type(1)
const AirParticulateSize_25M = AirParticulateSize_Type(0)
const AirQuality_Excellent = AirQuality_Type(1)
const AirQuality_Fair = AirQuality_Type(3)
const AirQuality_Good = AirQuality_Type(2)
const AirQuality_Inferior = AirQuality_Type(4)
const AirQuality_Poor = AirQuality_Type(5)
const AirQuality_Unknown = AirQuality_Type(0)
const CarbonDioxideDetected_CO2LevelsAbnormal = CarbonDioxideDetected_Type(1)
const CarbonDioxideDetected_CO2LevelsNormal = CarbonDioxideDetected_Type(0)
const CarbonMonoxideDetected_COLevelsAbnormal = CarbonMonoxideDetected_Type(1)
const CarbonMonoxideDetected_COLevelsNormal = CarbonMonoxideDetected_Type(0)
const ChargingState_Charging = ChargingState_Type(1)
const ChargingState_NotChargeable = ChargingState_Type(2)
const ChargingState_NotCharging = ChargingState_Type(0)
const ClosedCaptions_Disabled = ClosedCaptions_Type(0)
const ClosedCaptions_Enabled = ClosedCaptions_Type(1)
const ContactSensorState_ContactDetected = ContactSensorState_Type(0)
const ContactSensorState_ContactNotDetected = ContactSensorState_Type(1)
const CurrentAirPurifierState_Idle = CurrentAirPurifierState_Type(1)
const CurrentAirPurifierState_Inactive = CurrentAirPurifierState_Type(0)
const CurrentAirPurifierState_PurifyingAir = CurrentAirPurifierState_Type(2)
const CurrentDoorState_Closed = CurrentDoorState_Type(1)
const CurrentDoorState_Closing = CurrentDoorState_Type(3)
const CurrentDoorState_Open = CurrentDoorState_Type(0)
const CurrentDoorState_Opening = CurrentDoorState_Type(2)
const CurrentDoorState_Stopped = CurrentDoorState_Type(4)
const CurrentFanState_BlowingAir = CurrentFanState_Type(2)
const CurrentFanState_Idle = CurrentFanState_Type(1)
const CurrentFanState_Inactive = CurrentFanState_Type(0)
const CurrentHeaterCoolerState_Cooling = CurrentHeaterCoolerState_Type(3)
const CurrentHeaterCoolerState_Heating = CurrentHeaterCoolerState_Type(2)
const CurrentHeaterCoolerState_Idle = CurrentHeaterCoolerState_Type(1)
const CurrentHeaterCoolerState_Inactive = CurrentHeaterCoolerState_Type(0)
const CurrentHeatingCoolingState_Cool = CurrentHeatingCoolingState_Type(2)
const CurrentHeatingCoolingState_Heat = CurrentHeatingCoolingState_Type(1)
const CurrentHeatingCoolingState_Off = CurrentHeatingCoolingState_Type(0)
const CurrentHumidifierDehumidifierState_Dehumidifying = CurrentHumidifierDehumidifierState_Type(3)
const CurrentHumidifierDehumidifierState_Humidifying = CurrentHumidifierDehumidifierState_Type(2)
const CurrentHumidifierDehumidifierState_Idle = CurrentHumidifierDehumidifierState_Type(1)
const CurrentHumidifierDehumidifierState_Inactive = CurrentHumidifierDehumidifierState_Type(0)
const CurrentMediaState_Pause = CurrentMediaState_Type(1)
const CurrentMediaState_Play = CurrentMediaState_Type(0)
const CurrentMediaState_Stop = CurrentMediaState_Type(2)
const CurrentMediaState_Unknown = CurrentMediaState_Type(3)
const CurrentSlatState_Fixed = CurrentSlatState_Type(0)
const CurrentSlatState_Jammed = CurrentSlatState_Type(1)
const CurrentSlatState_Swinging = CurrentSlatState_Type(2)
const CurrentVisibilityState_Hidden = CurrentVisibilityState_Type(1)
const CurrentVisibilityState_Shown = CurrentVisibilityState_Type(0)
const FilterChangeIndication_ChangeFilter = FilterChangeIndication_Type(1)
const FilterChangeIndication_FilterOK = FilterChangeIndication_Type(0)
const InUse_InUse = InUse_Type(1)
const InUse_NotInUse = InUse_Type(0)
const InputDeviceType_AudioSystem = InputDeviceType_Type(5)
const InputDeviceType_Other = InputDeviceType_Type(0)
const InputDeviceType_Playback = InputDeviceType_Type(4)
const InputDeviceType_Recording = InputDeviceType_Type(2)
const InputDeviceType_Tuner = InputDeviceType_Type(3)
const InputDeviceType_Tv = InputDeviceType_Type(1)
const InputSourceType_Airplay = InputSourceType_Type(8)
const InputSourceType_Application = InputSourceType_Type(10)
const InputSourceType_ComponentVideo = InputSourceType_Type(6)
const InputSourceType_CompositeVideo = InputSourceType_Type(4)
const InputSourceType_Dvi = InputSourceType_Type(7)
const InputSourceType_Hdmi = InputSourceType_Type(3)
const InputSourceType_HomeScreen = InputSourceType_Type(1)
const InputSourceType_Other = InputSourceType_Type(0)
const InputSourceType_SVideo = InputSourceType_Type(5)
const InputSourceType_Tuner = InputSourceType_Type(2)
const InputSourceType_Usb = InputSourceType_Type(9)
const IsConfigured_Configured = IsConfigured_Type(1)
const IsConfigured_NotConfigured = IsConfigured_Type(0)
const LeakDetected_LeakDetected = LeakDetected_Type(1)
const LeakDetected_LeakNotDetected = LeakDetected_Type(0)
const LockCurrentState_Jammed = LockCurrentState_Type(2)
const LockCurrentState_Secured = LockCurrentState_Type(1)
const LockCurrentState_Unknown = LockCurrentState_Type(3)
const LockCurrentState_Unsecured = LockCurrentState_Type(0)
const LockLastKnownAction_SecuredByAutoSecureTimeout = LockLastKnownAction_Type(8)
const LockLastKnownAction_SecuredByKeypad = LockLastKnownAction_Type(4)
const LockLastKnownAction_SecuredPhysicallyExterior = LockLastKnownAction_Type(2)
const LockLastKnownAction_SecuredPhysicallyInterior = LockLastKnownAction_Type(0)
const LockLastKnownAction_SecuredRemotely = LockLastKnownAction_Type(6)
const LockLastKnownAction_UnsecuredByKeypad = LockLastKnownAction_Type(5)
const LockLastKnownAction_UnsecuredPhysicallyExterior = LockLastKnownAction_Type(3)
const LockLastKnownAction_UnsecuredPhysicallyInterior = LockLastKnownAction_Type(1)
const LockLastKnownAction_UnsecuredRemotely = LockLastKnownAction_Type(7)
const LockPhysicalControls_ControlLockDisabled = LockPhysicalControls_Type(0)
const LockPhysicalControls_ControlLockEnabled = LockPhysicalControls_Type(1)
const LockTargetState_Secured = LockTargetState_Type(1)
const LockTargetState_Unsecured = LockTargetState_Type(0)
const OccupancyDetected_OccupancyDetected = OccupancyDetected_Type(1)
const OccupancyDetected_OccupancyNotDetected = OccupancyDetected_Type(0)
const PictureMode_Calibrated = PictureMode_Type(2)
const PictureMode_CalibratedDark = PictureMode_Type(3)
const PictureMode_Computer = PictureMode_Type(6)
const PictureMode_Custom = PictureMode_Type(7)
const PictureMode_Game = PictureMode_Type(5)
const PictureMode_Other = PictureMode_Type(0)
const PictureMode_Standard = PictureMode_Type(1)
const PictureMode_Vivid = PictureMode_Type(4)
const PositionState_Decreasing = PositionState_Type(0)
const PositionState_Increasing = PositionState_Type(1)
const PositionState_Stopped = PositionState_Type(2)
const PowerModeSelection_Hide = PowerModeSelection_Type(1)
const PowerModeSelection_Show = PowerModeSelection_Type(0)
const ProgramMode_NoProgramScheduled = ProgramMode_Type(0)
const ProgramMode_ProgramScheduled = ProgramMode_Type(1)
const ProgramMode_ProgramScheduledManualMode = ProgramMode_Type(2)
const ProgrammableSwitchEvent_DoublePress = ProgrammableSwitchEvent_Type(1)
const ProgrammableSwitchEvent_LongPress = ProgrammableSwitchEvent_Type(2)
const ProgrammableSwitchEvent_SinglePress = ProgrammableSwitchEvent_Type(0)
const RemoteKey_ArrowDown = RemoteKey_Type(5)
const RemoteKey_ArrowLeft = RemoteKey_Type(6)
const RemoteKey_ArrowRight = RemoteKey_Type(7)
const RemoteKey_ArrowUp = RemoteKey_Type(4)
const RemoteKey_Back = RemoteKey_Type(9)
const RemoteKey_Exit = RemoteKey_Type(10)
const RemoteKey_FastForward = RemoteKey_Type(1)
const RemoteKey_Info = RemoteKey_Type(15)
const RemoteKey_NextTrack = RemoteKey_Type(2)
const RemoteKey_PlayPause = RemoteKey_Type(11)
const RemoteKey_PrevTrack = RemoteKey_Type(3)
const RemoteKey_Rewind = RemoteKey_Type(0)
const RemoteKey_Select = RemoteKey_Type(8)
const RotationDirection_Clockwise = RotationDirection_Type(0)
const RotationDirection_Counterclockwise = RotationDirection_Type(1)
const SecuritySystemCurrentState_AlarmTriggered = SecuritySystemCurrentState_Type(4)
const SecuritySystemCurrentState_AwayArm = SecuritySystemCurrentState_Type(1)
const SecuritySystemCurrentState_Disarmed = SecuritySystemCurrentState_Type(3)
const SecuritySystemCurrentState_NightArm = SecuritySystemCurrentState_Type(2)
const SecuritySystemCurrentState_StayArm = SecuritySystemCurrentState_Type(0)
const SecuritySystemTargetState_AwayArm = SecuritySystemTargetState_Type(1)
const SecuritySystemTargetState_Disarm = SecuritySystemTargetState_Type(3)
const SecuritySystemTargetState_NightArm = SecuritySystemTargetState_Type(2)
const SecuritySystemTargetState_StayArm = SecuritySystemTargetState_Type(0)
const ServiceLabelNamespace_ArabicNumerals = ServiceLabelNamespace_Type(1)
const ServiceLabelNamespace_Dots = ServiceLabelNamespace_Type(0)
const SlatType_Horizontal = SlatType_Type(0)
const SlatType_Vertical = SlatType_Type(1)
const SleepDiscoveryMode_AlwaysDiscoverable = SleepDiscoveryMode_Type(1)
const SleepDiscoveryMode_NotDiscoverable = SleepDiscoveryMode_Type(0)
const SmokeDetected_SmokeDetected = SmokeDetected_Type(1)
const SmokeDetected_SmokeNotDetected = SmokeDetected_Type(0)
const StatusFault_GeneralFault = StatusFault_Type(1)
const StatusFault_NoFault = StatusFault_Type(0)
const StatusJammed_Jammed = StatusJammed_Type(1)
const StatusJammed_NotJammed = StatusJammed_Type(0)
const StatusLowBattery_BatteryLevelLow = StatusLowBattery_Type(1)
const StatusLowBattery_BatteryLevelNormal = StatusLowBattery_Type(0)
const StatusTampered_NotTampered = StatusTampered_Type(0)
const StatusTampered_Tampered = StatusTampered_Type(1)
const SwingMode_SwingDisabled = SwingMode_Type(0)
const SwingMode_SwingEnabled = SwingMode_Type(1)
const TargetAirPurifierState_Auto = TargetAirPurifierState_Type(1)
const TargetAirPurifierState_Manual = TargetAirPurifierState_Type(0)
const TargetAirQuality_Excellent = TargetAirQuality_Type(0)
const TargetAirQuality_Fair = TargetAirQuality_Type(2)
const TargetAirQuality_Good = TargetAirQuality_Type(1)
const TargetDoorState_Closed = TargetDoorState_Type(1)
const TargetDoorState_Open = TargetDoorState_Type(0)
const TargetFanState_Auto = TargetFanState_Type(1)
const TargetFanState_Manual = TargetFanState_Type(0)
const TargetHeaterCoolerState_Auto = TargetHeaterCoolerState_Type(0)
const TargetHeaterCoolerState_Cool = TargetHeaterCoolerState_Type(2)
const TargetHeaterCoolerState_Heat = TargetHeaterCoolerState_Type(1)
const TargetHeatingCoolingState_Auto = TargetHeatingCoolingState_Type(3)
const TargetHeatingCoolingState_Cool = TargetHeatingCoolingState_Type(2)
const TargetHeatingCoolingState_Heat = TargetHeatingCoolingState_Type(1)
const TargetHeatingCoolingState_Off = TargetHeatingCoolingState_Type(0)
const TargetHumidifierDehumidifierState_Dehumidifier = TargetHumidifierDehumidifierState_Type(2)
const TargetHumidifierDehumidifierState_Humidifier = TargetHumidifierDehumidifierState_Type(1)
const TargetHumidifierDehumidifierState_HumidifierOrDehumidifier = TargetHumidifierDehumidifierState_Type(0)
const TargetMediaState_Pause = TargetMediaState_Type(1)
const TargetMediaState_Play = TargetMediaState_Type(0)
const TargetMediaState_Stop = TargetMediaState_Type(2)
const TargetSlatState_Auto = TargetSlatState_Type(1)
const TargetSlatState_Manual = TargetSlatState_Type(0)
const TargetVisibilityState_Hidden = TargetVisibilityState_Type(1)
const TargetVisibilityState_Shown = TargetVisibilityState_Type(0)
const TemperatureDisplayUnits_Celsius = TemperatureDisplayUnits_Type(0)
const TemperatureDisplayUnits_Fahrenheit = TemperatureDisplayUnits_Type(1)
const ValveType_GenericValve = ValveType_Type(0)
const ValveType_Irrigation = ValveType_Type(1)
const ValveType_ShowerHead = ValveType_Type(2)
const ValveType_WaterFaucet = ValveType_Type(3)
const VolumeControlType_Absolute = VolumeControlType_Type(3)
const VolumeControlType_None = VolumeControlType_Type(0)
const VolumeControlType_Relative = VolumeControlType_Type(1)
const VolumeControlType_RelativeWithCurrent = VolumeControlType_Type(2)
const VolumeSelector_Decrement = VolumeSelector_Type(1)
const VolumeSelector_Increment = VolumeSelector_Type(0)
var AirParticulateDensity_Meta = Metadata[float64]{ Typ: "64", MinValue: ValuePointer[float64](0), MaxValue: ValuePointer[float64](1000), MinStep: 1, }
var BatteryLevel_Meta = Metadata[uint8]{ Typ: "68", Unit: "percentage", MinValue: ValuePointer[uint8](0), MaxValue: ValuePointer[uint8](100), MinStep: 1, }
var Brightness_Meta = Metadata[int32]{ Typ: "8", Unit: "percentage", MinValue: ValuePointer[int32](0), MaxValue: ValuePointer[int32](100), MinStep: 1, }
var CarbonDioxideLevel_Meta = Metadata[float64]{ Typ: "93", MinValue: ValuePointer[float64](0), MaxValue: ValuePointer[float64](100000), }
var CarbonDioxidePeakLevel_Meta = Metadata[float64]{ Typ: "94", MinValue: ValuePointer[float64](0), MaxValue: ValuePointer[float64](100000), }
var CarbonMonoxideLevel_Meta = Metadata[float64]{ Typ: "90", MinValue: ValuePointer[float64](0), MaxValue: ValuePointer[float64](100), }
var CarbonMonoxidePeakLevel_Meta = Metadata[float64]{ Typ: "91", MinValue: ValuePointer[float64](0), MaxValue: ValuePointer[float64](100), }
var ClosedCaptions_Meta = Metadata[uint8]{ Typ: "DD", MinValue: ValuePointer[uint8](0), MaxValue: ValuePointer[uint8](1), MinStep: 1, }
var ColorTemperature_Meta = Metadata[uint32]{ Typ: "CE", MinValue: ValuePointer[uint32](140), MaxValue: ValuePointer[uint32](500), MinStep: 1, }
var CoolingThresholdTemperature_Meta = Metadata[float64]{ Typ: "D", Unit: "celsius", MinValue: ValuePointer[float64](10), MaxValue: ValuePointer[float64](35), MinStep: 0.1, }
var CurrentAmbientLightLevel_Meta = Metadata[float64]{ Typ: "6B", Unit: "lux", MinValue: ValuePointer[float64](0.0001), MaxValue: ValuePointer[float64](100000), }
var CurrentHorizontalTiltAngle_Meta = Metadata[int32]{ Typ: "6C", Unit: "arcdegrees", MinValue: ValuePointer[int32](-90), MaxValue: ValuePointer[int32](90), MinStep: 1, }
var CurrentMediaState_Meta = Metadata[uint8]{ Typ: "E0", Unit: "percentage", MinValue: ValuePointer[uint8](0), MaxValue: ValuePointer[uint8](3), MinStep: 1, }
var CurrentPosition_Meta = Metadata[uint8]{ Typ: "6D", Unit: "percentage", MinValue: ValuePointer[uint8](0), MaxValue: ValuePointer[uint8](100), MinStep: 1, }
var CurrentRelativeHumidity_Meta = Metadata[float64]{ Typ: "10", Unit: "percentage", MinValue: ValuePointer[float64](0), MaxValue: ValuePointer[float64](100), MinStep: 1, }
var CurrentTemperature_Meta = Metadata[float64]{ Typ: "11", Unit: "celsius", MinValue: ValuePointer[float64](0), MaxValue: ValuePointer[float64](100), MinStep: 0.1, }
var CurrentTiltAngle_Meta = Metadata[int32]{ Typ: "C1", Unit: "arcdegrees", MinValue: ValuePointer[int32](-90), MaxValue: ValuePointer[int32](90), MinStep: 1, }
var CurrentVerticalTiltAngle_Meta = Metadata[int32]{ Typ: "6E", Unit: "arcdegrees", MinValue: ValuePointer[int32](-90), MaxValue: ValuePointer[int32](90), MinStep: 1, }
var CurrentVisibilityState_Meta = Metadata[uint8]{ Typ: "135", MinValue: ValuePointer[uint8](0), MaxValue: ValuePointer[uint8](3), MinStep: 1, }
var FilterLifeLevel_Meta = Metadata[float64]{ Typ: "AB", MinValue: ValuePointer[float64](0), MaxValue: ValuePointer[float64](100), MinStep: 1, }
var HeatingThresholdTemperature_Meta = Metadata[float64]{ Typ: "12", Unit: "celsius", MinValue: ValuePointer[float64](0), MaxValue: ValuePointer[float64](25), MinStep: 0.1, }
var Hue_Meta = Metadata[float64]{ Typ: "13", Unit: "arcdegrees", MinValue: ValuePointer[float64](0), MaxValue: ValuePointer[float64](360), MinStep: 1, }
var Identifier_Meta = Metadata[uint32]{ Typ: "E6", MinValue: ValuePointer[uint32](0), MinStep: 1, }
var ImageRotation_Meta = Metadata[float64]{ Typ: "11E", Unit: "arcdegrees", MinValue: ValuePointer[float64](0), MaxValue: ValuePointer[float64](270), MinStep: 90, }
var InputDeviceType_Meta = Metadata[uint8]{ Typ: "DC", MinValue: ValuePointer[uint8](0), MaxValue: ValuePointer[uint8](5), MinStep: 1, }
var InputSourceType_Meta = Metadata[uint8]{ Typ: "DB", MinValue: ValuePointer[uint8](0), MaxValue: ValuePointer[uint8](10), MinStep: 1, }
var NitrogenDioxideDensity_Meta = Metadata[float64]{ Typ: "C4", MinValue: ValuePointer[float64](0), MaxValue: ValuePointer[float64](1000), MinStep: 1, }
var OzoneDensity_Meta = Metadata[float64]{ Typ: "C3", MinValue: ValuePointer[float64](0), MaxValue: ValuePointer[float64](1000), MinStep: 1, }
var PM10Density_Meta = Metadata[float64]{ Typ: "C7", MinValue: ValuePointer[float64](0), MaxValue: ValuePointer[float64](1000), MinStep: 1, }
var PM25Density_Meta = Metadata[float64]{ Typ: "C6", MinValue: ValuePointer[float64](0), MaxValue: ValuePointer[float64](1000), MinStep: 1, }
var PictureMode_Meta = Metadata[uint16]{ Typ: "E2", MinValue: ValuePointer[uint16](0), MaxValue: ValuePointer[uint16](13), MinStep: 1, }
var PowerModeSelection_Meta = Metadata[uint8]{ Typ: "DF", MinValue: ValuePointer[uint8](0), MaxValue: ValuePointer[uint8](1), MinStep: 1, }
var RelativeHumidityDehumidifierThreshold_Meta = Metadata[float64]{ Typ: "C9", Unit: "percentage", MinValue: ValuePointer[float64](0), MaxValue: ValuePointer[float64](100), MinStep: 1, }
var RelativeHumidityHumidifierThreshold_Meta = Metadata[float64]{ Typ: "CA", Unit: "percentage", MinValue: ValuePointer[float64](0), MaxValue: ValuePointer[float64](100), MinStep: 1, }
var RemainingDuration_Meta = Metadata[uint32]{ Typ: "D4", MinValue: ValuePointer[uint32](0), MaxValue: ValuePointer[uint32](3600), MinStep: 1, }
var RemoteKey_Meta = Metadata[uint8]{ Typ: "E1", MinValue: ValuePointer[uint8](0), MaxValue: ValuePointer[uint8](16), MinStep: 1, }
var ResetFilterIndication_Meta = Metadata[uint8]{ Typ: "AD", MinValue: ValuePointer[uint8](1), MaxValue: ValuePointer[uint8](1), MinStep: 1, }
var RotationSpeed_Meta = Metadata[float64]{ Typ: "29", Unit: "percentage", MinValue: ValuePointer[float64](0), MaxValue: ValuePointer[float64](100), MinStep: 1, }
var Saturation_Meta = Metadata[float64]{ Typ: "2F", Unit: "percentage", MinValue: ValuePointer[float64](0), MaxValue: ValuePointer[float64](100), MinStep: 1, }
var SecuritySystemAlarmType_Meta = Metadata[uint8]{ Typ: "8E", MinValue: ValuePointer[uint8](0), MaxValue: ValuePointer[uint8](1), MinStep: 1, }
var ServiceLabelIndex_Meta = Metadata[uint8]{ Typ: "CB", MinValue: ValuePointer[uint8](1), MaxValue: ValuePointer[uint8](255), MinStep: 1, }
var SetDuration_Meta = Metadata[uint32]{ Typ: "D3", MinValue: ValuePointer[uint32](0), MaxValue: ValuePointer[uint32](3600), MinStep: 1, }
var SleepDiscoveryMode_Meta = Metadata[uint8]{ Typ: "E8", MinValue: ValuePointer[uint8](0), MaxValue: ValuePointer[uint8](1), }
var SulphurDioxideDensity_Meta = Metadata[float64]{ Typ: "C5", MinValue: ValuePointer[float64](0), MaxValue: ValuePointer[float64](1000), MinStep: 1, }
var TargetHorizontalTiltAngle_Meta = Metadata[int32]{ Typ: "7B", Unit: "arcdegrees", MinValue: ValuePointer[int32](-90), MaxValue: ValuePointer[int32](90), MinStep: 1, }
var TargetMediaState_Meta = Metadata[uint8]{ Typ: "137", MinValue: ValuePointer[uint8](0), MaxValue: ValuePointer[uint8](2), MinStep: 1, }
var TargetPosition_Meta = Metadata[uint8]{ Typ: "7C", Unit: "percentage", MinValue: ValuePointer[uint8](0), MaxValue: ValuePointer[uint8](100), MinStep: 1, }
var TargetRelativeHumidity_Meta = Metadata[float64]{ Typ: "34", Unit: "percentage", MinValue: ValuePointer[float64](0), MaxValue: ValuePointer[float64](100), MinStep: 1, }
var TargetTemperature_Meta = Metadata[float64]{ Typ: "35", Unit: "celsius", MinValue: ValuePointer[float64](10), MaxValue: ValuePointer[float64](38), MinStep: 0.1, }
var TargetTiltAngle_Meta = Metadata[int32]{ Typ: "C2", Unit: "arcdegrees", MinValue: ValuePointer[int32](-90), MaxValue: ValuePointer[int32](90), MinStep: 1, }
var TargetVerticalTiltAngle_Meta = Metadata[int32]{ Typ: "7D", Unit: "arcdegrees", MinValue: ValuePointer[int32](-90), MaxValue: ValuePointer[int32](90), MinStep: 1, }
var TargetVisibilityState_Meta = Metadata[uint8]{ Typ: "134", MinValue: ValuePointer[uint8](0), MaxValue: ValuePointer[uint8](2), MinStep: 1, }
var VOCDensity_Meta = Metadata[float64]{ Typ: "C8", MinValue: ValuePointer[float64](0), MaxValue: ValuePointer[float64](1000), MinStep: 1, }
var VolumeControlType_Meta = Metadata[uint8]{ Typ: "E9", MinValue: ValuePointer[uint8](0), MaxValue: ValuePointer[uint8](3), MinStep: 1, }
var VolumeSelector_Meta = Metadata[uint8]{ Typ: "EA", MinValue: ValuePointer[uint8](0), MaxValue: ValuePointer[uint8](1), MinStep: 1, }
var Volume_Meta = Metadata[uint8]{ Typ: "119", Unit: "percentage", MinValue: ValuePointer[uint8](0), MaxValue: ValuePointer[uint8](100), MinStep: 1, }
var WaterLevel_Meta = Metadata[float64]{ Typ: "B5", Unit: "percentage", MinValue: ValuePointer[float64](0), MaxValue: ValuePointer[float64](100), }
func ProgrammableSwitchEventForIP() (char hapip.CharacteristicNotifier, localWrite func(v ProgrammableSwitchEvent_Type))
ProgrammableSwitchEvent represents a Programmable Switch Event characteristic (73) For IP accessories, the accessory must set the value of Paired Read to null(i.e. ”value”: null) in the attribute database. A read of this characteristic must always return a null value for IP accessories
UUID: 00000073-0000-1000-8000-0026BB765291.
func ValuePointer[Format format](v Format) *Format
type Address struct { IPv6 bool `tlv8:"1"` IP string `tlv8:"2"` VideoRtpPort uint16 `tlv8:"3"` AudioRtpPort uint16 `tlv8:"4"` }
type AudioCodecParameters struct { Channels uint8 `tlv8:"1"` ConstantBitrate bool `tlv8:"2"` SampleRate byte `tlv8:"3"` RTPTime uint8 `tlv8:"4"` // 20ms, 30ms, 40 ms & 60ms }
type DisplayOrderRequest struct{}
type DisplayOrderResponse struct{}
type LockControlPointRequest struct{}
type LogsResponse struct{}
type Metadata[Format format] struct { Typ string Description string Unit string MaxLen int MinValue *Format MaxValue *Format MinStep Format ValidValues []Format ValidRange []Format MaxDataLen int }
func (m Metadata[Format]) Meta() hapip.CharacteristicMeta
type PairSetupRequest struct{}
type PairSetupResponse struct{}
type PairVerifyRequest struct{}
type PairVerifyResponse struct{}
type PairingPairingsRequest struct{}
type PairingPairingsResponse struct{}
type RTPParameters struct { Type byte `tlv8:"1"` SSRC uint32 `tlv8:"2"` MaxBitrate uint16 `tlv8:"3"` MinRTCPInterval float32 `tlv8:"4"` MaxMTU uint16 `tlv8:"5"` // only for video ComfortNoiseType byte `tlv8:"6"` // only for audio }
type SRTP struct { // Crypto Suite // // - 0: AES_CM_128_HMAC_SHA1_80 // - 1: AES_256_CM_HMAC_SHA1_80 // - 2: Disabled CryptoSuite byte `tlv8:"1"` MasterKey []byte `tlv8:"2"` // 16 (AES_CM_128) or 32 (AES_256_CM) MasterSalt []byte `tlv8:"3"` // 14 byte }
type SelectedCameraRecordingConfigurationRequest struct{}
type SelectedCameraRecordingConfigurationResponse struct{}
type SelectedRTPStreamConfigurationRequest struct { Session struct { Identifier []byte `tlv8:"1"` Command byte `tlv8:"2"` } `tlv8:"1"` VideoParameters struct { CodecType byte `tlv8:"1"` CodecParameters VideoCodecParameters `tlv8:"2"` Attributes VideoAttributes `tlv8:"3"` RTP RTPParameters `tlv8:"4"` } `tlv8:"2"` AudioParameters struct { CodecType byte `tlv8:"1"` CodecParameters AudioCodecParameters `tlv8:"2"` RTP RTPParameters `tlv8:"3"` ComfortNoise bool `tlv8:"4"` } `tlv8:"3"` }
type SelectedRTPStreamConfigurationResponse SelectedRTPStreamConfigurationRequest
type Service struct { Typ string Characteristic []hapip.Characteristic Primary bool }
func (s Service) Characteristics() []hapip.Characteristic
type SetupEndpointsRequest struct { SessionID []byte `tlv8:"1"` ControllerAddr Address `tlv8:"3"` VideoSRTP SRTP `tlv8:"4"` AudioSRTP SRTP `tlv8:"5"` }
type SetupEndpointsResponse struct { SessionID []byte `tlv8:"1"` Status byte `tlv8:"2"` AccessoryAddr Address `tlv8:"3"` // AccessoryAddr.IPv6 must be the same as ControllerAddr.IPv6 VideoSRTP SRTP `tlv8:"4"` AudioSRTP SRTP `tlv8:"5"` VideoSSRC uint32 `tlv8:"6"` AudioSSRC uint32 `tlv8:"7"` }
Static is a static characteristic. Its value can't be changed after instanciation.
To make it dynamic use Static.WithRemoteRead.
FirmwareRevision represents a Firmware Revision characteristic (52)
UUID: 00000052-0000-1000-8000-0026BB765291.
HardwareRevision represents a Hardware Revision characteristic (53)
UUID: 00000053-0000-1000-8000-0026BB765291.
Identifier represents a Identifier characteristic (E6)
UUID: 000000E6-0000-1000-8000-0026BB765291.
Manufacturer represents a Manufacturer characteristic (20)
UUID: 00000020-0000-1000-8000-0026BB765291.
Model represents a Model characteristic (21)
UUID: 00000021-0000-1000-8000-0026BB765291.
Name represents a Name characteristic (23)
UUID: 00000023-0000-1000-8000-0026BB765291.
PairingFeatures represents a Pairing Features characteristic (4F)
UUID: 0000004F-0000-1000-8000-0026BB765291.
SerialNumber represents a Serial Number characteristic (30)
UUID: 00000030-0000-1000-8000-0026BB765291.
ServiceLabelIndex represents a Service Label Index characteristic (CB)
UUID: 000000CB-0000-1000-8000-0026BB765291.
func ServiceLabelNamespace(value ServiceLabelNamespace_Type) Static[uint8]
ServiceLabelNamespace represents a Service Label Namespace characteristic (CD)
UUID: 000000CD-0000-1000-8000-0026BB765291.
func SlatType(value SlatType_Type) Static[uint8]
SlatType represents a Slat Type characteristic (C0)
UUID: 000000C0-0000-1000-8000-0026BB765291.
Read fullfils the hapip.CharacteristicReader interface (for use by hapip.Handler).
WithRemoteRead returns a ReadCharacterisitc which will gets its (dynamic) value from the given read function.
type StaticRemoteRead[Format format] struct { Metadata[Format] // contains filtered or unexported fields }
StaticRemoteRead calls an underlying read function to get the actual value.
Read fullfils the hapip.CharacteristicReader interface (for use by hapip.Handler).
type StaticTLV8[Response any] struct { Typ string Description string // contains filtered or unexported fields }
Static is a static characteristic. Its value can't be changed after instanciation.
To make it dynamic use Static.WithRemoteRead.
func SupportedAudioStreamConfiguration(value SupportedAudioStreamConfigurationResponse) StaticTLV8[SupportedAudioStreamConfigurationResponse]
SupportedAudioStreamConfiguration represents a Supported Audio Stream Configuration characteristic (115)
UUID: 00000115-0000-1000-8000-0026BB765291.
func SupportedRTPConfiguration(value SupportedRTPConfigurationResponse) StaticTLV8[SupportedRTPConfigurationResponse]
SupportedRTPConfiguration represents a Supported RTP Configuration characteristic (116)
UUID: 00000116-0000-1000-8000-0026BB765291.
func SupportedVideoStreamConfiguration(value SupportedVideoStreamConfigurationResponse) StaticTLV8[SupportedVideoStreamConfigurationResponse]
SupportedVideoStreamConfiguration represents a Supported Video Stream Configuration characteristic (114)
UUID: 00000114-0000-1000-8000-0026BB765291.
func (s StaticTLV8[Response]) Meta() hapip.CharacteristicMeta
Read fullfils the hapip.CharacteristicReader interface (for use by hapip.Handler).
func (s StaticTLV8[Response]) Type() string
type SupportedAudioRecordingConfigurationResponse struct{}
type SupportedAudioStreamConfigurationResponse struct { Codecs []struct { Type byte `tlv8:"1"` Parameters []AudioCodecParameters `tlv8:"2"` } `tlv8:"1"` ComfortNoise bool `tlv8:"2"` }
type SupportedCameraRecordingConfigurationResponse struct{}
type SupportedRTPConfigurationResponse []struct { CryptoSuite byte `tlv8:"2"` Separator struct{} `tlv8:"0"` }
func NewSupportedRTPConfigurationResponse(cryptoSuite ...byte) SupportedRTPConfigurationResponse
type SupportedVideoRecordingConfigurationResponse struct{}
type SupportedVideoStreamConfigurationResponse struct { Codecs []struct { Type byte `tlv8:"1"` Parameters []VideoCodecParameters `tlv8:"2"` Attributes []VideoAttributes `tlv8:"3"` } `tlv8:"1"` }
TLV8 is a pointer to []byte to be comparable.
Updatable is an updatable characteristic, which value can be updated with Update.
When the updated value is different from the last value, all listeners will be notified.
func AccessoryFlags(value AccessoryFlags_Type) *Updatable[uint32]
AccessoryFlags represents a Accessory Flags characteristic (A6)
UUID: 000000A6-0000-1000-8000-0026BB765291.
AirParticulateDensity represents a Air Particulate Density characteristic (64)
UUID: 00000064-0000-1000-8000-0026BB765291.
func AirParticulateSize(value AirParticulateSize_Type) *Updatable[uint8]
AirParticulateSize represents a Air Particulate Size characteristic (65)
UUID: 00000065-0000-1000-8000-0026BB765291.
func AirQuality(value AirQuality_Type) *Updatable[uint8]
AirQuality represents a Air Quality characteristic (95)
UUID: 00000095-0000-1000-8000-0026BB765291.
BatteryLevel represents a Battery Level characteristic (68)
UUID: 00000068-0000-1000-8000-0026BB765291.
func CarbonDioxideDetected(value CarbonDioxideDetected_Type) *Updatable[uint8]
CarbonDioxideDetected represents a Carbon Dioxide Detected characteristic (92)
UUID: 00000092-0000-1000-8000-0026BB765291.
CarbonDioxideLevel represents a Carbon Dioxide Level characteristic (93)
UUID: 00000093-0000-1000-8000-0026BB765291.
CarbonDioxidePeakLevel represents a Carbon Dioxide Peak Level characteristic (94)
UUID: 00000094-0000-1000-8000-0026BB765291.
func CarbonMonoxideDetected(value CarbonMonoxideDetected_Type) *Updatable[uint8]
CarbonMonoxideDetected represents a Carbon Monoxide Detected characteristic (69)
UUID: 00000069-0000-1000-8000-0026BB765291.
CarbonMonoxideLevel represents a Carbon Monoxide Level characteristic (90)
UUID: 00000090-0000-1000-8000-0026BB765291.
CarbonMonoxidePeakLevel represents a Carbon Monoxide Peak Level characteristic (91)
UUID: 00000091-0000-1000-8000-0026BB765291.
func ChargingState(value ChargingState_Type) *Updatable[uint8]
ChargingState represents a Charging State characteristic (8F)
UUID: 0000008F-0000-1000-8000-0026BB765291.
func ContactSensorState(value ContactSensorState_Type) *Updatable[uint8]
ContactSensorState represents a Contact Sensor State characteristic (6A)
UUID: 0000006A-0000-1000-8000-0026BB765291.
func CurrentAirPurifierState(value CurrentAirPurifierState_Type) *Updatable[uint8]
CurrentAirPurifierState represents a Current Air Purifier State characteristic (A9)
UUID: 000000A9-0000-1000-8000-0026BB765291.
CurrentAmbientLightLevel represents a Current Ambient Light Level characteristic (6B)
UUID: 0000006B-0000-1000-8000-0026BB765291.
func CurrentDoorState(value CurrentDoorState_Type) *Updatable[uint8]
CurrentDoorState represents a Current Door State characteristic (E)
UUID: 0000000E-0000-1000-8000-0026BB765291.
func CurrentFanState(value CurrentFanState_Type) *Updatable[uint8]
CurrentFanState represents a Current Fan State characteristic (AF)
UUID: 000000AF-0000-1000-8000-0026BB765291.
func CurrentHeaterCoolerState(value CurrentHeaterCoolerState_Type) *Updatable[uint8]
CurrentHeaterCoolerState represents a Current Heater Cooler State characteristic (B1)
UUID: 000000B1-0000-1000-8000-0026BB765291.
func CurrentHeatingCoolingState(value CurrentHeatingCoolingState_Type) *Updatable[uint8]
CurrentHeatingCoolingState represents a Current Heating Cooling State characteristic (F)
UUID: 0000000F-0000-1000-8000-0026BB765291.
CurrentHorizontalTiltAngle represents a Current Horizontal Tilt Angle characteristic (6C)
UUID: 0000006C-0000-1000-8000-0026BB765291.
func CurrentHumidifierDehumidifierState(value CurrentHumidifierDehumidifierState_Type) *Updatable[uint8]
CurrentHumidifierDehumidifierState represents a Current Humidifier Dehumidifier State characteristic (B3)
UUID: 000000B3-0000-1000-8000-0026BB765291.
func CurrentMediaState(value CurrentMediaState_Type) *Updatable[uint8]
CurrentMediaState represents a Current Media State characteristic (E0)
UUID: 000000E0-0000-1000-8000-0026BB765291.
CurrentPosition represents a Current Position characteristic (6D)
UUID: 0000006D-0000-1000-8000-0026BB765291.
CurrentRelativeHumidity represents a Current Relative Humidity characteristic (10)
UUID: 00000010-0000-1000-8000-0026BB765291.
func CurrentSlatState(value CurrentSlatState_Type) *Updatable[uint8]
CurrentSlatState represents a Current Slat State characteristic (AA)
UUID: 000000AA-0000-1000-8000-0026BB765291.
CurrentTemperature represents a Current Temperature characteristic (11)
UUID: 00000011-0000-1000-8000-0026BB765291.
CurrentTiltAngle represents a Current Tilt Angle characteristic (C1)
UUID: 000000C1-0000-1000-8000-0026BB765291.
CurrentVerticalTiltAngle represents a Current Vertical Tilt Angle characteristic (6E)
UUID: 0000006E-0000-1000-8000-0026BB765291.
func CurrentVisibilityState(value CurrentVisibilityState_Type) *Updatable[uint8]
CurrentVisibilityState represents a Current Visibility State characteristic (135)
UUID: 00000135-0000-1000-8000-0026BB765291.
func FilterChangeIndication(value FilterChangeIndication_Type) *Updatable[uint8]
FilterChangeIndication represents a Filter Change Indication characteristic (AC)
UUID: 000000AC-0000-1000-8000-0026BB765291.
FilterLifeLevel represents a Filter Life Level characteristic (AB)
UUID: 000000AB-0000-1000-8000-0026BB765291.
func InUse(value InUse_Type) *Updatable[uint8]
InUse represents a In Use characteristic (D2)
UUID: 000000D2-0000-1000-8000-0026BB765291.
func InputDeviceType(value InputDeviceType_Type) *Updatable[uint8]
InputDeviceType represents a Input Device Type characteristic (DC)
UUID: 000000DC-0000-1000-8000-0026BB765291.
func InputSourceType(value InputSourceType_Type) *Updatable[uint8]
InputSourceType represents a Input Source Type characteristic (DB)
UUID: 000000DB-0000-1000-8000-0026BB765291.
func LeakDetected(value LeakDetected_Type) *Updatable[uint8]
LeakDetected represents a Leak Detected characteristic (70)
UUID: 00000070-0000-1000-8000-0026BB765291.
func LockCurrentState(value LockCurrentState_Type) *Updatable[uint8]
LockCurrentState represents a Lock Current State characteristic (1D)
UUID: 0000001D-0000-1000-8000-0026BB765291.
func LockLastKnownAction(value LockLastKnownAction_Type) *Updatable[uint8]
LockLastKnownAction represents a Lock Last Known Action characteristic (1C)
UUID: 0000001C-0000-1000-8000-0026BB765291.
MotionDetected represents a Motion Detected characteristic (22)
UUID: 00000022-0000-1000-8000-0026BB765291.
NitrogenDioxideDensity represents a Nitrogen Dioxide Density characteristic (C4)
UUID: 000000C4-0000-1000-8000-0026BB765291.
ObstructionDetected represents a Obstruction Detected characteristic (24)
UUID: 00000024-0000-1000-8000-0026BB765291.
func OccupancyDetected(value OccupancyDetected_Type) *Updatable[uint8]
OccupancyDetected represents a Occupancy Detected characteristic (71)
UUID: 00000071-0000-1000-8000-0026BB765291.
OutletInUse represents a Outlet In Use characteristic (26)
UUID: 00000026-0000-1000-8000-0026BB765291.
OzoneDensity represents a Ozone Density characteristic (C3)
UUID: 000000C3-0000-1000-8000-0026BB765291.
PM10Density represents a PM10 Density characteristic (C7)
UUID: 000000C7-0000-1000-8000-0026BB765291.
PM25Density represents a PM2.5 Density characteristic (C6)
UUID: 000000C6-0000-1000-8000-0026BB765291.
func PositionState(value PositionState_Type) *Updatable[uint8]
PositionState represents a Position State characteristic (72)
UUID: 00000072-0000-1000-8000-0026BB765291.
func ProgramMode(value ProgramMode_Type) *Updatable[uint8]
ProgramMode represents a Program Mode characteristic (D1)
UUID: 000000D1-0000-1000-8000-0026BB765291.
func ProgrammableSwitchEvent(value ProgrammableSwitchEvent_Type) *Updatable[uint8]
ProgrammableSwitchEvent represents a Programmable Switch Event characteristic (73)
UUID: 00000073-0000-1000-8000-0026BB765291.
RemainingDuration represents a Remaining Duration characteristic (D4)
UUID: 000000D4-0000-1000-8000-0026BB765291.
SecuritySystemAlarmType represents a Security System Alarm Type characteristic (8E)
UUID: 0000008E-0000-1000-8000-0026BB765291.
func SecuritySystemCurrentState(value SecuritySystemCurrentState_Type) *Updatable[uint8]
SecuritySystemCurrentState represents a Security System Current State characteristic (66)
UUID: 00000066-0000-1000-8000-0026BB765291.
func SleepDiscoveryMode(value SleepDiscoveryMode_Type) *Updatable[uint8]
SleepDiscoveryMode represents a Sleep Discovery Mode characteristic (E8)
UUID: 000000E8-0000-1000-8000-0026BB765291.
func SmokeDetected(value SmokeDetected_Type) *Updatable[uint8]
SmokeDetected represents a Smoke Detected characteristic (76)
UUID: 00000076-0000-1000-8000-0026BB765291.
StatusActive represents a Status Active characteristic (75)
UUID: 00000075-0000-1000-8000-0026BB765291.
func StatusFault(value StatusFault_Type) *Updatable[uint8]
StatusFault represents a Status Fault characteristic (77)
UUID: 00000077-0000-1000-8000-0026BB765291.
func StatusJammed(value StatusJammed_Type) *Updatable[uint8]
StatusJammed represents a Status Jammed characteristic (78)
UUID: 00000078-0000-1000-8000-0026BB765291.
func StatusLowBattery(value StatusLowBattery_Type) *Updatable[uint8]
StatusLowBattery represents a Status Low Battery characteristic (79)
UUID: 00000079-0000-1000-8000-0026BB765291.
func StatusTampered(value StatusTampered_Type) *Updatable[uint8]
StatusTampered represents a Status Tampered characteristic (7A)
UUID: 0000007A-0000-1000-8000-0026BB765291.
SulphurDioxideDensity represents a Sulphur Dioxide Density characteristic (C5)
UUID: 000000C5-0000-1000-8000-0026BB765291.
VOCDensity represents a VOC Density characteristic (C8)
UUID: 000000C8-0000-1000-8000-0026BB765291.
func ValveType(value ValveType_Type) *Updatable[uint8]
ValveType represents a Valve Type characteristic (D5)
UUID: 000000D5-0000-1000-8000-0026BB765291.
Version represents a Version characteristic (37)
UUID: 00000037-0000-1000-8000-0026BB765291.
func VolumeControlType(value VolumeControlType_Type) *Updatable[uint8]
VolumeControlType represents a Volume Control Type characteristic (E9)
UUID: 000000E9-0000-1000-8000-0026BB765291.
WaterLevel represents a Water Level characteristic (B5)
UUID: 000000B5-0000-1000-8000-0026BB765291.
Notify fullfils the hapip.CharacteristicNotifier interface (for use by hapip.Handler).
Read fullfils the hapip.CharacteristicReader interface (for use by hapip.Handler).
Update updates the underlying value and notifies the listeners on change.
func (u *Updatable[Format]) WithRemoteRead(read func(ctx context.Context) (Format, error)) *Updatable[Format]
WithRemoteRead updates the characteristic (and returns itself), so that it gets its value from the given read function on Read. Must be called before any Read happens.
type UpdatableTLV8[Response any] struct { StaticTLV8[Response] // contains filtered or unexported fields }
UpdatableTLV8 is an updatableTLV8 characteristic, which value can be updated with Update.
When the updated value is different from the last value, all listeners will be notified.
func Logs(value LogsResponse) *UpdatableTLV8[LogsResponse]
Logs represents a Logs characteristic (1F)
UUID: 0000001F-0000-1000-8000-0026BB765291.
func StreamingStatus(value StreamingStatusResponse) *UpdatableTLV8[StreamingStatusResponse]
StreamingStatus represents a Streaming Status characteristic (120)
UUID: 00000120-0000-1000-8000-0026BB765291.
func SupportedAudioRecordingConfiguration(value SupportedAudioRecordingConfigurationResponse) *UpdatableTLV8[SupportedAudioRecordingConfigurationResponse]
SupportedAudioRecordingConfiguration represents a Supported Audio Recording Configuration characteristic (207)
UUID: 00000207-0000-1000-8000-0026BB765291.
func SupportedCameraRecordingConfiguration(value SupportedCameraRecordingConfigurationResponse) *UpdatableTLV8[SupportedCameraRecordingConfigurationResponse]
SupportedCameraRecordingConfiguration represents a Supported Camera Recording Configuration characteristic (205)
UUID: 00000205-0000-1000-8000-0026BB765291.
func SupportedVideoRecordingConfiguration(value SupportedVideoRecordingConfigurationResponse) *UpdatableTLV8[SupportedVideoRecordingConfigurationResponse]
SupportedVideoRecordingConfiguration represents a Supported Video Recording Configuration characteristic (206)
UUID: 00000206-0000-1000-8000-0026BB765291.
func (u *UpdatableTLV8[Response]) Notify(cb func(ctx context.Context, val, old interface{}))
Notify fullfils the hapip.CharacteristicNotifier interface (for use by hapip.Handler).
Read fullfils the hapip.CharacteristicReader interface (for use by hapip.Handler).
func (u *UpdatableTLV8[Response]) Update(val Response)
Update updates the underlying value and notifies the listeners on change.
type VideoAttributes struct { Width uint16 `tlv8:"1"` Height uint16 `tlv8:"2"` Framerate byte `tlv8:"3"` }
type VideoCodecParameters struct { ProfileID byte `tlv8:"1"` Level byte `tlv8:"2"` PacketizationMode byte `tlv8:"3"` CvoEnabled bool `tlv8:"4"` CvoID byte `tlv8:"5"` // in range [1:14] }
type Writable[Format format] struct { Updatable[Format] // contains filtered or unexported fields }
Writable is a writable characteristic, which value can be updated by the remote controller or by the software.
When the updated (or written) value is different from the last value, all listeners will be notified.
Active represents a Active characteristic (B0)
UUID: 000000B0-0000-1000-8000-0026BB765291.
ActiveIdentifier represents a Active Identifier characteristic (E7)
UUID: 000000E7-0000-1000-8000-0026BB765291.
AdministratorOnlyAccess represents a Administrator Only Access characteristic (1)
UUID: 00000001-0000-1000-8000-0026BB765291.
AudioFeedback represents a Audio Feedback characteristic (5)
UUID: 00000005-0000-1000-8000-0026BB765291.
Brightness represents a Brightness characteristic (8)
UUID: 00000008-0000-1000-8000-0026BB765291.
func ClosedCaptions(value ClosedCaptions_Type, controllerWrite func(uint8) error) *Writable[uint8]
ClosedCaptions represents a Closed Captions characteristic (DD)
UUID: 000000DD-0000-1000-8000-0026BB765291.
ColorTemperature represents a Color Temperature characteristic (CE)
UUID: 000000CE-0000-1000-8000-0026BB765291.
ConfiguredName represents a Configured Name characteristic (E3)
UUID: 000000E3-0000-1000-8000-0026BB765291.
func CoolingThresholdTemperature(value float64, controllerWrite func(float64) error) *Writable[float64]
CoolingThresholdTemperature represents a Cooling Threshold Temperature characteristic (D)
UUID: 0000000D-0000-1000-8000-0026BB765291.
DigitalZoom represents a Digital Zoom characteristic (11D)
UUID: 0000011D-0000-1000-8000-0026BB765291.
func HeatingThresholdTemperature(value float64, controllerWrite func(float64) error) *Writable[float64]
HeatingThresholdTemperature represents a Heating Threshold Temperature characteristic (12)
UUID: 00000012-0000-1000-8000-0026BB765291.
Hue represents a Hue characteristic (13)
UUID: 00000013-0000-1000-8000-0026BB765291.
ImageMirroring represents a Image Mirroring characteristic (11F)
UUID: 0000011F-0000-1000-8000-0026BB765291.
ImageRotation represents a Image Rotation characteristic (11E)
UUID: 0000011E-0000-1000-8000-0026BB765291.
IsConfigured represents a Is Configured characteristic (D6)
UUID: 000000D6-0000-1000-8000-0026BB765291.
func LockManagementAutoSecurityTimeout(value uint32, controllerWrite func(uint32) error) *Writable[uint32]
LockManagementAutoSecurityTimeout represents a Lock Management Auto Security Timeout characteristic (1A)
UUID: 0000001A-0000-1000-8000-0026BB765291.
func LockPhysicalControls(value LockPhysicalControls_Type, controllerWrite func(uint8) error) *Writable[uint8]
LockPhysicalControls represents a Lock Physical Controls characteristic (A7)
UUID: 000000A7-0000-1000-8000-0026BB765291.
func LockTargetState(value LockTargetState_Type, controllerWrite func(uint8) error) *Writable[uint8]
LockTargetState represents a Lock Target State characteristic (1E)
UUID: 0000001E-0000-1000-8000-0026BB765291.
Mute represents a Mute characteristic (11A)
UUID: 0000011A-0000-1000-8000-0026BB765291.
NightVision represents a Night Vision characteristic (11B)
UUID: 0000011B-0000-1000-8000-0026BB765291.
On represents a On characteristic (25)
UUID: 00000025-0000-1000-8000-0026BB765291.
OpticalZoom represents a Optical Zoom characteristic (11C)
UUID: 0000011C-0000-1000-8000-0026BB765291.
PictureMode represents a Picture Mode characteristic (E2)
UUID: 000000E2-0000-1000-8000-0026BB765291.
func RelativeHumidityDehumidifierThreshold(value float64, controllerWrite func(float64) error) *Writable[float64]
RelativeHumidityDehumidifierThreshold represents a Relative Humidity Dehumidifier Threshold characteristic (C9)
UUID: 000000C9-0000-1000-8000-0026BB765291.
func RelativeHumidityHumidifierThreshold(value float64, controllerWrite func(float64) error) *Writable[float64]
RelativeHumidityHumidifierThreshold represents a Relative Humidity Humidifier Threshold characteristic (CA)
UUID: 000000CA-0000-1000-8000-0026BB765291.
func RotationDirection(value RotationDirection_Type, controllerWrite func(int32) error) *Writable[int32]
RotationDirection represents a Rotation Direction characteristic (28)
UUID: 00000028-0000-1000-8000-0026BB765291.
RotationSpeed represents a Rotation Speed characteristic (29)
UUID: 00000029-0000-1000-8000-0026BB765291.
Saturation represents a Saturation characteristic (2F)
UUID: 0000002F-0000-1000-8000-0026BB765291.
func SecuritySystemTargetState(value SecuritySystemTargetState_Type, controllerWrite func(uint8) error) *Writable[uint8]
SecuritySystemTargetState represents a Security System Target State characteristic (67)
UUID: 00000067-0000-1000-8000-0026BB765291.
SetDuration represents a Set Duration characteristic (D3)
UUID: 000000D3-0000-1000-8000-0026BB765291.
SwingMode represents a Swing Mode characteristic (B6)
UUID: 000000B6-0000-1000-8000-0026BB765291.
func TargetAirPurifierState(value TargetAirPurifierState_Type, controllerWrite func(uint8) error) *Writable[uint8]
TargetAirPurifierState represents a Target Air Purifier State characteristic (A8)
UUID: 000000A8-0000-1000-8000-0026BB765291.
func TargetAirQuality(value TargetAirQuality_Type, controllerWrite func(uint8) error) *Writable[uint8]
TargetAirQuality represents a Target Air Quality characteristic (AE)
UUID: 000000AE-0000-1000-8000-0026BB765291.
func TargetDoorState(value TargetDoorState_Type, controllerWrite func(uint8) error) *Writable[uint8]
TargetDoorState represents a Target Door State characteristic (32)
UUID: 00000032-0000-1000-8000-0026BB765291.
func TargetFanState(value TargetFanState_Type, controllerWrite func(uint8) error) *Writable[uint8]
TargetFanState represents a Target Fan State characteristic (BF)
UUID: 000000BF-0000-1000-8000-0026BB765291.
func TargetHeaterCoolerState(value TargetHeaterCoolerState_Type, controllerWrite func(uint8) error) *Writable[uint8]
TargetHeaterCoolerState represents a Target Heater Cooler State characteristic (B2)
UUID: 000000B2-0000-1000-8000-0026BB765291.
func TargetHeatingCoolingState(value TargetHeatingCoolingState_Type, controllerWrite func(uint8) error) *Writable[uint8]
TargetHeatingCoolingState represents a Target Heating Cooling State characteristic (33)
UUID: 00000033-0000-1000-8000-0026BB765291.
TargetHorizontalTiltAngle represents a Target Horizontal Tilt Angle characteristic (7B)
UUID: 0000007B-0000-1000-8000-0026BB765291.
func TargetHumidifierDehumidifierState(value TargetHumidifierDehumidifierState_Type, controllerWrite func(uint8) error) *Writable[uint8]
TargetHumidifierDehumidifierState represents a Target Humidifier Dehumidifier State characteristic (B4)
UUID: 000000B4-0000-1000-8000-0026BB765291.
func TargetMediaState(value TargetMediaState_Type, controllerWrite func(uint8) error) *Writable[uint8]
TargetMediaState represents a Target Media State characteristic (137)
UUID: 00000137-0000-1000-8000-0026BB765291.
TargetPosition represents a Target Position characteristic (7C)
UUID: 0000007C-0000-1000-8000-0026BB765291.
func TargetRelativeHumidity(value float64, controllerWrite func(float64) error) *Writable[float64]
TargetRelativeHumidity represents a Target Relative Humidity characteristic (34)
UUID: 00000034-0000-1000-8000-0026BB765291.
func TargetSlatState(value TargetSlatState_Type, controllerWrite func(uint8) error) *Writable[uint8]
TargetSlatState represents a Target Slat State characteristic (BE)
UUID: 000000BE-0000-1000-8000-0026BB765291.
TargetTemperature represents a Target Temperature characteristic (35)
UUID: 00000035-0000-1000-8000-0026BB765291.
TargetTiltAngle represents a Target Tilt Angle characteristic (C2)
UUID: 000000C2-0000-1000-8000-0026BB765291.
TargetVerticalTiltAngle represents a Target Vertical Tilt Angle characteristic (7D)
UUID: 0000007D-0000-1000-8000-0026BB765291.
func TargetVisibilityState(value TargetVisibilityState_Type, controllerWrite func(uint8) error) *Writable[uint8]
TargetVisibilityState represents a Target Visibility State characteristic (134)
UUID: 00000134-0000-1000-8000-0026BB765291.
func TemperatureDisplayUnits(value TemperatureDisplayUnits_Type, controllerWrite func(uint8) error) *Writable[uint8]
TemperatureDisplayUnits represents a Temperature Display Units characteristic (36)
UUID: 00000036-0000-1000-8000-0026BB765291.
Volume represents a Volume characteristic (119)
UUID: 00000119-0000-1000-8000-0026BB765291.
func (u *Writable[Format]) WithRemoteRead(read func(ctx context.Context) (Format, error)) *Writable[Format]
WithRemoteRead updates the characteristic (and returns itself), so that it gets its value from the given read function on Read. Must be called before any Read happens.
Write fullfils the hapip.CharacteristicWriter interface (for use by hapip.Handler).
type WritableTLV8[Request any, Response any] struct { UpdatableTLV8[Response] // contains filtered or unexported fields }
WritableTLV8 is a writableTLV8 characteristic, which value can be updated by the remote controller or by the software.
When the updated (or written) value is different from the last value, all listeners will be notified.
func DisplayOrder(value DisplayOrderResponse, controllerWrite func(DisplayOrderRequest) (DisplayOrderResponse, error)) *WritableTLV8[DisplayOrderRequest, DisplayOrderResponse]
DisplayOrder represents a Display Order characteristic (136)
UUID: 00000136-0000-1000-8000-0026BB765291.
func PairSetup(value PairSetupResponse, controllerWrite func(PairSetupRequest) (PairSetupResponse, error)) *WritableTLV8[PairSetupRequest, PairSetupResponse]
PairSetup represents a Pair Setup characteristic (4C)
UUID: 0000004C-0000-1000-8000-0026BB765291.
func PairVerify(value PairVerifyResponse, controllerWrite func(PairVerifyRequest) (PairVerifyResponse, error)) *WritableTLV8[PairVerifyRequest, PairVerifyResponse]
PairVerify represents a Pair Verify characteristic (4E)
UUID: 0000004E-0000-1000-8000-0026BB765291.
func PairingPairings(value PairingPairingsResponse, controllerWrite func(PairingPairingsRequest) (PairingPairingsResponse, error)) *WritableTLV8[PairingPairingsRequest, PairingPairingsResponse]
PairingPairings represents a Pairing Pairings characteristic (50)
UUID: 00000050-0000-1000-8000-0026BB765291.
func SelectedCameraRecordingConfiguration(value SelectedCameraRecordingConfigurationResponse, controllerWrite func(SelectedCameraRecordingConfigurationRequest) (SelectedCameraRecordingConfigurationResponse, error)) *WritableTLV8[SelectedCameraRecordingConfigurationRequest, SelectedCameraRecordingConfigurationResponse]
SelectedCameraRecordingConfiguration represents a Selected Camera Recording Configuration characteristic (209)
UUID: 00000209-0000-1000-8000-0026BB765291.
func SelectedRTPStreamConfiguration(value SelectedRTPStreamConfigurationResponse, controllerWrite func(SelectedRTPStreamConfigurationRequest) (SelectedRTPStreamConfigurationResponse, error)) *WritableTLV8[SelectedRTPStreamConfigurationRequest, SelectedRTPStreamConfigurationResponse]
SelectedRTPStreamConfiguration represents a Selected RTP Stream Configuration characteristic (117)
UUID: 00000117-0000-1000-8000-0026BB765291.
func SetupEndpoints(value SetupEndpointsResponse, controllerWrite func(SetupEndpointsRequest) (SetupEndpointsResponse, error)) *WritableTLV8[SetupEndpointsRequest, SetupEndpointsResponse]
SetupEndpoints represents a Setup Endpoints characteristic (118)
UUID: 00000118-0000-1000-8000-0026BB765291.
func (u *WritableTLV8[Request, Response]) Write(ctx context.Context, s json.RawMessage) error
Write fullfils the hapip.CharacteristicWriter interface (for use by hapip.Handler).
type WriteOnly[Format format] struct { Metadata[Format] // contains filtered or unexported fields }
HoldPosition represents a Hold Position characteristic (6F)
UUID: 0000006F-0000-1000-8000-0026BB765291.
Identify represents a Identify characteristic (14)
UUID: 00000014-0000-1000-8000-0026BB765291.
PowerModeSelection represents a Power Mode Selection characteristic (DF)
UUID: 000000DF-0000-1000-8000-0026BB765291.
RemoteKey represents a Remote Key characteristic (E1)
UUID: 000000E1-0000-1000-8000-0026BB765291.
ResetFilterIndication represents a Reset Filter Indication characteristic (AD)
UUID: 000000AD-0000-1000-8000-0026BB765291.
VolumeSelector represents a Volume Selector characteristic (EA)
UUID: 000000EA-0000-1000-8000-0026BB765291.
type WriteOnlyTLV8[Request any] struct { StaticTLV8[struct{}] // contains filtered or unexported fields }
func LockControlPoint(controllerWrite func(LockControlPointRequest) error) WriteOnlyTLV8[LockControlPointRequest]
LockControlPoint represents a Lock Control Point characteristic (19)
UUID: 00000019-0000-1000-8000-0026BB765291.
func (w WriteOnlyTLV8[Request]) Write(ctx context.Context, s json.RawMessage) error
apple_characteristic_gen.go metadata.go programmable_switch_event.go service.go static.go tlv8.go tlv8_structs.go updatable.go writable.go write_only.go
Path | Synopsis |
---|---|
service |