Expand description
homecore-hap — Apple Home HomeKit Accessory Protocol bridge (ADR-125).
§Network foundation scope
The crate provides persisted accessory/controller identity, SRP-6a
Pair-Setup, X25519/Ed25519 Pair-Verify, encrypted HAP IP framing, bounded
TLV8/HTTP parsing, characteristic event flow, and (with hap-server) a
bounded TCP listener plus real mDNS.
§Module layout
| Module | Purpose |
|---|---|
accessory | HAP service / characteristic enum catalogue |
mapping | EntityToAccessoryMapper — HOMECORE entity → HAP |
bridge | HapBridge — owns exposed accessories |
mdns | MdnsAdvertiser trait + NullAdvertiser stub |
pairing | Atomic accessory identity, setup, and pairing persistence |
protocol | Bounded TLV8 protocol primitives |
ruview | RuViewToHapMapper — sensing primitives → HAP |
session | Authenticated request-gating state machine |
server | Feature-gated bounded TCP/HTTP lifecycle |
error | Unified HapError type |
Re-exports§
pub use accessory::HapAccessoryType;pub use accessory::HapCharacteristic;pub use accessory::HapCharacteristicValue;pub use bridge::CharacteristicEvent;pub use bridge::ExposedAccessory;pub use bridge::HapBridge;pub use error::HapError;pub use mapping::EntityToAccessoryMapper;pub use mdns::HapServiceRecord;pub use mdns::MdnsAdvertiser;pub use mdns::NullAdvertiser;pub use pairing::ControllerPairing;pub use pairing::PairingStore;pub use pairing::PairingStoreProvisioning;pub use pairing::SetupCode;pub use ruview::RuViewToHapMapper;pub use session::Session;pub use session::SessionState;
Modules§
- accessory
- HAP service type and characteristic enum catalogues.
- bridge
HapBridge— owns the set of HOMECORE entities exposed as HAP accessories.- error
- Unified error type for
homecore-hap. - mapping
- HOMECORE entity → HAP accessory type + characteristic value mapping.
- mdns
- HAP
_hap._tcpadvertisement. - pairing
- Durable HAP accessory identity, setup verifier, and controller pairings.
- protocol
- Bounded HAP TLV8 primitives.
- ruview
- RuView sensing primitives → HAP characteristic mapping (ADR-125 §2.1.d).
- session
- Per-connection HAP authentication state.