get characteristics works!
This commit is contained in:
parent
ab735cf980
commit
015563947e
|
@ -7,7 +7,11 @@ use tokio::{
|
||||||
net::TcpStream,
|
net::TcpStream,
|
||||||
};
|
};
|
||||||
|
|
||||||
use crate::{tlv8::TlvEncode, HomekitError};
|
use crate::{
|
||||||
|
pairing_data::{Accessory, ServiceCharacteristic},
|
||||||
|
tlv8::TlvEncode,
|
||||||
|
HomekitError,
|
||||||
|
};
|
||||||
|
|
||||||
pub(super) struct AccessorySocket {
|
pub(super) struct AccessorySocket {
|
||||||
socket: TcpStream,
|
socket: TcpStream,
|
||||||
|
@ -77,27 +81,24 @@ impl AccessorySocket {
|
||||||
.await
|
.await
|
||||||
}
|
}
|
||||||
|
|
||||||
pub async fn get_accessories(&mut self) -> Result<String, HomekitError> {
|
pub async fn get_accessories(&mut self) -> Result<Vec<Accessory>, HomekitError> {
|
||||||
let response = self.req("/accessories", Method::GET, None, &[]).await?;
|
let response = self.req("/accessories", Method::GET, None, &[]).await?;
|
||||||
|
let accessories: crate::pairing_data::Accessories = serde_json::from_slice(&response)?;
|
||||||
Ok(String::from_utf8(response)?)
|
Ok(accessories.accessories)
|
||||||
}
|
}
|
||||||
|
|
||||||
pub async fn get_characteristics(
|
pub async fn get_characteristics(
|
||||||
&mut self,
|
&mut self,
|
||||||
characteristics: &[String],
|
characteristics: &[String],
|
||||||
) -> Result<(), HomekitError> {
|
) -> Result<Vec<ServiceCharacteristic>, HomekitError> {
|
||||||
let characteristic_request = characteristics.join(",");
|
let characteristic_request = characteristics.join(",");
|
||||||
let url =
|
let url =
|
||||||
format!("/characteristics?id={characteristic_request}&meta=1&perms=1&type=1&ev=1");
|
format!("/characteristics?id={characteristic_request}&meta=1&perms=1&type=1&ev=1");
|
||||||
let response = self.req(&url, Method::GET, None, &[]).await?;
|
let response = self.req(&url, Method::GET, None, &[]).await?;
|
||||||
if let Ok(string) = String::from_utf8(response.clone()) {
|
let characteristics: crate::pairing_data::Characteristics =
|
||||||
log::info!("got as string: {string}")
|
serde_json::from_slice(&response)?;
|
||||||
} else {
|
|
||||||
log::info!("got: {response:?}");
|
|
||||||
}
|
|
||||||
|
|
||||||
Ok(())
|
Ok(characteristics.characteristics)
|
||||||
}
|
}
|
||||||
|
|
||||||
pub async fn req(
|
pub async fn req(
|
||||||
|
@ -184,9 +185,9 @@ impl AccessorySocket {
|
||||||
log::info!("response:\n{response:#?}");
|
log::info!("response:\n{response:#?}");
|
||||||
|
|
||||||
let header_size = match result {
|
let header_size = match result {
|
||||||
httparse::Status::Complete(header_size) => header_size,
|
httparse::Status::Complete(header_size) => Ok(header_size),
|
||||||
httparse::Status::Partial => panic!("LOL"),
|
httparse::Status::Partial => Err(HomekitError::Http),
|
||||||
};
|
}?;
|
||||||
let mut packet = packet[header_size..].to_vec();
|
let mut packet = packet[header_size..].to_vec();
|
||||||
|
|
||||||
if let Some(transfer_encoding) = response
|
if let Some(transfer_encoding) = response
|
||||||
|
@ -223,6 +224,20 @@ impl AccessorySocket {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if let Some(content_length) = response
|
||||||
|
.headers
|
||||||
|
.iter()
|
||||||
|
.find(|v| v.name.to_lowercase() == "Content-Length".to_lowercase())
|
||||||
|
{
|
||||||
|
if let Some(length) = std::str::from_utf8(content_length.value)
|
||||||
|
.ok()
|
||||||
|
.and_then(|v| v.parse::<usize>().ok())
|
||||||
|
{
|
||||||
|
while packet.len() < length {
|
||||||
|
packet.append(&mut self.get_next().await?);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
Ok(packet)
|
Ok(packet)
|
||||||
}
|
}
|
||||||
|
|
|
@ -244,22 +244,24 @@ impl DevicePairingData {
|
||||||
|
|
||||||
socket.set_encryption(controller_to_accessory_key, accessory_to_controller_key);
|
socket.set_encryption(controller_to_accessory_key, accessory_to_controller_key);
|
||||||
|
|
||||||
socket.get_accessories().await?;
|
let accessories = socket.get_accessories().await?;
|
||||||
|
|
||||||
|
log::info!("accessories: {accessories:#?}");
|
||||||
|
for a in &accessories {
|
||||||
|
log::info!("{}: service ids: {:#?}", a.id, a.get_service_ids());
|
||||||
|
}
|
||||||
|
|
||||||
// now get characteristics
|
// now get characteristics
|
||||||
// socket
|
let characteristics = socket
|
||||||
// .get_characteristics(
|
.get_characteristics(
|
||||||
// &self
|
&accessories
|
||||||
// .accessories
|
.iter()
|
||||||
// .as_ref()
|
.flat_map(|v| v.get_service_ids())
|
||||||
// .map(|a| {
|
.collect::<Vec<_>>(),
|
||||||
// a.iter()
|
)
|
||||||
// .flat_map(|v| v.get_service_ids())
|
.await?;
|
||||||
// .collect::<Vec<_>>()
|
|
||||||
// })
|
log::info!("characteristics:\n{characteristics:#?}");
|
||||||
// .unwrap_or_default(),
|
|
||||||
// )
|
|
||||||
// .await?;
|
|
||||||
|
|
||||||
Ok(())
|
Ok(())
|
||||||
}
|
}
|
||||||
|
|
|
@ -477,309 +477,309 @@ impl std::fmt::Display for CharacteristicType {
|
||||||
#[derive(Deserialize)]
|
#[derive(Deserialize)]
|
||||||
#[serde(field_identifier)]
|
#[serde(field_identifier)]
|
||||||
enum CharacteristicTypeInner {
|
enum CharacteristicTypeInner {
|
||||||
#[serde(rename = "000000E5-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000E5-0000-1000-8000-0026BB765291", alias = "E5")]
|
||||||
AccessControlLevel,
|
AccessControlLevel,
|
||||||
#[serde(rename = "000000A6-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000A6-0000-1000-8000-0026BB765291", alias = "A6")]
|
||||||
AccessoryFlags,
|
AccessoryFlags,
|
||||||
#[serde(rename = "00000220-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000220-0000-1000-8000-0026BB765291", alias = "220")]
|
||||||
ProductData,
|
ProductData,
|
||||||
#[serde(rename = "000000B0-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000B0-0000-1000-8000-0026BB765291", alias = "B0")]
|
||||||
Active,
|
Active,
|
||||||
#[serde(rename = "00000001-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000001-0000-1000-8000-0026BB765291", alias = "1")]
|
||||||
AdministratorOnlyAccess,
|
AdministratorOnlyAccess,
|
||||||
#[serde(rename = "00000064-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000064-0000-1000-8000-0026BB765291", alias = "64")]
|
||||||
AirParticulateDensity,
|
AirParticulateDensity,
|
||||||
#[serde(rename = "00000065-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000065-0000-1000-8000-0026BB765291", alias = "65")]
|
||||||
AirParticulateSize,
|
AirParticulateSize,
|
||||||
#[serde(rename = "00000095-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000095-0000-1000-8000-0026BB765291", alias = "95")]
|
||||||
AirQuality,
|
AirQuality,
|
||||||
#[serde(rename = "00000005-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000005-0000-1000-8000-0026BB765291", alias = "5")]
|
||||||
AudioFeedback,
|
AudioFeedback,
|
||||||
#[serde(rename = "00000068-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000068-0000-1000-8000-0026BB765291", alias = "68")]
|
||||||
BatteryLevel,
|
BatteryLevel,
|
||||||
#[serde(rename = "00000008-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000008-0000-1000-8000-0026BB765291", alias = "8")]
|
||||||
Brightness,
|
Brightness,
|
||||||
#[serde(rename = "00000092-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000092-0000-1000-8000-0026BB765291", alias = "92")]
|
||||||
CarbonDioxideDetected,
|
CarbonDioxideDetected,
|
||||||
#[serde(rename = "00000093-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000093-0000-1000-8000-0026BB765291", alias = "93")]
|
||||||
CarbonDioxideLevel,
|
CarbonDioxideLevel,
|
||||||
#[serde(rename = "00000094-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000094-0000-1000-8000-0026BB765291", alias = "94")]
|
||||||
CarbonDioxidePeakLevel,
|
CarbonDioxidePeakLevel,
|
||||||
#[serde(rename = "00000069-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000069-0000-1000-8000-0026BB765291", alias = "69")]
|
||||||
CarbonMonoxideDetected,
|
CarbonMonoxideDetected,
|
||||||
#[serde(rename = "00000090-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000090-0000-1000-8000-0026BB765291", alias = "90")]
|
||||||
CarbonMonoxideLevel,
|
CarbonMonoxideLevel,
|
||||||
#[serde(rename = "00000091-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000091-0000-1000-8000-0026BB765291", alias = "91")]
|
||||||
CarbonMonoxidePeakLevel,
|
CarbonMonoxidePeakLevel,
|
||||||
#[serde(rename = "0000008F-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000008F-0000-1000-8000-0026BB765291", alias = "8F")]
|
||||||
ChargingState,
|
ChargingState,
|
||||||
#[serde(rename = "000000CE-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000CE-0000-1000-8000-0026BB765291", alias = "CE")]
|
||||||
ColorTemperature,
|
ColorTemperature,
|
||||||
#[serde(rename = "0000006A-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000006A-0000-1000-8000-0026BB765291", alias = "6A")]
|
||||||
ContactSensorState,
|
ContactSensorState,
|
||||||
#[serde(rename = "0000000D-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000000D-0000-1000-8000-0026BB765291", alias = "D")]
|
||||||
CoolingThresholdTemperature,
|
CoolingThresholdTemperature,
|
||||||
#[serde(rename = "000000A9-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000A9-0000-1000-8000-0026BB765291", alias = "A9")]
|
||||||
CurrentAirPurifierState,
|
CurrentAirPurifierState,
|
||||||
#[serde(rename = "0000006B-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000006B-0000-1000-8000-0026BB765291", alias = "6B")]
|
||||||
CurrentAmbientLightLevel,
|
CurrentAmbientLightLevel,
|
||||||
#[serde(rename = "0000000E-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000000E-0000-1000-8000-0026BB765291", alias = "E")]
|
||||||
CurrentDoorState,
|
CurrentDoorState,
|
||||||
#[serde(rename = "000000AF-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000AF-0000-1000-8000-0026BB765291", alias = "AF")]
|
||||||
CurrentFanState,
|
CurrentFanState,
|
||||||
#[serde(rename = "000000B1-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000B1-0000-1000-8000-0026BB765291", alias = "B1")]
|
||||||
CurrentHeaterCoolerState,
|
CurrentHeaterCoolerState,
|
||||||
#[serde(rename = "0000000F-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000000F-0000-1000-8000-0026BB765291", alias = "F")]
|
||||||
CurrentHeatingCoolingState,
|
CurrentHeatingCoolingState,
|
||||||
#[serde(rename = "0000006C-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000006C-0000-1000-8000-0026BB765291", alias = "6C")]
|
||||||
CurrentHorizontalTiltAngle,
|
CurrentHorizontalTiltAngle,
|
||||||
#[serde(rename = "000000B3-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000B3-0000-1000-8000-0026BB765291", alias = "B3")]
|
||||||
CurrentHumidifierDehumidifierState,
|
CurrentHumidifierDehumidifierState,
|
||||||
#[serde(rename = "0000006D-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000006D-0000-1000-8000-0026BB765291", alias = "6D")]
|
||||||
CurrentPosition,
|
CurrentPosition,
|
||||||
#[serde(rename = "00000010-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000010-0000-1000-8000-0026BB765291", alias = "10")]
|
||||||
CurrentRelativeHumidity,
|
CurrentRelativeHumidity,
|
||||||
#[serde(rename = "000000AA-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000AA-0000-1000-8000-0026BB765291", alias = "AA")]
|
||||||
CurrentSlatState,
|
CurrentSlatState,
|
||||||
#[serde(rename = "00000011-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000011-0000-1000-8000-0026BB765291", alias = "11")]
|
||||||
CurrentTemperature,
|
CurrentTemperature,
|
||||||
#[serde(rename = "000000C1-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000C1-0000-1000-8000-0026BB765291", alias = "C1")]
|
||||||
CurrentTiltAngle,
|
CurrentTiltAngle,
|
||||||
#[serde(rename = "0000006E-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000006E-0000-1000-8000-0026BB765291", alias = "6E")]
|
||||||
CurrentVerticalTiltAngle,
|
CurrentVerticalTiltAngle,
|
||||||
#[serde(rename = "0000011D-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000011D-0000-1000-8000-0026BB765291", alias = "11D")]
|
||||||
DigitalZoom,
|
DigitalZoom,
|
||||||
#[serde(rename = "000000AC-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000AC-0000-1000-8000-0026BB765291", alias = "AC")]
|
||||||
FilterChangeIndication,
|
FilterChangeIndication,
|
||||||
#[serde(rename = "000000AB-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000AB-0000-1000-8000-0026BB765291", alias = "AB")]
|
||||||
FilterLifeLevel,
|
FilterLifeLevel,
|
||||||
#[serde(rename = "00000052-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000052-0000-1000-8000-0026BB765291", alias = "52")]
|
||||||
FirmwareRevision,
|
FirmwareRevision,
|
||||||
#[serde(rename = "00000053-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000053-0000-1000-8000-0026BB765291", alias = "53")]
|
||||||
HardwareRevision,
|
HardwareRevision,
|
||||||
#[serde(rename = "00000012-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000012-0000-1000-8000-0026BB765291", alias = "12")]
|
||||||
HeatingThresholdTemperature,
|
HeatingThresholdTemperature,
|
||||||
#[serde(rename = "0000006F-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000006F-0000-1000-8000-0026BB765291", alias = "6F")]
|
||||||
HoldPosition,
|
HoldPosition,
|
||||||
#[serde(rename = "00000013-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000013-0000-1000-8000-0026BB765291", alias = "13")]
|
||||||
Hue,
|
Hue,
|
||||||
#[serde(rename = "00000014-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000014-0000-1000-8000-0026BB765291", alias = "14")]
|
||||||
Identify,
|
Identify,
|
||||||
#[serde(rename = "0000011F-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000011F-0000-1000-8000-0026BB765291", alias = "11F")]
|
||||||
ImageMirroring,
|
ImageMirroring,
|
||||||
#[serde(rename = "0000011E-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000011E-0000-1000-8000-0026BB765291", alias = "11E")]
|
||||||
ImageRotation,
|
ImageRotation,
|
||||||
#[serde(rename = "000000D2-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000D2-0000-1000-8000-0026BB765291", alias = "D2")]
|
||||||
InUse,
|
InUse,
|
||||||
#[serde(rename = "000000D6-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000D6-0000-1000-8000-0026BB765291", alias = "D6")]
|
||||||
IsConfigured,
|
IsConfigured,
|
||||||
#[serde(rename = "00000070-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000070-0000-1000-8000-0026BB765291", alias = "70")]
|
||||||
LeakDetected,
|
LeakDetected,
|
||||||
#[serde(rename = "00000019-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000019-0000-1000-8000-0026BB765291", alias = "19")]
|
||||||
LockControlPoint,
|
LockControlPoint,
|
||||||
#[serde(rename = "0000001D-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000001D-0000-1000-8000-0026BB765291", alias = "1D")]
|
||||||
LockCurrentState,
|
LockCurrentState,
|
||||||
#[serde(rename = "0000001C-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000001C-0000-1000-8000-0026BB765291", alias = "1C")]
|
||||||
LockLastKnownAction,
|
LockLastKnownAction,
|
||||||
#[serde(rename = "0000001A-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000001A-0000-1000-8000-0026BB765291", alias = "1A")]
|
||||||
LockManagementAutoSecurityTimeout,
|
LockManagementAutoSecurityTimeout,
|
||||||
#[serde(rename = "000000A7-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000A7-0000-1000-8000-0026BB765291", alias = "A7")]
|
||||||
LockPhysicalControls,
|
LockPhysicalControls,
|
||||||
#[serde(rename = "0000001E-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000001E-0000-1000-8000-0026BB765291", alias = "1E")]
|
||||||
LockTargetState,
|
LockTargetState,
|
||||||
#[serde(rename = "0000001F-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000001F-0000-1000-8000-0026BB765291", alias = "1F")]
|
||||||
Logs,
|
Logs,
|
||||||
#[serde(rename = "00000020-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000020-0000-1000-8000-0026BB765291", alias = "20")]
|
||||||
Manufacturer,
|
Manufacturer,
|
||||||
#[serde(rename = "00000021-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000021-0000-1000-8000-0026BB765291", alias = "21")]
|
||||||
Model,
|
Model,
|
||||||
#[serde(rename = "00000022-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000022-0000-1000-8000-0026BB765291", alias = "22")]
|
||||||
MotionDetected,
|
MotionDetected,
|
||||||
#[serde(rename = "0000011A-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000011A-0000-1000-8000-0026BB765291", alias = "11A")]
|
||||||
Mute,
|
Mute,
|
||||||
#[serde(rename = "00000023-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000023-0000-1000-8000-0026BB765291", alias = "23")]
|
||||||
Name,
|
Name,
|
||||||
#[serde(rename = "0000011B-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000011B-0000-1000-8000-0026BB765291", alias = "11B")]
|
||||||
NightVision,
|
NightVision,
|
||||||
#[serde(rename = "000000C4-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000C4-0000-1000-8000-0026BB765291", alias = "C4")]
|
||||||
NitrogenDioxideDensity,
|
NitrogenDioxideDensity,
|
||||||
#[serde(rename = "00000024-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000024-0000-1000-8000-0026BB765291", alias = "24")]
|
||||||
ObstructionDetected,
|
ObstructionDetected,
|
||||||
#[serde(rename = "00000071-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000071-0000-1000-8000-0026BB765291", alias = "71")]
|
||||||
OccupancyDetected,
|
OccupancyDetected,
|
||||||
#[serde(rename = "00000025-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000025-0000-1000-8000-0026BB765291", alias = "25")]
|
||||||
On,
|
On,
|
||||||
#[serde(rename = "0000011C-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000011C-0000-1000-8000-0026BB765291", alias = "11C")]
|
||||||
OpticalZoom,
|
OpticalZoom,
|
||||||
#[serde(rename = "00000026-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000026-0000-1000-8000-0026BB765291", alias = "26")]
|
||||||
OutletInUse,
|
OutletInUse,
|
||||||
#[serde(rename = "000000C3-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000C3-0000-1000-8000-0026BB765291", alias = "C3")]
|
||||||
OzoneDensity,
|
OzoneDensity,
|
||||||
#[serde(rename = "0000004C-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000004C-0000-1000-8000-0026BB765291", alias = "4C")]
|
||||||
PairSetup,
|
PairSetup,
|
||||||
#[serde(rename = "0000004E-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000004E-0000-1000-8000-0026BB765291", alias = "4E")]
|
||||||
PairVerify,
|
PairVerify,
|
||||||
#[serde(rename = "0000004F-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000004F-0000-1000-8000-0026BB765291", alias = "4F")]
|
||||||
PairingFeatures,
|
PairingFeatures,
|
||||||
#[serde(rename = "00000050-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000050-0000-1000-8000-0026BB765291", alias = "50")]
|
||||||
PairingPairings,
|
PairingPairings,
|
||||||
#[serde(rename = "000000E4-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000E4-0000-1000-8000-0026BB765291", alias = "E4")]
|
||||||
PasswordSetting,
|
PasswordSetting,
|
||||||
#[serde(rename = "000000C7-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000C7-0000-1000-8000-0026BB765291", alias = "C7")]
|
||||||
PM10Density,
|
PM10Density,
|
||||||
#[serde(rename = "000000C6-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000C6-0000-1000-8000-0026BB765291", alias = "C6")]
|
||||||
PM2_5Density,
|
PM2_5Density,
|
||||||
#[serde(rename = "00000072-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000072-0000-1000-8000-0026BB765291", alias = "72")]
|
||||||
PositionState,
|
PositionState,
|
||||||
#[serde(rename = "000000D1-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000D1-0000-1000-8000-0026BB765291", alias = "D1")]
|
||||||
ProgramMode,
|
ProgramMode,
|
||||||
#[serde(rename = "00000073-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000073-0000-1000-8000-0026BB765291", alias = "73")]
|
||||||
ProgrammableSwitchEvent,
|
ProgrammableSwitchEvent,
|
||||||
#[serde(rename = "000000C9-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000C9-0000-1000-8000-0026BB765291", alias = "C9")]
|
||||||
RelativeHumidityDehumidifierThreshold,
|
RelativeHumidityDehumidifierThreshold,
|
||||||
#[serde(rename = "000000CA-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000CA-0000-1000-8000-0026BB765291", alias = "CA")]
|
||||||
RelativeHumidityHumidifierThreshold,
|
RelativeHumidityHumidifierThreshold,
|
||||||
#[serde(rename = "000000D4-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000D4-0000-1000-8000-0026BB765291", alias = "D4")]
|
||||||
RemainingDuration,
|
RemainingDuration,
|
||||||
#[serde(rename = "000000AD-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000AD-0000-1000-8000-0026BB765291", alias = "AD")]
|
||||||
ResetFilterIndication,
|
ResetFilterIndication,
|
||||||
#[serde(rename = "00000028-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000028-0000-1000-8000-0026BB765291", alias = "28")]
|
||||||
RotationDirection,
|
RotationDirection,
|
||||||
#[serde(rename = "00000029-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000029-0000-1000-8000-0026BB765291", alias = "29")]
|
||||||
RotationSpeed,
|
RotationSpeed,
|
||||||
#[serde(rename = "0000002F-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000002F-0000-1000-8000-0026BB765291", alias = "2F")]
|
||||||
Saturation,
|
Saturation,
|
||||||
#[serde(rename = "0000008E-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000008E-0000-1000-8000-0026BB765291", alias = "8E")]
|
||||||
SecuritySystemAlarmType,
|
SecuritySystemAlarmType,
|
||||||
#[serde(rename = "00000066-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000066-0000-1000-8000-0026BB765291", alias = "66")]
|
||||||
SecuritySystemCurrentState,
|
SecuritySystemCurrentState,
|
||||||
#[serde(rename = "00000067-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000067-0000-1000-8000-0026BB765291", alias = "67")]
|
||||||
SecuritySystemTargetState,
|
SecuritySystemTargetState,
|
||||||
#[serde(rename = "00000117-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000117-0000-1000-8000-0026BB765291", alias = "117")]
|
||||||
SelectedRTPStreamConfiguration,
|
SelectedRTPStreamConfiguration,
|
||||||
#[serde(rename = "00000030-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000030-0000-1000-8000-0026BB765291", alias = "30")]
|
||||||
SerialNumber,
|
SerialNumber,
|
||||||
#[serde(rename = "000000CB-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000CB-0000-1000-8000-0026BB765291", alias = "CB")]
|
||||||
ServiceLabelIndex,
|
ServiceLabelIndex,
|
||||||
#[serde(rename = "000000CD-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000CD-0000-1000-8000-0026BB765291", alias = "CD")]
|
||||||
ServiceLabelNamespace,
|
ServiceLabelNamespace,
|
||||||
#[serde(rename = "000000D3-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000D3-0000-1000-8000-0026BB765291", alias = "D3")]
|
||||||
SetDuration,
|
SetDuration,
|
||||||
#[serde(rename = "00000118-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000118-0000-1000-8000-0026BB765291", alias = "118")]
|
||||||
SetupEndpoints,
|
SetupEndpoints,
|
||||||
#[serde(rename = "000000C0-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000C0-0000-1000-8000-0026BB765291", alias = "C0")]
|
||||||
SlatType,
|
SlatType,
|
||||||
#[serde(rename = "00000076-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000076-0000-1000-8000-0026BB765291", alias = "76")]
|
||||||
SmokeDetected,
|
SmokeDetected,
|
||||||
#[serde(rename = "00000075-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000075-0000-1000-8000-0026BB765291", alias = "75")]
|
||||||
StatusActive,
|
StatusActive,
|
||||||
#[serde(rename = "00000077-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000077-0000-1000-8000-0026BB765291", alias = "77")]
|
||||||
StatusFault,
|
StatusFault,
|
||||||
#[serde(rename = "00000078-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000078-0000-1000-8000-0026BB765291", alias = "78")]
|
||||||
StatusJammed,
|
StatusJammed,
|
||||||
#[serde(rename = "00000079-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000079-0000-1000-8000-0026BB765291", alias = "79")]
|
||||||
StatusLowBattery,
|
StatusLowBattery,
|
||||||
#[serde(rename = "0000007A-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000007A-0000-1000-8000-0026BB765291", alias = "7A")]
|
||||||
StatusTampered,
|
StatusTampered,
|
||||||
#[serde(rename = "00000120-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000120-0000-1000-8000-0026BB765291", alias = "120")]
|
||||||
StreamingStatus,
|
StreamingStatus,
|
||||||
#[serde(rename = "000000C5-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000C5-0000-1000-8000-0026BB765291", alias = "C5")]
|
||||||
SulphurDioxideDensity,
|
SulphurDioxideDensity,
|
||||||
#[serde(rename = "00000115-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000115-0000-1000-8000-0026BB765291", alias = "115")]
|
||||||
SupportedAudioStreamConfiguration,
|
SupportedAudioStreamConfiguration,
|
||||||
#[serde(rename = "00000116-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000116-0000-1000-8000-0026BB765291", alias = "116")]
|
||||||
SupportedRTPConfiguration,
|
SupportedRTPConfiguration,
|
||||||
#[serde(rename = "00000114-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000114-0000-1000-8000-0026BB765291", alias = "114")]
|
||||||
SupportedVideoStreamConfiguration,
|
SupportedVideoStreamConfiguration,
|
||||||
#[serde(rename = "000000B6-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000B6-0000-1000-8000-0026BB765291", alias = "B6")]
|
||||||
SwingMode,
|
SwingMode,
|
||||||
#[serde(rename = "000000A8-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000A8-0000-1000-8000-0026BB765291", alias = "A8")]
|
||||||
TargetAirPurifierState,
|
TargetAirPurifierState,
|
||||||
#[serde(rename = "000000AE-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000AE-0000-1000-8000-0026BB765291", alias = "AE")]
|
||||||
TargetAirQuality,
|
TargetAirQuality,
|
||||||
#[serde(rename = "00000032-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000032-0000-1000-8000-0026BB765291", alias = "32")]
|
||||||
TargetDoorState,
|
TargetDoorState,
|
||||||
#[serde(rename = "000000BF-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000BF-0000-1000-8000-0026BB765291", alias = "BF")]
|
||||||
TargetFanState,
|
TargetFanState,
|
||||||
#[serde(rename = "000000B2-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000B2-0000-1000-8000-0026BB765291", alias = "B2")]
|
||||||
TargetHeaterCoolerState,
|
TargetHeaterCoolerState,
|
||||||
#[serde(rename = "00000033-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000033-0000-1000-8000-0026BB765291", alias = "33")]
|
||||||
TargetHeatingCoolingState,
|
TargetHeatingCoolingState,
|
||||||
#[serde(rename = "0000007B-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000007B-0000-1000-8000-0026BB765291", alias = "7B")]
|
||||||
TargetHorizontalTiltAngle,
|
TargetHorizontalTiltAngle,
|
||||||
#[serde(rename = "000000B4-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000B4-0000-1000-8000-0026BB765291", alias = "B4")]
|
||||||
TargetHumidifierDehumidifierState,
|
TargetHumidifierDehumidifierState,
|
||||||
#[serde(rename = "0000007C-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000007C-0000-1000-8000-0026BB765291", alias = "7C")]
|
||||||
TargetPosition,
|
TargetPosition,
|
||||||
#[serde(rename = "00000034-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000034-0000-1000-8000-0026BB765291", alias = "34")]
|
||||||
TargetRelativeHumidity,
|
TargetRelativeHumidity,
|
||||||
#[serde(rename = "000000BE-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000BE-0000-1000-8000-0026BB765291", alias = "BE")]
|
||||||
TargetSlatState,
|
TargetSlatState,
|
||||||
#[serde(rename = "00000035-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000035-0000-1000-8000-0026BB765291", alias = "35")]
|
||||||
TargetTemperature,
|
TargetTemperature,
|
||||||
#[serde(rename = "000000C2-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000C2-0000-1000-8000-0026BB765291", alias = "C2")]
|
||||||
TargetTiltAngle,
|
TargetTiltAngle,
|
||||||
#[serde(rename = "0000007D-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000007D-0000-1000-8000-0026BB765291", alias = "7D")]
|
||||||
TargetVerticalTiltAngle,
|
TargetVerticalTiltAngle,
|
||||||
#[serde(rename = "00000036-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000036-0000-1000-8000-0026BB765291", alias = "36")]
|
||||||
TemperatureDisplayUnits,
|
TemperatureDisplayUnits,
|
||||||
#[serde(rename = "000000D5-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000D5-0000-1000-8000-0026BB765291", alias = "D5")]
|
||||||
ValveType,
|
ValveType,
|
||||||
#[serde(rename = "00000037-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000037-0000-1000-8000-0026BB765291", alias = "37")]
|
||||||
Version,
|
Version,
|
||||||
#[serde(rename = "000000C8-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000C8-0000-1000-8000-0026BB765291", alias = "C8")]
|
||||||
VOCDensity,
|
VOCDensity,
|
||||||
#[serde(rename = "00000119-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000119-0000-1000-8000-0026BB765291", alias = "119")]
|
||||||
Volume,
|
Volume,
|
||||||
#[serde(rename = "000000B5-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000B5-0000-1000-8000-0026BB765291", alias = "B5")]
|
||||||
WaterLevel,
|
WaterLevel,
|
||||||
#[serde(rename = "00000226-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000226-0000-1000-8000-0026BB765291", alias = "226")]
|
||||||
RecordingAudioActive,
|
RecordingAudioActive,
|
||||||
#[serde(rename = "00000205-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000205-0000-1000-8000-0026BB765291", alias = "205")]
|
||||||
SupportedCameraRecordingConfiguration,
|
SupportedCameraRecordingConfiguration,
|
||||||
#[serde(rename = "00000206-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000206-0000-1000-8000-0026BB765291", alias = "206")]
|
||||||
SupportedVideoRecordingConfiguration,
|
SupportedVideoRecordingConfiguration,
|
||||||
#[serde(rename = "00000207-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000207-0000-1000-8000-0026BB765291", alias = "207")]
|
||||||
SupportedAudioRecordingConfiguration,
|
SupportedAudioRecordingConfiguration,
|
||||||
#[serde(rename = "00000209-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000209-0000-1000-8000-0026BB765291", alias = "209")]
|
||||||
SelectedCameraRecordingConfiguration,
|
SelectedCameraRecordingConfiguration,
|
||||||
#[serde(rename = "0000021D-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000021D-0000-1000-8000-0026BB765291", alias = "21D")]
|
||||||
CameraOperatingModeIndicator,
|
CameraOperatingModeIndicator,
|
||||||
#[serde(rename = "00000223-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000223-0000-1000-8000-0026BB765291", alias = "223")]
|
||||||
EventSnapshotsActive,
|
EventSnapshotsActive,
|
||||||
#[serde(rename = "00000224-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000224-0000-1000-8000-0026BB765291", alias = "224")]
|
||||||
DiagonalFieldOfView,
|
DiagonalFieldOfView,
|
||||||
#[serde(rename = "0000021B-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000021B-0000-1000-8000-0026BB765291", alias = "21B")]
|
||||||
HomeKitCameraActive,
|
HomeKitCameraActive,
|
||||||
#[serde(rename = "00000227-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000227-0000-1000-8000-0026BB765291", alias = "227")]
|
||||||
ManuallyDisabled,
|
ManuallyDisabled,
|
||||||
#[serde(rename = "0000021C-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000021C-0000-1000-8000-0026BB765291", alias = "21C")]
|
||||||
ThirdPartyCameraActive,
|
ThirdPartyCameraActive,
|
||||||
#[serde(rename = "00000225-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000225-0000-1000-8000-0026BB765291", alias = "225")]
|
||||||
PeriodicSnapshotsActive,
|
PeriodicSnapshotsActive,
|
||||||
#[serde(rename = "0000020C-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000020C-0000-1000-8000-0026BB765291", alias = "20C")]
|
||||||
NetworkClientProfileControl,
|
NetworkClientProfileControl,
|
||||||
#[serde(rename = "0000020D-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000020D-0000-1000-8000-0026BB765291", alias = "20D")]
|
||||||
NetworkClientStatusControl,
|
NetworkClientStatusControl,
|
||||||
#[serde(rename = "0000020E-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000020E-0000-1000-8000-0026BB765291", alias = "20E")]
|
||||||
RouterStatus,
|
RouterStatus,
|
||||||
#[serde(rename = "00000210-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000210-0000-1000-8000-0026BB765291", alias = "210")]
|
||||||
SupportedRouterConfiguration,
|
SupportedRouterConfiguration,
|
||||||
#[serde(rename = "00000211-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000211-0000-1000-8000-0026BB765291", alias = "211")]
|
||||||
WANConfigurationList,
|
WANConfigurationList,
|
||||||
#[serde(rename = "00000212-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000212-0000-1000-8000-0026BB765291", alias = "212")]
|
||||||
WANStatusList,
|
WANStatusList,
|
||||||
#[serde(rename = "00000215-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000215-0000-1000-8000-0026BB765291", alias = "215")]
|
||||||
ManagedNetworkEnable,
|
ManagedNetworkEnable,
|
||||||
#[serde(rename = "0000021F-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000021F-0000-1000-8000-0026BB765291", alias = "21F")]
|
||||||
NetworkAccessViolationControl,
|
NetworkAccessViolationControl,
|
||||||
#[serde(rename = "0000021E-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000021E-0000-1000-8000-0026BB765291", alias = "21E")]
|
||||||
WiFiSatelliteStatus,
|
WiFiSatelliteStatus,
|
||||||
#[serde(rename = "00000222-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000222-0000-1000-8000-0026BB765291", alias = "222")]
|
||||||
WakeConfiguration,
|
WakeConfiguration,
|
||||||
#[serde(rename = "00000202-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000202-0000-1000-8000-0026BB765291", alias = "202")]
|
||||||
SupportedTransferTransportConfiguration,
|
SupportedTransferTransportConfiguration,
|
||||||
#[serde(rename = "00000201-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000201-0000-1000-8000-0026BB765291", alias = "201")]
|
||||||
SetupTransferTransport,
|
SetupTransferTransport,
|
||||||
#[serde(rename = "0000021E-0000-1000-8000-0000023B")]
|
#[serde(rename = "0000021E-0000-1000-8000-0000023B")]
|
||||||
ActivityInterval,
|
ActivityInterval,
|
||||||
|
@ -831,95 +831,95 @@ enum CharacteristicTypeInner {
|
||||||
WiFiCapabilities,
|
WiFiCapabilities,
|
||||||
#[serde(rename = "0000021E-0000-1000-8000-0000022D")]
|
#[serde(rename = "0000021E-0000-1000-8000-0000022D")]
|
||||||
WiFiConfigurationControl,
|
WiFiConfigurationControl,
|
||||||
#[serde(rename = "000000A4-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000A4-0000-1000-8000-0026BB765291", alias = "A4")]
|
||||||
AppMatchingIdentifier,
|
AppMatchingIdentifier,
|
||||||
#[serde(rename = "00000074-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000074-0000-1000-8000-0026BB765291", alias = "74")]
|
||||||
ProgrammableSwitchOutputState,
|
ProgrammableSwitchOutputState,
|
||||||
#[serde(rename = "00000054-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000054-0000-1000-8000-0026BB765291", alias = "54")]
|
||||||
SoftwareRevision,
|
SoftwareRevision,
|
||||||
#[serde(rename = "00000057-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000057-0000-1000-8000-0026BB765291", alias = "57")]
|
||||||
AccessoryIdentifier,
|
AccessoryIdentifier,
|
||||||
#[serde(rename = "000000A3-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000A3-0000-1000-8000-0026BB765291", alias = "A3")]
|
||||||
Category,
|
Category,
|
||||||
#[serde(rename = "000000A0-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000A0-0000-1000-8000-0026BB765291", alias = "A0")]
|
||||||
ConfigureBridgedAccessory,
|
ConfigureBridgedAccessory,
|
||||||
#[serde(rename = "0000009D-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000009D-0000-1000-8000-0026BB765291", alias = "9D")]
|
||||||
ConfigureBridgedAccessoryStatus,
|
ConfigureBridgedAccessoryStatus,
|
||||||
#[serde(rename = "0000009B-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000009B-0000-1000-8000-0026BB765291", alias = "9B")]
|
||||||
CurrentTime,
|
CurrentTime,
|
||||||
#[serde(rename = "00000098-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000098-0000-1000-8000-0026BB765291", alias = "98")]
|
||||||
DayoftheWeek,
|
DayoftheWeek,
|
||||||
#[serde(rename = "0000009E-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000009E-0000-1000-8000-0026BB765291", alias = "9E")]
|
||||||
DiscoverBridgedAccessories,
|
DiscoverBridgedAccessories,
|
||||||
#[serde(rename = "0000009F-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000009F-0000-1000-8000-0026BB765291", alias = "9F")]
|
||||||
DiscoveredBridgedAccessories,
|
DiscoveredBridgedAccessories,
|
||||||
#[serde(rename = "0000009C-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000009C-0000-1000-8000-0026BB765291", alias = "9C")]
|
||||||
LinkQuality,
|
LinkQuality,
|
||||||
#[serde(rename = "00000063-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000063-0000-1000-8000-0026BB765291", alias = "63")]
|
||||||
Reachable,
|
Reachable,
|
||||||
#[serde(rename = "0000005E-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000005E-0000-1000-8000-0026BB765291", alias = "5E")]
|
||||||
RelayControlPoint,
|
RelayControlPoint,
|
||||||
#[serde(rename = "0000005B-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000005B-0000-1000-8000-0026BB765291", alias = "5B")]
|
||||||
RelayEnabled,
|
RelayEnabled,
|
||||||
#[serde(rename = "0000005C-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000005C-0000-1000-8000-0026BB765291", alias = "5C")]
|
||||||
RelayState,
|
RelayState,
|
||||||
#[serde(rename = "0000009A-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000009A-0000-1000-8000-0026BB765291", alias = "9A")]
|
||||||
TimeUpdate,
|
TimeUpdate,
|
||||||
#[serde(rename = "00000061-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000061-0000-1000-8000-0026BB765291", alias = "61")]
|
||||||
TunnelConnectionTimeout,
|
TunnelConnectionTimeout,
|
||||||
#[serde(rename = "00000060-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000060-0000-1000-8000-0026BB765291", alias = "60")]
|
||||||
TunneledAccessoryAdvertising,
|
TunneledAccessoryAdvertising,
|
||||||
#[serde(rename = "00000059-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000059-0000-1000-8000-0026BB765291", alias = "59")]
|
||||||
TunneledAccessoryConnected,
|
TunneledAccessoryConnected,
|
||||||
#[serde(rename = "00000058-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000058-0000-1000-8000-0026BB765291", alias = "58")]
|
||||||
TunneledAccessoryStateNumber,
|
TunneledAccessoryStateNumber,
|
||||||
#[serde(rename = "000000E7-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000E7-0000-1000-8000-0026BB765291", alias = "E7")]
|
||||||
ActiveIdentifier,
|
ActiveIdentifier,
|
||||||
#[serde(rename = "000000E3-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000E3-0000-1000-8000-0026BB765291", alias = "E3")]
|
||||||
ConfiguredName,
|
ConfiguredName,
|
||||||
#[serde(rename = "000000E8-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000E8-0000-1000-8000-0026BB765291", alias = "E8")]
|
||||||
SleepDiscoveryMode,
|
SleepDiscoveryMode,
|
||||||
#[serde(rename = "000000DD-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000DD-0000-1000-8000-0026BB765291", alias = "DD")]
|
||||||
ClosedCaptions,
|
ClosedCaptions,
|
||||||
#[serde(rename = "00000136-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000136-0000-1000-8000-0026BB765291", alias = "136")]
|
||||||
DisplayOrder,
|
DisplayOrder,
|
||||||
#[serde(rename = "000000E0-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000E0-0000-1000-8000-0026BB765291", alias = "E0")]
|
||||||
CurrentMediaState,
|
CurrentMediaState,
|
||||||
#[serde(rename = "00000137-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000137-0000-1000-8000-0026BB765291", alias = "137")]
|
||||||
TargetMediaState,
|
TargetMediaState,
|
||||||
#[serde(rename = "000000E2-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000E2-0000-1000-8000-0026BB765291", alias = "E2")]
|
||||||
PictureMode,
|
PictureMode,
|
||||||
#[serde(rename = "000000DF-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000DF-0000-1000-8000-0026BB765291", alias = "DF")]
|
||||||
PowerModeSelection,
|
PowerModeSelection,
|
||||||
#[serde(rename = "000000E1-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000E1-0000-1000-8000-0026BB765291", alias = "E1")]
|
||||||
RemoteKey,
|
RemoteKey,
|
||||||
#[serde(rename = "000000DB-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000DB-0000-1000-8000-0026BB765291", alias = "DB")]
|
||||||
InputSourceType,
|
InputSourceType,
|
||||||
#[serde(rename = "000000DC-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000DC-0000-1000-8000-0026BB765291", alias = "DC")]
|
||||||
InputDeviceType,
|
InputDeviceType,
|
||||||
#[serde(rename = "000000E6-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000E6-0000-1000-8000-0026BB765291", alias = "E6")]
|
||||||
Identifier,
|
Identifier,
|
||||||
#[serde(rename = "00000135-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000135-0000-1000-8000-0026BB765291", alias = "135")]
|
||||||
CurrentVisibilityState,
|
CurrentVisibilityState,
|
||||||
#[serde(rename = "00000134-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000134-0000-1000-8000-0026BB765291", alias = "134")]
|
||||||
TargetVisibilityState,
|
TargetVisibilityState,
|
||||||
#[serde(rename = "000000E9-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000E9-0000-1000-8000-0026BB765291", alias = "E9")]
|
||||||
VolumeControlType,
|
VolumeControlType,
|
||||||
#[serde(rename = "000000EA-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000EA-0000-1000-8000-0026BB765291", alias = "EA")]
|
||||||
VolumeSelector,
|
VolumeSelector,
|
||||||
#[serde(rename = "00000123-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000123-0000-1000-8000-0026BB765291", alias = "123")]
|
||||||
TargetControlSupportedConfiguration,
|
TargetControlSupportedConfiguration,
|
||||||
#[serde(rename = "00000124-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000124-0000-1000-8000-0026BB765291", alias = "124")]
|
||||||
TargetControlList,
|
TargetControlList,
|
||||||
#[serde(rename = "00000126-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000126-0000-1000-8000-0026BB765291", alias = "126")]
|
||||||
ButtonEvent,
|
ButtonEvent,
|
||||||
#[serde(rename = "00000128-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000128-0000-1000-8000-0026BB765291", alias = "128")]
|
||||||
SelectedAudioStreamConfiguration,
|
SelectedAudioStreamConfiguration,
|
||||||
#[serde(rename = "00000132-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000132-0000-1000-8000-0026BB765291", alias = "132")]
|
||||||
SiriInputType,
|
SiriInputType,
|
||||||
#[serde(rename = "00000130-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000130-0000-1000-8000-0026BB765291", alias = "130")]
|
||||||
SupportedDataStreamTransportConfiguration,
|
SupportedDataStreamTransportConfiguration,
|
||||||
#[serde(rename = "00000131-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000131-0000-1000-8000-0026BB765291", alias = "131")]
|
||||||
SetupDataStreamTransport,
|
SetupDataStreamTransport,
|
||||||
Unknown(String),
|
Unknown(String),
|
||||||
}
|
}
|
||||||
|
@ -1381,101 +1381,101 @@ impl std::fmt::Display for ServiceType {
|
||||||
#[derive(Deserialize)]
|
#[derive(Deserialize)]
|
||||||
#[serde(field_identifier)]
|
#[serde(field_identifier)]
|
||||||
pub enum ServiceTypeInner {
|
pub enum ServiceTypeInner {
|
||||||
#[serde(rename = "'000000DA-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "'000000DA-0000-1000-8000-0026BB765291", alias = "DA")]
|
||||||
AccessControl,
|
AccessControl,
|
||||||
#[serde(rename = "0000003E-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000003E-0000-1000-8000-0026BB765291", alias = "3E")]
|
||||||
AccessoryInformation,
|
AccessoryInformation,
|
||||||
#[serde(rename = "000000BB-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000BB-0000-1000-8000-0026BB765291", alias = "BB")]
|
||||||
AirPurifier,
|
AirPurifier,
|
||||||
#[serde(rename = "0000008D-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000008D-0000-1000-8000-0026BB765291", alias = "8D")]
|
||||||
AirQualitySensor,
|
AirQualitySensor,
|
||||||
#[serde(rename = "00000096-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000096-0000-1000-8000-0026BB765291", alias = "96")]
|
||||||
BatteryService,
|
BatteryService,
|
||||||
#[serde(rename = "00000110-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000110-0000-1000-8000-0026BB765291", alias = "110")]
|
||||||
CameraRTPStreamManagement,
|
CameraRTPStreamManagement,
|
||||||
#[serde(rename = "00000097-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000097-0000-1000-8000-0026BB765291", alias = "97")]
|
||||||
CarbonDioxideSensor,
|
CarbonDioxideSensor,
|
||||||
#[serde(rename = "0000007F-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000007F-0000-1000-8000-0026BB765291", alias = "7F")]
|
||||||
CarbonMonoxideSensor,
|
CarbonMonoxideSensor,
|
||||||
#[serde(rename = "00000080-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000080-0000-1000-8000-0026BB765291", alias = "80")]
|
||||||
ContactSensor,
|
ContactSensor,
|
||||||
#[serde(rename = "00000081-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000081-0000-1000-8000-0026BB765291", alias = "81")]
|
||||||
Door,
|
Door,
|
||||||
#[serde(rename = "00000121-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000121-0000-1000-8000-0026BB765291", alias = "121")]
|
||||||
Doorbell,
|
Doorbell,
|
||||||
#[serde(rename = "00000040-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000040-0000-1000-8000-0026BB765291", alias = "40")]
|
||||||
Fan,
|
Fan,
|
||||||
#[serde(rename = "000000B7-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000B7-0000-1000-8000-0026BB765291", alias = "B7")]
|
||||||
Fanv2,
|
Fanv2,
|
||||||
#[serde(rename = "000000BA-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000BA-0000-1000-8000-0026BB765291", alias = "BA")]
|
||||||
FilterMaintenance,
|
FilterMaintenance,
|
||||||
#[serde(rename = "000000D7-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000D7-0000-1000-8000-0026BB765291", alias = "D7")]
|
||||||
Faucet,
|
Faucet,
|
||||||
#[serde(rename = "00000041-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000041-0000-1000-8000-0026BB765291", alias = "41")]
|
||||||
GarageDoorOpener,
|
GarageDoorOpener,
|
||||||
#[serde(rename = "000000BC-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000BC-0000-1000-8000-0026BB765291", alias = "BC")]
|
||||||
HeaterCooler,
|
HeaterCooler,
|
||||||
#[serde(rename = "000000BD-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000BD-0000-1000-8000-0026BB765291", alias = "BD")]
|
||||||
HumidifierDehumidifier,
|
HumidifierDehumidifier,
|
||||||
#[serde(rename = "00000082-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000082-0000-1000-8000-0026BB765291", alias = "82")]
|
||||||
HumiditySensor,
|
HumiditySensor,
|
||||||
#[serde(rename = "000000CF-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000CF-0000-1000-8000-0026BB765291", alias = "CF")]
|
||||||
IrrigationSystem,
|
IrrigationSystem,
|
||||||
#[serde(rename = "00000083-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000083-0000-1000-8000-0026BB765291", alias = "83")]
|
||||||
LeakSensor,
|
LeakSensor,
|
||||||
#[serde(rename = "00000084-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000084-0000-1000-8000-0026BB765291", alias = "84")]
|
||||||
LightSensor,
|
LightSensor,
|
||||||
#[serde(rename = "00000043-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000043-0000-1000-8000-0026BB765291", alias = "43")]
|
||||||
Lightbulb,
|
Lightbulb,
|
||||||
#[serde(rename = "00000044-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000044-0000-1000-8000-0026BB765291", alias = "44")]
|
||||||
LockManagement,
|
LockManagement,
|
||||||
#[serde(rename = "00000045-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000045-0000-1000-8000-0026BB765291", alias = "45")]
|
||||||
LockMechanism,
|
LockMechanism,
|
||||||
#[serde(rename = "00000112-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000112-0000-1000-8000-0026BB765291", alias = "112")]
|
||||||
Microphone,
|
Microphone,
|
||||||
#[serde(rename = "00000085-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000085-0000-1000-8000-0026BB765291", alias = "85")]
|
||||||
MotionSensor,
|
MotionSensor,
|
||||||
#[serde(rename = "00000086-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000086-0000-1000-8000-0026BB765291", alias = "86")]
|
||||||
OccupancySensor,
|
OccupancySensor,
|
||||||
#[serde(rename = "00000047-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000047-0000-1000-8000-0026BB765291", alias = "47")]
|
||||||
Outlet,
|
Outlet,
|
||||||
#[serde(rename = "0000007E-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000007E-0000-1000-8000-0026BB765291", alias = "7E")]
|
||||||
SecuritySystem,
|
SecuritySystem,
|
||||||
#[serde(rename = "000000CC-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000CC-0000-1000-8000-0026BB765291", alias = "CC")]
|
||||||
ServiceLabel,
|
ServiceLabel,
|
||||||
#[serde(rename = "000000B9-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000B9-0000-1000-8000-0026BB765291", alias = "B9")]
|
||||||
Slat,
|
Slat,
|
||||||
#[serde(rename = "00000087-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000087-0000-1000-8000-0026BB765291", alias = "87")]
|
||||||
SmokeSensor,
|
SmokeSensor,
|
||||||
#[serde(rename = "00000228-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000228-0000-1000-8000-0026BB765291", alias = "228")]
|
||||||
SmartSpeaker,
|
SmartSpeaker,
|
||||||
#[serde(rename = "00000113-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000113-0000-1000-8000-0026BB765291", alias = "113")]
|
||||||
Speaker,
|
Speaker,
|
||||||
#[serde(rename = "00000089-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000089-0000-1000-8000-0026BB765291", alias = "89")]
|
||||||
StatelessProgrammableSwitch,
|
StatelessProgrammableSwitch,
|
||||||
#[serde(rename = "00000049-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000049-0000-1000-8000-0026BB765291", alias = "49")]
|
||||||
Switch,
|
Switch,
|
||||||
#[serde(rename = "0000008A-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000008A-0000-1000-8000-0026BB765291", alias = "8A")]
|
||||||
TemperatureSensor,
|
TemperatureSensor,
|
||||||
#[serde(rename = "0000004A-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000004A-0000-1000-8000-0026BB765291", alias = "4A")]
|
||||||
Thermostat,
|
Thermostat,
|
||||||
#[serde(rename = "000000D0-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000D0-0000-1000-8000-0026BB765291", alias = "D0")]
|
||||||
Valve,
|
Valve,
|
||||||
#[serde(rename = "0000008B-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000008B-0000-1000-8000-0026BB765291", alias = "8B")]
|
||||||
Window,
|
Window,
|
||||||
#[serde(rename = "0000008C-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000008C-0000-1000-8000-0026BB765291", alias = "8C")]
|
||||||
WindowCovering,
|
WindowCovering,
|
||||||
#[serde(rename = "0000021A-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000021A-0000-1000-8000-0026BB765291", alias = "21A")]
|
||||||
CameraOperatingMode,
|
CameraOperatingMode,
|
||||||
#[serde(rename = "00000204-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000204-0000-1000-8000-0026BB765291", alias = "204")]
|
||||||
CameraEventRecordingManagement,
|
CameraEventRecordingManagement,
|
||||||
#[serde(rename = "0000020A-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000020A-0000-1000-8000-0026BB765291", alias = "20A")]
|
||||||
WiFiRouter,
|
WiFiRouter,
|
||||||
#[serde(rename = "0000020F-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000020F-0000-1000-8000-0026BB765291", alias = "20F")]
|
||||||
WiFiSatellite,
|
WiFiSatellite,
|
||||||
#[serde(rename = "00000221-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000221-0000-1000-8000-0026BB765291", alias = "221")]
|
||||||
PowerManagement,
|
PowerManagement,
|
||||||
#[serde(rename = "00000203-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000203-0000-1000-8000-0026BB765291", alias = "203")]
|
||||||
TransferTransportManagement,
|
TransferTransportManagement,
|
||||||
#[serde(rename = "00000203-0000-1000-8000-00000239")]
|
#[serde(rename = "00000203-0000-1000-8000-00000239")]
|
||||||
AccessoryRuntimeInformation,
|
AccessoryRuntimeInformation,
|
||||||
|
@ -1483,39 +1483,39 @@ pub enum ServiceTypeInner {
|
||||||
Diagnostics,
|
Diagnostics,
|
||||||
#[serde(rename = "00000203-0000-1000-8000-0000022A")]
|
#[serde(rename = "00000203-0000-1000-8000-0000022A")]
|
||||||
WiFiTransport,
|
WiFiTransport,
|
||||||
#[serde(rename = "00000111-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000111-0000-1000-8000-0026BB765291", alias = "111")]
|
||||||
CameraControl,
|
CameraControl,
|
||||||
#[serde(rename = "00000088-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000088-0000-1000-8000-0026BB765291", alias = "88")]
|
||||||
StatefulProgrammableSwitch,
|
StatefulProgrammableSwitch,
|
||||||
#[serde(rename = "000000A1-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000A1-0000-1000-8000-0026BB765291", alias = "A1")]
|
||||||
BridgeConfiguration,
|
BridgeConfiguration,
|
||||||
#[serde(rename = "00000062-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000062-0000-1000-8000-0026BB765291", alias = "62")]
|
||||||
BridgingState,
|
BridgingState,
|
||||||
#[serde(rename = "00000055-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000055-0000-1000-8000-0026BB765291", alias = "55")]
|
||||||
Pairing,
|
Pairing,
|
||||||
#[serde(rename = "000000A2-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000A2-0000-1000-8000-0026BB765291", alias = "A2")]
|
||||||
ProtocolInformation,
|
ProtocolInformation,
|
||||||
#[serde(rename = "0000005A-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "0000005A-0000-1000-8000-0026BB765291", alias = "5A")]
|
||||||
Relay,
|
Relay,
|
||||||
#[serde(rename = "00000099-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000099-0000-1000-8000-0026BB765291", alias = "99")]
|
||||||
TimeInformation,
|
TimeInformation,
|
||||||
#[serde(rename = "00000056-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000056-0000-1000-8000-0026BB765291", alias = "56")]
|
||||||
TunneledBTLEAccessoryService,
|
TunneledBTLEAccessoryService,
|
||||||
#[serde(rename = "000000D8-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000D8-0000-1000-8000-0026BB765291", alias = "D8")]
|
||||||
Television,
|
Television,
|
||||||
#[serde(rename = "000000D9-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "000000D9-0000-1000-8000-0026BB765291", alias = "D9")]
|
||||||
InputSource,
|
InputSource,
|
||||||
#[serde(rename = "00000113-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000113-0000-1000-8000-0026BB765291", alias = "113")]
|
||||||
TelevisionSpeaker,
|
TelevisionSpeaker,
|
||||||
#[serde(rename = "00000122-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000122-0000-1000-8000-0026BB765291", alias = "122")]
|
||||||
TargetControlManagement,
|
TargetControlManagement,
|
||||||
#[serde(rename = "00000125-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000125-0000-1000-8000-0026BB765291", alias = "125")]
|
||||||
TargetControl,
|
TargetControl,
|
||||||
#[serde(rename = "00000127-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000127-0000-1000-8000-0026BB765291", alias = "127")]
|
||||||
AudioStreamManagement,
|
AudioStreamManagement,
|
||||||
#[serde(rename = "00000133-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000133-0000-1000-8000-0026BB765291", alias = "133")]
|
||||||
Siri,
|
Siri,
|
||||||
#[serde(rename = "00000129-0000-1000-8000-0026BB765291")]
|
#[serde(rename = "00000129-0000-1000-8000-0026BB765291", alias = "129")]
|
||||||
DataStreamTransportManagement,
|
DataStreamTransportManagement,
|
||||||
Unknown(String),
|
Unknown(String),
|
||||||
}
|
}
|
||||||
|
|
|
@ -34,11 +34,21 @@ pub struct Accessory {
|
||||||
pub services: Vec<AccessoryService>,
|
pub services: Vec<AccessoryService>,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[derive(Deserialize)]
|
||||||
|
pub struct Accessories {
|
||||||
|
pub accessories: Vec<Accessory>,
|
||||||
|
}
|
||||||
|
|
||||||
impl Accessory {
|
impl Accessory {
|
||||||
pub fn get_service_ids(&self) -> Vec<String> {
|
pub fn get_service_ids(&self) -> Vec<String> {
|
||||||
self.services
|
self.services
|
||||||
.iter()
|
.iter()
|
||||||
.map(|service| format!("{}.{}", self.id, service.id))
|
.flat_map(|service| {
|
||||||
|
service
|
||||||
|
.characteristics
|
||||||
|
.iter()
|
||||||
|
.map(|c| format!("{}.{}", self.id, c.id))
|
||||||
|
})
|
||||||
.collect()
|
.collect()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -76,6 +86,11 @@ pub struct ServiceCharacteristic {
|
||||||
pub unit: Option<String>,
|
pub unit: Option<String>,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[derive(Deserialize)]
|
||||||
|
pub struct Characteristics {
|
||||||
|
pub characteristics: Vec<ServiceCharacteristic>,
|
||||||
|
}
|
||||||
|
|
||||||
#[allow(clippy::enum_variant_names)]
|
#[allow(clippy::enum_variant_names)]
|
||||||
#[derive(Serialize, Deserialize, Debug, Clone)]
|
#[derive(Serialize, Deserialize, Debug, Clone)]
|
||||||
#[serde(tag = "format", content = "value")]
|
#[serde(tag = "format", content = "value")]
|
||||||
|
|
Loading…
Reference in a new issue