💾 Archived View for code.pfad.fr › gohmekit › hapip › characteristic captured on 2023-12-28 at 15:37:00. Gemini links have been rewritten to link to archived content

View Raw

More Information

⬅️ Previous capture (2023-09-08)

🚧 View Differences

-=-=-=-=-=-=-

characteristic package - code.pfad.fr/gohmekit

import "code.pfad.fr/gohmekit/hapip/characteristic"

Constants

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)

Variables

var AccessoryFlags_Meta = Metadata[uint32]{
	Typ: "A6",
}
var ActiveIdentifier_Meta = Metadata[uint32]{
	Typ:      "E7",
	MinValue: ValuePointer[uint32](0),
}
var Active_Meta = Metadata[uint8]{
	Typ: "B0",
}
var AdministratorOnlyAccess_Meta = Metadata[bool]{
	Typ: "1",
}
var AirParticulateDensity_Meta = Metadata[float64]{
	Typ:      "64",
	MinValue: ValuePointer[float64](0),
	MaxValue: ValuePointer[float64](1000),
	MinStep:  1,
}
var AirParticulateSize_Meta = Metadata[uint8]{
	Typ: "65",
}
var AirQuality_Meta = Metadata[uint8]{
	Typ: "95",
}
var AudioFeedback_Meta = Metadata[bool]{
	Typ: "5",
}
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 CarbonDioxideDetected_Meta = Metadata[uint8]{
	Typ: "92",
}
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 CarbonMonoxideDetected_Meta = Metadata[uint8]{
	Typ: "69",
}
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 ChargingState_Meta = Metadata[uint8]{
	Typ: "8F",
}
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 ConfiguredName_Meta = Metadata[string]{
	Typ: "E3",
}
var ContactSensorState_Meta = Metadata[uint8]{
	Typ: "6A",
}
var CoolingThresholdTemperature_Meta = Metadata[float64]{
	Typ:      "D",
	Unit:     "celsius",
	MinValue: ValuePointer[float64](10),
	MaxValue: ValuePointer[float64](35),
	MinStep:  0.1,
}
var CurrentAirPurifierState_Meta = Metadata[uint8]{
	Typ: "A9",
}
var CurrentAmbientLightLevel_Meta = Metadata[float64]{
	Typ:      "6B",
	Unit:     "lux",
	MinValue: ValuePointer[float64](0.0001),
	MaxValue: ValuePointer[float64](100000),
}
var CurrentDoorState_Meta = Metadata[uint8]{
	Typ: "E",
}
var CurrentFanState_Meta = Metadata[uint8]{
	Typ: "AF",
}
var CurrentHeaterCoolerState_Meta = Metadata[uint8]{
	Typ: "B1",
}
var CurrentHeatingCoolingState_Meta = Metadata[uint8]{
	Typ: "F",
}
var CurrentHorizontalTiltAngle_Meta = Metadata[int32]{
	Typ:      "6C",
	Unit:     "arcdegrees",
	MinValue: ValuePointer[int32](-90),
	MaxValue: ValuePointer[int32](90),
	MinStep:  1,
}
var CurrentHumidifierDehumidifierState_Meta = Metadata[uint8]{
	Typ: "B3",
}
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 CurrentSlatState_Meta = Metadata[uint8]{
	Typ: "AA",
}
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 DigitalZoom_Meta = Metadata[float64]{
	Typ: "11D",
}
var FilterChangeIndication_Meta = Metadata[uint8]{
	Typ: "AC",
}
var FilterLifeLevel_Meta = Metadata[float64]{
	Typ:      "AB",
	MinValue: ValuePointer[float64](0),
	MaxValue: ValuePointer[float64](100),
	MinStep:  1,
}
var FirmwareRevision_Meta = Metadata[string]{
	Typ: "52",
}
var HardwareRevision_Meta = Metadata[string]{
	Typ: "53",
}
var HeatingThresholdTemperature_Meta = Metadata[float64]{
	Typ:      "12",
	Unit:     "celsius",
	MinValue: ValuePointer[float64](0),
	MaxValue: ValuePointer[float64](25),
	MinStep:  0.1,
}
var HoldPosition_Meta = Metadata[bool]{
	Typ: "6F",
}
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 Identify_Meta = Metadata[bool]{
	Typ: "14",
}
var ImageMirroring_Meta = Metadata[bool]{
	Typ: "11F",
}
var ImageRotation_Meta = Metadata[float64]{
	Typ:      "11E",
	Unit:     "arcdegrees",
	MinValue: ValuePointer[float64](0),
	MaxValue: ValuePointer[float64](270),
	MinStep:  90,
}
var InUse_Meta = Metadata[uint8]{
	Typ: "D2",
}
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 IsConfigured_Meta = Metadata[uint8]{
	Typ: "D6",
}
var LeakDetected_Meta = Metadata[uint8]{
	Typ: "70",
}
var LockCurrentState_Meta = Metadata[uint8]{
	Typ: "1D",
}
var LockLastKnownAction_Meta = Metadata[uint8]{
	Typ: "1C",
}
var LockManagementAutoSecurityTimeout_Meta = Metadata[uint32]{
	Typ:  "1A",
	Unit: "seconds",
}
var LockPhysicalControls_Meta = Metadata[uint8]{
	Typ: "A7",
}
var LockTargetState_Meta = Metadata[uint8]{
	Typ: "1E",
}
var Manufacturer_Meta = Metadata[string]{
	Typ: "20",
}
var Model_Meta = Metadata[string]{
	Typ: "21",
}
var MotionDetected_Meta = Metadata[bool]{
	Typ: "22",
}
var Mute_Meta = Metadata[bool]{
	Typ: "11A",
}
var Name_Meta = Metadata[string]{
	Typ: "23",
}
var NightVision_Meta = Metadata[bool]{
	Typ: "11B",
}
var NitrogenDioxideDensity_Meta = Metadata[float64]{
	Typ:      "C4",
	MinValue: ValuePointer[float64](0),
	MaxValue: ValuePointer[float64](1000),
	MinStep:  1,
}
var ObstructionDetected_Meta = Metadata[bool]{
	Typ: "24",
}
var OccupancyDetected_Meta = Metadata[uint8]{
	Typ: "71",
}
var On_Meta = Metadata[bool]{
	Typ: "25",
}
var OpticalZoom_Meta = Metadata[float64]{
	Typ: "11C",
}
var OutletInUse_Meta = Metadata[bool]{
	Typ: "26",
}
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 PairingFeatures_Meta = Metadata[uint8]{
	Typ: "4F",
}
var PictureMode_Meta = Metadata[uint16]{
	Typ:      "E2",
	MinValue: ValuePointer[uint16](0),
	MaxValue: ValuePointer[uint16](13),
	MinStep:  1,
}
var PositionState_Meta = Metadata[uint8]{
	Typ: "72",
}
var PowerModeSelection_Meta = Metadata[uint8]{
	Typ:      "DF",
	MinValue: ValuePointer[uint8](0),
	MaxValue: ValuePointer[uint8](1),
	MinStep:  1,
}
var ProgramMode_Meta = Metadata[uint8]{
	Typ: "D1",
}
var ProgrammableSwitchEvent_Meta = Metadata[uint8]{
	Typ: "73",
}
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 RotationDirection_Meta = Metadata[int32]{
	Typ: "28",
}
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 SecuritySystemCurrentState_Meta = Metadata[uint8]{
	Typ: "66",
}
var SecuritySystemTargetState_Meta = Metadata[uint8]{
	Typ: "67",
}
var SerialNumber_Meta = Metadata[string]{
	Typ: "30",
}
var ServiceLabelIndex_Meta = Metadata[uint8]{
	Typ:      "CB",
	MinValue: ValuePointer[uint8](1),
	MaxValue: ValuePointer[uint8](255),
	MinStep:  1,
}
var ServiceLabelNamespace_Meta = Metadata[uint8]{
	Typ: "CD",
}
var SetDuration_Meta = Metadata[uint32]{
	Typ:      "D3",
	MinValue: ValuePointer[uint32](0),
	MaxValue: ValuePointer[uint32](3600),
	MinStep:  1,
}
var SlatType_Meta = Metadata[uint8]{
	Typ: "C0",
}
var SleepDiscoveryMode_Meta = Metadata[uint8]{
	Typ:      "E8",
	MinValue: ValuePointer[uint8](0),
	MaxValue: ValuePointer[uint8](1),
}
var SmokeDetected_Meta = Metadata[uint8]{
	Typ: "76",
}
var StatusActive_Meta = Metadata[bool]{
	Typ: "75",
}
var StatusFault_Meta = Metadata[uint8]{
	Typ: "77",
}
var StatusJammed_Meta = Metadata[uint8]{
	Typ: "78",
}
var StatusLowBattery_Meta = Metadata[uint8]{
	Typ: "79",
}
var StatusTampered_Meta = Metadata[uint8]{
	Typ: "7A",
}
var SulphurDioxideDensity_Meta = Metadata[float64]{
	Typ:      "C5",
	MinValue: ValuePointer[float64](0),
	MaxValue: ValuePointer[float64](1000),
	MinStep:  1,
}
var SwingMode_Meta = Metadata[uint8]{
	Typ: "B6",
}
var TargetAirPurifierState_Meta = Metadata[uint8]{
	Typ: "A8",
}
var TargetAirQuality_Meta = Metadata[uint8]{
	Typ: "AE",
}
var TargetDoorState_Meta = Metadata[uint8]{
	Typ: "32",
}
var TargetFanState_Meta = Metadata[uint8]{
	Typ: "BF",
}
var TargetHeaterCoolerState_Meta = Metadata[uint8]{
	Typ: "B2",
}
var TargetHeatingCoolingState_Meta = Metadata[uint8]{
	Typ: "33",
}
var TargetHorizontalTiltAngle_Meta = Metadata[int32]{
	Typ:      "7B",
	Unit:     "arcdegrees",
	MinValue: ValuePointer[int32](-90),
	MaxValue: ValuePointer[int32](90),
	MinStep:  1,
}
var TargetHumidifierDehumidifierState_Meta = Metadata[uint8]{
	Typ: "B4",
}
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 TargetSlatState_Meta = Metadata[uint8]{
	Typ: "BE",
}
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 TemperatureDisplayUnits_Meta = Metadata[uint8]{
	Typ: "36",
}
var VOCDensity_Meta = Metadata[float64]{
	Typ:      "C8",
	MinValue: ValuePointer[float64](0),
	MaxValue: ValuePointer[float64](1000),
	MinStep:  1,
}
var ValveType_Meta = Metadata[uint8]{
	Typ: "D5",
}
var Version_Meta = Metadata[string]{
	Typ: "37",
}
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),
}

Functions

func ProgrammableSwitchEventForIP

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

func ValuePointer[Format format](v Format) *Format

Types

type Accessory

type Accessory []hapip.Service

func (Accessory) Services

func (a Accessory) Services() []hapip.Service

type AccessoryFlags_Type

type AccessoryFlags_Type uint32

type Active_Type

type Active_Type uint8

type Address

type Address struct {
	IPv6         bool   `tlv8:"1"`
	IP           string `tlv8:"2"`
	VideoRtpPort uint16 `tlv8:"3"`
	AudioRtpPort uint16 `tlv8:"4"`
}

type AirParticulateSize_Type

type AirParticulateSize_Type uint8

type AirQuality_Type

type AirQuality_Type uint8

type AudioCodecParameters

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 CarbonDioxideDetected_Type

type CarbonDioxideDetected_Type uint8

type CarbonMonoxideDetected_Type

type CarbonMonoxideDetected_Type uint8

type ChargingState_Type

type ChargingState_Type uint8

type ClosedCaptions_Type

type ClosedCaptions_Type uint8

type ContactSensorState_Type

type ContactSensorState_Type uint8

type CurrentAirPurifierState_Type

type CurrentAirPurifierState_Type uint8

type CurrentDoorState_Type

type CurrentDoorState_Type uint8

type CurrentFanState_Type

type CurrentFanState_Type uint8

type CurrentHeaterCoolerState_Type

type CurrentHeaterCoolerState_Type uint8

type CurrentHeatingCoolingState_Type

type CurrentHeatingCoolingState_Type uint8

type CurrentHumidifierDehumidifierState_Type

type CurrentHumidifierDehumidifierState_Type uint8

type CurrentMediaState_Type

type CurrentMediaState_Type uint8

type CurrentSlatState_Type

type CurrentSlatState_Type uint8

type CurrentVisibilityState_Type

type CurrentVisibilityState_Type uint8

type DisplayOrderRequest

type DisplayOrderRequest struct{} // TODO

type DisplayOrderResponse

type DisplayOrderResponse struct{} // TODO

type FilterChangeIndication_Type

type FilterChangeIndication_Type uint8

type InUse_Type

type InUse_Type uint8

type InputDeviceType_Type

type InputDeviceType_Type uint8

type InputSourceType_Type

type InputSourceType_Type uint8

type IsConfigured_Type

type IsConfigured_Type uint8

type LeakDetected_Type

type LeakDetected_Type uint8

type LockControlPointRequest

type LockControlPointRequest struct{} // TODO

type LockCurrentState_Type

type LockCurrentState_Type uint8

type LockLastKnownAction_Type

type LockLastKnownAction_Type uint8

type LockPhysicalControls_Type

type LockPhysicalControls_Type uint8

type LockTargetState_Type

type LockTargetState_Type uint8

type LogsResponse

type LogsResponse struct{} // TODO

type Metadata

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 (Metadata[Format]) Meta

func (m Metadata[Format]) Meta() hapip.CharacteristicMeta

func (Metadata[Format]) Type

func (m Metadata[Format]) Type() string

type OccupancyDetected_Type

type OccupancyDetected_Type uint8

type PairSetupRequest

type PairSetupRequest struct{} // TODO

type PairSetupResponse

type PairSetupResponse struct{} // TODO

type PairVerifyRequest

type PairVerifyRequest struct{} // TODO

type PairVerifyResponse

type PairVerifyResponse struct{} // TODO

type PairingPairingsRequest

type PairingPairingsRequest struct{} // TODO

type PairingPairingsResponse

type PairingPairingsResponse struct{} // TODO

type PictureMode_Type

type PictureMode_Type uint16

type PositionState_Type

type PositionState_Type uint8

type PowerModeSelection_Type

type PowerModeSelection_Type uint8

type ProgramMode_Type

type ProgramMode_Type uint8

type ProgrammableSwitchEvent_Type

type ProgrammableSwitchEvent_Type uint8

type RTPParameters

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 RemoteKey_Type

type RemoteKey_Type uint8

type RotationDirection_Type

type RotationDirection_Type int32

type SRTP

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 SecuritySystemCurrentState_Type

type SecuritySystemCurrentState_Type uint8

type SecuritySystemTargetState_Type

type SecuritySystemTargetState_Type uint8

type SelectedCameraRecordingConfigurationRequest

type SelectedCameraRecordingConfigurationRequest struct{} // TODO

type SelectedCameraRecordingConfigurationResponse

type SelectedCameraRecordingConfigurationResponse struct{} // TODO

type SelectedRTPStreamConfigurationRequest

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

type SelectedRTPStreamConfigurationResponse SelectedRTPStreamConfigurationRequest

type Service

type Service struct {
	Typ            string
	Characteristic []hapip.Characteristic
	Primary        bool
}

func (Service) AsPrimary

func (s Service) AsPrimary() Service

func (Service) Characteristics

func (s Service) Characteristics() []hapip.Characteristic

func (Service) IsPrimary

func (s Service) IsPrimary() bool

func (Service) Type

func (s Service) Type() string

type ServiceLabelNamespace_Type

type ServiceLabelNamespace_Type uint8

type SetupEndpointsRequest

type SetupEndpointsRequest struct {
	SessionID      []byte  `tlv8:"1"`
	ControllerAddr Address `tlv8:"3"`
	VideoSRTP      SRTP    `tlv8:"4"`
	AudioSRTP      SRTP    `tlv8:"5"`
}

type SetupEndpointsResponse

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"`
}

type SlatType_Type

type SlatType_Type uint8

type SleepDiscoveryMode_Type

type SleepDiscoveryMode_Type uint8

type SmokeDetected_Type

type SmokeDetected_Type uint8

type Static

type Static[Format format] struct {
	Metadata[Format]
	// 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 FirmwareRevision

func FirmwareRevision(value string) Static[string]

FirmwareRevision represents a Firmware Revision characteristic (52)

UUID: 00000052-0000-1000-8000-0026BB765291.

func HardwareRevision

func HardwareRevision(value string) Static[string]

HardwareRevision represents a Hardware Revision characteristic (53)

UUID: 00000053-0000-1000-8000-0026BB765291.

func Identifier

func Identifier(value uint32) Static[uint32]

Identifier represents a Identifier characteristic (E6)

UUID: 000000E6-0000-1000-8000-0026BB765291.

func Manufacturer

func Manufacturer(value string) Static[string]

Manufacturer represents a Manufacturer characteristic (20)

UUID: 00000020-0000-1000-8000-0026BB765291.

func Model

func Model(value string) Static[string]

Model represents a Model characteristic (21)

UUID: 00000021-0000-1000-8000-0026BB765291.

func Name

func Name(value string) Static[string]

Name represents a Name characteristic (23)

UUID: 00000023-0000-1000-8000-0026BB765291.

func PairingFeatures

func PairingFeatures(value uint8) Static[uint8]

PairingFeatures represents a Pairing Features characteristic (4F)

UUID: 0000004F-0000-1000-8000-0026BB765291.

func SerialNumber

func SerialNumber(value string) Static[string]

SerialNumber represents a Serial Number characteristic (30)

UUID: 00000030-0000-1000-8000-0026BB765291.

func ServiceLabelIndex

func ServiceLabelIndex(value uint8) Static[uint8]

ServiceLabelIndex represents a Service Label Index characteristic (CB)

UUID: 000000CB-0000-1000-8000-0026BB765291.

func ServiceLabelNamespace

func ServiceLabelNamespace(value ServiceLabelNamespace_Type) Static[uint8]

ServiceLabelNamespace represents a Service Label Namespace characteristic (CD)

UUID: 000000CD-0000-1000-8000-0026BB765291.

func SlatType

func SlatType(value SlatType_Type) Static[uint8]

SlatType represents a Slat Type characteristic (C0)

UUID: 000000C0-0000-1000-8000-0026BB765291.

func (Static[Format]) Read

func (s Static[Format]) Read(_ context.Context) (interface{}, error)

Read fullfils the hapip.CharacteristicReader interface (for use by hapip.Handler).

func (Static[Format]) WithRemoteRead

func (s Static[Format]) WithRemoteRead(read func() (Format, error)) StaticRemoteRead[Format]

WithRemoteRead returns a ReadCharacterisitc which will gets its (dynamic) value from the given read function.

type StaticRemoteRead

type StaticRemoteRead[Format format] struct {
	Metadata[Format]
	// contains filtered or unexported fields
}

StaticRemoteRead calls an underlying read function to get the actual value.

func (StaticRemoteRead[Format]) Read

func (s StaticRemoteRead[Format]) Read(_ context.Context) (interface{}, error)

Read fullfils the hapip.CharacteristicReader interface (for use by hapip.Handler).

type StaticTLV8

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

func SupportedAudioStreamConfiguration(value SupportedAudioStreamConfigurationResponse) StaticTLV8[SupportedAudioStreamConfigurationResponse]

SupportedAudioStreamConfiguration represents a Supported Audio Stream Configuration characteristic (115)

UUID: 00000115-0000-1000-8000-0026BB765291.

func SupportedRTPConfiguration

func SupportedRTPConfiguration(value SupportedRTPConfigurationResponse) StaticTLV8[SupportedRTPConfigurationResponse]

SupportedRTPConfiguration represents a Supported RTP Configuration characteristic (116)

UUID: 00000116-0000-1000-8000-0026BB765291.

func SupportedVideoStreamConfiguration

func SupportedVideoStreamConfiguration(value SupportedVideoStreamConfigurationResponse) StaticTLV8[SupportedVideoStreamConfigurationResponse]

SupportedVideoStreamConfiguration represents a Supported Video Stream Configuration characteristic (114)

UUID: 00000114-0000-1000-8000-0026BB765291.

func (StaticTLV8[Response]) Meta

func (s StaticTLV8[Response]) Meta() hapip.CharacteristicMeta

func (StaticTLV8[Response]) Read

func (s StaticTLV8[Response]) Read(_ context.Context) (interface{}, error)

Read fullfils the hapip.CharacteristicReader interface (for use by hapip.Handler).

func (StaticTLV8[Response]) Type

func (s StaticTLV8[Response]) Type() string

type StatusFault_Type

type StatusFault_Type uint8

type StatusJammed_Type

type StatusJammed_Type uint8

type StatusLowBattery_Type

type StatusLowBattery_Type uint8

type StatusTampered_Type

type StatusTampered_Type uint8

type StreamingStatusResponse

type StreamingStatusResponse struct {
	Status byte `tlv8:"1"`
}

type SupportedAudioRecordingConfigurationResponse

type SupportedAudioRecordingConfigurationResponse struct{} // TODO

type SupportedAudioStreamConfigurationResponse

type SupportedAudioStreamConfigurationResponse struct {
	Codecs []struct {
		Type       byte                   `tlv8:"1"`
		Parameters []AudioCodecParameters `tlv8:"2"`
	} `tlv8:"1"`
	ComfortNoise bool `tlv8:"2"`
}

type SupportedCameraRecordingConfigurationResponse

type SupportedCameraRecordingConfigurationResponse struct{} // TODO

type SupportedRTPConfigurationResponse

type SupportedRTPConfigurationResponse []struct {
	CryptoSuite byte     `tlv8:"2"`
	Separator   struct{} `tlv8:"0"`
}

func NewSupportedRTPConfigurationResponse

func NewSupportedRTPConfigurationResponse(cryptoSuite ...byte) SupportedRTPConfigurationResponse

type SupportedVideoRecordingConfigurationResponse

type SupportedVideoRecordingConfigurationResponse struct{} // TODO

type SupportedVideoStreamConfigurationResponse

type SupportedVideoStreamConfigurationResponse struct {
	Codecs []struct {
		Type       byte                   `tlv8:"1"`
		Parameters []VideoCodecParameters `tlv8:"2"`
		Attributes []VideoAttributes      `tlv8:"3"`
	} `tlv8:"1"`
}

type SwingMode_Type

type SwingMode_Type uint8

type TLV8

type TLV8 *[]byte

TLV8 is a pointer to []byte to be comparable.

func TLV8Value

func TLV8Value(b []byte) TLV8

type TargetAirPurifierState_Type

type TargetAirPurifierState_Type uint8

type TargetAirQuality_Type

type TargetAirQuality_Type uint8

type TargetDoorState_Type

type TargetDoorState_Type uint8

type TargetFanState_Type

type TargetFanState_Type uint8

type TargetHeaterCoolerState_Type

type TargetHeaterCoolerState_Type uint8

type TargetHeatingCoolingState_Type

type TargetHeatingCoolingState_Type uint8

type TargetHumidifierDehumidifierState_Type

type TargetHumidifierDehumidifierState_Type uint8

type TargetMediaState_Type

type TargetMediaState_Type uint8

type TargetSlatState_Type

type TargetSlatState_Type uint8

type TargetVisibilityState_Type

type TargetVisibilityState_Type uint8

type TemperatureDisplayUnits_Type

type TemperatureDisplayUnits_Type uint8

type Updatable

type Updatable[Format format] struct {
	Static[Format]
	// contains filtered or unexported fields
}

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

func AccessoryFlags(value AccessoryFlags_Type) *Updatable[uint32]

AccessoryFlags represents a Accessory Flags characteristic (A6)

UUID: 000000A6-0000-1000-8000-0026BB765291.

func AirParticulateDensity

func AirParticulateDensity(value float64) *Updatable[float64]

AirParticulateDensity represents a Air Particulate Density characteristic (64)

UUID: 00000064-0000-1000-8000-0026BB765291.

func AirParticulateSize

func AirParticulateSize(value AirParticulateSize_Type) *Updatable[uint8]

AirParticulateSize represents a Air Particulate Size characteristic (65)

UUID: 00000065-0000-1000-8000-0026BB765291.

func AirQuality

func AirQuality(value AirQuality_Type) *Updatable[uint8]

AirQuality represents a Air Quality characteristic (95)

UUID: 00000095-0000-1000-8000-0026BB765291.

func BatteryLevel

func BatteryLevel(value uint8) *Updatable[uint8]

BatteryLevel represents a Battery Level characteristic (68)

UUID: 00000068-0000-1000-8000-0026BB765291.

func CarbonDioxideDetected

func CarbonDioxideDetected(value CarbonDioxideDetected_Type) *Updatable[uint8]

CarbonDioxideDetected represents a Carbon Dioxide Detected characteristic (92)

UUID: 00000092-0000-1000-8000-0026BB765291.

func CarbonDioxideLevel

func CarbonDioxideLevel(value float64) *Updatable[float64]

CarbonDioxideLevel represents a Carbon Dioxide Level characteristic (93)

UUID: 00000093-0000-1000-8000-0026BB765291.

func CarbonDioxidePeakLevel

func CarbonDioxidePeakLevel(value float64) *Updatable[float64]

CarbonDioxidePeakLevel represents a Carbon Dioxide Peak Level characteristic (94)

UUID: 00000094-0000-1000-8000-0026BB765291.

func CarbonMonoxideDetected

func CarbonMonoxideDetected(value CarbonMonoxideDetected_Type) *Updatable[uint8]

CarbonMonoxideDetected represents a Carbon Monoxide Detected characteristic (69)

UUID: 00000069-0000-1000-8000-0026BB765291.

func CarbonMonoxideLevel

func CarbonMonoxideLevel(value float64) *Updatable[float64]

CarbonMonoxideLevel represents a Carbon Monoxide Level characteristic (90)

UUID: 00000090-0000-1000-8000-0026BB765291.

func CarbonMonoxidePeakLevel

func CarbonMonoxidePeakLevel(value float64) *Updatable[float64]

CarbonMonoxidePeakLevel represents a Carbon Monoxide Peak Level characteristic (91)

UUID: 00000091-0000-1000-8000-0026BB765291.

func ChargingState

func ChargingState(value ChargingState_Type) *Updatable[uint8]

ChargingState represents a Charging State characteristic (8F)

UUID: 0000008F-0000-1000-8000-0026BB765291.

func ContactSensorState

func ContactSensorState(value ContactSensorState_Type) *Updatable[uint8]

ContactSensorState represents a Contact Sensor State characteristic (6A)

UUID: 0000006A-0000-1000-8000-0026BB765291.

func CurrentAirPurifierState

func CurrentAirPurifierState(value CurrentAirPurifierState_Type) *Updatable[uint8]

CurrentAirPurifierState represents a Current Air Purifier State characteristic (A9)

UUID: 000000A9-0000-1000-8000-0026BB765291.

func CurrentAmbientLightLevel

func CurrentAmbientLightLevel(value float64) *Updatable[float64]

CurrentAmbientLightLevel represents a Current Ambient Light Level characteristic (6B)

UUID: 0000006B-0000-1000-8000-0026BB765291.

func CurrentDoorState

func CurrentDoorState(value CurrentDoorState_Type) *Updatable[uint8]

CurrentDoorState represents a Current Door State characteristic (E)

UUID: 0000000E-0000-1000-8000-0026BB765291.

func CurrentFanState

func CurrentFanState(value CurrentFanState_Type) *Updatable[uint8]

CurrentFanState represents a Current Fan State characteristic (AF)

UUID: 000000AF-0000-1000-8000-0026BB765291.

func CurrentHeaterCoolerState

func CurrentHeaterCoolerState(value CurrentHeaterCoolerState_Type) *Updatable[uint8]

CurrentHeaterCoolerState represents a Current Heater Cooler State characteristic (B1)

UUID: 000000B1-0000-1000-8000-0026BB765291.

func CurrentHeatingCoolingState

func CurrentHeatingCoolingState(value CurrentHeatingCoolingState_Type) *Updatable[uint8]

CurrentHeatingCoolingState represents a Current Heating Cooling State characteristic (F)

UUID: 0000000F-0000-1000-8000-0026BB765291.

func CurrentHorizontalTiltAngle

func CurrentHorizontalTiltAngle(value int32) *Updatable[int32]

CurrentHorizontalTiltAngle represents a Current Horizontal Tilt Angle characteristic (6C)

UUID: 0000006C-0000-1000-8000-0026BB765291.

func CurrentHumidifierDehumidifierState

func CurrentHumidifierDehumidifierState(value CurrentHumidifierDehumidifierState_Type) *Updatable[uint8]

CurrentHumidifierDehumidifierState represents a Current Humidifier Dehumidifier State characteristic (B3)

UUID: 000000B3-0000-1000-8000-0026BB765291.

func CurrentMediaState

func CurrentMediaState(value CurrentMediaState_Type) *Updatable[uint8]

CurrentMediaState represents a Current Media State characteristic (E0)

UUID: 000000E0-0000-1000-8000-0026BB765291.

func CurrentPosition

func CurrentPosition(value uint8) *Updatable[uint8]

CurrentPosition represents a Current Position characteristic (6D)

UUID: 0000006D-0000-1000-8000-0026BB765291.

func CurrentRelativeHumidity

func CurrentRelativeHumidity(value float64) *Updatable[float64]

CurrentRelativeHumidity represents a Current Relative Humidity characteristic (10)

UUID: 00000010-0000-1000-8000-0026BB765291.

func CurrentSlatState

func CurrentSlatState(value CurrentSlatState_Type) *Updatable[uint8]

CurrentSlatState represents a Current Slat State characteristic (AA)

UUID: 000000AA-0000-1000-8000-0026BB765291.

func CurrentTemperature

func CurrentTemperature(value float64) *Updatable[float64]

CurrentTemperature represents a Current Temperature characteristic (11)

UUID: 00000011-0000-1000-8000-0026BB765291.

func CurrentTiltAngle

func CurrentTiltAngle(value int32) *Updatable[int32]

CurrentTiltAngle represents a Current Tilt Angle characteristic (C1)

UUID: 000000C1-0000-1000-8000-0026BB765291.

func CurrentVerticalTiltAngle

func CurrentVerticalTiltAngle(value int32) *Updatable[int32]

CurrentVerticalTiltAngle represents a Current Vertical Tilt Angle characteristic (6E)

UUID: 0000006E-0000-1000-8000-0026BB765291.

func CurrentVisibilityState

func CurrentVisibilityState(value CurrentVisibilityState_Type) *Updatable[uint8]

CurrentVisibilityState represents a Current Visibility State characteristic (135)

UUID: 00000135-0000-1000-8000-0026BB765291.

func FilterChangeIndication

func FilterChangeIndication(value FilterChangeIndication_Type) *Updatable[uint8]

FilterChangeIndication represents a Filter Change Indication characteristic (AC)

UUID: 000000AC-0000-1000-8000-0026BB765291.

func FilterLifeLevel

func FilterLifeLevel(value float64) *Updatable[float64]

FilterLifeLevel represents a Filter Life Level characteristic (AB)

UUID: 000000AB-0000-1000-8000-0026BB765291.

func InUse

func InUse(value InUse_Type) *Updatable[uint8]

InUse represents a In Use characteristic (D2)

UUID: 000000D2-0000-1000-8000-0026BB765291.

func InputDeviceType

func InputDeviceType(value InputDeviceType_Type) *Updatable[uint8]

InputDeviceType represents a Input Device Type characteristic (DC)

UUID: 000000DC-0000-1000-8000-0026BB765291.

func InputSourceType

func InputSourceType(value InputSourceType_Type) *Updatable[uint8]

InputSourceType represents a Input Source Type characteristic (DB)

UUID: 000000DB-0000-1000-8000-0026BB765291.

func LeakDetected

func LeakDetected(value LeakDetected_Type) *Updatable[uint8]

LeakDetected represents a Leak Detected characteristic (70)

UUID: 00000070-0000-1000-8000-0026BB765291.

func LockCurrentState

func LockCurrentState(value LockCurrentState_Type) *Updatable[uint8]

LockCurrentState represents a Lock Current State characteristic (1D)

UUID: 0000001D-0000-1000-8000-0026BB765291.

func LockLastKnownAction

func LockLastKnownAction(value LockLastKnownAction_Type) *Updatable[uint8]

LockLastKnownAction represents a Lock Last Known Action characteristic (1C)

UUID: 0000001C-0000-1000-8000-0026BB765291.

func MotionDetected

func MotionDetected(value bool) *Updatable[bool]

MotionDetected represents a Motion Detected characteristic (22)

UUID: 00000022-0000-1000-8000-0026BB765291.

func NitrogenDioxideDensity

func NitrogenDioxideDensity(value float64) *Updatable[float64]

NitrogenDioxideDensity represents a Nitrogen Dioxide Density characteristic (C4)

UUID: 000000C4-0000-1000-8000-0026BB765291.

func ObstructionDetected

func ObstructionDetected(value bool) *Updatable[bool]

ObstructionDetected represents a Obstruction Detected characteristic (24)

UUID: 00000024-0000-1000-8000-0026BB765291.

func OccupancyDetected

func OccupancyDetected(value OccupancyDetected_Type) *Updatable[uint8]

OccupancyDetected represents a Occupancy Detected characteristic (71)

UUID: 00000071-0000-1000-8000-0026BB765291.

func OutletInUse

func OutletInUse(value bool) *Updatable[bool]

OutletInUse represents a Outlet In Use characteristic (26)

UUID: 00000026-0000-1000-8000-0026BB765291.

func OzoneDensity

func OzoneDensity(value float64) *Updatable[float64]

OzoneDensity represents a Ozone Density characteristic (C3)

UUID: 000000C3-0000-1000-8000-0026BB765291.

func PM10Density

func PM10Density(value float64) *Updatable[float64]

PM10Density represents a PM10 Density characteristic (C7)

UUID: 000000C7-0000-1000-8000-0026BB765291.

func PM25Density

func PM25Density(value float64) *Updatable[float64]

PM25Density represents a PM2.5 Density characteristic (C6)

UUID: 000000C6-0000-1000-8000-0026BB765291.

func PositionState

func PositionState(value PositionState_Type) *Updatable[uint8]

PositionState represents a Position State characteristic (72)

UUID: 00000072-0000-1000-8000-0026BB765291.

func ProgramMode

func ProgramMode(value ProgramMode_Type) *Updatable[uint8]

ProgramMode represents a Program Mode characteristic (D1)

UUID: 000000D1-0000-1000-8000-0026BB765291.

func ProgrammableSwitchEvent

func ProgrammableSwitchEvent(value ProgrammableSwitchEvent_Type) *Updatable[uint8]

ProgrammableSwitchEvent represents a Programmable Switch Event characteristic (73)

UUID: 00000073-0000-1000-8000-0026BB765291.

func RemainingDuration

func RemainingDuration(value uint32) *Updatable[uint32]

RemainingDuration represents a Remaining Duration characteristic (D4)

UUID: 000000D4-0000-1000-8000-0026BB765291.

func SecuritySystemAlarmType

func SecuritySystemAlarmType(value uint8) *Updatable[uint8]

SecuritySystemAlarmType represents a Security System Alarm Type characteristic (8E)

UUID: 0000008E-0000-1000-8000-0026BB765291.

func SecuritySystemCurrentState

func SecuritySystemCurrentState(value SecuritySystemCurrentState_Type) *Updatable[uint8]

SecuritySystemCurrentState represents a Security System Current State characteristic (66)

UUID: 00000066-0000-1000-8000-0026BB765291.

func SleepDiscoveryMode

func SleepDiscoveryMode(value SleepDiscoveryMode_Type) *Updatable[uint8]

SleepDiscoveryMode represents a Sleep Discovery Mode characteristic (E8)

UUID: 000000E8-0000-1000-8000-0026BB765291.

func SmokeDetected

func SmokeDetected(value SmokeDetected_Type) *Updatable[uint8]

SmokeDetected represents a Smoke Detected characteristic (76)

UUID: 00000076-0000-1000-8000-0026BB765291.

func StatusActive

func StatusActive(value bool) *Updatable[bool]

StatusActive represents a Status Active characteristic (75)

UUID: 00000075-0000-1000-8000-0026BB765291.

func StatusFault

func StatusFault(value StatusFault_Type) *Updatable[uint8]

StatusFault represents a Status Fault characteristic (77)

UUID: 00000077-0000-1000-8000-0026BB765291.

func StatusJammed

func StatusJammed(value StatusJammed_Type) *Updatable[uint8]

StatusJammed represents a Status Jammed characteristic (78)

UUID: 00000078-0000-1000-8000-0026BB765291.

func StatusLowBattery

func StatusLowBattery(value StatusLowBattery_Type) *Updatable[uint8]

StatusLowBattery represents a Status Low Battery characteristic (79)

UUID: 00000079-0000-1000-8000-0026BB765291.

func StatusTampered

func StatusTampered(value StatusTampered_Type) *Updatable[uint8]

StatusTampered represents a Status Tampered characteristic (7A)

UUID: 0000007A-0000-1000-8000-0026BB765291.

func SulphurDioxideDensity

func SulphurDioxideDensity(value float64) *Updatable[float64]

SulphurDioxideDensity represents a Sulphur Dioxide Density characteristic (C5)

UUID: 000000C5-0000-1000-8000-0026BB765291.

func VOCDensity

func VOCDensity(value float64) *Updatable[float64]

VOCDensity represents a VOC Density characteristic (C8)

UUID: 000000C8-0000-1000-8000-0026BB765291.

func ValveType

func ValveType(value ValveType_Type) *Updatable[uint8]

ValveType represents a Valve Type characteristic (D5)

UUID: 000000D5-0000-1000-8000-0026BB765291.

func Version

func Version(value string) *Updatable[string]

Version represents a Version characteristic (37)

UUID: 00000037-0000-1000-8000-0026BB765291.

func VolumeControlType

func VolumeControlType(value VolumeControlType_Type) *Updatable[uint8]

VolumeControlType represents a Volume Control Type characteristic (E9)

UUID: 000000E9-0000-1000-8000-0026BB765291.

func WaterLevel

func WaterLevel(value float64) *Updatable[float64]

WaterLevel represents a Water Level characteristic (B5)

UUID: 000000B5-0000-1000-8000-0026BB765291.

func (*Updatable[Format]) Notify

func (u *Updatable[Format]) Notify(cb func(ctx context.Context, val, old interface{}))

Notify fullfils the hapip.CharacteristicNotifier interface (for use by hapip.Handler).

func (*Updatable[Format]) Read

func (u *Updatable[Format]) Read(ctx context.Context) (interface{}, error)

Read fullfils the hapip.CharacteristicReader interface (for use by hapip.Handler).

func (*Updatable[Format]) Update

func (u *Updatable[Format]) Update(val Format)

Update updates the underlying value and notifies the listeners on change.

func (*Updatable[Format]) WithRemoteRead

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

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

func Logs(value LogsResponse) *UpdatableTLV8[LogsResponse]

Logs represents a Logs characteristic (1F)

UUID: 0000001F-0000-1000-8000-0026BB765291.

func StreamingStatus

func StreamingStatus(value StreamingStatusResponse) *UpdatableTLV8[StreamingStatusResponse]

StreamingStatus represents a Streaming Status characteristic (120)

UUID: 00000120-0000-1000-8000-0026BB765291.

func SupportedAudioRecordingConfiguration

func SupportedAudioRecordingConfiguration(value SupportedAudioRecordingConfigurationResponse) *UpdatableTLV8[SupportedAudioRecordingConfigurationResponse]

SupportedAudioRecordingConfiguration represents a Supported Audio Recording Configuration characteristic (207)

UUID: 00000207-0000-1000-8000-0026BB765291.

func SupportedCameraRecordingConfiguration

func SupportedCameraRecordingConfiguration(value SupportedCameraRecordingConfigurationResponse) *UpdatableTLV8[SupportedCameraRecordingConfigurationResponse]

SupportedCameraRecordingConfiguration represents a Supported Camera Recording Configuration characteristic (205)

UUID: 00000205-0000-1000-8000-0026BB765291.

func SupportedVideoRecordingConfiguration

func SupportedVideoRecordingConfiguration(value SupportedVideoRecordingConfigurationResponse) *UpdatableTLV8[SupportedVideoRecordingConfigurationResponse]

SupportedVideoRecordingConfiguration represents a Supported Video Recording Configuration characteristic (206)

UUID: 00000206-0000-1000-8000-0026BB765291.

func (*UpdatableTLV8[Response]) Notify

func (u *UpdatableTLV8[Response]) Notify(cb func(ctx context.Context, val, old interface{}))

Notify fullfils the hapip.CharacteristicNotifier interface (for use by hapip.Handler).

func (*UpdatableTLV8[Response]) Read

func (u *UpdatableTLV8[Response]) Read(ctx context.Context) (interface{}, error)

Read fullfils the hapip.CharacteristicReader interface (for use by hapip.Handler).

func (*UpdatableTLV8[Response]) Update

func (u *UpdatableTLV8[Response]) Update(val Response)

Update updates the underlying value and notifies the listeners on change.

type ValveType_Type

type ValveType_Type uint8

type VideoAttributes

type VideoAttributes struct {
	Width     uint16 `tlv8:"1"`
	Height    uint16 `tlv8:"2"`
	Framerate byte   `tlv8:"3"`
}

type VideoCodecParameters

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 VolumeControlType_Type

type VolumeControlType_Type uint8

type VolumeSelector_Type

type VolumeSelector_Type uint8

type Writable

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.

func Active

func Active(value Active_Type, controllerWrite func(uint8) error) *Writable[uint8]

Active represents a Active characteristic (B0)

UUID: 000000B0-0000-1000-8000-0026BB765291.

func ActiveIdentifier

func ActiveIdentifier(value uint32, controllerWrite func(uint32) error) *Writable[uint32]

ActiveIdentifier represents a Active Identifier characteristic (E7)

UUID: 000000E7-0000-1000-8000-0026BB765291.

func AdministratorOnlyAccess

func AdministratorOnlyAccess(value bool, controllerWrite func(bool) error) *Writable[bool]

AdministratorOnlyAccess represents a Administrator Only Access characteristic (1)

UUID: 00000001-0000-1000-8000-0026BB765291.

func AudioFeedback

func AudioFeedback(value bool, controllerWrite func(bool) error) *Writable[bool]

AudioFeedback represents a Audio Feedback characteristic (5)

UUID: 00000005-0000-1000-8000-0026BB765291.

func Brightness

func Brightness(value int32, controllerWrite func(int32) error) *Writable[int32]

Brightness represents a Brightness characteristic (8)

UUID: 00000008-0000-1000-8000-0026BB765291.

func ClosedCaptions

func ClosedCaptions(value ClosedCaptions_Type, controllerWrite func(uint8) error) *Writable[uint8]

ClosedCaptions represents a Closed Captions characteristic (DD)

UUID: 000000DD-0000-1000-8000-0026BB765291.

func ColorTemperature

func ColorTemperature(value uint32, controllerWrite func(uint32) error) *Writable[uint32]

ColorTemperature represents a Color Temperature characteristic (CE)

UUID: 000000CE-0000-1000-8000-0026BB765291.

func ConfiguredName

func ConfiguredName(value string, controllerWrite func(string) error) *Writable[string]

ConfiguredName represents a Configured Name characteristic (E3)

UUID: 000000E3-0000-1000-8000-0026BB765291.

func CoolingThresholdTemperature

func CoolingThresholdTemperature(value float64, controllerWrite func(float64) error) *Writable[float64]

CoolingThresholdTemperature represents a Cooling Threshold Temperature characteristic (D)

UUID: 0000000D-0000-1000-8000-0026BB765291.

func DigitalZoom

func DigitalZoom(value float64, controllerWrite func(float64) error) *Writable[float64]

DigitalZoom represents a Digital Zoom characteristic (11D)

UUID: 0000011D-0000-1000-8000-0026BB765291.

func HeatingThresholdTemperature

func HeatingThresholdTemperature(value float64, controllerWrite func(float64) error) *Writable[float64]

HeatingThresholdTemperature represents a Heating Threshold Temperature characteristic (12)

UUID: 00000012-0000-1000-8000-0026BB765291.

func Hue

func Hue(value float64, controllerWrite func(float64) error) *Writable[float64]

Hue represents a Hue characteristic (13)

UUID: 00000013-0000-1000-8000-0026BB765291.

func ImageMirroring

func ImageMirroring(value bool, controllerWrite func(bool) error) *Writable[bool]

ImageMirroring represents a Image Mirroring characteristic (11F)

UUID: 0000011F-0000-1000-8000-0026BB765291.

func ImageRotation

func ImageRotation(value float64, controllerWrite func(float64) error) *Writable[float64]

ImageRotation represents a Image Rotation characteristic (11E)

UUID: 0000011E-0000-1000-8000-0026BB765291.

func IsConfigured

func IsConfigured(value IsConfigured_Type, controllerWrite func(uint8) error) *Writable[uint8]

IsConfigured represents a Is Configured characteristic (D6)

UUID: 000000D6-0000-1000-8000-0026BB765291.

func LockManagementAutoSecurityTimeout

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

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

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.

func Mute

func Mute(value bool, controllerWrite func(bool) error) *Writable[bool]

Mute represents a Mute characteristic (11A)

UUID: 0000011A-0000-1000-8000-0026BB765291.

func NightVision

func NightVision(value bool, controllerWrite func(bool) error) *Writable[bool]

NightVision represents a Night Vision characteristic (11B)

UUID: 0000011B-0000-1000-8000-0026BB765291.

func On

func On(value bool, controllerWrite func(bool) error) *Writable[bool]

On represents a On characteristic (25)

UUID: 00000025-0000-1000-8000-0026BB765291.

func OpticalZoom

func OpticalZoom(value float64, controllerWrite func(float64) error) *Writable[float64]

OpticalZoom represents a Optical Zoom characteristic (11C)

UUID: 0000011C-0000-1000-8000-0026BB765291.

func PictureMode

func PictureMode(value PictureMode_Type, controllerWrite func(uint16) error) *Writable[uint16]

PictureMode represents a Picture Mode characteristic (E2)

UUID: 000000E2-0000-1000-8000-0026BB765291.

func RelativeHumidityDehumidifierThreshold

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

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

func RotationDirection(value RotationDirection_Type, controllerWrite func(int32) error) *Writable[int32]

RotationDirection represents a Rotation Direction characteristic (28)

UUID: 00000028-0000-1000-8000-0026BB765291.

func RotationSpeed

func RotationSpeed(value float64, controllerWrite func(float64) error) *Writable[float64]

RotationSpeed represents a Rotation Speed characteristic (29)

UUID: 00000029-0000-1000-8000-0026BB765291.

func Saturation

func Saturation(value float64, controllerWrite func(float64) error) *Writable[float64]

Saturation represents a Saturation characteristic (2F)

UUID: 0000002F-0000-1000-8000-0026BB765291.

func SecuritySystemTargetState

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.

func SetDuration

func SetDuration(value uint32, controllerWrite func(uint32) error) *Writable[uint32]

SetDuration represents a Set Duration characteristic (D3)

UUID: 000000D3-0000-1000-8000-0026BB765291.

func SwingMode

func SwingMode(value SwingMode_Type, controllerWrite func(uint8) error) *Writable[uint8]

SwingMode represents a Swing Mode characteristic (B6)

UUID: 000000B6-0000-1000-8000-0026BB765291.

func TargetAirPurifierState

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

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

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

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

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

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.

func TargetHorizontalTiltAngle

func TargetHorizontalTiltAngle(value int32, controllerWrite func(int32) error) *Writable[int32]

TargetHorizontalTiltAngle represents a Target Horizontal Tilt Angle characteristic (7B)

UUID: 0000007B-0000-1000-8000-0026BB765291.

func TargetHumidifierDehumidifierState

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

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.

func TargetPosition

func TargetPosition(value uint8, controllerWrite func(uint8) error) *Writable[uint8]

TargetPosition represents a Target Position characteristic (7C)

UUID: 0000007C-0000-1000-8000-0026BB765291.

func TargetRelativeHumidity

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

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.

func TargetTemperature

func TargetTemperature(value float64, controllerWrite func(float64) error) *Writable[float64]

TargetTemperature represents a Target Temperature characteristic (35)

UUID: 00000035-0000-1000-8000-0026BB765291.

func TargetTiltAngle

func TargetTiltAngle(value int32, controllerWrite func(int32) error) *Writable[int32]

TargetTiltAngle represents a Target Tilt Angle characteristic (C2)

UUID: 000000C2-0000-1000-8000-0026BB765291.

func TargetVerticalTiltAngle

func TargetVerticalTiltAngle(value int32, controllerWrite func(int32) error) *Writable[int32]

TargetVerticalTiltAngle represents a Target Vertical Tilt Angle characteristic (7D)

UUID: 0000007D-0000-1000-8000-0026BB765291.

func TargetVisibilityState

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

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.

func Volume

func Volume(value uint8, controllerWrite func(uint8) error) *Writable[uint8]

Volume represents a Volume characteristic (119)

UUID: 00000119-0000-1000-8000-0026BB765291.

func (*Writable[Format]) WithRemoteRead

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.

func (*Writable[Format]) Write

func (u *Writable[Format]) Write(ctx context.Context, buf json.RawMessage) error

Write fullfils the hapip.CharacteristicWriter interface (for use by hapip.Handler).

type WritableTLV8

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

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

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

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

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

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

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

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 (*WritableTLV8[Request, Response]) Write

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

type WriteOnly[Format format] struct {
	Metadata[Format]
	// contains filtered or unexported fields
}

func HoldPosition

func HoldPosition(controllerWrite func(bool) error) WriteOnly[bool]

HoldPosition represents a Hold Position characteristic (6F)

UUID: 0000006F-0000-1000-8000-0026BB765291.

func Identify

func Identify(controllerWrite func(bool) error) WriteOnly[bool]

Identify represents a Identify characteristic (14)

UUID: 00000014-0000-1000-8000-0026BB765291.

func PowerModeSelection

func PowerModeSelection(controllerWrite func(uint8) error) WriteOnly[uint8]

PowerModeSelection represents a Power Mode Selection characteristic (DF)

UUID: 000000DF-0000-1000-8000-0026BB765291.

func RemoteKey

func RemoteKey(controllerWrite func(uint8) error) WriteOnly[uint8]

RemoteKey represents a Remote Key characteristic (E1)

UUID: 000000E1-0000-1000-8000-0026BB765291.

func ResetFilterIndication

func ResetFilterIndication(controllerWrite func(uint8) error) WriteOnly[uint8]

ResetFilterIndication represents a Reset Filter Indication characteristic (AD)

UUID: 000000AD-0000-1000-8000-0026BB765291.

func VolumeSelector

func VolumeSelector(controllerWrite func(uint8) error) WriteOnly[uint8]

VolumeSelector represents a Volume Selector characteristic (EA)

UUID: 000000EA-0000-1000-8000-0026BB765291.

func (WriteOnly[Format]) Write

func (w WriteOnly[Format]) Write(ctx context.Context, buf json.RawMessage) error

type WriteOnlyTLV8

type WriteOnlyTLV8[Request any] struct {
	StaticTLV8[struct{}]
	// contains filtered or unexported fields
}

func LockControlPoint

func LockControlPoint(controllerWrite func(LockControlPointRequest) error) WriteOnlyTLV8[LockControlPointRequest]

LockControlPoint represents a Lock Control Point characteristic (19)

UUID: 00000019-0000-1000-8000-0026BB765291.

func (WriteOnlyTLV8[Request]) Write

func (w WriteOnlyTLV8[Request]) Write(ctx context.Context, s json.RawMessage) error

Files

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

Directories

service

Breadcrumb

code.pfad.fr/gohmekit/hapip

code.pfad.fr/gohmekit