iobroker.autodarts 0.0.10 → 0.0.14

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/README.md CHANGED
@@ -47,6 +47,18 @@ In the adapter settings, enter:
47
47
  <!--
48
48
  ### **WORK IN PROGRESS**
49
49
  -->
50
+ ### 0.0.14 (2025-12-22)
51
+ - fix
52
+
53
+ ### 0.0.13 (2025-12-22)
54
+ - translate
55
+
56
+ ### 0.0.12 (2025-12-22)
57
+ - fix
58
+
59
+ ### 0.0.11 (2025-12-22)
60
+ - fix
61
+
50
62
  ### 0.0.10 (2025-12-22)
51
63
  - fix
52
64
 
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "host_ip": "Autodarts (Boardmanager) Host / IP",
3
3
  "host_port": "Autodarts (Boardmanager) Port",
4
- "intro_txt": "Autodarts-Adapterkonfiguration.<br>Bitte geben Sie Host und Port aus dem Boardmanager sowie das Abfrageintervall ein.",
4
+ "intro_txt": "Autodarts-Adapterkonfiguration.<br>Bitte gebe IP und Port vom Boardmanager sowie den Abfrageintervall ein.",
5
5
  "outro_txt": "Team inventwo • <a href=\"https://github.com/inventwo\">https://github.com/inventwo</a>",
6
6
  "polling": "Abfrageintervall (ms)"
7
7
  }
package/io-package.json CHANGED
@@ -1,8 +1,34 @@
1
1
  {
2
2
  "common": {
3
3
  "name": "autodarts",
4
- "version": "0.0.10",
4
+ "version": "0.0.14",
5
5
  "news": {
6
+ "0.0.14": {
7
+ "en": "fix",
8
+ "de": "fixieren",
9
+ "ru": "исправлять",
10
+ "pt": "corrigir",
11
+ "nl": "fix",
12
+ "fr": "correction",
13
+ "it": "correzione",
14
+ "es": "arregle",
15
+ "pl": "fix",
16
+ "uk": "фіксація",
17
+ "zh-cn": "固定"
18
+ },
19
+ "0.0.12": {
20
+ "en": "fix",
21
+ "de": "fixieren",
22
+ "ru": "исправлять",
23
+ "pt": "corrigir",
24
+ "nl": "fix",
25
+ "fr": "correction",
26
+ "it": "correzione",
27
+ "es": "arregle",
28
+ "pl": "fix",
29
+ "uk": "фіксація",
30
+ "zh-cn": "固定"
31
+ },
6
32
  "0.0.10": {
7
33
  "en": "fix",
8
34
  "de": "fixieren",
@@ -67,32 +93,6 @@
67
93
  "pl": "fix - Kontrola adaptera",
68
94
  "uk": "виправити - Перевірювач адаптера",
69
95
  "zh-cn": "修补 - 适配器检查器"
70
- },
71
- "0.0.5": {
72
- "en": "Update Description",
73
- "de": "Update Beschreibung",
74
- "ru": "Обновленное описание",
75
- "pt": "Atualizar Descrição",
76
- "nl": "Beschrijving bijwerken",
77
- "fr": "Mettre à jour la description",
78
- "it": "Descrizione dell'aggiornamento",
79
- "es": "Actualización",
80
- "pl": "Aktualizacja opisu",
81
- "uk": "Опис оновлення",
82
- "zh-cn": "更新描述"
83
- },
84
- "0.0.4": {
85
- "en": "Privacy & Data Handling",
86
- "de": "Datenschutz und Datenverarbeitung",
87
- "ru": "Конфиденциальность и обработка данных",
88
- "pt": "Gestão de Privacidade e Dados",
89
- "nl": "Privacy en gegevensverwerking",
90
- "fr": "Confidentialité et traitement des données",
91
- "it": "Privacy e gestione dei dati",
92
- "es": "Privacidad \" Gestión de datos",
93
- "pl": "Obsługa prywatności i danych",
94
- "uk": "Конфіденційність та обробка даних",
95
- "zh-cn": "隐私和数据处理"
96
96
  }
97
97
  },
98
98
  "titleLang": {
@@ -164,7 +164,7 @@
164
164
  "native": {
165
165
  "host": "127.0.0.1",
166
166
  "port": 3180,
167
- "interval": 2000
167
+ "interval": 1000
168
168
  },
169
169
  "objects": [],
170
170
  "instanceObjects": []
package/main.js CHANGED
@@ -17,6 +17,7 @@ class Autodarts extends utils.Adapter {
17
17
  this.lastThrowsCount = 0; // Anzahl Darts im aktuellen Visit
18
18
  this.lastSignature = ""; // Verhindert doppelte Verarbeitung gleicher Würfe
19
19
  this.offline = false;
20
+ this.versionTimer = null; // Timer für Versionsabfrage
20
21
  }
21
22
 
22
23
  async onReady() {
@@ -25,12 +26,17 @@ class Autodarts extends utils.Adapter {
25
26
  // Defaults aus io-package.json absichern
26
27
  this.config.host ??= "127.0.0.1";
27
28
  this.config.port ??= 3180;
28
- this.config.interval ??= 2000;
29
+ this.config.interval ??= 1000;
29
30
 
30
31
  // Visit-Struktur anlegen
31
32
  await this.setObjectNotExistsAsync("visit", {
32
33
  type: "channel",
33
- common: { name: "Current visit" },
34
+ common: {
35
+ name: {
36
+ en: "Current visit",
37
+ de: "Aktuelle Aufnahme",
38
+ },
39
+ },
34
40
  native: {},
35
41
  });
36
42
 
@@ -39,7 +45,7 @@ class Autodarts extends utils.Adapter {
39
45
  common: {
40
46
  name: {
41
47
  en: "Visit score (Total of 3 darts)",
42
- de: "Visit-Punkte (Summe der 3 Darts)",
48
+ de: "Aufnahme (Summe dreier Darts)",
43
49
  },
44
50
  type: "number",
45
51
  role: "value",
@@ -47,7 +53,7 @@ class Autodarts extends utils.Adapter {
47
53
  write: false,
48
54
  desc: {
49
55
  en: "Total of the last complete visit",
50
- de: "Summe des letzten vollständigen Visit",
56
+ de: "Summe der letzten vollständigen Aufnahme",
51
57
  },
52
58
  },
53
59
  native: {},
@@ -58,7 +64,7 @@ class Autodarts extends utils.Adapter {
58
64
  type: "state",
59
65
  common: {
60
66
  name: {
61
- en: "Autodarts Board online",
67
+ en: "Autodarts board online",
62
68
  de: "Autodarts Board online",
63
69
  },
64
70
  type: "boolean",
@@ -66,8 +72,39 @@ class Autodarts extends utils.Adapter {
66
72
  read: true,
67
73
  write: false,
68
74
  desc: {
69
- en: "true = Board reachable, false = not reachable",
70
- de: "true = Board erreichbar, false = nicht erreichbar",
75
+ en: "true = Board reachable, false = Board not reachable",
76
+ de: "true = Board erreichbar, false = Board nicht erreichbar",
77
+ },
78
+ },
79
+ native: {},
80
+ });
81
+
82
+ // System-Channel und BoardVersion-Datenpunkt anlegen
83
+ await this.setObjectNotExistsAsync("system", {
84
+ type: "channel",
85
+ common: {
86
+ name: {
87
+ en: "Information about the system",
88
+ de: "Informationen zum System",
89
+ },
90
+ },
91
+ native: {},
92
+ });
93
+
94
+ await this.setObjectNotExistsAsync("system.boardVersion", {
95
+ type: "state",
96
+ common: {
97
+ name: {
98
+ en: "Board manager version",
99
+ de: "Version des Board-Manager",
100
+ },
101
+ type: "string",
102
+ role: "info.version",
103
+ read: true,
104
+ write: false,
105
+ desc: {
106
+ en: "Version of the board manager",
107
+ de: "Version des Board-Manager",
71
108
  },
72
109
  },
73
110
  native: {},
@@ -80,6 +117,10 @@ class Autodarts extends utils.Adapter {
80
117
  // Polling starten
81
118
  this.pollTimer = setInterval(() => this.fetchState(), this.config.interval);
82
119
  this.fetchState();
120
+
121
+ // Boardmanager-Version abfragen und alle 5 Minuten aktualisieren
122
+ this.fetchVersion();
123
+ this.versionTimer = setInterval(() => this.fetchVersion(), 5 * 60 * 1000);
83
124
  }
84
125
 
85
126
  /**
@@ -176,11 +217,52 @@ class Autodarts extends utils.Adapter {
176
217
  req.end();
177
218
  }
178
219
 
220
+ /**
221
+ * Boardmanager Version abfragen
222
+ */
223
+ fetchVersion() {
224
+ const options = {
225
+ host: this.config.host,
226
+ port: this.config.port,
227
+ path: "/api/version",
228
+ method: "GET",
229
+ timeout: 1500,
230
+ };
231
+
232
+ const req = http.request(options, res => {
233
+ let data = "";
234
+ res.on("data", chunk => (data += chunk));
235
+ res.on("end", () => {
236
+ try {
237
+ const version = data.trim();
238
+ this.setState("system.boardVersion", { val: version, ack: true });
239
+ } catch (e) {
240
+ this.log.warn(`Fehler beim Lesen der Version: ${e.message}`);
241
+ }
242
+ });
243
+ });
244
+
245
+ req.on("error", () => {
246
+ this.log.warn("Version-API nicht erreichbar");
247
+ this.setState("system.boardVersion", { val: "", ack: true });
248
+ });
249
+
250
+ req.on("timeout", () => {
251
+ req.destroy();
252
+ this.setState("system.boardVersion", { val: "", ack: true });
253
+ });
254
+
255
+ req.end();
256
+ }
257
+
179
258
  onUnload(callback) {
180
259
  try {
181
260
  if (this.pollTimer) {
182
261
  clearInterval(this.pollTimer);
183
262
  }
263
+ if (this.versionTimer) {
264
+ clearInterval(this.versionTimer);
265
+ }
184
266
  callback();
185
267
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
186
268
  } catch (e) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "iobroker.autodarts",
3
- "version": "0.0.10",
3
+ "version": "0.0.14",
4
4
  "description": "Autodarts Autoscoring",
5
5
  "author": "skvarel <skvarel@inventwo.com>",
6
6
  "contributors": [
@@ -51,7 +51,6 @@
51
51
  "files": [
52
52
  "admin{,/!(src)/**}/!(tsconfig|tsconfig.*|.eslintrc).{json,json5}",
53
53
  "admin{,/!(src)/**}/*.{html,css,png,svg,jpg,js}",
54
- "admin/build/",
55
54
  "lib/",
56
55
  "www/",
57
56
  "io-package.json",
@@ -62,12 +61,6 @@
62
61
  "release-patch": "release-script patch --yes",
63
62
  "release-minor": "release-script minor --yes",
64
63
  "release-major": "release-script major --yes",
65
- "prebuild": "rimraf admin/build",
66
- "build": "build-adapter react",
67
- "watch": "build-adapter react --watch",
68
- "prebuild:react": "rimraf admin/build",
69
- "build:react": "build-adapter react",
70
- "watch:react": "build-adapter react --watch",
71
64
  "test:js": "mocha --config test/mocharc.custom.json \"{!(node_modules|test)/**/*.test.js,*.test.js,test/**/test!(PackageFiles|Startup).js}\"",
72
65
  "test:package": "mocha test/package --exit",
73
66
  "test:integration": "mocha test/integration --exit",
@@ -1,2 +0,0 @@
1
- .logo-background-light,.logo-background-colored{background:#fff}.logo-background-dark,.logo-background-blue{background:#000}.logo-div{position:absolute;top:50%;left:50%;-ms-transform:translateX(-50%) translateY(-50%);-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);overflow:hidden;border-radius:50%;z-index:2}.logo-border{border-top-color:#39c;border-left-color:#164477;border-bottom-color:#164477;border-right-color:#164477;border-radius:50%;border-style:solid;box-sizing:border-box;width:100%;height:100%;position:absolute}.logo-top{position:absolute;width:4.5%;height:16%;top:0;z-index:2}.logo-i{position:absolute;width:14.5%;height:60%;top:20%;left:42%;background:#39c}.logo-i-top{position:absolute;width:14.5%;height:4%;left:42%;background:#39c;border-radius:100%}.logo-back{width:100%;height:100%;z-index:0;overflow:hidden}@keyframes logo-grow{0%{width:230px;height:230px;transform:translate(-50%,-50%) scale(1);opacity:1}99%{width:230px;height:230px;transform:translate(-50%,-50%) scale(10);opacity:0}to{width:0;height:0;opacity:0}}@keyframes logo-spin{to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes logo-color-inside-light{0%{background:#fefefe}to{background:#39c}}@keyframes logo-color-inside-dark{0%{background:#030303}to{background:#39c}}@keyframes logo-color-inside-colored{0%{background:#fefefe}to{background:#39c}}@keyframes logo-color-inside-blue{0%{background:#030303}to{background:#39c}}@keyframes logo-color-outside-light{0%{border-color:#fefefe}to{border-top-color:#39c;border-left-color:#164477;border-bottom-color:#164477;border-right-color:#164477}}@keyframes logo-color-outside-dark{0%{border-color:#040404}to{border-top-color:#39c;border-left-color:#164477;border-bottom-color:#164477;border-right-color:#164477}}@keyframes logo-color-outside-colored{0%{border-color:#fefefe}to{border-top-color:#39c;border-left-color:#164477;border-bottom-color:#164477;border-right-color:#164477}}@keyframes logo-color-outside-blue{0%{border-color:#040404}to{border-top-color:#39c;border-left-color:#164477;border-bottom-color:#164477;border-right-color:#164477}}.logo-animate-wait{animation:logo-color-outside 1.5s,logo-spin 1.5s linear infinite}.logo-animate-grow-light{background:#ddd}.logo-animate-grow-dark{background:#1d1d1d}.logo-animate-grow-colored{background:#ddd}.logo-animate-grow-blue{background:#1d1d1d}.logo-animate-grow{display:inline-block;text-align:center;z-index:1;top:50%;left:50%;-ms-transform:translateX(-50%) translateY(-50%);-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);width:245px;height:245px;border-radius:50%;position:absolute;animation:logo-grow 1s 1 ease forwards}.logo-animate-color-inside-light{animation:logo-color-inside-light 2.5s}.logo-animate-color-inside-dark{animation:logo-color-inside-dark 2.5s}.logo-animate-color-inside-colored{animation:logo-color-inside-colored 2.5s}.logo-animate-color-inside-blue{animation:logo-color-inside-blue 2.5s}.logo-animate-color-outside-light{animation:logo-color-outside-light 1.5s}.logo-animate-color-outside-dark{animation:logo-color-outside-dark 1.5s}.logo-animate-color-outside-colored{animation:logo-color-outside-colored 1.5s}.logo-animate-color-outside-blue{animation:logo-color-outside-blue 1.5s}html{height:100%}body{margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;width:100%;height:100%;overflow:hidden}::-webkit-scrollbar-track{background-color:#ccc;border-radius:5px}::-webkit-scrollbar{width:5px;height:5px;background-color:#ccc}::-webkit-scrollbar-thumb{background-color:#575757;border-radius:5px}#root,.App{height:100%}@keyframes glow{0%{background-color:initial}to{background-color:#58c458}}
2
- /*# sourceMappingURL=index.css.map */
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../node_modules/@iobroker/adapter-react/Components/loader.css", "../../node_modules/@iobroker/adapter-react/index.css"],
4
- "sourcesContent": ["/**\n * Copyright 2018-2022 bluefox <dogafox@gmail.com>\n *\n * MIT License\n *\n **/\n\n.logo-background-light, .logo-background-colored {\n background: white;\n}\n.logo-background-dark, .logo-background-blue {\n background: black;\n}\n.logo-div {\n position: absolute;\n top: 50%;\n left: 50%;\n -ms-transform: translateX(-50%) translateY(-50%);\n -webkit-transform: translate(-50%,-50%);\n transform: translate(-50%,-50%);\n overflow: hidden;\n border-radius: 50%;\n z-index: 2;\n}\n.logo-border {\n /*border-color: #164477;*/\n border-top-color: #3399CC;\n border-left-color: #164477;\n border-bottom-color: #164477;\n border-right-color: #164477;\n border-radius: 50%;\n border-style: solid;\n box-sizing: border-box;\n width: 100%;\n height: 100%;\n position: absolute;\n}\n.logo-top {\n position: absolute;\n width: 4.5%;\n height: 16%;\n top: 0;\n z-index: 2;\n}\n.logo-i {\n position: absolute;\n width: 14.5%;\n height: 60%;\n top: 20%;\n left: 42%;\n background: #3399CC;\n}\n.logo-i-top {\n position: absolute;\n width: 14.5%;\n height: 4%;\n left: 42%;\n background: #3399CC;\n border-radius: 100%;\n}\n.logo-back {\n width: 100%;\n height: 100%;\n z-index: 0;\n overflow: hidden;\n}\n@keyframes logo-grow {\n 0% {\n width: 230px;\n height: 230px;\n transform: translate(-50%,-50%) scale(1);\n opacity: 1\n }\n 99% {\n width: 230px;\n height: 230px;\n transform: translate(-50%,-50%) scale(10);\n opacity: 0;\n }\n 100% {\n width: 0;\n height: 0;\n opacity: 0;\n }\n}\n@keyframes logo-spin { 100% { -webkit-transform: rotate(360deg); transform: rotate(360deg); } }\n@keyframes logo-color-inside-light {\n 0% {\n background: #FEFEFE;\n }\n 100% {\n background: #3399CC;\n }\n}\n@keyframes logo-color-inside-dark {\n 0% {\n background: #030303;\n }\n 100% {\n background: #3399CC;\n }\n}\n@keyframes logo-color-inside-colored {\n 0% {\n background: #FEFEFE;\n }\n 100% {\n background: #3399CC;\n }\n}\n@keyframes logo-color-inside-blue {\n 0% {\n background: #030303;\n }\n 100% {\n background: #3399CC;\n }\n}\n\n@keyframes logo-color-outside-light {\n 0% {\n border-color: #FEFEFE;\n }\n 100% {\n border-top-color: #3399CC;\n border-left-color: #164477;\n border-bottom-color: #164477;\n border-right-color: #164477;\n }\n}\n@keyframes logo-color-outside-dark {\n 0% {\n border-color: #040404;\n }\n 100% {\n border-top-color: #3399CC;\n border-left-color: #164477;\n border-bottom-color: #164477;\n border-right-color: #164477;\n }\n}\n@keyframes logo-color-outside-colored {\n 0% {\n border-color: #FEFEFE;\n }\n 100% {\n border-top-color: #3399CC;\n border-left-color: #164477;\n border-bottom-color: #164477;\n border-right-color: #164477;\n }\n}\n@keyframes logo-color-outside-blue {\n 0% {\n border-color: #040404;\n }\n 100% {\n border-top-color: #3399CC;\n border-left-color: #164477;\n border-bottom-color: #164477;\n border-right-color: #164477;\n }\n}\n\n.logo-animate-wait {\n animation: logo-color-outside 1.5s, logo-spin 1.5s linear infinite;\n}\n\n.logo-animate-grow-light {\n background: #DDD;\n}\n.logo-animate-grow-dark {\n background: #1d1d1d;\n}\n.logo-animate-grow-colored {\n background: #DDD;\n}\n.logo-animate-grow-blue {\n background: #1d1d1d;\n}\n\n.logo-animate-grow {\n display: inline-block;\n text-align: center;\n z-index: 1;\n top: 50%;\n left: 50%;\n -ms-transform: translateX(-50%) translateY(-50%);\n -webkit-transform: translate(-50%,-50%);\n transform: translate(-50%,-50%);\n width: 245px;\n height: 245px;\n border-radius: 50%;\n position: absolute;\n animation: logo-grow 1s 1 ease forwards;\n}\n\n.logo-animate-color-inside-light {\n animation: logo-color-inside-light 2.5s;\n}\n.logo-animate-color-inside-dark {\n animation: logo-color-inside-dark 2.5s;\n}\n.logo-animate-color-inside-colored {\n animation: logo-color-inside-colored 2.5s;\n}\n.logo-animate-color-inside-blue {\n animation: logo-color-inside-blue 2.5s;\n}\n\n.logo-animate-color-outside-light {\n animation: logo-color-outside-light 1.5s;\n}\n.logo-animate-color-outside-dark {\n animation: logo-color-outside-dark 1.5s;\n}\n.logo-animate-color-outside-colored {\n animation: logo-color-outside-colored 1.5s;\n}\n.logo-animate-color-outside-blue {\n animation: logo-color-outside-blue 1.5s;\n}", "/**\n * Copyright 2018-2022 bluefox <dogafox@gmail.com>\n *\n * MIT License\n *\n **/\n\nhtml {\n height: 100%;\n}\n\nbody {\n margin: 0;\n padding: 0;\n font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", \"Roboto\", \"Oxygen\", \"Ubuntu\", \"Cantarell\", \"Fira Sans\", \"Droid Sans\", \"Helvetica Neue\", sans-serif;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n width: 100%;\n height: 100%;\n overflow: hidden;\n}\n\n/* scrollbar */\n::-webkit-scrollbar-track {\n background-color: #ccc;\n border-radius: 5px;\n}\n\n::-webkit-scrollbar {\n width: 5px;\n height: 5px;\n background-color: #ccc;\n}\n\n::-webkit-scrollbar-thumb {\n background-color: #575757;\n border-radius: 5px;\n}\n\n#root {\n height: 100%;\n}\n\n.App {\n height: 100%;\n}\n\n@keyframes glow {\n from {\n background-color: initial;\n }\n to {\n background-color: #58c458;\n }\n}"],
5
- "mappings": "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",
6
- "names": []
7
- }