Fixed color handling, starter Mozilla IOT integration

This commit is contained in:
BWS Systems
2019-05-22 15:30:50 -05:00
parent 45e2b63f98
commit 79d5b5da28
7 changed files with 828 additions and 365 deletions

View File

@@ -216,6 +216,7 @@ public class BridgeSettings extends BackupHandler {
theBridgeSettings.setHomeWizardConfigured(theBridgeSettings.isValidHomeWizard());
theBridgeSettings.setOpenhabconfigured(theBridgeSettings.isValidOpenhab());
theBridgeSettings.setFhemconfigured(theBridgeSettings.isValidFhem());
theBridgeSettings.setMoziotconfigured(theBridgeSettings.isValidMozIot());
// Lifx is either configured or not, so it does not need an update.
if(serverPortOverride != null)
theBridgeSettings.setServerPort(serverPortOverride);

View File

@@ -90,6 +90,9 @@ public class BridgeSettingsDescriptor {
@SerializedName("openhabaddress")
@Expose
private IpList openhabaddress;
@SerializedName("moziotgateway")
@Expose
private IpList moziotgateway;
@SerializedName("hubversion")
@Expose
private String hubversion;
@@ -114,10 +117,13 @@ public class BridgeSettingsDescriptor {
@SerializedName("broadlinkconfigured")
@Expose
private boolean broadlinkconfigured;
// @SerializedName("activeloggers")
// @Expose
// private List<NameValue> activeloggers;
@SerializedName("tracestate")
@Expose
private boolean tracestate;
// @SerializedName("activeloggers")
// @Expose
// private List<NameValue> activeloggers;
private boolean settingsChanged;
private boolean veraconfigured;
private boolean fibaroconfigured;
@@ -132,11 +138,12 @@ public class BridgeSettingsDescriptor {
private boolean homewizardconfigured;
private boolean openhabconfigured;
private boolean fhemconfigured;
private boolean moziotconfigured;
// Deprecated settings
private String haltoken;
private boolean upnpstrict;
public BridgeSettingsDescriptor() {
super();
this.upnpstrict = true;
@@ -156,6 +163,7 @@ public class BridgeSettingsDescriptor {
this.homewizardconfigured = false;
this.lifxconfigured = false;
this.openhabconfigured = false;
this.moziotconfigured = false;
this.farenheit = true;
this.securityData = null;
this.settingsChanged = false;
@@ -163,456 +171,612 @@ public class BridgeSettingsDescriptor {
this.webaddress = "0.0.0.0";
this.hubversion = HueConstants.HUB_VERSION;
this.hubmac = null;
// this.activeloggers = null;
// this.activeloggers = null;
this.upnpsenddelay = Configuration.UPNP_SEND_DELAY;
this.broadlinkconfigured = false;
this.tracestate = false;
}
public String getUpnpConfigAddress() {
return upnpconfigaddress;
}
public void setUpnpConfigAddress(String upnpConfigAddress) {
this.upnpconfigaddress = upnpConfigAddress;
}
public boolean isUseupnpiface() {
return useupnpiface;
}
public void setUseupnpiface(boolean useupnpiface) {
this.useupnpiface = useupnpiface;
}
public boolean isUserooms() {
return userooms;
}
public void setUserooms(boolean userooms) {
this.userooms = userooms;
}
public Integer getServerPort() {
public Integer getServerPort() {
return serverport;
}
public void setServerPort(Integer serverPort) {
this.serverport = serverPort;
}
public void setServerPort(String serverPort) {
this.serverport = Integer.valueOf(serverPort);
}
public Integer getUpnpResponsePort() {
return upnpresponseport;
}
public void setUpnpResponsePort(Integer upnpResponsePort) {
this.upnpresponseport = upnpResponsePort;
}
public void setUpnpResponsePort(String upnpResponsePort) {
this.upnpresponseport = Integer.valueOf(upnpResponsePort);
}
public String getUpnpDeviceDb() {
return upnpdevicedb;
}
public void setUpnpDeviceDb(String upnpDeviceDb) {
this.upnpdevicedb = upnpDeviceDb;
}
public String getUpnpGroupDb() {
return upnpgroupdb;
}
public void setUpnpGroupDb(String upnpGroupDb) {
this.upnpgroupdb = upnpGroupDb;
}
public IpList getVeraAddress() {
return veraaddress;
}
public IpList getFibaroAddress() {
return fibaroaddress;
}
public IpList getSomfyAddress() {
return somfyaddress;
}
public IpList getHomeWizardAddress() {
return homewizardaddress;
}
}
public void setVeraAddress(IpList veraAddress) {
this.veraaddress = veraAddress;
}
public void setFibaroAddress(IpList fibaroAddress) {
this.fibaroaddress = fibaroAddress;
}
public void setSomfyAddress(IpList somfyAddress) {
this.somfyaddress = somfyAddress;
}
public void setHomeWizardAddress(IpList homewizardaddress) {
this.homewizardaddress = homewizardaddress;
}
public IpList getHarmonyAddress() {
return harmonyaddress;
}
public void setHarmonyAddress(IpList harmonyaddress) {
this.harmonyaddress = harmonyaddress;
}
public boolean isUpnpStrict() {
return upnpstrict;
}
public void setUpnpStrict(boolean upnpStrict) {
this.upnpstrict = upnpStrict;
}
public boolean isTraceupnp() {
return traceupnp;
}
public void setTraceupnp(boolean traceupnp) {
this.traceupnp = traceupnp;
}
public String getNestuser() {
return nestuser;
}
public void setNestuser(String nestuser) {
this.nestuser = nestuser;
}
public String getNestpwd() {
return nestpwd;
}
public void setNestpwd(String nestpwd) {
this.nestpwd = nestpwd;
}
public boolean isVeraconfigured() {
return veraconfigured;
}
public boolean isFibaroconfigured() {
return fibaroconfigured;
}
public boolean isSomfyconfigured() {
return somfyconfigured;
}
public boolean isHomeWizardConfigured() {
return homewizardconfigured;
}
}
public void setVeraconfigured(boolean veraconfigured) {
this.veraconfigured = veraconfigured;
}
public void setFibaroconfigured(boolean fibaroconfigured) {
this.fibaroconfigured = fibaroconfigured;
}
public void setSomfyconfigured(boolean somfyconfigured) {
this.somfyconfigured = somfyconfigured;
}
public void setHomeWizardConfigured(boolean homewizardconfigured) {
this.homewizardconfigured = homewizardconfigured;
}
public boolean isHarmonyconfigured() {
return harmonyconfigured;
}
public void setHarmonyconfigured(boolean harmonyconfigured) {
this.harmonyconfigured = harmonyconfigured;
}
public boolean isNestConfigured() {
return nestconfigured;
}
public void setNestConfigured(boolean isNestConfigured) {
this.nestconfigured = isNestConfigured;
}
public Integer getButtonsleep() {
return buttonsleep;
}
public void setButtonsleep(Integer buttonsleep) {
this.buttonsleep = buttonsleep;
}
public String getConfigfile() {
return configfile;
}
public void setConfigfile(String configfile) {
this.configfile = configfile;
}
public Integer getNumberoflogmessages() {
return numberoflogmessages;
}
public void setNumberoflogmessages(Integer numberoflogmessages) {
this.numberoflogmessages = numberoflogmessages;
}
public boolean isFarenheit() {
return farenheit;
}
public void setFarenheit(boolean farenheit) {
this.farenheit = farenheit;
}
public IpList getHueaddress() {
return hueaddress;
}
public void setHueaddress(IpList hueaddress) {
this.hueaddress = hueaddress;
}
public boolean isHueconfigured() {
return hueconfigured;
}
public void setHueconfigured(boolean hueconfigured) {
this.hueconfigured = hueconfigured;
}
public IpList getHaladdress() {
return haladdress;
}
public void setHaladdress(IpList haladdress) {
this.haladdress = haladdress;
}
public String getHaltoken() {
return haltoken;
}
public void setHaltoken(String haltoken) {
this.haltoken = haltoken;
}
public boolean isHalconfigured() {
return halconfigured;
}
public void setHalconfigured(boolean halconfigured) {
this.halconfigured = halconfigured;
}
public Map<String, WhitelistEntry> getWhitelist() {
return whitelist;
}
protected void removeWhitelist() {
whitelist = null;
}
public boolean isSettingsChanged() {
return settingsChanged;
}
public void setSettingsChanged(boolean settingsChanged) {
this.settingsChanged = settingsChanged;
}
public String getMyechourl() {
return myechourl;
}
public void setMyechourl(String myechourl) {
this.myechourl = myechourl;
}
public String getWebaddress() {
return webaddress;
}
public void setWebaddress(String webaddress) {
this.webaddress = webaddress;
}
public IpList getMqttaddress() {
return mqttaddress;
}
public void setMqttaddress(IpList mqttaddress) {
this.mqttaddress = mqttaddress;
}
public boolean isMqttconfigured() {
return mqttconfigured;
}
public void setMqttconfigured(boolean mqttconfigured) {
this.mqttconfigured = mqttconfigured;
}
public IpList getHassaddress() {
return hassaddress;
}
public void setHassaddress(IpList hassaddress) {
this.hassaddress = hassaddress;
}
public boolean isHassconfigured() {
return hassconfigured;
}
public void setHassconfigured(boolean hassconfigured) {
this.hassconfigured = hassconfigured;
}
public IpList getOpenhabaddress() {
return openhabaddress;
}
public void setOpenhabaddress(IpList openhabaddress) {
this.openhabaddress = openhabaddress;
}
public boolean isOpenhabconfigured() {
return openhabconfigured;
}
public void setOpenhabconfigured(boolean openhabconfigured) {
this.openhabconfigured = openhabconfigured;
}
public String getHubversion() {
return hubversion;
}
public void setHubversion(String hubversion) {
this.hubversion = hubversion;
}
public String getHubmac() {
return hubmac;
}
public void setHubmac(String hubmac) {
this.hubmac = hubmac;
}
public IpList getDomoticzaddress() {
return domoticzaddress;
}
public void setDomoticzaddress(IpList domoticzaddress) {
this.domoticzaddress = domoticzaddress;
}
public boolean isDomoticzconfigured() {
return domoticzconfigured;
}
public void setDomoticzconfigured(boolean domoticzconfigured) {
this.domoticzconfigured = domoticzconfigured;
}
public boolean isLifxconfigured() {
return lifxconfigured;
}
public void setLifxconfigured(boolean lifxconfigured) {
this.lifxconfigured = lifxconfigured;
}
public String getSecurityData() {
return securityData;
}
public void setSecurityData(String securityData) {
this.securityData = securityData;
}
public Integer getUpnpsenddelay() {
return upnpsenddelay;
}
public void setUpnpsenddelay(Integer upnpsenddelay) {
this.upnpsenddelay = upnpsenddelay;
}
public IpList getFhemaddress() {
return fhemaddress;
}
public void setFhemaddress(IpList fhemaddress) {
this.fhemaddress = fhemaddress;
}
public boolean isFhemconfigured() {
return fhemconfigured;
}
public void setFhemconfigured(boolean fhemconfigured) {
this.fhemconfigured = fhemconfigured;
}
// public List<NameValue> getActiveloggers() {
// return activeloggers;
// }
// public void setActiveloggers(List<NameValue> activeloggers) {
// this.activeloggers = activeloggers;
// }
// public List<NameValue> getActiveloggers() {
// return activeloggers;
// }
// public void setActiveloggers(List<NameValue> activeloggers) {
// this.activeloggers = activeloggers;
// }
public boolean isBroadlinkconfigured() {
return broadlinkconfigured;
}
public void setBroadlinkconfigured(boolean broadlinkconfigured) {
this.broadlinkconfigured = broadlinkconfigured;
}
public Boolean isValidVera() {
if(this.getVeraAddress() == null || this.getVeraAddress().getDevices().size() <= 0)
if (this.getVeraAddress() == null || this.getVeraAddress().getDevices().size() <= 0)
return false;
List<NamedIP> devicesList = this.getVeraAddress().getDevices();
if(devicesList.get(0).getIp().contains(Configuration.DEFAULT_ADDRESS))
if (devicesList.get(0).getIp().contains(Configuration.DEFAULT_ADDRESS))
return false;
return true;
}
public Boolean isValidFibaro() {
if(this.getFibaroAddress() == null || this.getFibaroAddress().getDevices().size() <= 0)
if (this.getFibaroAddress() == null || this.getFibaroAddress().getDevices().size() <= 0)
return false;
List<NamedIP> devicesList = this.getFibaroAddress().getDevices();
if(devicesList.get(0).getIp().contains(Configuration.DEFAULT_ADDRESS))
if (devicesList.get(0).getIp().contains(Configuration.DEFAULT_ADDRESS))
return false;
return true;
}
public Boolean isValidHarmony() {
if(this.getHarmonyAddress() == null || this.getHarmonyAddress().getDevices().size() <= 0)
return false;
if (this.getHarmonyAddress() == null || this.getHarmonyAddress().getDevices().size() <= 0)
return false;
List<NamedIP> devicesList = this.getHarmonyAddress().getDevices();
if(devicesList.get(0).getIp().contains(Configuration.DEFAULT_ADDRESS))
if (devicesList.get(0).getIp().contains(Configuration.DEFAULT_ADDRESS))
return false;
return true;
}
public Boolean isValidNest() {
if(this.getNestpwd() == null || this.getNestpwd().equals(""))
if (this.getNestpwd() == null || this.getNestpwd().equals(""))
return false;
if(this.getNestuser() == null || this.getNestuser().equals(""))
if (this.getNestuser() == null || this.getNestuser().equals(""))
return false;
return true;
}
public Boolean isValidHue() {
if(this.getHueaddress() == null || this.getHueaddress().getDevices().size() <= 0)
if (this.getHueaddress() == null || this.getHueaddress().getDevices().size() <= 0)
return false;
List<NamedIP> devicesList = this.getHueaddress().getDevices();
if(devicesList.get(0).getIp().contains(Configuration.DEFAULT_ADDRESS))
if (devicesList.get(0).getIp().contains(Configuration.DEFAULT_ADDRESS))
return false;
return true;
}
public Boolean isValidHal() {
if(this.getHaladdress() == null || this.getHaladdress().getDevices().size() <= 0)
return false;
List<NamedIP> devicesList = this.getHaladdress().getDevices();
if(devicesList.get(0).getIp().contains(Configuration.DEFAULT_ADDRESS))
if (this.getHaladdress() == null || this.getHaladdress().getDevices().size() <= 0)
return false;
if(devicesList.get(0).getPassword() == null || devicesList.get(0).getPassword().trim().isEmpty()) {
if(this.getHaltoken() == null || this.getHaltoken().equals(""))
List<NamedIP> devicesList = this.getHaladdress().getDevices();
if (devicesList.get(0).getIp().contains(Configuration.DEFAULT_ADDRESS))
return false;
if (devicesList.get(0).getPassword() == null || devicesList.get(0).getPassword().trim().isEmpty()) {
if (this.getHaltoken() == null || this.getHaltoken().equals(""))
return false;
}
return true;
}
public Boolean isValidMQTT() {
if(this.getMqttaddress() == null || this.getMqttaddress().getDevices().size() <= 0)
return false;
if (this.getMqttaddress() == null || this.getMqttaddress().getDevices().size() <= 0)
return false;
List<NamedIP> devicesList = this.getMqttaddress().getDevices();
if(devicesList.get(0).getIp().contains(Configuration.DEFAULT_ADDRESS))
if (devicesList.get(0).getIp().contains(Configuration.DEFAULT_ADDRESS))
return false;
return true;
}
public Boolean isValidHass() {
if(this.getHassaddress() == null || this.getHassaddress().getDevices().size() <= 0)
return false;
if (this.getHassaddress() == null || this.getHassaddress().getDevices().size() <= 0)
return false;
List<NamedIP> devicesList = this.getHassaddress().getDevices();
if(devicesList.get(0).getIp().contains(Configuration.DEFAULT_ADDRESS))
if (devicesList.get(0).getIp().contains(Configuration.DEFAULT_ADDRESS))
return false;
return true;
}
public Boolean isValidDomoticz() {
if(this.getDomoticzaddress() == null || this.getDomoticzaddress().getDevices().size() <= 0)
return false;
if (this.getDomoticzaddress() == null || this.getDomoticzaddress().getDevices().size() <= 0)
return false;
List<NamedIP> devicesList = this.getDomoticzaddress().getDevices();
if(devicesList.get(0).getIp().contains(Configuration.DEFAULT_ADDRESS))
if (devicesList.get(0).getIp().contains(Configuration.DEFAULT_ADDRESS))
return false;
return true;
}
public Boolean isValidSomfy() {
if(this.getSomfyAddress() == null || this.getSomfyAddress().getDevices().size() <= 0)
if (this.getSomfyAddress() == null || this.getSomfyAddress().getDevices().size() <= 0)
return false;
List<NamedIP> devicesList = this.getSomfyAddress().getDevices();
if(devicesList.get(0).getIp().contains(Configuration.DEFAULT_ADDRESS))
if (devicesList.get(0).getIp().contains(Configuration.DEFAULT_ADDRESS))
return false;
return true;
}
public Boolean isValidLifx() {
return this.isLifxconfigured();
}
public void updateHue(NamedIP aHue) {
int indexHue = -1;
for( int i = 0; i < hueaddress.getDevices().size(); i++) {
if(hueaddress.getDevices().get(i).getName().equals(aHue.getName()))
for (int i = 0; i < hueaddress.getDevices().size(); i++) {
if (hueaddress.getDevices().get(i).getName().equals(aHue.getName()))
indexHue = i;
}
if(indexHue >= 0) {
if (indexHue >= 0) {
hueaddress.getDevices().set(indexHue, aHue);
this.setSettingsChanged(true);
}
}
public Boolean isValidHomeWizard() {
if(this.getHomeWizardAddress() == null || this.getHomeWizardAddress().getDevices().size() <= 0)
if (this.getHomeWizardAddress() == null || this.getHomeWizardAddress().getDevices().size() <= 0)
return false;
List<NamedIP> devicesList = this.getHomeWizardAddress().getDevices();
if(devicesList.get(0).getIp().contains(Configuration.DEFAULT_ADDRESS))
if (devicesList.get(0).getIp().contains(Configuration.DEFAULT_ADDRESS))
return false;
return true;
}
public Boolean isValidOpenhab() {
if(this.getOpenhabaddress() == null || this.getOpenhabaddress().getDevices().size() <= 0)
if (this.getOpenhabaddress() == null || this.getOpenhabaddress().getDevices().size() <= 0)
return false;
List<NamedIP> devicesList = this.getOpenhabaddress().getDevices();
if(devicesList.get(0).getIp().contains(Configuration.DEFAULT_ADDRESS))
if (devicesList.get(0).getIp().contains(Configuration.DEFAULT_ADDRESS))
return false;
return true;
}
public Boolean isValidFhem() {
if(this.getFhemaddress() == null || this.getFhemaddress().getDevices().size() <= 0)
if (this.getFhemaddress() == null || this.getFhemaddress().getDevices().size() <= 0)
return false;
List<NamedIP> devicesList = this.getFhemaddress().getDevices();
if(devicesList.get(0).getIp().contains(Configuration.DEFAULT_ADDRESS))
if (devicesList.get(0).getIp().contains(Configuration.DEFAULT_ADDRESS))
return false;
return true;
}
public Boolean isValidBroadlink() {
return this.isBroadlinkconfigured();
}
public boolean isTracestate() {
return tracestate;
}
public void setTracestate(boolean tracestate) {
this.tracestate = tracestate;
}
public IpList getMoziotgateway() {
return moziotgateway;
}
public void setMoziotgateway(IpList moziotgateway) {
this.moziotgateway = moziotgateway;
}
public Boolean isValidMozIot() {
if (this.getMoziotgateway() == null || this.getMoziotgateway().getDevices().size() <= 0)
return false;
List<NamedIP> devicesList = this.getMoziotgateway().getDevices();
if (devicesList.get(0).getIp().contains(Configuration.DEFAULT_ADDRESS))
return false;
return true;
}
public boolean isMoziotconfigured() {
return moziotconfigured;
}
public void setMoziotconfigured(boolean moziotconfigured) {
this.moziotconfigured = moziotconfigured;
}
}

View File

@@ -19,4 +19,10 @@ public class ColorData {
return mode;
}
public String toString() {
String formatString;
formatString = "Color Data mode: " + mode + ", data: " + data;
return formatString;
}
}

View File

@@ -23,7 +23,7 @@ public class ColorDecode {
private static final String COLOR_HSL = "${color.hsl}";
private static final Pattern COLOR_MILIGHT = Pattern.compile("\\$\\{color.milight\\:([01234])\\}");
public static List<Integer> convertHSLtoRGB(int hue, int sat, int brightness) {
public static List<Integer> convertHSLtoRGB(HueSatBri hsl) {
List<Integer> rgb;
float decimalBrightness = (float) 0.0;
float var_1 = (float) 0.0;
@@ -35,25 +35,25 @@ public class ColorDecode {
double g = 0.0;
double b = 0.0;
if(brightness > 0)
decimalBrightness = (float) (brightness / 255.0);
if(hsl.getBri() > 0)
decimalBrightness = (float) (hsl.getBri() / 255.0);
if(hue > 0) {
h = (float)(hue / 65535.0);
if(hsl.getHue() > 0) {
h = ((float)hsl.getHue() / (float)65535.0);
h2 = h + (float)0.5;
if(h2 > 1) {
h2 = h2 * (float) -1.0;
if(h2 > 1.0) {
h2 = h2 - (float)1.0;
}
}
if(sat > 0) {
s = (float)(sat / 254.0);
if(hsl.getSat() > 0) {
s = (float)(hsl.getSat() / 254.0);
}
if (s == 0)
{
r = decimalBrightness * 255;
g = decimalBrightness * 255;
b = decimalBrightness * 255;
r = decimalBrightness * (float)255;
g = decimalBrightness * (float)255;
b = decimalBrightness * (float)255;
}
else
{
@@ -66,44 +66,51 @@ public class ColorDecode {
var_2 = (decimalBrightness + s) - (s * decimalBrightness);
};
var_1 = 2 * decimalBrightness - var_2;
r = 255 * hue_2_rgb(var_1,var_2,h2 + (1 / 3));
g = 255 * hue_2_rgb(var_1,var_2,h2);
b = 255 * hue_2_rgb(var_1,var_2,h2 - (1 / 3));
var_1 = 2 * decimalBrightness - var_2;
float onethird = (float)0.33333;
float h2Plus = (h2 + onethird);
float h2Minus = (h2 - onethird);
log.debug("calculate HSL vars - var1: " + var_1 + ", var_2: " + var_2 + ", h2: " + h2 + ", h2 + 1/3: " + h2Plus + ", h2 - 1/3: " + h2Minus);
r = 255 * hue_2_rgb(var_1, var_2, h2Plus);
g = 255 * hue_2_rgb(var_1, var_2, h2);
b = 255 * hue_2_rgb(var_1, var_2, h2Minus);
};
rgb = new ArrayList<Integer>();
rgb.add((int) Math.round(r * 255));
rgb.add((int) Math.round(g * 255));
rgb.add((int) Math.round(b * 255));
rgb.add((int) Math.round(r));
rgb.add((int) Math.round(g));
rgb.add((int) Math.round(b));
log.debug("Color change with HSL: " + hsl + ". Resulting RGB Values: " + rgb.get(0) + " " + rgb.get(1) + " "
+ rgb.get(2));
return rgb;
}
public static float hue_2_rgb(float v1, float v2, float vh) {
if (vh < 0)
log.debug("hue_2_rgb vh: " + vh);
if (vh < 0.0)
{
vh += 1;
vh = vh + (float)1;
};
if (vh > 1)
if (vh > 1.0)
{
vh -= 1;
vh = vh - (float)1;
};
if ((6 * vh) < 1)
if (((float)6.0 * vh) < 1.0)
{
return (v1 + (v2 - v1) * 6 * vh);
return (v1 + (v2 - v1) * (float)6.0 * vh);
};
if ((2 * vh) < 1)
if (((float)2.0 * vh) < 1.0)
{
return (v2);
};
if ((3 * vh) < 2)
if ((3.0 * vh) < 2.0)
{
return (v1 + (v2 - v1) * ((2 / 3 - vh) * 6));
return (v1 + (v2 - v1) * (((float)2.0 / (float)3.0 - vh) * (float)6.0));
};
return (v1);
@@ -245,6 +252,8 @@ public class ColorDecode {
rgb = convertCIEtoRGB((List<Double>) colorData.getData(), setIntensity);
} else if (colorMode == ColorData.ColorMode.CT) {
rgb = convertCTtoRGB((Integer) colorData.getData());
} else if (colorMode == ColorData.ColorMode.HS) {
rgb = convertHSLtoRGB((HueSatBri) colorData.getData());
}
while (notDone) {

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,38 @@
package com.bwssystems.HABridge.hue;
public class HueSatBri {
int hue;
int sat;
int bri;
public int getHue() {
return hue;
}
public void setHue(int hue) {
this.hue = hue;
}
public int getSat() {
return sat;
}
public void setSat(int sat) {
this.sat = sat;
}
public int getBri() {
return bri;
}
public void setBri(int bri) {
this.bri = bri;
}
public String toString() {
String formatString = new String();
formatString = "Hue: " + Integer.toString(hue) + ", Sat: " + Integer.toString(sat) + ", Bri: " + Integer.toString(bri);
return formatString;
}
}

View File

@@ -19,6 +19,7 @@
<li ng-if="bridge.showHomeWizard" role="presentation"><a href="#!/homewizarddevices">HomeWizard Devices</a></li>
<li ng-if="bridge.showOpenHAB" role="presentation"><a href="#!/openhabdevices">OpenHAB Devices</a></li>
<li ng-if="bridge.showFHEM" role="presentation"><a href="#!/fhemdevices">FHEM Devices</a></li>
<li ng-if="bridge.showMozIot" role="presentation"><a href="#!/moziotdevices">Mozilla IOT Devices</a></li>
<li ng-if="bridge.showBroadlink" role="presentation"><a href="#!/broadlinkdevices">Broadlink Devices</a></li>
<li role="presentation"><a href="#!/editdevice">Add/Edit</a></li>
</ul>
@@ -738,6 +739,73 @@
</tr>
</table></td>
</tr>
<tr>
<td>Mozilla IOT Names and IP Addresses</td>
<td><table
class="table table-bordered table-striped table-hover">
<thead>
<tr>
<th>Name</th>
<th>IP</th>
<th>Port</th>
<th>Username (opt)</th>
<th>Password (opt)</th>
<th>Use SSL</th>
<th>Manage</th>
</tr>
</thead>
<tr ng-repeat="moziot in bridge.settings.moziotaddress.devices">
<td><input id="bridge-settings-next-moziot-name"
class="form-control" type="text" ng-model="moziot.name"
placeholder="An moziot"></td>
<td><input id="bridge-settings-next-moziot-ip"
class="form-control" type="text" ng-model="moziot.ip"
placeholder="192.168.1.3"></td>
<td><input id="bridge-settings-next-moziot-port"
class="form-control" type="text" ng-model="moziot.port"
placeholder="8080"></td>
<td><input id="bridge-settings-next-moziot-username"
class="form-control" type="text" ng-model="moziot.username"
placeholder="moziot username"></td>
<td><input id="bridge-settings-next-moziot-password"
class="form-control" type="password" ng-model="moziot.password"
placeholder="moziot password (opt)"></td>
<td><input id="bridge-settings-next-moziot-webhook"
class="form-control" type="text" ng-model="moziot.webhook"
placeholder="Room Name"></td>
<td><input type="checkbox"
ng-model="moziot.secure" ng-true-value=true
ng-false-value=false></td>
<td><button class="btn btn-danger" type="submit"
ng-click="removemoziottoSettings(moziot.name, moziot.ip)">Del</button></td>
</tr>
<tr>
<td><input id="bridge-settings-new-moziot-name"
class="form-control" type="text" ng-model="newmoziotname"
placeholder="A moziot"></td>
<td><input id="bridge-settings-new-moziot-ip"
class="form-control" type="text" ng-model="newmoziotip"
placeholder="192.168.1.3"></td>
<td><input id="bridge-settings-new-moziot-port"
class="form-control" type="text" ng-model="newmoziotport"
placeholder="8080"></td>
<td><input id="bridge-settings-new-moziot-username"
class="form-control" type="text" ng-model="newmoziotusername"
placeholder="moziot username"></td>
<td><input id="bridge-settings-new-moziot-password"
class="form-control" type="password" ng-model="newmoziotpassword"
placeholder="moziot password (opt)"></td>
<td><input id="bridge-settings-new-moziot-webhook"
class="form-control" type="text" ng-model="newmoziotwebhook"
placeholder="Room Name"></td>
<td><input type="checkbox"
ng-model="newmoziotsecure" ng-true-value=true
ng-false-value=false></td>
<td><button class="btn btn-success" type="submit"
ng-click="addmoziottoSettings(newmoziotname, newmoziotip, newmoziotport, newsmoziotusername, newmoziotpassword, newmoziotwebhook, newmoziotsecure)">Add</button></td>
</tr>
</table></td>
</tr>
<tr>
<td>Nest</td>
<td><table class="table table-bordered table-striped table-hover">
@@ -803,6 +871,12 @@
ng-model="bridge.settings.traceupnp" ng-true-value=true
ng-false-value=false> {{bridge.settings.traceupnp}}</td>
</tr>
<tr>
<td>Trace State Changes</td>
<td><input type="checkbox"
ng-model="bridge.settings.tracestate" ng-true-value=true
ng-false-value=false> {{bridge.settings.tracestate}}</td>
</tr>
<tr>
<td>UPNP Send Delay</td>
<td><input id="bridge-settings-upnpsenddelay"