Skip to content

Commit

Permalink
Merge branch 'openhab:main' into discovery-mthods-xml
Browse files Browse the repository at this point in the history
  • Loading branch information
andrewfg authored Nov 26, 2023
2 parents 868b4fb + a4da986 commit 3b07910
Show file tree
Hide file tree
Showing 297 changed files with 2,434 additions and 3,153 deletions.
3 changes: 1 addition & 2 deletions CODEOWNERS
Original file line number Diff line number Diff line change
Expand Up @@ -226,7 +226,6 @@
/bundles/org.openhab.binding.mycroft/ @dalgwen
/bundles/org.openhab.binding.mybmw/ @weymann @ntruchsess
/bundles/org.openhab.binding.mynice/ @clinique
/bundles/org.openhab.binding.myq/ @digitaldan
/bundles/org.openhab.binding.mystrom/ @pail23
/bundles/org.openhab.binding.nanoleaf/ @stefan-hoehn
/bundles/org.openhab.binding.neato/ @jjlauterbach
Expand Down Expand Up @@ -355,7 +354,6 @@
/bundles/org.openhab.binding.tplinksmarthome/ @Hilbrand
/bundles/org.openhab.binding.tr064/ @J-N-K
/bundles/org.openhab.binding.tradfri/ @cweitkamp @kaikreuzer
/bundles/org.openhab.binding.twitter/ @computergeek1507
/bundles/org.openhab.binding.unifi/ @mgbowman @Hilbrand
/bundles/org.openhab.binding.unifiedremote/ @GiviMAD
/bundles/org.openhab.binding.upb/ @marcusb
Expand Down Expand Up @@ -386,6 +384,7 @@
/bundles/org.openhab.binding.wled/ @Skinah
/bundles/org.openhab.binding.wolfsmartset/ @BoBiene
/bundles/org.openhab.binding.wundergroundupdatereceiver/ @danieldemus
/bundles/org.openhab.binding.x/ @computergeek1507
/bundles/org.openhab.binding.xmltv/ @clinique
/bundles/org.openhab.binding.xmppclient/ @pavel-gololobov
/bundles/org.openhab.binding.yamahamusiccast/ @coop-git
Expand Down
1 change: 0 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@
[![Jenkins Build Status](https://ci.openhab.org/job/openHAB-Addons/badge/icon)](https://ci.openhab.org/job/openHAB-Addons/)
[![EPL-2.0](https://img.shields.io/badge/license-EPL%202-green.svg)](https://opensource.org/licenses/EPL-2.0)
[![Crowdin](https://badges.crowdin.net/openhab-addons/localized.svg)](https://crowdin.com/project/openhab-addons)
[![Bountysource](https://www.bountysource.com/badge/tracker?tracker_id=2164344)](https://www.bountysource.com/teams/openhab/issues?tracker_ids=2164344)

This repository contains the official set of add-ons that are implemented on top of openHAB Core APIs.
Add-ons that got accepted in here will be maintained (e.g. adapted to new core APIs)
Expand Down
15 changes: 5 additions & 10 deletions bom/openhab-addons/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -1116,11 +1116,6 @@
<artifactId>org.openhab.binding.mynice</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.openhab.addons.bundles</groupId>
<artifactId>org.openhab.binding.myq</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.openhab.addons.bundles</groupId>
<artifactId>org.openhab.binding.mystrom</artifactId>
Expand Down Expand Up @@ -1761,11 +1756,6 @@
<artifactId>org.openhab.binding.tradfri</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.openhab.addons.bundles</groupId>
<artifactId>org.openhab.binding.twitter</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.openhab.addons.bundles</groupId>
<artifactId>org.openhab.binding.unifi</artifactId>
Expand Down Expand Up @@ -1921,6 +1911,11 @@
<artifactId>org.openhab.binding.wundergroundupdatereceiver</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.openhab.addons.bundles</groupId>
<artifactId>org.openhab.binding.x</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.openhab.addons.bundles</groupId>
<artifactId>org.openhab.binding.xmltv</artifactId>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,12 +1,15 @@
# add-on

addon.jsscripting.name = JavaScript Scripting
addon.jsscripting.description = Dette tilføjer en JS (ECMAScript-2021) script-motor.

# add-on

automation.config.jsscripting.injectionCachingEnabled.label = Cache openHAB JavaScript-bibliotek injektion
automation.config.jsscripting.injectionCachingEnabled.description = Brug det medfølgende openHAB JavaScript-bibliotek for optimal ydeevne.<br> Deaktivér denne indstilling for at tillade indlæsning af biblioteket fra den lokale brugerkonfigurerede mappe "automation/js/node_modules". Anvendelse af et bibliotek leveret af brugeren, kan resultere i øgede indlæsningstider, specielt på mindre kraftfulde systemer.
automation.config.jsscripting.injectionCachingEnabled.option.true = Cache injektion af bibliotek
automation.config.jsscripting.injectionCachingEnabled.option.false = Cache ikke injektion af bibliotek
automation.config.jsscripting.injectionEnabled.label = Brug indbyggede globale variabler
automation.config.jsscripting.injectionEnabled.description = Importer alle variabler fra openHAB JavaScript-biblioteket ind i alle regler for fælles tjenester som items, things, actions, log, etc... <br> Hvis deaktiveret, kan openHAB JavaScript-biblioteket importeres manuelt med "<i>require('openhab')</i>"
automation.config.jsscripting.injectionEnabled.option.true = Brug indbyggede variabler
automation.config.jsscripting.injectionEnabled.option.false = Brug ikke indbyggede variabler
automation.config.jsscripting.useIncludedLibrary.label = Brug inkluderet openHAB JavaScript-bibliotek
automation.config.jsscripting.useIncludedLibrary.description = Brug det medfølgende openHAB JavaScript-bibliotek for optimal ydeevne.<br> Deaktivér denne indstilling for at tillade indlæsning af biblioteket fra den lokale brugerkonfigurerede mappe "automation/js/node_modules". Anvendelse af et bibliotek leveret af brugeren, kan resultere i øgede indlæsningstider, specielt på mindre kraftfulde systemer.
automation.config.jsscripting.useIncludedLibrary.option.true = Brug inkluderet bibliotek
automation.config.jsscripting.useIncludedLibrary.option.false = Brug ikke inkluderet bibliotek

# service

service.automation.jsscripting.label = JavaScript Scripting
5 changes: 3 additions & 2 deletions bundles/org.openhab.binding.bluetooth.bluez/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
# Bluetooth BlueZ Adapter

This extension supports Bluetooth access via BlueZ and DBus on Linux. This is architecture agnostic and uses Unix Sockets.
This extension supports Bluetooth access via BlueZ and DBus on Linux.
This is architecture agnostic and uses Unix Sockets.

# Setup

Expand Down Expand Up @@ -33,7 +34,7 @@ Restart running services for changes to take effect.
```shell
systemctl restart dbus
systemctl restart bluetooth
systemctl restart openhab2
systemctl restart openhab
```

## Supported Things
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,10 @@ public class BluetoothUtils {
*/
public static int[] toIntArray(byte[] value) {
int[] ret = new int[value.length];
System.arraycopy(value, 0, ret, 0, value.length);
// System.arraycopy cannot be used as it throws ArrayStoreException
for (int i = 0; i < value.length; i++) {
ret[i] = value[i];
}
return ret;
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -132,7 +132,7 @@ private void sendBPUPKeepAlive() {
@Nullable
String bondId = response.bondId;
if (bondId == null || !bondId.equalsIgnoreCase(bridgeHandler.getBridgeId())) {
logger.warn("Response isn't from expected Bridge! Expected: {} Got: {}",
logger.trace("Response isn't from expected Bridge! Expected: {} Got: {}",
bridgeHandler.getBridgeId(), bondId);
} else {
bridgeHandler.setBridgeOnline(inPacket.getAddress().getHostAddress());
Expand Down Expand Up @@ -200,7 +200,7 @@ private void processPacket(DatagramPacket packet) {
BPUPUpdate update = transformUpdatePacket(packet);
if (update != null) {
if (!update.bondId.equalsIgnoreCase(bridgeHandler.getBridgeId())) {
logger.warn("Response isn't from expected Bridge! Expected: {} Got: {}", bridgeHandler.getBridgeId(),
logger.trace("Response isn't from expected Bridge! Expected: {} Got: {}", bridgeHandler.getBridgeId(),
update.bondId);
}

Expand Down Expand Up @@ -235,7 +235,7 @@ private void processPacket(DatagramPacket packet) {
try {
response = this.gsonBuilder.fromJson(responseJson, BPUPUpdate.class);
} catch (JsonParseException e) {
logger.warn("Error parsing json! {}", e.getMessage());
logger.debug("Error parsing json! {}", e.getMessage());
}
return response;
}
Expand Down Expand Up @@ -276,7 +276,7 @@ private void datagramSocketHealthRoutine() {
this.socket = s;
logger.trace("Datagram Socket reconnected using port {}.", s.getPort());
} catch (SocketException exception) {
logger.warn("Problem creating new socket : {}", exception.getLocalizedMessage());
logger.trace("Problem creating new socket : {}", exception.getLocalizedMessage());
}
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -194,7 +194,7 @@ public synchronized void executeDeviceAction(String deviceId, BondDeviceAction a
try {
response = request.send();
} catch (Exception e) {
logger.warn("Unable to execute device action {} against device {}: {}", deviceId, action, e.getMessage());
logger.debug("Unable to execute device action {} against device {}: {}", deviceId, action, e.getMessage());
return;
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -106,7 +106,7 @@ protected synchronized void startScan() {
}
}
} catch (BondException ignored) {
logger.warn("Error getting devices for discovery: {}", ignored.getMessage());
logger.debug("Error getting devices for discovery: {}", ignored.getMessage());
} finally {
removeOlderResults(getTimestampOfLastScan());
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -230,7 +230,7 @@ public void forwardUpdateToThing(BPUPUpdate pushUpdate) {
logger.trace("could not read topic type from push update or type was not state.");
}
} else {
logger.warn("Can not read device Id from push update.");
logger.trace("Cannot read device Id from push update.");
}
}

Expand Down Expand Up @@ -283,7 +283,7 @@ public void setBridgeOffline(ThingStatusDetail detail, String description) {
*/
public void setBridgeOnline(String bridgeAddress) {
if (!config.isValid()) {
logger.warn("Configuration error, cannot set the bridghe online without configuration");
logger.warn("Configuration error, cannot set the bridge online without configuration");
return;
} else if (!config.ipAddress.equals(bridgeAddress)) {
logger.debug("IP address of Bond {} has changed to {}", config.serialNumber, bridgeAddress);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -93,7 +93,7 @@ protected void initializeServices() throws BoschSHCException {
CHANNEL_ACTIVE_CONFIGURATION_PROFILE),
true);
this.registerService(intrusionDetectionControlStateService, this::updateChannels,
List.of(CHANNEL_ARMING_STATE));
List.of(CHANNEL_ARMING_STATE, CHANNEL_ACTIVE_CONFIGURATION_PROFILE));
this.registerService(surveillanceAlarmService, this::updateChannels, List.of(CHANNEL_ALARM_STATE));
this.registerStatelessService(armActionService);
this.registerStatelessService(disarmActionService);
Expand All @@ -110,6 +110,7 @@ private void updateChannels(IntrusionDetectionSystemState systemState) {

private void updateChannels(IntrusionDetectionControlState controlState) {
super.updateState(CHANNEL_ARMING_STATE, new StringType(controlState.value.toString()));
super.updateState(CHANNEL_ACTIVE_CONFIGURATION_PROFILE, new StringType(controlState.activeProfile));
}

private void updateChannels(SurveillanceAlarmState surveillanceAlarmState) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -105,6 +105,8 @@ channel-type.boschshc.purity-rating.label = Valutazione Della Purezza
channel-type.boschshc.purity-rating.description = Valutazione della purezza dell'aria.
channel-type.boschshc.purity.label = Purezza
channel-type.boschshc.purity.description = Purezza dell’aria. Un valore più elevato indica un inquinamento più elevato.
channel-type.boschshc.scenario-triggered.label = Scenario Attivato
channel-type.boschshc.scenario-triggered.description = Nome dello scenario attivato
channel-type.boschshc.setpoint-temperature.label = Temperatura Impostata
channel-type.boschshc.setpoint-temperature.description = Temperatura desiderata.
channel-type.boschshc.silent-mode.label = Modalità silenziosa
Expand All @@ -126,6 +128,8 @@ channel-type.boschshc.temperature-rating.state.option.MEDIUM = Temperatura Media
channel-type.boschshc.temperature-rating.state.option.BAD = Temperatura Pessima
channel-type.boschshc.temperature.label = Temperatura
channel-type.boschshc.temperature.description = Temperatura misurata corrente.
channel-type.boschshc.trigger-scenario.label = Scena da Attivare
channel-type.boschshc.trigger-scenario.description = Nome dello scenario da attivare
channel-type.boschshc.valve-tappet-position.label = Posizione utilizzata dalla Valvola
channel-type.boschshc.valve-tappet-position.description = Rapporto aperto corrente (da 0 a 100).

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -161,6 +161,9 @@ void testUpdateChannelsIntrusionDetectionControlState() {
verify(getCallback()).stateUpdated(
new ChannelUID(getThing().getUID(), BoschSHCBindingConstants.CHANNEL_ARMING_STATE),
new StringType("SYSTEM_ARMING"));
verify(getCallback()).stateUpdated(
new ChannelUID(getThing().getUID(), BoschSHCBindingConstants.CHANNEL_ACTIVE_CONFIGURATION_PROFILE),
new StringType("0"));
}

@Test
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,10 @@ thing-type.chatgpt.account.description = Compte chez OpenAI utilisé pour accéd

thing-type.config.chatgpt.account.apiKey.label = Clé API
thing-type.config.chatgpt.account.apiKey.description = Clé API pour accéder au compte
thing-type.config.chatgpt.account.apiUrl.label = URL de l'API
thing-type.config.chatgpt.account.apiUrl.description = L'API du serveur où atteindre le service IA.
thing-type.config.chatgpt.account.modelUrl.label = URL du modèle
thing-type.config.chatgpt.account.modelUrl.description = L'url du modèle d'où récupérer les modèles disponibles.

# channel types

Expand All @@ -29,7 +33,7 @@ channel-type.config.chatgpt.chat.systemMessage.description = Le message système
channel-type.config.chatgpt.chat.temperature.label = Température
channel-type.config.chatgpt.chat.temperature.description = Des valeurs plus élevées comme 0.8 rendront la sortie plus aléatoire, tandis que des valeurs plus basses comme 0.2 le rendront plus concentré et déterministe.

# Status messages
# status messages

offline.configuration-error=Aucune clé API configurée
offline.communication-error=Impossible de se connecter à l'API OpenAI
offline.configuration-error = Aucune clé API configurée
offline.communication-error = Impossible de se connecter à l'API OpenAI
Loading

0 comments on commit 3b07910

Please sign in to comment.