iobroker.wiim 0.2.0 → 0.4.0

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/LICENSE CHANGED
@@ -1,21 +1,21 @@
1
- MIT License
2
-
3
- Copyright (c) 2025 KaiIOB <Kaibrendel@kabelmail.de>
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in all
13
- copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
- SOFTWARE.
1
+ MIT License
2
+
3
+ Copyright (c) 2025 KaiIOB <Kaibrendel@kabelmail.de>
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md CHANGED
@@ -1,173 +1,182 @@
1
- ![Logo](admin/wiim.png)
2
- # ioBroker.wiim
3
-
4
- [![NPM version](https://img.shields.io/npm/v/iobroker.wiim.svg)](https://www.npmjs.com/package/iobroker.wiim)
5
- [![Downloads](https://img.shields.io/npm/dm/iobroker.wiim.svg)](https://www.npmjs.com/package/iobroker.wiim)
6
- ![Number of Installations](https://iobroker.live/badges/wiim-installed.svg)
7
- ![Current version in stable repository](https://iobroker.live/badges/wiim-stable.svg)
8
-
9
- [![NPM](https://nodei.co/npm/iobroker.wiim.png?downloads=true)](https://nodei.co/npm/iobroker.wiim/)
10
-
11
- **Tests:** ![Test and Release](https://github.com/KaiIOB/ioBroker.wiim/workflows/Test%20and%20Release/badge.svg)
12
-
13
- ## wiim adapter for ioBroker
14
-
15
- adapter to access Wiim/Arylic devices
16
-
17
- ## supported devices
18
- The adapter has been tested with:
19
-
20
- Wiim Amp
21
- Wiim Mini
22
- Arylic up2stream v3
23
- Arylic S10+
24
- Audiocast M5
25
- August WR320B (after firmware upgrade to 4.6.415156.0)
26
-
27
- Wiim devices use https communication, Arylic devices use http communication.
28
- At least one feature (playPromptUrl) works only with Arylic devices with firmware >=4.6.415145
29
- Currently only the most important features of the API are implemented. Please let me know if other features are useful to you.
30
-
31
- You can find information on the devices here:
32
-
33
- WiiM: https://www.wiimhome.com/wiimvibelink/overview
34
- Arylic: https://www.arylic.com/
35
- Audiocast: https://audiocast.io/
36
- remark: Audicast M5 is sold under many different generic brands, I assume they all work with the adapter
37
- August: https://augustint.com/
38
- remark: the WR320B seems to be discontinued
39
-
40
-
41
- ## Adapter Configuration
42
-
43
- interval for refresh of player data in seconds: time between two requests for updated data
44
-
45
-
46
- ## Available States
47
-
48
- album: name of album played, string, read-only
49
- string that can be used to display the name of the current album, e.g.:
50
- "Electric"
51
-
52
- title: name if title played, string, read-only
53
- string that can be used to display the name of the current title, e.g.:
54
- "Wild Flower"
55
-
56
- artist: name of artist of title played, string, read-only
57
- string that can be used to display the name of the artist of the current title, e.g.:
58
- "The Cult"
59
-
60
- albumArtURI: URL of the cover art of the album played, string, read-only
61
- string that can be used to display the cover art of the current title, e.g.:
62
- "https://i.scdn.co/image/ab67616d0000b273ca8a324a5d0fce617bb2613d"
63
- Unfortunately, the generic Linkplay devices do not provide this information via http API....
64
-
65
- sampleRate: sample rate of file played, number, read-only
66
- number which can be used to display the current sample rate, e.g.;
67
- "44100"
68
-
69
-
70
- bitDepth: bit depth of file played, number, read-only
71
- number holdin the value of the current bit depth, e.g.:
72
- "16"
73
-
74
- Play_Pause: button to play/pause, button, read/write
75
- write "true" ti this datapoint to pause/play
76
-
77
- next: button to skip to the next title in playlist, button, read/write
78
- write "true" to this data point if you want to jump to the next title in the playlist
79
-
80
- previous: button to go to the previous title in playlist, button read/write
81
- write "true" to this data point if you want to jump to the previous title in the playlist
82
-
83
- lastRefresh: time stamp of last data poll from device, string, read-only, e.g.:
84
- "17:43:37"
85
-
86
- volume: playback volume, number, read/write
87
- use this datapoint to set the desired volume (0-100)
88
-
89
- play_preset: start playback of specific preset, number, write-only
90
- write the number of the preset you want to play to this datapoint
91
-
92
- play_URL: URL of file to be played, string, read/write
93
- the device will start to play the audio file/playlist located at the URL written to this datapoint
94
-
95
- loop_mode: current loop mode, number, read-only
96
- number between 1 and 4 indicating the current loop mode:
97
- 0 - loop all
98
- 1 - single loop
99
- 2 - shuffle loop
100
- 3 - shuffle, no loop
101
- 4 - no shuffle, no loop
102
-
103
- toggle_loop_mode: skip to next loop mode, button, read-only
104
- not implemented yet
105
-
106
- setMaster: IP address of device to which this device shall be a slave within the sync group, read/write
107
- write the IP of the device controlling the sync group this device should join to this datapoint
108
-
109
- leaveSyncGroup: button to make device leave the current sync group, button, write
110
- write "true" to this datapoint in order to force the device leave the current snyc group
111
-
112
- jumptopos: position in ms to which the playback should jump, number, write-only
113
- write the position (in ms) to which playback should jump to this datapoint
114
-
115
- jumptopli: number of playlist item to which the playback should jump, number, write-only
116
- the device will jump to the index of the playlist xou write to this datapoint
117
-
118
- mode: current source, string, read-only, e.g.:
119
- "Spotify Connect"
120
-
121
- switchmode: source to which the device should switch, write-only
122
-
123
-
124
- playPromptUrl: URL of a file which should be played overlaying the current playback, string, write-only
125
- the device will play the file locate in the URL you write to this datapoint. The device will play the file in addtion to the current title. This can be used to implement a doorbell. After the "doorbell" is played the playback of the current track will return to the additional volume
126
-
127
- setShutdown: time in seconds until the device should shut down
128
- the device will shutdown after the number of seconds you write to this datapoint
129
-
130
-
131
- ## Changelog
132
-
133
- <### 0.2.0
134
- * (KaiIOB) introduction of bonjour auto-detect of streamers>
135
-
136
-
137
- <### 0.1.0
138
- * (KaiIOB) main functions implemented and code clean-up>
139
-
140
-
141
- <### 0.0.3
142
- * (KaiIOB) migration to setTimeout from setInteral>
143
-
144
-
145
- <### 0.0.2
146
- * (KaiIOB) Arylic devices added and corrections>
147
-
148
-
149
- <### 0.0.1
150
- * (KaiIOB) initial release>
151
- <>
152
- ## License
153
- MIT License
154
-
155
- Copyright (c) 2025 KaiIOB <Kaibrendel@kabelmail.de>
156
-
157
- Permission is hereby granted, free of charge, to any person obtaining a copy
158
- of this software and associated documentation files (the "Software"), to deal
159
- in the Software without restriction, including without limitation the rights
160
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
161
- copies of the Software, and to permit persons to whom the Software is
162
- furnished to do so, subject to the following conditions:
163
-
164
- The above copyright notice and this permission notice shall be included in all
165
- copies or substantial portions of the Software.
166
-
167
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
168
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
169
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
170
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
171
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
172
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
173
- SOFTWARE.
1
+ ![Logo](admin/wiim.png)
2
+ # ioBroker.wiim
3
+
4
+ [![NPM version](https://img.shields.io/npm/v/iobroker.wiim.svg)](https://www.npmjs.com/package/iobroker.wiim)
5
+ [![Downloads](https://img.shields.io/npm/dm/iobroker.wiim.svg)](https://www.npmjs.com/package/iobroker.wiim)
6
+ ![Number of Installations](https://iobroker.live/badges/wiim-installed.svg)
7
+ ![Current version in stable repository](https://iobroker.live/badges/wiim-stable.svg)
8
+
9
+ [![NPM](https://nodei.co/npm/iobroker.wiim.png?downloads=true)](https://nodei.co/npm/iobroker.wiim/)
10
+
11
+ **Tests:** ![Test and Release](https://github.com/KaiIOB/ioBroker.wiim/workflows/Test%20and%20Release/badge.svg)
12
+
13
+ ## wiim adapter for ioBroker
14
+
15
+ adapter to access Wiim/Arylic and other devices based on the Linkplay streaming/multiroom technology
16
+
17
+ ## supported devices
18
+ The adapter has been tested with:
19
+
20
+ Wiim Amp
21
+ Wiim Mini
22
+ Arylic up2stream v3
23
+ Arylic S10+
24
+ Audiocast M5
25
+ August WR320B (after firmware upgrade to 4.6.415156.0)
26
+ August WS350K
27
+ Audio Pro Addon C5A
28
+ Müzo Cobblestone
29
+
30
+ Wiim devices use https communication, Arylic devices use http communication.
31
+ At least one feature (playPromptUrl) works only with Arylic devices with firmware >=4.6.415145
32
+ Currently only the most important features of the API are implemented. Please let me know if other features are useful to you.
33
+
34
+ You can find information on the devices here:
35
+
36
+ WiiM: https://www.wiimhome.com/wiimvibelink/overview
37
+ Arylic: https://www.arylic.com/
38
+ Audiocast: https://audiocast.io/
39
+ remark: Audicast M5 is sold under many different generic brands, I assume they all work with the adapter
40
+ August: https://augustint.com/
41
+ remark: the WR320B seems to be discontinued
42
+
43
+
44
+ ## Adapter Configuration
45
+
46
+ interval for refresh of player data in seconds: time between two requests for updated data
47
+
48
+
49
+ ## Available States
50
+
51
+ album: name of album played, string, read-only
52
+ string that can be used to display the name of the current album, e.g.:
53
+ "Electric"
54
+
55
+ title: name if title played, string, read-only
56
+ string that can be used to display the name of the current title, e.g.:
57
+ "Wild Flower"
58
+
59
+ artist: name of artist of title played, string, read-only
60
+ string that can be used to display the name of the artist of the current title, e.g.:
61
+ "The Cult"
62
+
63
+ albumArtURI: URL of the cover art of the album played, string, read-only
64
+ string that can be used to display the cover art of the current title, e.g.:
65
+ "https://i.scdn.co/image/ab67616d0000b273ca8a324a5d0fce617bb2613d"
66
+ Unfortunately, the generic Linkplay devices do not provide this information via http API....
67
+
68
+ sampleRate: sample rate of file played, number, read-only
69
+ number which can be used to display the current sample rate, e.g.;
70
+ "44100"
71
+
72
+
73
+ bitDepth: bit depth of file played, number, read-only
74
+ number holdin the value of the current bit depth, e.g.:
75
+ "16"
76
+
77
+ Play_Pause: button to play/pause, button, read/write
78
+ write "true" ti this datapoint to pause/play
79
+
80
+ next: button to skip to the next title in playlist, button, read/write
81
+ write "true" to this data point if you want to jump to the next title in the playlist
82
+
83
+ previous: button to go to the previous title in playlist, button read/write
84
+ write "true" to this data point if you want to jump to the previous title in the playlist
85
+ "17:43:37"
86
+
87
+
88
+ lastRefresh: time stamp of last data poll from device, string, read-only, e.g.:
89
+ volume: playback volume, number, read/write
90
+ use this datapoint to set the desired volume (0-100)
91
+
92
+ play_preset: start playback of specific preset, number, write-only
93
+ write the number of the preset you want to play to this datapoint
94
+
95
+ play_URL: URL of file to be played, string, read/write
96
+ the device will start to play the audio file/playlist located at the URL written to this datapoint
97
+
98
+ loop_mode: current loop mode, number, read-only
99
+ number between 1 and 4 indicating the current loop mode:
100
+ 0 - loop all
101
+ 1 - single loop
102
+ 2 - shuffle loop
103
+ 3 - shuffle, no loop
104
+ 4 - no shuffle, no loop
105
+
106
+ toggle_loop_mode: skip to next loop mode, button, read-only
107
+ not implemented yet
108
+
109
+ setMaster: IP address of device to which this device shall be a slave within the sync group, read/write
110
+ write the IP of the device controlling the sync group this device should join to this datapoint
111
+
112
+ leaveSyncGroup: button to make device leave the current sync group, button, write
113
+ write "true" to this datapoint in order to force the device leave the current snyc group
114
+
115
+ jumptopos: position in ms to which the playback should jump, number, write-only
116
+ write the position (in ms) to which playback should jump to this datapoint
117
+
118
+ jumptopli: number of playlist item to which the playback should jump, number, write-only
119
+ the device will jump to the index of the playlist xou write to this datapoint
120
+
121
+ mode: current source, string, read-only, e.g.:
122
+ "Spotify Connect"
123
+
124
+ switchmode: source to which the device should switch, write-only
125
+
126
+
127
+ playPromptUrl: URL of a file which should be played overlaying the current playback, string, write-only
128
+ the device will play the file locate in the URL you write to this datapoint. The device will play the file in addtion to the current title. This can be used to implement a doorbell. After the "doorbell" is played the playback of the current track will return to the additional volume
129
+
130
+ setShutdown: time in seconds until the device should shut down
131
+ the device will shutdown after the number of seconds you write to this datapoint
132
+
133
+
134
+ ## Changelog
135
+ <### 0.4.0
136
+ * (KaiIOB) reduced logging, introduction of player state, improved error handling, several devices added to list of tested devices>
137
+
138
+ <### 0.3.0
139
+ * (KaiIOB) improved stability of bonjour autodetect of streamers, dnla introduced to retrieve coverArt from generic players>
140
+
141
+
142
+ <### 0.2.0
143
+ * (KaiIOB) introduction of bonjour auto-detect of streamers>
144
+
145
+
146
+ <### 0.1.0
147
+ * (KaiIOB) main functions implemented and code clean-up>
148
+
149
+
150
+ <### 0.0.3
151
+ * (KaiIOB) migration to setTimeout from setInteral>
152
+
153
+
154
+ <### 0.0.2
155
+ * (KaiIOB) Arylic devices added and corrections>
156
+
157
+
158
+ <### 0.0.1
159
+ * (KaiIOB) initial release>
160
+ <>
161
+ ## License
162
+ MIT License
163
+
164
+ Copyright (c) 2025 KaiIOB <Kaibrendel@kabelmail.de>
165
+
166
+ Permission is hereby granted, free of charge, to any person obtaining a copy
167
+ of this software and associated documentation files (the "Software"), to deal
168
+ in the Software without restriction, including without limitation the rights
169
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
170
+ copies of the Software, and to permit persons to whom the Software is
171
+ furnished to do so, subject to the following conditions:
172
+
173
+ The above copyright notice and this permission notice shall be included in all
174
+ copies or substantial portions of the Software.
175
+
176
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
177
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
178
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
179
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
180
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
181
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
182
+ SOFTWARE.
@@ -1,44 +1,44 @@
1
- <script type="text/x-iobroker" data-template-name="wiim">
2
- <div class="row">
3
- <div class="col s2">
4
- <input type="checkbox" data-field="enabled" data-default="false"/>
5
- <!-- this field is mandatory, just to find out if to include this settings or not</span-->
6
- <span class="translate">enabled</span>
7
- </div>
8
- <div class="col s4">
9
- <input type="text" data-field="interval" size="30">
10
- <span class="translate">period of time</span>
11
- </div>
12
- <div class="col s4">
13
- <input type="text" data-field="state" size="30">
14
- <span class="translate">new state</span>
15
- </div>
16
- <div class="col s2">
17
- <input type="checkbox" data-field="setAck" data-default="false">
18
- <span class="translate">ack</span>
19
- </div>
20
- </div>
21
- </script>
22
-
23
- <script type="text/javascript">
24
- $.get("adapter/wiim/words.js", function(script) {
25
- let translation = script.substring(script.indexOf('{'), script.length);
26
- translation = translation.substring(0, translation.lastIndexOf(';'));
27
- $.extend(systemDictionary, JSON.parse(translation));
28
- });
29
-
30
- // There are two ways how to predefine default settings:
31
- // - with attribute "data-default" (content independent)
32
- // - with function in global variable "defaults". Function name is equal with adapter name.
33
- // as input function receives object with all information concerning it
34
- if (typeof defaults !== 'undefined') {
35
- defaults["wiim"] = function (obj, instanceObj) {
36
- return {
37
- enabled: false,
38
- interval: '5m',
39
- state: false,
40
- setAck: false
41
- };
42
- }
43
- }
1
+ <script type="text/x-iobroker" data-template-name="wiim">
2
+ <div class="row">
3
+ <div class="col s2">
4
+ <input type="checkbox" data-field="enabled" data-default="false"/>
5
+ <!-- this field is mandatory, just to find out if to include this settings or not</span-->
6
+ <span class="translate">enabled</span>
7
+ </div>
8
+ <div class="col s4">
9
+ <input type="text" data-field="interval" size="30">
10
+ <span class="translate">period of time</span>
11
+ </div>
12
+ <div class="col s4">
13
+ <input type="text" data-field="state" size="30">
14
+ <span class="translate">new state</span>
15
+ </div>
16
+ <div class="col s2">
17
+ <input type="checkbox" data-field="setAck" data-default="false">
18
+ <span class="translate">ack</span>
19
+ </div>
20
+ </div>
21
+ </script>
22
+
23
+ <script type="text/javascript">
24
+ $.get("adapter/wiim/words.js", function(script) {
25
+ let translation = script.substring(script.indexOf('{'), script.length);
26
+ translation = translation.substring(0, translation.lastIndexOf(';'));
27
+ $.extend(systemDictionary, JSON.parse(translation));
28
+ });
29
+
30
+ // There are two ways how to predefine default settings:
31
+ // - with attribute "data-default" (content independent)
32
+ // - with function in global variable "defaults". Function name is equal with adapter name.
33
+ // as input function receives object with all information concerning it
34
+ if (typeof defaults !== 'undefined') {
35
+ defaults["wiim"] = function (obj, instanceObj) {
36
+ return {
37
+ enabled: false,
38
+ interval: '5m',
39
+ state: false,
40
+ setAck: false
41
+ };
42
+ }
43
+ }
44
44
  </script>
@@ -1,4 +1,3 @@
1
- {
2
- "Refresh_Interval": "interval for refresh of player data in seconds",
3
- "wiim adapter settings": "Adaptereinstellungen für wiim"
4
- }
1
+ {
2
+ "Refresh_Interval": "Intervall für die Aktualisierung der Streamerdaten in Sekunden"
3
+ }
@@ -1,4 +1,3 @@
1
- {
2
- "Refresh_Interval": "interval for refresh of player data in seconds",
3
- "wiim adapter settings": "Adapter settings for wiim"
4
- }
1
+ {
2
+ "Refresh_Interval": "interval for refresh of player data in seconds"
3
+ }
@@ -1,4 +1,3 @@
1
- {
2
- "Refresh_Interval": "interval for refresh of player data in seconds",
3
- "wiim adapter settings": "Ajustes del adaptador para wiim"
4
- }
1
+ {
2
+ "Refresh_Interval": "intervalo para la actualización de los datos del reproductor en segundos"
3
+ }
@@ -1,4 +1,3 @@
1
- {
2
- "Refresh_Interval": "interval for refresh of player data in seconds",
3
- "wiim adapter settings": "Paramètres d'adaptateur pour wiim"
4
- }
1
+ {
2
+ "Refresh_Interval": "intervalle pour rafraîchir les données du lecteur en secondes"
3
+ }
@@ -1,4 +1,3 @@
1
- {
2
- "Refresh_Interval": "interval for refresh of player data in seconds",
3
- "wiim adapter settings": "Impostazioni dell'adattatore per wiim"
4
- }
1
+ {
2
+ "Refresh_Interval": "intervallo per aggiornamento dei dati del giocatore in secondi"
3
+ }
@@ -1,5 +1,3 @@
1
- {
2
- "IP_Address": "IP address of device",
3
- "Refresh_Interval": "interval for refresh of player data in seconds",
4
- "wiim adapter settings": "Adapterinstellingen voor wiim"
5
- }
1
+ {
2
+ "Refresh_Interval": "interval voor het vernieuwen van spelergegevens in seconden"
3
+ }
@@ -1,4 +1,3 @@
1
- {
2
- "Refresh_Interval": "interval for refresh of player data in seconds",
3
- "wiim adapter settings": "Ustawienia adaptera dla wiim"
4
- }
1
+ {
2
+ "Refresh_Interval": "interwał odświeżania danych gracza w sekundach"
3
+ }
@@ -1,4 +1,3 @@
1
- {
2
- "Refresh_Interval": "interval for refresh of player data in seconds",
3
- "wiim adapter settings": "Configurações do adaptador para wiim"
4
- }
1
+ {
2
+ "Refresh_Interval": "intervalo para atualização de dados do jogador em segundos"
3
+ }
@@ -1,4 +1,3 @@
1
- {
2
- "Refresh_Interval": "interval for refresh of player data in seconds",
3
- "wiim adapter settings": "Настройки адаптера для wiim"
4
- }
1
+ {
2
+ "Refresh_Interval": "интервал для обновления данных игрока в секундах"
3
+ }
@@ -1,4 +1,3 @@
1
- {
2
- "Refresh_Interval": "interval for refresh of player data in seconds",
3
- "wiim adapter settings": "Налаштування адаптера для wiim"
4
- }
1
+ {
2
+ "Refresh_Interval": "інтервал для оновлення даних гравця за секундами"
3
+ }
@@ -1,5 +1,3 @@
1
- {
2
-
3
- "Refresh_Interval": "interval for refresh of player data in seconds",
4
- "wiim adapter settings": "wiim的适配器设置"
5
- }
1
+ {
2
+ "Refresh_Interval": "玩家数据刷新间隔( 秒)"
3
+ }
@@ -1,17 +1,17 @@
1
- {
2
- "i18n": true,
3
- "type": "panel",
4
- "items": {
5
- "Refresh_Interval": {
6
- "type": "number",
7
- "label": "interval for refresh of player data in seconds",
8
- "newLine": true,
9
- "xs": 12,
10
- "sm": 12,
11
- "md": 4,
12
- "lg": 3,
13
- "xl": 3
14
- }
15
-
16
- }
17
- }
1
+ {
2
+ "i18n": true,
3
+ "type": "panel",
4
+ "items": {
5
+ "Refresh_Interval": {
6
+ "type": "number",
7
+ "label": "interval for refresh of player data in seconds",
8
+ "newLine": true,
9
+ "xs": 12,
10
+ "sm": 12,
11
+ "md": 4,
12
+ "lg": 3,
13
+ "xl": 3
14
+ }
15
+
16
+ }
17
+ }