fecd2bcb8c33235ba13922f6cbad5a310615fa9f
[esp-clock.git] / ui.yml
1 project:
2   name: WiFi Clock
3   version: 0.1.1
4   contacts:
5     - mailto:rvb@rvb.name
6     - tg:rvbglas
7     - https://git.rvb.name
8     - xmpp:rvb@rvb.name
9 pages:
10   - id: main
11     title: "Главная"
12     icon: ""
13     elements:
14       - type: table
15         label: Имя устройства
16         value: WiFi Clock
17       - type: hr
18       - id: _weather
19         type: table
20         label: Погода
21         color: lightblue
22       - type: hr
23       - id: _time
24         type: table
25         label: Время
26         color: green
27       - id: _date
28         type: table
29         label: Дата
30         color: green
31       - id: _last_sync
32         type: table
33         label: Синхронизировано
34       - type: hr
35       - id: _uptime
36         type: table
37         label: Uptime
38       - id: _mac
39         type: table
40         label: MAC-адрес
41       - id: _rssi
42         type: table
43         label: Уровень сигнала
44       - id: _heap
45         type: table
46         label: Свободная память
47   - id: clock
48     title: Часы
49     icon: ""
50     elements:
51       - type: text
52         value: Внешний вид
53       - id: panel_font
54         label: Шрифт часов
55         type: select
56         options:
57           - value: 0
58             text: Стандартный
59           - value: 1
60             text: Высокий
61           - value: 2
62             text: Узкий
63           - value: 3
64             text: Жирный
65           - value: 4
66             text: Жирный прямой
67           - value: 5
68             text: Синклер
69       - id: panel_seconds
70         label: Секунды
71         type: checkbox
72       - id: panel_zero
73         label: Ведущий ноль
74         type: checkbox 
75       - id: flash_dots
76         label: Мигать точками
77         type: checkbox
78       - id: panel_speed
79         label: Скорость        
80         type: range
81         min: 1
82         max: 20
83         step: 1
84       - type: hr
85       - type: text
86         value: Яркость
87       - id: day_from
88         label: Дневной режим с
89         type: number
90         min: 0
91         max: 24
92         step: 1
93       - id: night_from
94         label: Ночной режим с
95         type: number
96         min: 0
97         max: 24
98         step: 1
99       - id: panel_brightness_day
100         label: Яркость днем
101         type: range
102         min: 0
103         max: 14
104         step: 1
105       - id: panel_brightness_night
106         label: Яркость ночью
107         type: range
108         min: 0
109         max: 14
110         step: 1
111   - id: alarm
112     title: Будильник
113     icon: ""
114     elements:
115       - type: text
116         value: Будильник
117       - id: enable_alarm
118         type: checkbox
119         label: Включить
120       - id: alarm_hour
121         label: Час
122         type: number
123         min: 0
124         max: 23
125         step: 1
126       - id: alarm_minute
127         label: Минуты
128         type: number
129         min: 0
130         max: 59
131         step: 1
132       - id: alarm_days
133         label: Дни
134         type: week
135       - type: hr
136       - id: alarm_length
137         label: Длительность сигнала, с
138         type: number
139         min: 5
140         max: 120
141         step: 5
142       - id: alarm_tone
143         label: Тон сигнала
144         type: number
145         min: 100
146         max: 5000
147       - id: alarm_beep_ms
148         label: Длительность гудка, мс
149         type: number
150         min: 100
151         max: 2000
152       - id: alarm_silent_ms
153         label: Длительность паузы, мс
154         type: number
155         min: 100
156         max: 2000
157       - type: hr
158       - type: text
159         value: Сигнал каждый час
160       - id: enable_hourly
161         type: checkbox
162         label: Включить
163       - id: hourly_night
164         label: В том числе ночью
165         type: checkbox
166       - id: hourly_count
167         label: Число сигналов
168         type: number
169         min: 1
170         max: 5
171       - id: hourly_tone
172         label: Тон сигнала
173         type: number
174         min: 100
175         max: 5000
176       - id: hourly_beep_ms
177         label: Длительность гудка, мс
178         type: number
179         min: 100
180         max: 2000
181       - id: hourly_silent_ms
182         label: Длительность паузы, мс
183         type: number
184         min: 100
185         max: 2000
186   - id: hw
187     title: Оборудование
188     icon: ""
189     elements:
190       - type: text
191         value: Часы реального времени
192       - id: enable_rtc
193         label: Использовать
194         type: checkbox
195       - id: pin_sda
196         label: Пин SDA
197         type: select
198         options:
199           - value: 16
200             text: D0
201           - value: 5
202             text: D1
203           - value: 4
204             text: D2
205           - value: 0
206             text: D3
207           - value: 2
208             text: D4
209           - value: 14
210             text: D5
211           - value: 12
212             text: D6
213           - value: 13
214             text: D7
215           - value: 15
216             text: D8
217           - value: 3
218             text: "RX*"
219           - value: 1
220             text: "TX*"
221       - id: pin_scl
222         label: Пин SCL
223         type: select
224         options:
225           - value: 16
226             text: D0
227           - value: 5
228             text: D1
229           - value: 4
230             text: D2
231           - value: 0
232             text: D3
233           - value: 2
234             text: D4
235           - value: 14
236             text: D5
237           - value: 12
238             text: D6
239           - value: 13
240             text: D7
241           - value: 15
242             text: D8
243           - value: 3
244             text: "RX*"
245           - value: 1
246             text: "TX*"
247       - id: i2c_speed
248         label: Скорость шины I2C
249         type: select
250         options:
251           - value: 100000
252             text: 100000 (стандартная)
253           - value: 400000
254             text: 400000 (быстрая)
255       - type: hr
256       - type: text
257         value: Кнопка
258       - id: enable_button
259         label: Использовать
260         type: checkbox
261       - id: button_pin
262         label: Пин кнопки
263         type: select
264         options:
265           - value: 16
266             text: D0
267           - value: 5
268             text: D1
269           - value: 4
270             text: D2
271           - value: 0
272             text: D3
273           - value: 2
274             text: D4
275           - value: 14
276             text: D5
277           - value: 12
278             text: D6
279           - value: 13
280             text: D7
281           - value: 15
282             text: D8
283           - value: 3
284             text: "RX*"
285           - value: 1
286             text: "TX*"
287       - id: button_inversed
288         label: Кнопка на размыкание
289         type: checkbox
290       - type: hr
291       - type: text
292         value: Зуммер
293       - id: enable_buzzer
294         label: Использовать
295         type: checkbox
296       - id: buzzer_pin
297         label: Пин зуммера
298         type: select
299         options:
300           - value: 16
301             text: D0
302           - value: 5
303             text: D1
304           - value: 4
305             text: D2
306           - value: 0
307             text: D3
308           - value: 2
309             text: D4
310           - value: 14
311             text: D5
312           - value: 12
313             text: D6
314           - value: 13
315             text: D7
316           - value: 15
317             text: D8
318           - value: 3
319             text: "RX*"
320           - value: 1
321             text: "TX*"
322       - id: buzzer_passive
323         label: Пассивный зуммер
324         type: checkbox
325       - type: hr 
326       - type: text
327         value: Светодиодная панель
328       - id: pin_din
329         label: Пин DIN
330         type: select
331         options:
332           - value: 16
333             text: D0
334           - value: 5
335             text: D1
336           - value: 4
337             text: D2
338           - value: 0
339             text: D3
340           - value: 2
341             text: D4
342           - value: 14
343             text: D5
344           - value: 12
345             text: D6
346           - value: 13
347             text: D7
348           - value: 15
349             text: D8
350           - value: 3
351             text: "RX*"
352           - value: 1
353             text: "TX*"
354       - id: pin_clk
355         label: Пин CLK
356         type: select
357         options:
358           - value: 16
359             text: D0
360           - value: 5
361             text: D1
362           - value: 4
363             text: D2
364           - value: 0
365             text: D3
366           - value: 2
367             text: D4
368           - value: 14
369             text: D5
370           - value: 12
371             text: D6
372           - value: 13
373             text: D7
374           - value: 15
375             text: D8
376           - value: 3
377             text: "RX*"
378           - value: 1
379             text: "TX*"
380       - id: pin_cs
381         label: Пин CS
382         type: select
383         options:
384           - value: 16
385             text: D0
386           - value: 5
387             text: D1
388           - value: 4
389             text: D2
390           - value: 0
391             text: D3
392           - value: 2
393             text: D4
394           - value: 14
395             text: D5
396           - value: 12
397             text: D6
398           - value: 13
399             text: D7
400           - value: 15
401             text: D8
402           - value: 3
403             text: "RX*"
404           - value: 1
405             text: "TX*"
406       - id: led_modules
407         label: Число модулей 8*8
408         type: number
409         min: 4
410         max: 8
411   - id: weather
412     title: Погода
413     icon: ""
414     elements:
415       - id: weather_url
416         label: URL погодного сервиса
417         type: input
418       - id: weather_template
419         label: Шаблон вывода
420         type: input
421       - id: weather_min
422         label: Частота обновления, мин
423         type: number
424         min: 5
425   - id: wifi
426     title: WiFi
427     icon: ""
428     elements:
429       - type: text
430         value: Клиент сети
431       - id: sta_ssid
432         type: input-wifi
433         label: 🗘Имя беспроводной сети
434         pattern: ^[^!#;+\]/"\t][^+\]/"\t]{0,31}$
435       - id: sta_psk
436         type: password
437         label: 🗘Ключевая фраза
438       - id: sta_wait
439         type: input
440         label: Ожидать подключения не дольше, с
441       - type: hr
442       - type: text
443         value: Точка доступа
444       - id: ap_ssid
445         type: input
446         label: 🗘Имя беспроводной сети
447         pattern: ^[^!#;+\]/"\t][^+\]/"\t]{0,31}$
448       - id: ap_psk
449         type: password
450         label: 🗘Ключевая фраза
451       - id: wifi
452         type: button
453         label: Применить настройки WiFi
454   - id: system
455     title: Система
456     icon: ""
457     elements:
458       - type: text
459         value: Авторизация
460       - id: auth_user
461         type: input
462         label: Логин
463         pattern: ^[A-Za-z0-9]{3,16}$
464       - id: auth_pwd
465         label: Пароль
466         type: password
467         pattern: ^.{4,16}$
468       - id: auth
469         type: button
470         label: Сменить пароль
471       - type: hr
472       - type: text
473         value: Синхронизация времени
474       - id: ntp_server
475         type: input
476         label: NTP-сервер
477         pattern: ^([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\-]{0,61}[a-zA-Z0-9])(\.([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\-]{0,61}[a-zA-Z0-9]))*$
478       - id: tz
479         type: input
480         label: Часовой пояс (POSIX)
481         pattern: ^([A-Za-z]*)(-?[0-9]*(:[0-9]*)?)((([A-Za-z]*)(-?[0-9]*)?)?(,M[0-9]*\.[0-9]*\.[0-9]*/([0-9]*:?){3}){2})?$
482       - id: restart
483         type: button
484         label: Перезагрузить