mirror of
https://github.com/PepperDash/Essentials.git
synced 2026-02-16 13:15:03 +00:00
Ecs-823 Implement Essentials Light Bridge
WHAR-1441 Add Lutron Temp Bridge WHAR-1401 Finish testing Lighting Controls
This commit is contained in:
@@ -47,6 +47,11 @@ namespace PepperDash.Essentials {
|
|||||||
Debug.Console(2, "Launch essentialstvone");
|
Debug.Console(2, "Launch essentialstvone");
|
||||||
return new EssentialsTVOne(key, name, properties);
|
return new EssentialsTVOne(key, name, properties);
|
||||||
}
|
}
|
||||||
|
else if (typeName == "essentialslighting")
|
||||||
|
{
|
||||||
|
Debug.Console(2, "Launch essentialslighting");
|
||||||
|
return new EssentialsLightsBridge(key, name, properties);
|
||||||
|
}
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -31,12 +31,18 @@ namespace PepperDash.Essentials
|
|||||||
}
|
}
|
||||||
public override bool CustomActivate() {
|
public override bool CustomActivate() {
|
||||||
// Create EiscApis
|
// Create EiscApis
|
||||||
|
ICommunicationMonitor comm = null;
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
foreach (var device in DeviceManager.AllDevices)
|
foreach (var device in DeviceManager.AllDevices)
|
||||||
{
|
{
|
||||||
if (device.Key == this.Properties.connectionDeviceKey)
|
if (device.Key == this.Properties.connectionDeviceKey)
|
||||||
{
|
{
|
||||||
|
|
||||||
|
if (!(device is ICommunicationMonitor))
|
||||||
|
{
|
||||||
|
comm = device as ICommunicationMonitor;
|
||||||
|
}
|
||||||
Debug.Console(2, "deviceKey {0} Matches", device.Key);
|
Debug.Console(2, "deviceKey {0} Matches", device.Key);
|
||||||
Lights = DeviceManager.GetDeviceForKey(device.Key) as PepperDash.Essentials.Core.Lighting.LightingBase;
|
Lights = DeviceManager.GetDeviceForKey(device.Key) as PepperDash.Essentials.Core.Lighting.LightingBase;
|
||||||
break;
|
break;
|
||||||
@@ -51,13 +57,26 @@ namespace PepperDash.Essentials
|
|||||||
{
|
{
|
||||||
foreach (string Ipid in Properties.EiscApiIpids)
|
foreach (string Ipid in Properties.EiscApiIpids)
|
||||||
{
|
{
|
||||||
|
|
||||||
var ApiEisc = new BridgeApiEisc(Ipid);
|
var ApiEisc = new BridgeApiEisc(Ipid);
|
||||||
Debug.Console(2, "Connecting EiscApi {0} to {1}", ApiEisc.Ipid, TVOneCorio.Name);
|
Debug.Console(2, "Connecting EiscApi {0} to {1}", ApiEisc.Ipid, Lights.Name);
|
||||||
ushort x = 1;
|
ushort x = 1;
|
||||||
Lights.Is
|
|
||||||
var tempDevice = Lights as PepperDash.Core.Device;
|
if(comm != null)
|
||||||
tempDevice.
|
{
|
||||||
.OnlineFeedback.LinkInputSig(ApiEisc.Eisc.BooleanInput[ApiMap.Online]);
|
comm.CommunicationMonitor.IsOnlineFeedback.LinkInputSig(ApiEisc.Eisc.BooleanInput[ApiMap.Online]);
|
||||||
|
}
|
||||||
|
ApiEisc.Eisc.SetUShortSigAction(ApiMap.CallPreset, u => Lights.SelectScene(Lights.LightingScenes[u]));
|
||||||
|
int sceneIndex = 1;
|
||||||
|
foreach (var scene in Lights.LightingScenes)
|
||||||
|
{
|
||||||
|
var tempIndex = sceneIndex - 1;
|
||||||
|
ApiEisc.Eisc.SetSigTrueAction((uint)(ApiMap.LightingSceneOffset + sceneIndex), () => Lights.SelectScene(Lights.LightingScenes[tempIndex]));
|
||||||
|
scene.IsActiveFeedback.LinkInputSig(ApiEisc.Eisc.BooleanInput[(uint)(ApiMap.LightingSceneOffset + sceneIndex)]);
|
||||||
|
ApiEisc.Eisc.StringInput[(uint)(ApiMap.LightingSceneOffset + sceneIndex)].StringValue = scene.Name;
|
||||||
|
ApiEisc.Eisc.BooleanInput[(uint)(ApiMap.ButtonVisibilityOffset + sceneIndex)].BoolValue = true;
|
||||||
|
sceneIndex++;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -85,10 +104,10 @@ namespace PepperDash.Essentials
|
|||||||
|
|
||||||
public class EssentialsLightsBridgeApiMap
|
public class EssentialsLightsBridgeApiMap
|
||||||
{
|
{
|
||||||
public ushort CallPreset = 1;
|
|
||||||
public ushort PresetFeedback = 1;
|
|
||||||
public ushort Online = 1;
|
public ushort Online = 1;
|
||||||
|
public ushort LightingSceneOffset = 10;
|
||||||
|
public ushort ButtonVisibilityOffset = 40;
|
||||||
|
public ushort CallPreset = 1;
|
||||||
public EssentialsLightsBridgeApiMap()
|
public EssentialsLightsBridgeApiMap()
|
||||||
{
|
{
|
||||||
|
|
||||||
|
|||||||
Submodule essentials-framework updated: 5fde72515c...f17d34576b
Reference in New Issue
Block a user