Testing TV functions

This commit is contained in:
Gregg 2021-10-17 22:02:11 -05:00
parent 353749baea
commit f07fa4e9c7
2 changed files with 23 additions and 26 deletions

View File

@ -38,17 +38,22 @@ struct HKTV : Service::Television {
SpanCharacteristic *netflixCurrentVisibility;
HKTV() : Service::Television(){
Serial.print("Init HKTV\n"); // initialization message
Serial.printf("Init TV\n"); // initialization message
active = new Characteristic::Active();
activeIdentifier = new Characteristic::ActiveIdentifier(1);
configuredName = new Characteristic::ConfiguredName();
remoteKey = new Characteristic::RemoteKey();
sleepDiscoveryMode = new Characteristic::SleepDiscoveryMode(1);
activeIdentifier = new Characteristic::ActiveIdentifier(0);
new Characteristic::ConfiguredName("My TV");
// new Characteristic::PowerModeSelection(); // write-only Characteristic that enables "View TV Settings" on controls screen
new Characteristic::PictureMode(1);
new Characteristic::ClosedCaptions();
new Characteristic::Brightness(50);
new Characteristic::CurrentMediaState(1);
new Characteristic::RemoteKey();
speaker = new Service::TelevisionSpeaker();
mute = new Characteristic::Mute();
speakerActive = new Characteristic::Active();
speakerActive = new Characteristic::Active(1);
volume = new Characteristic::Volume();
new Characteristic::VolumeControlType(3);
new Characteristic::VolumeSelector();
@ -57,7 +62,6 @@ struct HKTV : Service::Television {
new Characteristic::ConfiguredName("HDMI 1");
new Characteristic::IsConfigured(1); // configured = 1, not configured = 0
new Characteristic::InputSourceType(HDMI);
new Characteristic::Name("HDMI 1");
netflixIdentifier = new Characteristic::Identifier(0);
hdmi1CurrentVisibility = new Characteristic::CurrentVisibilityState(0); // 0 shown, 1 hidden
@ -65,17 +69,15 @@ struct HKTV : Service::Television {
new Characteristic::ConfiguredName("HDMI 2");
new Characteristic::IsConfigured(1); // configured = 1, not configured = 0
new Characteristic::InputSourceType(HDMI);
new Characteristic::Name("HDMI 2");
hdmi2Identifier = new Characteristic::Identifier(1);
hdmi2Identifier = new Characteristic::Identifier(10);
hdmi2CurrentVisibility = new Characteristic::CurrentVisibilityState(0); // 0 shown, 1 hidden
netflix = new Service::InputSource();
new Characteristic::ConfiguredName("NETFLIX");
new Characteristic::IsConfigured(1); // configured = 1, not configured = 0
new Characteristic::InputSourceType(APPLICATION);
new Characteristic::Name("Netflix");
netflixIdentifier = new Characteristic::Identifier(2);
// new Characteristic::IsConfigured(0); // configured = 1, not configured = 0
netflixIdentifier = new Characteristic::Identifier(4);
netflixCurrentVisibility = new Characteristic::CurrentVisibilityState(0); // 0 shown, 1 hidden
// new Characteristic::TargetVisibilityState(0); // 0 shown, 1 hidden
addLink(hdmi1);
addLink(hdmi2);
@ -114,8 +116,8 @@ void setup() {
new Characteristic::FirmwareRevision("0.1");
new Characteristic::Identify();
new Service::HAPProtocolInformation();
new Characteristic::Version("1.1.0");
new Service::HAPProtocolInformation();
new Characteristic::Version("1.1.0");
new HKTV();
}

View File

@ -200,12 +200,11 @@ namespace Service {
}};
struct InputSource : SpanService { InputSource() : SpanService{"D9","InputSource"}{
REQ(ConfiguredName);
REQ(InputSourceType);
OPT(ConfiguredName);
OPT(InputSourceType);
REQ(IsConfigured);
REQ(Name);
REQ(CurrentVisibilityState);
OPT(Name);
OPT(Identifier);
OPT(InputDeviceType);
OPT(TargetVisibilityState);
@ -216,7 +215,6 @@ namespace Service {
REQ(ProgramMode);
REQ(InUse);
OPT(RemainingDuration);
OPT(Name);
OPT(StatusFault);
}};
@ -334,13 +332,11 @@ namespace Service {
struct Television : SpanService { Television() : SpanService{"D8","Television"}{
REQ(Active);
REQ(ActiveIdentifier);
REQ(ConfiguredName);
REQ(RemoteKey);
REQ(SleepDiscoveryMode);
OPT(ConfiguredName);
OPT(RemoteKey);
OPT(SleepDiscoveryMode);
OPT(Brightness);
OPT(ClosedCaptions);
//OPT(DisplayOrder);
OPT(CurrentMediaState);
OPT(TargetMediaState);
OPT(Name);
@ -350,7 +346,6 @@ namespace Service {
struct TelevisionSpeaker : SpanService { TelevisionSpeaker() : SpanService{"113","TelevisionSpeaker"}{
REQ(Mute);
OPT(Active);
OPT(Volume);
OPT(VolumeControlType);