diff --git a/tools/makeServiceList b/tools/makeServiceList index af81304..fe9c122 100755 --- a/tools/makeServiceList +++ b/tools/makeServiceList @@ -59,11 +59,13 @@ BEGIN { for(i=0;i%s (%s)\n",s,uuid[s]) - printf("\n") + printf("
%s (%s)
\n",s,uuid[s]) + printf("\n") for(j=0;j",servReq[s,j]?"":"",char,servReq[s,j]?"":"") + printf("") + printf("",servReq[s,j]?"":"",char,uuid[char],servReq[s,j]?"":"") + printf("",format[char]) #for(k=0;k\n") diff --git a/tools/test.md b/tools/test.md index fdfb169..bad3bb7 100644 --- a/tools/test.md +++ b/tools/test.md @@ -1,360 +1,360 @@ -
AccessoryInformation (3E) -
CharacteristicFormat>%s%s%s
%s%s (%s)%s%s
- - - - - - - - +
AccessoryInformation (3E)
Identify
FirmwareRevision
Manufacturer
Model
Name
SerialNumber
HardwareRevision
AccessoryFlags
+ + + + + + + + +
CharacteristicFormat>
Identify (14)BOOL
FirmwareRevision (52)STRING
Manufacturer (20)STRING
Model (21)STRING
Name (23)STRING
SerialNumber (30)STRING
HardwareRevision (53)STRING
AccessoryFlags (A6)UINT32
-
AirPurifier (BB) - - - - - - - - +
AirPurifier (BB)
Active
CurrentAirPurifierState
TargetAirPurifierState
Name
RotationSpeed
SwingMode
LockPhysicalControls
+ + + + + + + +
CharacteristicFormat>
Active (B0)UINT8
CurrentAirPurifierState (A9)UINT8
TargetAirPurifierState (A8)UINT8
Name (23)STRING
RotationSpeed (29)FLOAT
SwingMode (B6)UINT8
LockPhysicalControls (A7)UINT8
-
AirQualitySensor (8D) - - - - - - - - - - - - - +
AirQualitySensor (8D)
AirQuality
Name
OzoneDensity
NitrogenDioxideDensity
SulphurDioxideDensity
PM25Density
PM10Density
VOCDensity
StatusActive
StatusFault
StatusTampered
StatusLowBattery
+ + + + + + + + + + + + +
CharacteristicFormat>
AirQuality (95)UINT8
Name (23)STRING
OzoneDensity (C3)FLOAT
NitrogenDioxideDensity (C4)FLOAT
SulphurDioxideDensity (C5)FLOAT
PM25Density (C6)FLOAT
PM10Density (C7)FLOAT
VOCDensity (C8)FLOAT
StatusActive (75)BOOL
StatusFault (77)UINT8
StatusTampered (7A)UINT8
StatusLowBattery (79)UINT8
-
BatteryService (96) - - - - - +
BatteryService (96)
BatteryLevel
ChargingState
StatusLowBattery
Name
+ + + + +
CharacteristicFormat>
BatteryLevel (68)UINT8
ChargingState (8F)UINT8
StatusLowBattery (79)UINT8
Name (23)STRING
-
CarbonDioxideSensor (97) - - - - - - - - - +
CarbonDioxideSensor (97)
CarbonDioxideDetected
Name
StatusActive
StatusFault
StatusTampered
StatusLowBattery
CarbonDioxideLevel
CarbonDioxidePeakLevel
+ + + + + + + + +
CharacteristicFormat>
CarbonDioxideDetected (92)UINT8
Name (23)STRING
StatusActive (75)BOOL
StatusFault (77)UINT8
StatusTampered (7A)UINT8
StatusLowBattery (79)UINT8
CarbonDioxideLevel (93)FLOAT
CarbonDioxidePeakLevel (94)FLOAT
-
CarbonMonoxideSensor (7F) - - - - - - - - - +
CarbonMonoxideSensor (7F)
CarbonMonoxideDetected
Name
StatusActive
StatusFault
StatusTampered
StatusLowBattery
CarbonMonoxideLevel
CarbonMonoxidePeakLevel
+ + + + + + + + +
CharacteristicFormat>
CarbonMonoxideDetected (69)UINT8
Name (23)STRING
StatusActive (75)BOOL
StatusFault (77)UINT8
StatusTampered (7A)UINT8
StatusLowBattery (79)UINT8
CarbonMonoxideLevel (90)FLOAT
CarbonMonoxidePeakLevel (91)FLOAT
-
ContactSensor (80) - - - - - - - +
ContactSensor (80)
ContactSensorState
Name
StatusActive
StatusFault
StatusTampered
StatusLowBattery
+ + + + + + +
CharacteristicFormat>
ContactSensorState (6A)UINT8
Name (23)STRING
StatusActive (75)BOOL
StatusFault (77)UINT8
StatusTampered (7A)UINT8
StatusLowBattery (79)UINT8
-
Door (81) - - - - - - - +
Door (81)
CurrentPosition
TargetPosition
PositionState
Name
HoldPosition
ObstructionDetected
+ + + + + + +
CharacteristicFormat>
CurrentPosition (6D)UINT8
TargetPosition (7C)UINT8
PositionState (72)UINT8
Name (23)STRING
HoldPosition (6F)BOOL
ObstructionDetected (24)BOOL
-
Doorbell (121) - - - - - +
Doorbell (121)
ProgrammableSwitchEvent
Name
Volume
Brightness
+ + + + +
CharacteristicFormat>
ProgrammableSwitchEvent (73)UINT8
Name (23)STRING
Volume (119)UINT8
Brightness (8)INT
-
Fan (B7) - - - - - - - - - +
Fan (B7)
Active
Name
CurrentFanState
TargetFanState
RotationDirection
RotationSpeed
SwingMode
LockPhysicalControls
+ + + + + + + + +
CharacteristicFormat>
Active (B0)UINT8
Name (23)STRING
CurrentFanState (AF)UINT8
TargetFanState (BF)UINT8
RotationDirection (28)INT
RotationSpeed (29)FLOAT
SwingMode (B6)UINT8
LockPhysicalControls (A7)UINT8
-
Faucet (D7) - - - - +
Faucet (D7)
Active
StatusFault
Name
+ + + +
CharacteristicFormat>
Active (B0)UINT8
StatusFault (77)UINT8
Name (23)STRING
-
FilterMaintenance (BA) - - - - - +
FilterMaintenance (BA)
FilterChangeIndication
Name
FilterLifeLevel
ResetFilterIndication
+ + + + +
CharacteristicFormat>
FilterChangeIndication (AC)UINT8
Name (23)STRING
FilterLifeLevel (AB)FLOAT
ResetFilterIndication (AD)UINT8
-
GarageDoorOpener (41) - - - - - - - +
GarageDoorOpener (41)
CurrentDoorState
TargetDoorState
ObstructionDetected
LockCurrentState
LockTargetState
Name
+ + + + + + +
CharacteristicFormat>
CurrentDoorState (E)UINT8
TargetDoorState (32)UINT8
ObstructionDetected (24)BOOL
LockCurrentState (1D)UINT8
LockTargetState (1E)UINT8
Name (23)STRING
-
HAPProtocolInformation (A2) - - +
HAPProtocolInformation (A2)
Version
+ +
CharacteristicFormat>
Version (37)STRING
-
HeaterCooler (BC) - - - - - - - - - - - - +
HeaterCooler (BC)
Active
CurrentTemperature
CurrentHeaterCoolerState
TargetHeaterCoolerState
Name
RotationSpeed
TemperatureDisplayUnits
SwingMode
CoolingThresholdTemperature
HeatingThresholdTemperature
LockPhysicalControls
+ + + + + + + + + + + +
CharacteristicFormat>
Active (B0)UINT8
CurrentTemperature (11)FLOAT
CurrentHeaterCoolerState (B1)UINT8
TargetHeaterCoolerState (B2)UINT8
Name (23)STRING
RotationSpeed (29)FLOAT
TemperatureDisplayUnits (36)UINT8
SwingMode (B6)UINT8
CoolingThresholdTemperature (D)FLOAT
HeatingThresholdTemperature (12)FLOAT
LockPhysicalControls (A7)UINT8
-
HumidifierDehumidifier (BD) - - - - - - - - - - - - +
HumidifierDehumidifier (BD)
Active
CurrentRelativeHumidity
CurrentHumidifierDehumidifierState
TargetHumidifierDehumidifierState
Name
RelativeHumidityDehumidifierThreshold
RelativeHumidityHumidifierThreshold
RotationSpeed
SwingMode
WaterLevel
LockPhysicalControls
+ + + + + + + + + + + +
CharacteristicFormat>
Active (B0)UINT8
CurrentRelativeHumidity (10)FLOAT
CurrentHumidifierDehumidifierState (B3)UINT8
TargetHumidifierDehumidifierState (B4)UINT8
Name (23)STRING
RelativeHumidityDehumidifierThreshold (C9)FLOAT
RelativeHumidityHumidifierThreshold (CA)FLOAT
RotationSpeed (29)FLOAT
SwingMode (B6)UINT8
WaterLevel (B5)FLOAT
LockPhysicalControls (A7)UINT8
-
HumiditySensor (82) - - - - - - - +
HumiditySensor (82)
CurrentRelativeHumidity
Name
StatusActive
StatusFault
StatusTampered
StatusLowBattery
+ + + + + + +
CharacteristicFormat>
CurrentRelativeHumidity (10)FLOAT
Name (23)STRING
StatusActive (75)BOOL
StatusFault (77)UINT8
StatusTampered (7A)UINT8
StatusLowBattery (79)UINT8
-
InputSource (D9) - - - - - - +
InputSource (D9)
ConfiguredName
IsConfigured
Identifier
CurrentVisibilityState
TargetVisibilityState
+ + + + + +
CharacteristicFormat>
ConfiguredName (E3)STRING
IsConfigured (D6)UINT8
Identifier (E6)UINT32
CurrentVisibilityState (135)UINT8
TargetVisibilityState (134)UINT8
-
IrrigationSystem (CF) - - - - - - +
IrrigationSystem (CF)
Active
ProgramMode
InUse
RemainingDuration
StatusFault
+ + + + + +
CharacteristicFormat>
Active (B0)UINT8
ProgramMode (D1)UINT8
InUse (D2)UINT8
RemainingDuration (D4)UINT32
StatusFault (77)UINT8
-
LeakSensor (83) - - - - - - - +
LeakSensor (83)
LeakDetected
Name
StatusActive
StatusFault
StatusTampered
StatusLowBattery
+ + + + + + +
CharacteristicFormat>
LeakDetected (70)UINT8
Name (23)STRING
StatusActive (75)BOOL
StatusFault (77)UINT8
StatusTampered (7A)UINT8
StatusLowBattery (79)UINT8
-
LightBulb (43) - - - - - - - +
LightBulb (43)
On
Brightness
Hue
Name
Saturation
ColorTemperature
+ + + + + + +
CharacteristicFormat>
On (25)BOOL
Brightness (8)INT
Hue (13)FLOAT
Name (23)STRING
Saturation (2F)FLOAT
ColorTemperature (CE)UINT32
-
LightSensor (84) - - - - - - - +
LightSensor (84)
CurrentAmbientLightLevel
Name
StatusActive
StatusFault
StatusTampered
StatusLowBattery
+ + + + + + +
CharacteristicFormat>
CurrentAmbientLightLevel (6B)FLOAT
Name (23)STRING
StatusActive (75)BOOL
StatusFault (77)UINT8
StatusTampered (7A)UINT8
StatusLowBattery (79)UINT8
-
LockMechanism (45) - - - - +
LockMechanism (45)
LockCurrentState
LockTargetState
Name
+ + + +
CharacteristicFormat>
LockCurrentState (1D)UINT8
LockTargetState (1E)UINT8
Name (23)STRING
-
Microphone (112) - - - - +
Microphone (112)
Mute
Name
Volume
+ + + +
CharacteristicFormat>
Mute (11A)BOOL
Name (23)STRING
Volume (119)UINT8
-
MotionSensor (85) - - - - - - - +
MotionSensor (85)
MotionDetected
Name
StatusActive
StatusFault
StatusTampered
StatusLowBattery
+ + + + + + +
CharacteristicFormat>
MotionDetected (22)BOOL
Name (23)STRING
StatusActive (75)BOOL
StatusFault (77)UINT8
StatusTampered (7A)UINT8
StatusLowBattery (79)UINT8
-
OccupancySensor (86) - - - - - - - +
OccupancySensor (86)
OccupancyDetected
Name
StatusActive
StatusFault
StatusTampered
StatusLowBattery
+ + + + + + +
CharacteristicFormat>
OccupancyDetected (71)UINT8
Name (23)STRING
StatusActive (75)BOOL
StatusFault (77)UINT8
StatusTampered (7A)UINT8
StatusLowBattery (79)UINT8
-
Outlet (47) - - - - +
Outlet (47)
On
OutletInUse
Name
+ + + +
CharacteristicFormat>
On (25)BOOL
OutletInUse (26)BOOL
Name (23)STRING
-
SecuritySystem (7E) - - - - - - - +
SecuritySystem (7E)
SecuritySystemCurrentState
SecuritySystemTargetState
Name
SecuritySystemAlarmType
StatusFault
StatusTampered
+ + + + + + +
CharacteristicFormat>
SecuritySystemCurrentState (66)UINT8
SecuritySystemTargetState (67)UINT8
Name (23)STRING
SecuritySystemAlarmType (8E)UINT8
StatusFault (77)UINT8
StatusTampered (7A)UINT8
-
ServiceLabel (CC) - - +
ServiceLabel (CC)
ServiceLabelNamespace
+ +
CharacteristicFormat>
ServiceLabelNamespace (CD)UINT8
-
Slat (B9) - - - - - - - +
Slat (B9)
CurrentSlatState
SlatType
Name
SwingMode
CurrentTiltAngle
TargetTiltAngle
+ + + + + + +
CharacteristicFormat>
CurrentSlatState (AA)UINT8
SlatType (C0)UINT8
Name (23)STRING
SwingMode (B6)UINT8
CurrentTiltAngle (C1)INT
TargetTiltAngle (C2)INT
-
SmokeSensor (87) - - - - - - - +
SmokeSensor (87)
SmokeDetected
Name
StatusActive
StatusFault
StatusTampered
StatusLowBattery
+ + + + + + +
CharacteristicFormat>
SmokeDetected (76)UINT8
Name (23)STRING
StatusActive (75)BOOL
StatusFault (77)UINT8
StatusTampered (7A)UINT8
StatusLowBattery (79)UINT8
-
Speaker (113) - - - - +
Speaker (113)
Mute
Name
Volume
+ + + +
CharacteristicFormat>
Mute (11A)BOOL
Name (23)STRING
Volume (119)UINT8
-
StatelessProgrammableSwitch (89) - - - - +
StatelessProgrammableSwitch (89)
ProgrammableSwitchEvent
Name
ServiceLabelIndex
+ + + +
CharacteristicFormat>
ProgrammableSwitchEvent (73)UINT8
Name (23)STRING
ServiceLabelIndex (CB)UINT8
-
Switch (49) - - - +
Switch (49)
On
Name
+ + +
CharacteristicFormat>
On (25)BOOL
Name (23)STRING
-
Television (D8) - - - - - - +
Television (D8)
Active
ConfiguredName
ActiveIdentifier
RemoteKey
PowerModeSelection
+ + + + + +
CharacteristicFormat>
Active (B0)UINT8
ConfiguredName (E3)STRING
ActiveIdentifier (E7)UINT32
RemoteKey (E1)UINT8
PowerModeSelection (DF)UINT8
-
TelevisionSpeaker (113) - - - +
TelevisionSpeaker (113)
VolumeControlType
VolumeSelector
+ + +
CharacteristicFormat>
VolumeControlType (E9)UINT8
VolumeSelector (EA)UINT8
-
TemperatureSensor (8A) - - - - - - - +
TemperatureSensor (8A)
CurrentTemperature
Name
StatusActive
StatusFault
StatusTampered
StatusLowBattery
+ + + + + + +
CharacteristicFormat>
CurrentTemperature (11)FLOAT
Name (23)STRING
StatusActive (75)BOOL
StatusFault (77)UINT8
StatusTampered (7A)UINT8
StatusLowBattery (79)UINT8
-
Thermostat (4A) - - - - - - - - - - - +
Thermostat (4A)
CurrentHeatingCoolingState
TargetHeatingCoolingState
CurrentTemperature
TargetTemperature
TemperatureDisplayUnits
CoolingThresholdTemperature
CurrentRelativeHumidity
HeatingThresholdTemperature
Name
TargetRelativeHumidity
+ + + + + + + + + + +
CharacteristicFormat>
CurrentHeatingCoolingState (F)UINT8
TargetHeatingCoolingState (33)UINT8
CurrentTemperature (11)FLOAT
TargetTemperature (35)FLOAT
TemperatureDisplayUnits (36)UINT8
CoolingThresholdTemperature (D)FLOAT
CurrentRelativeHumidity (10)FLOAT
HeatingThresholdTemperature (12)FLOAT
Name (23)STRING
TargetRelativeHumidity (34)FLOAT
-
Valve (D0) - - - - - - - - - - +
Valve (D0)
Active
InUse
ValveType
SetDuration
RemainingDuration
IsConfigured
ServiceLabelIndex
StatusFault
Name
+ + + + + + + + + +
CharacteristicFormat>
Active (B0)UINT8
InUse (D2)UINT8
ValveType (D5)UINT8
SetDuration (D3)UINT32
RemainingDuration (D4)UINT32
IsConfigured (D6)UINT8
ServiceLabelIndex (CB)UINT8
StatusFault (77)UINT8
Name (23)STRING
-
Window (8B) - - - - - - - +
Window (8B)
CurrentPosition
TargetPosition
PositionState
Name
HoldPosition
ObstructionDetected
+ + + + + + +
CharacteristicFormat>
CurrentPosition (6D)UINT8
TargetPosition (7C)UINT8
PositionState (72)UINT8
Name (23)STRING
HoldPosition (6F)BOOL
ObstructionDetected (24)BOOL
-
WindowCovering (8C) - - - - - - - - - - - +
WindowCovering (8C)
TargetPosition
CurrentPosition
PositionState
Name
HoldPosition
CurrentHorizontalTiltAngle
TargetHorizontalTiltAngle
CurrentVerticalTiltAngle
TargetVerticalTiltAngle
ObstructionDetected
+ + + + + + + + + + +
CharacteristicFormat>
TargetPosition (7C)UINT8
CurrentPosition (6D)UINT8
PositionState (72)UINT8
Name (23)STRING
HoldPosition (6F)BOOL
CurrentHorizontalTiltAngle (6C)INT
TargetHorizontalTiltAngle (7B)INT
CurrentVerticalTiltAngle (6E)INT
TargetVerticalTiltAngle (7D)INT
ObstructionDetected (24)BOOL