とりあえず、まだTVのon/offだけですが動作させることが出来ました。
ただ、siriがどんなコマンドを受け付けてくれてサービスをどう登録するのかがよく判りません。
「テレビをonして」「テレビをoffして」は動きますが「テレビをつけて」はダメでした。
放送局とかを指定したりボリュームをコントロールするには何と言えばいいんですかね?
とりあえず、呼び出される関数の中でhomebridge.hap.Serviceをdumpすることで
AccessoryInformation: { [Function] super_: [Circular] },
AirQualitySensor: { [Function] super_: [Circular] },
BatteryService: { [Function] super_: [Circular] },
BridgingState: { [Function] super_: [Circular] },
CarbonDioxideSensor: { [Function] super_: [Circular] },
CarbonMonoxideSensor: { [Function] super_: [Circular] },
ContactSensor: { [Function] super_: [Circular] },
Door: { [Function] super_: [Circular] },
Fan: { [Function] super_: [Circular] },
GarageDoorOpener: { [Function] super_: [Circular] },
HumiditySensor: { [Function] super_: [Circular] },
LeakSensor: { [Function] super_: [Circular] },
LightSensor: { [Function] super_: [Circular] },
Lightbulb: { [Function] super_: [Circular] },
LockManagement: { [Function] super_: [Circular] },
LockMechanism: { [Function] super_: [Circular] },
MotionSensor: { [Function] super_: [Circular] },
OccupancySensor: { [Function] super_: [Circular] },
Outlet: { [Function] super_: [Circular] },
SecuritySystem: { [Function] super_: [Circular] },
SmokeSensor: { [Function] super_: [Circular] },
StatefulProgrammableSwitch: { [Function] super_: [Circular] },
StatelessProgrammableSwitch: { [Function] super_: [Circular] },
Switch: { [Function] super_: [Circular] },
TemperatureSensor: [Circular],
Thermostat: { [Function] super_: [Circular] },
Window: { [Function] super_: [Circular] },
WindowCovering: { [Function] super_: [Circular] } } }
といったサービスの種類があることは分かりました。
現状はSwitchにTVのon/offを接続しているだけなのですが、少しずつ他のWindowとかDoorやLightあたりを掘っていってみようかと考えています。