6 Commits

Author SHA1 Message Date
Adrian Jagielak
ce36669587 v1.6.1 2025-10-16 20:50:41 +02:00
Adrian Jagielak
dac16b0fd4 Tweak 'Ignore Availability Reports' setting 2025-10-16 20:50:03 +02:00
Adrian Jagielak
45182a6416 v1.6.0 2025-10-16 20:16:11 +02:00
Adrian Jagielak
9f2feea8c1 Add setting to always treat all devices as up 2025-10-16 20:15:31 +02:00
Adrian Jagielak
a38e441c9b v1.5.0 2025-10-16 02:07:11 +02:00
Adrian Jagielak
afbfd1d1c7 Revert "Add ability to specify a custom MQTT broker"
This reverts commit b937f90340.
2025-10-16 02:06:06 +02:00
5 changed files with 31 additions and 29 deletions

View File

@@ -1,5 +1,17 @@
<!-- https://developers.home-assistant.io/docs/add-ons/presentation#keeping-a-changelog --> <!-- https://developers.home-assistant.io/docs/add-ons/presentation#keeping-a-changelog -->
## 1.6.1 (16.10.2025)
- Tweaked 'Ignore Availability Reports' setting.
## 1.6.0 (16.10.2025)
- Added setting to always treat all devices as up.
## 1.5.0 (16.10.2025)
- Reverted: Add ability to specify a custom MQTT broker.
## 1.4.0 (13.10.2025) ## 1.4.0 (13.10.2025)
- Added ability to specify a custom MQTT broker. - Added ability to specify a custom MQTT broker.

View File

@@ -1,6 +1,6 @@
# https://developers.home-assistant.io/docs/add-ons/configuration#add-on-config # https://developers.home-assistant.io/docs/add-ons/configuration#add-on-config
name: Futurehome name: Futurehome
version: '1.4.0' version: '1.6.1'
slug: futurehome slug: futurehome
description: Local Futurehome Smarthub integration description: Local Futurehome Smarthub integration
url: 'https://github.com/adrianjagielak/home-assistant-futurehome' url: 'https://github.com/adrianjagielak/home-assistant-futurehome'
@@ -22,6 +22,7 @@ options:
tp_username: '' tp_username: ''
tp_password: '' tp_password: ''
tp_allow_empty: false tp_allow_empty: false
ignore_availability_reports: false
demo_mode: false demo_mode: false
show_debug_log: false show_debug_log: false
@@ -32,10 +33,7 @@ schema:
tp_username: 'str?' tp_username: 'str?'
tp_password: 'password?' tp_password: 'password?'
tp_allow_empty: 'bool?' tp_allow_empty: 'bool?'
custom_mqtt_host: 'str?' ignore_availability_reports: 'bool?'
custom_mqtt_port: 'int?'
custom_mqtt_user: 'str?'
custom_mqtt_pwd: 'password?'
demo_mode: 'bool?' demo_mode: 'bool?'
show_debug_log: 'bool?' show_debug_log: 'bool?'

View File

@@ -11,10 +11,7 @@ export FH_PASSWORD=$(bashio::config 'fh_password')
export TP_USERNAME=$(bashio::config 'tp_username') export TP_USERNAME=$(bashio::config 'tp_username')
export TP_PASSWORD=$(bashio::config 'tp_password') export TP_PASSWORD=$(bashio::config 'tp_password')
export TP_ALLOW_EMPTY=$(bashio::config 'tp_allow_empty') export TP_ALLOW_EMPTY=$(bashio::config 'tp_allow_empty')
export CUSTOM_MQTT_HOST=$(bashio::config 'custom_mqtt_host') export IGNORE_AVAILABILITY_REPORTS=$(bashio::config 'ignore_availability_reports')
export CUSTOM_MQTT_PORT=$(bashio::config 'custom_mqtt_port')
export CUSTOM_MQTT_USER=$(bashio::config 'custom_mqtt_user')
export CUSTOM_MQTT_PWD=$(bashio::config 'custom_mqtt_pwd')
export DEMO_MODE=$(bashio::config 'demo_mode') export DEMO_MODE=$(bashio::config 'demo_mode')
export SHOW_DEBUG_LOG=$(bashio::config 'show_debug_log') export SHOW_DEBUG_LOG=$(bashio::config 'show_debug_log')

View File

@@ -25,19 +25,20 @@ import { pollVinculum } from './fimp/vinculum';
const thingsplexAllowEmpty = (process.env.TP_ALLOW_EMPTY || '') const thingsplexAllowEmpty = (process.env.TP_ALLOW_EMPTY || '')
.toLowerCase() .toLowerCase()
.includes('true'); .includes('true');
const ignoreAvailabilityReports = (
process.env.IGNORE_AVAILABILITY_REPORTS || ''
)
.toLowerCase()
.includes('true');
const demoMode = (process.env.DEMO_MODE || '').toLowerCase().includes('true'); const demoMode = (process.env.DEMO_MODE || '').toLowerCase().includes('true');
const showDebugLog = (process.env.SHOW_DEBUG_LOG || '') const showDebugLog = (process.env.SHOW_DEBUG_LOG || '')
.toLowerCase() .toLowerCase()
.includes('true'); .includes('true');
const mqttHost = process.env.CUSTOM_MQTT_HOST || process.env.MQTT_HOST || ''; const mqttHost = process.env.MQTT_HOST || '';
const mqttPort = Number( const mqttPort = Number(process.env.MQTT_PORT || '1883');
process.env.CUSTOM_MQTT_PORT || process.env.MQTT_PORT || '1883', const mqttUsername = process.env.MQTT_USER || '';
); const mqttPassword = process.env.MQTT_PWD || '';
const mqttUsername =
process.env.CUSTOM_MQTT_USER || process.env.MQTT_USER || '';
const mqttPassword =
process.env.CUSTOM_MQTT_PWD || process.env.MQTT_PWD || '';
setupLogger({ showDebugLog }); setupLogger({ showDebugLog });
@@ -273,6 +274,9 @@ import { pollVinculum } from './fimp/vinculum';
return; return;
} }
for (const deviceAvailability of devicesAvailability) { for (const deviceAvailability of devicesAvailability) {
if (ignoreAvailabilityReports) {
deviceAvailability.status = 'UP';
}
haUpdateAvailability({ hubId, deviceAvailability }); haUpdateAvailability({ hubId, deviceAvailability });
await delay(50); await delay(50);
} }

View File

@@ -17,18 +17,9 @@ configuration:
tp_allow_empty: tp_allow_empty:
name: Allow Empty Thingsplex Credentials name: Allow Empty Thingsplex Credentials
description: Allow empty Thingsplex username and/or password. description: Allow empty Thingsplex username and/or password.
custom_mqtt_host: ignore_availability_reports:
name: Custom MQTT Host (Optional) name: Ignore Availability Reports
description: Your custom MQTT broker host. description: Sometimes the hub incorrectly reports some devices as down. This setting forces all devices to always be treated as up.
custom_mqtt_port:
name: Custom MQTT Port (Optional)
description: Your custom MQTT broker port.
custom_mqtt_user:
name: Custom MQTT Username (Optional)
description: Your custom MQTT broker username.
custom_mqtt_pwd:
name: Custom MQTT Password (Optional)
description: Your custom MQTT broker password.
demo_mode: demo_mode:
name: Demo Mode name: Demo Mode
description: Use a sample recorded state from a real Futurehome Smarthub to simulate devices. description: Use a sample recorded state from a real Futurehome Smarthub to simulate devices.