@camstack/addon-provider-homematic 1.2.172 → 1.2.173

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -7,6 +7,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [1.2.173] - 2026-10-31
11
+
12
+ ### Changed
13
+
14
+ - The CCU connection form explains why WebUI credentials are needed and prefills the username with Admin.
15
+
10
16
  ## [1.2.172] - 2026-10-31
11
17
 
12
18
  ### Changed
package/dist/addon.js CHANGED
@@ -117874,7 +117874,7 @@ var homematicConfigSchema = object({
117874
117874
  enableBidcosRf: boolean().default(false).describe("Enable Homematic (BidCos-RF)"),
117875
117875
  enableGroups: boolean().default(true).describe("Enable groups (heating groups / VirtualDevices)"),
117876
117876
  enableBidcosWired: boolean().default(false).describe("Enable BidCos-Wired (HM-Wired)"),
117877
- username: string().default("").describe("WebUI username (optional — enables names / rooms / sysvars)"),
117877
+ username: string().default("Admin").describe("WebUI username (optional — enables names / rooms / sysvars)"),
117878
117878
  password: string().default("").describe("WebUI password (optional)").meta({ secret: true }),
117879
117879
  callbackHost: string().default("").describe("Address the CCU calls back to for event push (this hub LAN IP)"),
117880
117880
  callbackPort: preprocess((v) => v === "" || v === null ? void 0 : v, number().int().min(1).max(65535).default(2128)).describe("Local XML-RPC callback server port"),
@@ -117947,6 +117947,8 @@ var homematicGatewayDeviceSchema = object({
117947
117947
  /** The adoption candidate id the device was adopted from. */
117948
117948
  nativeId: string().min(1)
117949
117949
  });
117950
+ /** Why the form asks for credentials; shown first (translated through its `labelKey`). */
117951
+ var CREDENTIALS_NOTICE = "Device and room names come from the CCU WebUI. Enter a WebUI user (Admin by default). If the WebUI has no login, leave the password empty. Without a user, devices are listed by their address.";
117950
117952
  /**
117951
117953
  * The integration form: a discovered-CCU picker (filled by the LAN scan), the
117952
117954
  * host, the interfaces, the event callback, the WebUI credentials (the password
@@ -117959,31 +117961,41 @@ function buildConnectionFormSchema() {
117959
117961
  title: "CCU connection",
117960
117962
  titleKey: "provider-homematic:connection.s_connection.title",
117961
117963
  columns: 1,
117962
- fields: [{
117963
- type: "addon-action-select",
117964
- addonId: "provider-homematic",
117965
- key: "__homematic-discovered",
117966
- writesKey: "host",
117967
- omitFromSettings: true,
117968
- label: "CCU",
117969
- labelKey: "provider-homematic:connection.s_connection.__homematic-discovered.label",
117970
- action: "discoverCcu",
117971
- mapOption: {
117972
- value: "host",
117973
- label: "name"
117964
+ fields: [
117965
+ {
117966
+ type: "info",
117967
+ key: "credentialsNotice",
117968
+ label: CREDENTIALS_NOTICE,
117969
+ labelKey: "provider-homematic:connection.s_connection.credentialsNotice.label",
117970
+ content: ""
117974
117971
  },
117975
- hideWhenFewerThan: 2,
117976
- emptyResultsMessage: "No CCU found on the network."
117977
- }, {
117978
- type: "text",
117979
- key: "host",
117980
- label: "Host / IP",
117981
- labelKey: "provider-homematic:connection.s_connection.host.label",
117982
- description: "Filled when one CCU is found. Type the address if it is not.",
117983
- descriptionKey: "provider-homematic:connection.s_connection.host.description",
117984
- required: true,
117985
- placeholder: "192.168.10.50"
117986
- }]
117972
+ {
117973
+ type: "addon-action-select",
117974
+ addonId: "provider-homematic",
117975
+ key: "__homematic-discovered",
117976
+ writesKey: "host",
117977
+ omitFromSettings: true,
117978
+ label: "CCU",
117979
+ labelKey: "provider-homematic:connection.s_connection.__homematic-discovered.label",
117980
+ action: "discoverCcu",
117981
+ mapOption: {
117982
+ value: "host",
117983
+ label: "name"
117984
+ },
117985
+ hideWhenFewerThan: 2,
117986
+ emptyResultsMessage: "No CCU found on the network."
117987
+ },
117988
+ {
117989
+ type: "text",
117990
+ key: "host",
117991
+ label: "Host / IP",
117992
+ labelKey: "provider-homematic:connection.s_connection.host.label",
117993
+ description: "Filled when one CCU is found. Type the address if it is not.",
117994
+ descriptionKey: "provider-homematic:connection.s_connection.host.description",
117995
+ required: true,
117996
+ placeholder: "192.168.10.50"
117997
+ }
117998
+ ]
117987
117999
  },
117988
118000
  {
117989
118001
  id: "interfaces",
@@ -118057,7 +118069,8 @@ function buildConnectionFormSchema() {
118057
118069
  type: "text",
118058
118070
  key: "username",
118059
118071
  label: "Username",
118060
- labelKey: "provider-homematic:connection.s_credentials.username.label"
118072
+ labelKey: "provider-homematic:connection.s_credentials.username.label",
118073
+ default: "Admin"
118061
118074
  }, {
118062
118075
  type: "password",
118063
118076
  key: "password",
@@ -121550,10 +121563,6 @@ function buildHomematicConnectionTestProvider(deps) {
121550
121563
  outcome: "rejected",
121551
121564
  error: "Some of the connection settings are not valid."
121552
121565
  };
121553
- if (connection.username.length > 0 !== connection.password.length > 0) return {
121554
- outcome: "rejected",
121555
- error: "Enter both the WebUI username and password, or neither."
121556
- };
121557
121566
  const interfaces = enabledInterfaces(connection);
121558
121567
  if (interfaces.length === 0) return {
121559
121568
  outcome: "rejected",
package/dist/addon.mjs CHANGED
@@ -117875,7 +117875,7 @@ var homematicConfigSchema = object({
117875
117875
  enableBidcosRf: boolean().default(false).describe("Enable Homematic (BidCos-RF)"),
117876
117876
  enableGroups: boolean().default(true).describe("Enable groups (heating groups / VirtualDevices)"),
117877
117877
  enableBidcosWired: boolean().default(false).describe("Enable BidCos-Wired (HM-Wired)"),
117878
- username: string().default("").describe("WebUI username (optional — enables names / rooms / sysvars)"),
117878
+ username: string().default("Admin").describe("WebUI username (optional — enables names / rooms / sysvars)"),
117879
117879
  password: string().default("").describe("WebUI password (optional)").meta({ secret: true }),
117880
117880
  callbackHost: string().default("").describe("Address the CCU calls back to for event push (this hub LAN IP)"),
117881
117881
  callbackPort: preprocess((v) => v === "" || v === null ? void 0 : v, number().int().min(1).max(65535).default(2128)).describe("Local XML-RPC callback server port"),
@@ -117948,6 +117948,8 @@ var homematicGatewayDeviceSchema = object({
117948
117948
  /** The adoption candidate id the device was adopted from. */
117949
117949
  nativeId: string().min(1)
117950
117950
  });
117951
+ /** Why the form asks for credentials; shown first (translated through its `labelKey`). */
117952
+ var CREDENTIALS_NOTICE = "Device and room names come from the CCU WebUI. Enter a WebUI user (Admin by default). If the WebUI has no login, leave the password empty. Without a user, devices are listed by their address.";
117951
117953
  /**
117952
117954
  * The integration form: a discovered-CCU picker (filled by the LAN scan), the
117953
117955
  * host, the interfaces, the event callback, the WebUI credentials (the password
@@ -117960,31 +117962,41 @@ function buildConnectionFormSchema() {
117960
117962
  title: "CCU connection",
117961
117963
  titleKey: "provider-homematic:connection.s_connection.title",
117962
117964
  columns: 1,
117963
- fields: [{
117964
- type: "addon-action-select",
117965
- addonId: "provider-homematic",
117966
- key: "__homematic-discovered",
117967
- writesKey: "host",
117968
- omitFromSettings: true,
117969
- label: "CCU",
117970
- labelKey: "provider-homematic:connection.s_connection.__homematic-discovered.label",
117971
- action: "discoverCcu",
117972
- mapOption: {
117973
- value: "host",
117974
- label: "name"
117965
+ fields: [
117966
+ {
117967
+ type: "info",
117968
+ key: "credentialsNotice",
117969
+ label: CREDENTIALS_NOTICE,
117970
+ labelKey: "provider-homematic:connection.s_connection.credentialsNotice.label",
117971
+ content: ""
117975
117972
  },
117976
- hideWhenFewerThan: 2,
117977
- emptyResultsMessage: "No CCU found on the network."
117978
- }, {
117979
- type: "text",
117980
- key: "host",
117981
- label: "Host / IP",
117982
- labelKey: "provider-homematic:connection.s_connection.host.label",
117983
- description: "Filled when one CCU is found. Type the address if it is not.",
117984
- descriptionKey: "provider-homematic:connection.s_connection.host.description",
117985
- required: true,
117986
- placeholder: "192.168.10.50"
117987
- }]
117973
+ {
117974
+ type: "addon-action-select",
117975
+ addonId: "provider-homematic",
117976
+ key: "__homematic-discovered",
117977
+ writesKey: "host",
117978
+ omitFromSettings: true,
117979
+ label: "CCU",
117980
+ labelKey: "provider-homematic:connection.s_connection.__homematic-discovered.label",
117981
+ action: "discoverCcu",
117982
+ mapOption: {
117983
+ value: "host",
117984
+ label: "name"
117985
+ },
117986
+ hideWhenFewerThan: 2,
117987
+ emptyResultsMessage: "No CCU found on the network."
117988
+ },
117989
+ {
117990
+ type: "text",
117991
+ key: "host",
117992
+ label: "Host / IP",
117993
+ labelKey: "provider-homematic:connection.s_connection.host.label",
117994
+ description: "Filled when one CCU is found. Type the address if it is not.",
117995
+ descriptionKey: "provider-homematic:connection.s_connection.host.description",
117996
+ required: true,
117997
+ placeholder: "192.168.10.50"
117998
+ }
117999
+ ]
117988
118000
  },
117989
118001
  {
117990
118002
  id: "interfaces",
@@ -118058,7 +118070,8 @@ function buildConnectionFormSchema() {
118058
118070
  type: "text",
118059
118071
  key: "username",
118060
118072
  label: "Username",
118061
- labelKey: "provider-homematic:connection.s_credentials.username.label"
118073
+ labelKey: "provider-homematic:connection.s_credentials.username.label",
118074
+ default: "Admin"
118062
118075
  }, {
118063
118076
  type: "password",
118064
118077
  key: "password",
@@ -121551,10 +121564,6 @@ function buildHomematicConnectionTestProvider(deps) {
121551
121564
  outcome: "rejected",
121552
121565
  error: "Some of the connection settings are not valid."
121553
121566
  };
121554
- if (connection.username.length > 0 !== connection.password.length > 0) return {
121555
- outcome: "rejected",
121556
- error: "Enter both the WebUI username and password, or neither."
121557
- };
121558
121567
  const interfaces = enabledInterfaces(connection);
121559
121568
  if (interfaces.length === 0) return {
121560
121569
  outcome: "rejected",
package/i18n/en.json CHANGED
@@ -1,5 +1,6 @@
1
1
  {
2
2
  "connection.s_connection.title": "CCU connection",
3
+ "connection.s_connection.credentialsNotice.label": "Device and room names come from the CCU WebUI. Enter a WebUI user (Admin by default). If the WebUI has no login, leave the password empty. Without a user, devices are listed by their address.",
3
4
  "connection.s_connection.__homematic-discovered.label": "CCU",
4
5
  "connection.s_connection.host.label": "Host / IP",
5
6
  "connection.s_connection.host.description": "Filled when one CCU is found. Type the address if it is not.",
package/i18n/it.json CHANGED
@@ -1,5 +1,6 @@
1
1
  {
2
2
  "connection.s_connection.title": "Connessione alla CCU",
3
+ "connection.s_connection.credentialsNotice.label": "I nomi di dispositivi e stanze provengono dalla WebUI della CCU. Inserisci un utente della WebUI (Admin per impostazione predefinita). Se la WebUI non richiede login, lascia vuota la password. Senza un utente, i dispositivi vengono elencati per indirizzo.",
3
4
  "connection.s_connection.__homematic-discovered.label": "CCU",
4
5
  "connection.s_connection.host.label": "Host / IP",
5
6
  "connection.s_connection.host.description": "Compilato quando viene trovata una CCU. Digita l'indirizzo se non viene trovata.",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/addon-provider-homematic",
3
- "version": "1.2.172",
3
+ "version": "1.2.173",
4
4
  "description": "Homematic / HomematicIP (CCU3 / RaspberryMatic) device-provider addon for CamStack — wraps the nodehomematic library",
5
5
  "keywords": [
6
6
  "camstack",