mirror of
https://github.com/bwssytems/ha-bridge.git
synced 2025-12-19 00:20:26 +00:00
Updated FHEM call issues for success of 302
Streamlined Fibaro Json Decoding
This commit is contained in:
@@ -10,6 +10,7 @@ import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import com.bwssystems.HABridge.BridgeSettings;
|
||||
import com.bwssystems.HABridge.DeviceMapTypes;
|
||||
import com.bwssystems.HABridge.Home;
|
||||
import com.bwssystems.HABridge.NamedIP;
|
||||
import com.bwssystems.HABridge.api.CallItem;
|
||||
@@ -174,6 +175,7 @@ public class FHEMHome implements Home {
|
||||
((HttpTestHandler)httpClient).setTheData("set", "Command Received");
|
||||
((HttpTestHandler)httpClient).setTheData(null, "no match");
|
||||
}
|
||||
httpClient.setCallType(DeviceMapTypes.FHEM_DEVICE[DeviceMapTypes.typeIndex]);
|
||||
Iterator<NamedIP> theList = bridgeSettings.getBridgeSettingsDescriptor().getFhemaddress().getDevices().iterator();
|
||||
while(theList.hasNext() && validFhem) {
|
||||
NamedIP aFhem = theList.next();
|
||||
|
||||
@@ -17,48 +17,9 @@ public class Device {
|
||||
@SerializedName("type")
|
||||
private String type;
|
||||
|
||||
@SerializedName("baseType")
|
||||
private String baseType;
|
||||
|
||||
@SerializedName("enabled")
|
||||
private boolean enabled;
|
||||
|
||||
@SerializedName("visible")
|
||||
private boolean visible;
|
||||
|
||||
@SerializedName("isPlugin")
|
||||
private boolean isPlugin;
|
||||
|
||||
@SerializedName("parentId")
|
||||
private int parentId;
|
||||
|
||||
@SerializedName("remoteGatewayId")
|
||||
private int remoteGatewayId;
|
||||
|
||||
@SerializedName("viewXml")
|
||||
private boolean viewXml;
|
||||
|
||||
@SerializedName("configXml")
|
||||
private boolean configXml;
|
||||
|
||||
@SerializedName("interfaces")
|
||||
private Object interfaces;
|
||||
|
||||
@SerializedName("properties")
|
||||
private DeviceProperties properties;
|
||||
|
||||
@SerializedName("actions")
|
||||
private Object actions;
|
||||
|
||||
@SerializedName("created")
|
||||
private int created;
|
||||
|
||||
@SerializedName("modified")
|
||||
private int modified;
|
||||
|
||||
@SerializedName("sortOrder")
|
||||
private int sortOrder;
|
||||
|
||||
public String getRoomName() {
|
||||
return roomName;
|
||||
}
|
||||
|
||||
@@ -3,242 +3,21 @@ package com.bwssystems.HABridge.plugins.fibaro.json;
|
||||
import com.google.gson.annotations.SerializedName;
|
||||
|
||||
public class DeviceProperties {
|
||||
@SerializedName("batteryLevel")
|
||||
private String batteryLevel;
|
||||
|
||||
@SerializedName("UIMessageSendTime")
|
||||
private String UIMessageSendTime;
|
||||
|
||||
@SerializedName("autoConfig")
|
||||
private String autoConfig;
|
||||
|
||||
@SerializedName("color")
|
||||
private String color;
|
||||
|
||||
@SerializedName("date")
|
||||
private String date;
|
||||
|
||||
@SerializedName("dead")
|
||||
private String dead;
|
||||
|
||||
@SerializedName("deviceControlType")
|
||||
private String deviceControlType;
|
||||
|
||||
@SerializedName("deviceIcon")
|
||||
private String deviceIcon;
|
||||
|
||||
@SerializedName("disabled")
|
||||
private String disabled;
|
||||
|
||||
@SerializedName("emailNotificationID")
|
||||
private String emailNotificationID;
|
||||
|
||||
@SerializedName("emailNotificationType")
|
||||
private String emailNotificationType;
|
||||
|
||||
@SerializedName("endPoint")
|
||||
private String endPoint;
|
||||
|
||||
@SerializedName("energy")
|
||||
private String energy;
|
||||
|
||||
@SerializedName("liliOffCommand")
|
||||
private String liliOffCommand;
|
||||
|
||||
@SerializedName("liliOnCommand")
|
||||
private String liliOnCommand;
|
||||
|
||||
@SerializedName("log")
|
||||
private String log;
|
||||
|
||||
@SerializedName("logTemp")
|
||||
private String logTemp;
|
||||
|
||||
@SerializedName("manufacturer")
|
||||
private String manufacturer;
|
||||
|
||||
@SerializedName("markAsDead")
|
||||
private String markAsDead;
|
||||
|
||||
@SerializedName("mode")
|
||||
private String mode;
|
||||
|
||||
@SerializedName("model")
|
||||
private String model;
|
||||
|
||||
@SerializedName("nodeID")
|
||||
private String nodeID;
|
||||
|
||||
@SerializedName("pollingDeadDevice")
|
||||
private String pollingDeadDevice;
|
||||
|
||||
@SerializedName("pollingTime")
|
||||
private String pollingTime;
|
||||
|
||||
@SerializedName("pollingTimeNext")
|
||||
private String pollingTimeNext;
|
||||
|
||||
@SerializedName("pollingTimeSec")
|
||||
private int pollingTimeSec;
|
||||
|
||||
@SerializedName("power")
|
||||
private String power;
|
||||
|
||||
@SerializedName("productInfo")
|
||||
private String productInfo;
|
||||
|
||||
@SerializedName("pushNotificationID")
|
||||
private String pushNotificationID;
|
||||
|
||||
@SerializedName("pushNotificationType")
|
||||
private String pushNotificationType;
|
||||
|
||||
@SerializedName("remoteGatewayId")
|
||||
private String remoteGatewayId;
|
||||
|
||||
@SerializedName("requestNodeNeighborStat")
|
||||
private String requestNodeNeighborStat;
|
||||
|
||||
@SerializedName("requestNodeNeighborStatTimeStemp")
|
||||
private String requestNodeNeighborStatTimeStemp;
|
||||
|
||||
@SerializedName("requestNodeNeighborState")
|
||||
private String requestNodeNeighborState;
|
||||
|
||||
@SerializedName("requestNodeNeighborStateTimeStemp")
|
||||
private String requestNodeNeighborStateTimeStemp;
|
||||
@SerializedName("value")
|
||||
private String value;
|
||||
|
||||
@SerializedName("saveLogs")
|
||||
private String saveLogs;
|
||||
|
||||
@SerializedName("showChildren")
|
||||
private String showChildren;
|
||||
|
||||
@SerializedName("smsNotificationID")
|
||||
private String smsNotificationID;
|
||||
|
||||
@SerializedName("smsNotificationType")
|
||||
private String smsNotificationType;
|
||||
|
||||
@SerializedName("supportedModes")
|
||||
private String supportedModes;
|
||||
|
||||
@SerializedName("targetLevel")
|
||||
private String targetLevel;
|
||||
|
||||
@SerializedName("unit")
|
||||
private String unit;
|
||||
|
||||
@SerializedName("useTemplate")
|
||||
private String useTemplate;
|
||||
|
||||
@SerializedName("status")
|
||||
private String status;
|
||||
|
||||
@SerializedName("sunriseHour")
|
||||
private String sunriseHour;
|
||||
|
||||
@SerializedName("sunsetHour")
|
||||
private String sunsetHour;
|
||||
|
||||
@SerializedName("userDescription")
|
||||
private String userDescription;
|
||||
|
||||
@SerializedName("value")
|
||||
private String value;
|
||||
|
||||
@SerializedName("zwaveBuildVersion")
|
||||
private String zwaveBuildVersion;
|
||||
|
||||
@SerializedName("zwaveCompany")
|
||||
private String zwaveCompany;
|
||||
|
||||
@SerializedName("zwaveInfo")
|
||||
private String zwaveInfo;
|
||||
|
||||
@SerializedName("zwaveRegion")
|
||||
private String zwaveRegion;
|
||||
|
||||
@SerializedName("zwaveVersion")
|
||||
private double zwaveVersion;
|
||||
|
||||
public String getBatteryLevel() {
|
||||
return batteryLevel;
|
||||
}
|
||||
|
||||
public String getColor() {
|
||||
return color;
|
||||
}
|
||||
|
||||
public String getDeviceControlType() {
|
||||
return deviceControlType;
|
||||
}
|
||||
|
||||
public String getEnergy() {
|
||||
return energy;
|
||||
}
|
||||
|
||||
public String getPower() {
|
||||
return power;
|
||||
}
|
||||
|
||||
public String getTargetLevel() {
|
||||
return targetLevel;
|
||||
}
|
||||
|
||||
public String getValue() {
|
||||
return value;
|
||||
}
|
||||
|
||||
// --- begin yrWeather plugin ---
|
||||
@SerializedName("Humidity")
|
||||
private String Humidity;
|
||||
|
||||
@SerializedName("Pressure")
|
||||
private String Pressure;
|
||||
|
||||
@SerializedName("Temperature")
|
||||
private String Temperature;
|
||||
|
||||
@SerializedName("WeatherCondition")
|
||||
private String WeatherCondition;
|
||||
|
||||
@SerializedName("Wind")
|
||||
private String Wind;
|
||||
|
||||
public String getHumidity() {
|
||||
return Humidity;
|
||||
}
|
||||
|
||||
public String getPressure() {
|
||||
return Pressure;
|
||||
}
|
||||
|
||||
public String getSaveLogs()
|
||||
{
|
||||
return saveLogs;
|
||||
}
|
||||
|
||||
public String getTemperature() {
|
||||
return Temperature;
|
||||
}
|
||||
|
||||
public String getWeatherCondition() {
|
||||
return WeatherCondition;
|
||||
}
|
||||
|
||||
public String getWind() {
|
||||
return Wind;
|
||||
}
|
||||
// --- end yrWeather plugin ---
|
||||
|
||||
public String getUserDescription()
|
||||
{
|
||||
return userDescription;
|
||||
}
|
||||
|
||||
public void setUserDescription(String userDescription)
|
||||
{
|
||||
this.userDescription = userDescription;
|
||||
}
|
||||
public String getSaveLogs() {
|
||||
return saveLogs;
|
||||
}
|
||||
public String getUserDescription() {
|
||||
return userDescription;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -12,18 +12,6 @@ public class Room {
|
||||
@SerializedName("sectionID")
|
||||
private int sectionID;
|
||||
|
||||
@SerializedName("icon")
|
||||
private String icon;
|
||||
|
||||
@SerializedName("defaultSensors")
|
||||
private Sensor defaultSensors;
|
||||
|
||||
@SerializedName("defaultThermostat")
|
||||
private int defaultThermostat;
|
||||
|
||||
@SerializedName("sortOrder")
|
||||
private int sortOrder;
|
||||
|
||||
public int getId() {
|
||||
return id;
|
||||
}
|
||||
|
||||
@@ -14,51 +14,12 @@ public class Scene {
|
||||
@SerializedName("type")
|
||||
private String type;
|
||||
|
||||
@SerializedName("properties")
|
||||
private String properties;
|
||||
|
||||
@SerializedName("roomID")
|
||||
private int roomID;
|
||||
|
||||
@SerializedName("iconID")
|
||||
private int iconID;
|
||||
|
||||
@SerializedName("runConfig")
|
||||
private String runConfig;
|
||||
|
||||
@SerializedName("autostart")
|
||||
private boolean autostart;
|
||||
|
||||
@SerializedName("protectedByPIN")
|
||||
private boolean protectedByPIN;
|
||||
|
||||
@SerializedName("killable")
|
||||
private boolean killable;
|
||||
|
||||
@SerializedName("maxRunningInstances")
|
||||
private int maxRunningInstances;
|
||||
|
||||
@SerializedName("runningInstances")
|
||||
private int runningInstances;
|
||||
|
||||
@SerializedName("visible")
|
||||
private boolean visible;
|
||||
|
||||
@SerializedName("isLua")
|
||||
private boolean isLua;
|
||||
|
||||
@SerializedName("triggers")
|
||||
private SceneTriggers triggers;
|
||||
|
||||
@SerializedName("liliStartCommand")
|
||||
private String liliStartCommand;
|
||||
|
||||
@SerializedName("liliStopCommand")
|
||||
private String liliStopCommand;
|
||||
|
||||
@SerializedName("sortOrder")
|
||||
private int sortOrder;
|
||||
|
||||
public String getRoomName() {
|
||||
return roomName;
|
||||
}
|
||||
|
||||
@@ -17,13 +17,22 @@ import org.apache.http.util.EntityUtils;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import com.bwssystems.HABridge.DeviceMapTypes;
|
||||
import com.bwssystems.HABridge.api.NameValue;
|
||||
|
||||
public class HTTPHandler {
|
||||
private static final Logger log = LoggerFactory.getLogger(HTTPHandler.class);
|
||||
private String callType;
|
||||
|
||||
public HTTPHandler() {
|
||||
super();
|
||||
callType = null;
|
||||
}
|
||||
|
||||
|
||||
public HTTPHandler(String type) {
|
||||
super();
|
||||
callType = type;
|
||||
}
|
||||
|
||||
|
||||
@@ -103,6 +112,11 @@ public class HTTPHandler {
|
||||
theContent = "";
|
||||
log.debug("Successfull response - The http response is <<<" + theContent + ">>>");
|
||||
retryCount = 2;
|
||||
} else if (callType != null && callType == DeviceMapTypes.FHEM_DEVICE[DeviceMapTypes.typeIndex] && response.getStatusLine().getStatusCode() == 302) {
|
||||
if(theContent == null)
|
||||
theContent = "";
|
||||
log.debug("Successfull response - The http response is <<<" + theContent + ">>>");
|
||||
retryCount = 2;
|
||||
} else if (response != null) {
|
||||
log.warn("HTTP response code was not an expected successful response of between 200 - 299, the code was: "
|
||||
+ response.getStatusLine() + " with the content of <<<" + theContent + ">>>");
|
||||
@@ -132,6 +146,11 @@ public class HTTPHandler {
|
||||
}
|
||||
return theContent;
|
||||
}
|
||||
public void setCallType(String callType) {
|
||||
this.callType = callType;
|
||||
}
|
||||
|
||||
|
||||
public void closeHandler() {
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user