@mirta/globals 0.4.12 → 0.5.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/eslint/index.d.ts +28 -28
- package/eslint/index.js +1 -1
- package/package.json +1 -1
- package/types/index.d.ts +2 -2
- package/types/utils.d.ts +3 -3
- package/types/wb-rules/alarms.d.ts +28 -28
- package/types/wb-rules.d.ts +138 -138
package/eslint/index.d.ts
CHANGED
|
@@ -1,32 +1,32 @@
|
|
|
1
1
|
declare interface GlobalsMirta {
|
|
2
|
-
readonly '__DEV__': false
|
|
3
|
-
readonly '__TEST__': false
|
|
4
|
-
readonly 'log': false
|
|
5
|
-
readonly 'debug': false
|
|
6
|
-
readonly 'dev': false
|
|
7
|
-
readonly 'cron': false
|
|
8
|
-
readonly 'timers': false
|
|
9
|
-
readonly 'defineRule': false
|
|
10
|
-
readonly 'disableRule': false
|
|
11
|
-
readonly 'enableRule': false
|
|
12
|
-
readonly 'runRule': false
|
|
13
|
-
readonly 'defineAlias': false
|
|
14
|
-
readonly 'defineVirtualDevice': false
|
|
15
|
-
readonly 'getDevice': false
|
|
16
|
-
readonly 'getControl': false
|
|
17
|
-
readonly 'startTicker': false
|
|
18
|
-
readonly 'startTimer': false
|
|
19
|
-
readonly 'spawn': false
|
|
20
|
-
readonly 'runShellCommand': false
|
|
21
|
-
readonly 'readConfig': false
|
|
22
|
-
readonly 'trackMqtt': false
|
|
23
|
-
readonly 'publish': false
|
|
24
|
-
readonly 'StorableObject': false
|
|
25
|
-
readonly 'PersistentStorage': false
|
|
26
|
-
readonly 'Notify': false
|
|
27
|
-
readonly 'Alarms': false
|
|
2
|
+
readonly '__DEV__': false;
|
|
3
|
+
readonly '__TEST__': false;
|
|
4
|
+
readonly 'log': false;
|
|
5
|
+
readonly 'debug': false;
|
|
6
|
+
readonly 'dev': false;
|
|
7
|
+
readonly 'cron': false;
|
|
8
|
+
readonly 'timers': false;
|
|
9
|
+
readonly 'defineRule': false;
|
|
10
|
+
readonly 'disableRule': false;
|
|
11
|
+
readonly 'enableRule': false;
|
|
12
|
+
readonly 'runRule': false;
|
|
13
|
+
readonly 'defineAlias': false;
|
|
14
|
+
readonly 'defineVirtualDevice': false;
|
|
15
|
+
readonly 'getDevice': false;
|
|
16
|
+
readonly 'getControl': false;
|
|
17
|
+
readonly 'startTicker': false;
|
|
18
|
+
readonly 'startTimer': false;
|
|
19
|
+
readonly 'spawn': false;
|
|
20
|
+
readonly 'runShellCommand': false;
|
|
21
|
+
readonly 'readConfig': false;
|
|
22
|
+
readonly 'trackMqtt': false;
|
|
23
|
+
readonly 'publish': false;
|
|
24
|
+
readonly 'StorableObject': false;
|
|
25
|
+
readonly 'PersistentStorage': false;
|
|
26
|
+
readonly 'Notify': false;
|
|
27
|
+
readonly 'Alarms': false;
|
|
28
28
|
}
|
|
29
29
|
|
|
30
|
-
declare const globals: GlobalsMirta
|
|
30
|
+
declare const globals: GlobalsMirta;
|
|
31
31
|
|
|
32
|
-
export = globals
|
|
32
|
+
export = globals;
|
package/eslint/index.js
CHANGED
package/package.json
CHANGED
package/types/index.d.ts
CHANGED
package/types/utils.d.ts
CHANGED
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
* @since 0.0.4
|
|
19
19
|
*
|
|
20
20
|
**/
|
|
21
|
-
declare type Expand<T> = { [K in keyof T]: T[K] } & {}
|
|
21
|
+
declare type Expand<T> = { [K in keyof T]: T[K] } & {};
|
|
22
22
|
|
|
23
23
|
/**
|
|
24
24
|
* Разрешает частичное заполнение полей объекта, но требует наличия хотя бы одного поля.
|
|
@@ -41,7 +41,7 @@ declare type Expand<T> = { [K in keyof T]: T[K] } & {}
|
|
|
41
41
|
* @since 0.3.3
|
|
42
42
|
*
|
|
43
43
|
**/
|
|
44
|
-
declare type AtLeastOne<T, U = { [K in keyof T]: Pick<T, K> }> = Partial<T> & U[keyof U]
|
|
44
|
+
declare type AtLeastOne<T, U = { [K in keyof T]: Pick<T, K> }> = Partial<T> & U[keyof U];
|
|
45
45
|
|
|
46
46
|
/**
|
|
47
47
|
* Утилита для создания "брендированных типов" (branded types).
|
|
@@ -66,4 +66,4 @@ declare type AtLeastOne<T, U = { [K in keyof T]: Pick<T, K> }> = Partial<T> & U[
|
|
|
66
66
|
*
|
|
67
67
|
**/
|
|
68
68
|
declare type Branded<TValue, TBrand extends string | symbol>
|
|
69
|
-
= TValue & { readonly __brand: TBrand }
|
|
69
|
+
= TValue & { readonly __brand: TBrand };
|
|
@@ -17,10 +17,10 @@ declare namespace WbRules {
|
|
|
17
17
|
interface SmsRecipient {
|
|
18
18
|
|
|
19
19
|
/** Конфигурация отправки SMS. */
|
|
20
|
-
type: 'sms'
|
|
20
|
+
type: 'sms';
|
|
21
21
|
|
|
22
22
|
/** Номер телефона получателя SMS. */
|
|
23
|
-
to: string
|
|
23
|
+
to: string;
|
|
24
24
|
|
|
25
25
|
/**
|
|
26
26
|
* Команда для отправки SMS. Поле можно оставить пустым, чтобы использовать gammu.
|
|
@@ -38,7 +38,7 @@ declare namespace WbRules {
|
|
|
38
38
|
* /path/to/sender.py --number {} --text "{}"
|
|
39
39
|
* ```
|
|
40
40
|
**/
|
|
41
|
-
command?: string
|
|
41
|
+
command?: string;
|
|
42
42
|
}
|
|
43
43
|
|
|
44
44
|
/**
|
|
@@ -50,10 +50,10 @@ declare namespace WbRules {
|
|
|
50
50
|
interface EmailRecipient {
|
|
51
51
|
|
|
52
52
|
/** Конфигурация отправки на адрес электронной почты. */
|
|
53
|
-
type: 'email'
|
|
53
|
+
type: 'email';
|
|
54
54
|
|
|
55
55
|
/** Адрес электронной почты получателя. */
|
|
56
|
-
to: string
|
|
56
|
+
to: string;
|
|
57
57
|
|
|
58
58
|
/**
|
|
59
59
|
* Тема письма (необязательное поле).
|
|
@@ -65,7 +65,7 @@ declare namespace WbRules {
|
|
|
65
65
|
* Alarm: {}
|
|
66
66
|
* ```
|
|
67
67
|
**/
|
|
68
|
-
subject?: string
|
|
68
|
+
subject?: string;
|
|
69
69
|
}
|
|
70
70
|
|
|
71
71
|
/**
|
|
@@ -77,13 +77,13 @@ declare namespace WbRules {
|
|
|
77
77
|
interface TelegramRecipient {
|
|
78
78
|
|
|
79
79
|
/** Конфигурация отправки в Telegram. */
|
|
80
|
-
type: 'telegram'
|
|
80
|
+
type: 'telegram';
|
|
81
81
|
|
|
82
82
|
/** Токен вашего бота Telegram. */
|
|
83
|
-
token: string
|
|
83
|
+
token: string;
|
|
84
84
|
|
|
85
85
|
/** Уникальный идентификатор целевого чата или username целевого канала (в формате `@channelusername`). */
|
|
86
|
-
chatId: string
|
|
86
|
+
chatId: string;
|
|
87
87
|
}
|
|
88
88
|
|
|
89
89
|
/**
|
|
@@ -95,7 +95,7 @@ declare namespace WbRules {
|
|
|
95
95
|
* @since 0.3.3
|
|
96
96
|
*
|
|
97
97
|
**/
|
|
98
|
-
type Recipient = SmsRecipient | EmailRecipient | TelegramRecipient
|
|
98
|
+
type Recipient = SmsRecipient | EmailRecipient | TelegramRecipient;
|
|
99
99
|
|
|
100
100
|
/**
|
|
101
101
|
* Базовый компонент аларма - содержит общие свойства.
|
|
@@ -108,10 +108,10 @@ declare namespace WbRules {
|
|
|
108
108
|
interface AlarmBase {
|
|
109
109
|
|
|
110
110
|
/** Название аларма. */
|
|
111
|
-
name: string
|
|
111
|
+
name: string;
|
|
112
112
|
|
|
113
113
|
/** Наблюдаемые устройство и контрол в формате `deviceId/controlId`. */
|
|
114
|
-
cell: string
|
|
114
|
+
cell: string;
|
|
115
115
|
|
|
116
116
|
/**
|
|
117
117
|
* Сообщение, отправляемое при срабатывании аларма.
|
|
@@ -122,7 +122,7 @@ declare namespace WbRules {
|
|
|
122
122
|
* текущего значения контрола.
|
|
123
123
|
*
|
|
124
124
|
**/
|
|
125
|
-
alarmMessage?: string
|
|
125
|
+
alarmMessage?: string;
|
|
126
126
|
|
|
127
127
|
/**
|
|
128
128
|
* Сообщение, отправляемое при деактивации аларма.
|
|
@@ -133,7 +133,7 @@ declare namespace WbRules {
|
|
|
133
133
|
* текущего значения контрола.
|
|
134
134
|
*
|
|
135
135
|
**/
|
|
136
|
-
noAlarmMessage?: string
|
|
136
|
+
noAlarmMessage?: string;
|
|
137
137
|
|
|
138
138
|
/**
|
|
139
139
|
* Интервал (в секундах) повторной отправки сообщения во время активности аларма.
|
|
@@ -142,7 +142,7 @@ declare namespace WbRules {
|
|
|
142
142
|
* только при срабатывании, а также при деактивации аларма.
|
|
143
143
|
*
|
|
144
144
|
**/
|
|
145
|
-
interval?: number
|
|
145
|
+
interval?: number;
|
|
146
146
|
|
|
147
147
|
/**
|
|
148
148
|
* Задержка срабатывания аларма (в миллисекундах).
|
|
@@ -151,7 +151,7 @@ declare namespace WbRules {
|
|
|
151
151
|
* будет непрерывно выполняться в течение заданного интервала.
|
|
152
152
|
*
|
|
153
153
|
**/
|
|
154
|
-
alarmDelayMs?: number
|
|
154
|
+
alarmDelayMs?: number;
|
|
155
155
|
|
|
156
156
|
/**
|
|
157
157
|
* Задержка деактивации аларма (в миллисекундах).
|
|
@@ -160,7 +160,7 @@ declare namespace WbRules {
|
|
|
160
160
|
* прекратит непрерывно выполняться в течение заданного интервала.
|
|
161
161
|
*
|
|
162
162
|
**/
|
|
163
|
-
noAlarmDelayMs?: number
|
|
163
|
+
noAlarmDelayMs?: number;
|
|
164
164
|
|
|
165
165
|
/**
|
|
166
166
|
* Максимальное количество отправленных сообщений.
|
|
@@ -169,7 +169,7 @@ declare namespace WbRules {
|
|
|
169
169
|
* отправляется не больше заданного количества сообщений.
|
|
170
170
|
*
|
|
171
171
|
**/
|
|
172
|
-
maxCount?: number
|
|
172
|
+
maxCount?: number;
|
|
173
173
|
}
|
|
174
174
|
|
|
175
175
|
/**
|
|
@@ -191,7 +191,7 @@ declare namespace WbRules {
|
|
|
191
191
|
* аларм деактивируется.
|
|
192
192
|
*
|
|
193
193
|
**/
|
|
194
|
-
expectedValue: MqttValue
|
|
194
|
+
expectedValue: MqttValue;
|
|
195
195
|
}
|
|
196
196
|
|
|
197
197
|
/**
|
|
@@ -211,7 +211,7 @@ declare namespace WbRules {
|
|
|
211
211
|
* Предотвращает смешивание с {@link ValueAlarm} внутри обобщённого типа {@link Alarm}.
|
|
212
212
|
*
|
|
213
213
|
**/
|
|
214
|
-
expectedValue: never
|
|
214
|
+
expectedValue: never;
|
|
215
215
|
|
|
216
216
|
/**
|
|
217
217
|
* Минимально допустимое значение.
|
|
@@ -219,7 +219,7 @@ declare namespace WbRules {
|
|
|
219
219
|
* Если отслеживаемое значение контрола опускается ниже minValue, происходит срабатывание аларма.
|
|
220
220
|
*
|
|
221
221
|
**/
|
|
222
|
-
minValue: number
|
|
222
|
+
minValue: number;
|
|
223
223
|
|
|
224
224
|
/**
|
|
225
225
|
* Максимально допустимое значение.
|
|
@@ -227,7 +227,7 @@ declare namespace WbRules {
|
|
|
227
227
|
* Если отслеживаемое значение контрола поднимается выше maxValue, происходит срабатывание аларма.
|
|
228
228
|
*
|
|
229
229
|
**/
|
|
230
|
-
maxValue: number
|
|
230
|
+
maxValue: number;
|
|
231
231
|
}
|
|
232
232
|
|
|
233
233
|
/**
|
|
@@ -236,7 +236,7 @@ declare namespace WbRules {
|
|
|
236
236
|
* @since 0.3.3
|
|
237
237
|
*
|
|
238
238
|
**/
|
|
239
|
-
type Alarm = AlarmBase & (ValueAlarm | AtLeastOne<RangeAlarm>)
|
|
239
|
+
type Alarm = AlarmBase & (ValueAlarm | AtLeastOne<RangeAlarm>);
|
|
240
240
|
|
|
241
241
|
/**
|
|
242
242
|
* Конфигурация блока алармов.
|
|
@@ -247,16 +247,16 @@ declare namespace WbRules {
|
|
|
247
247
|
interface Config {
|
|
248
248
|
|
|
249
249
|
/** Название MQTT-устройства блока алармов. */
|
|
250
|
-
deviceName: string
|
|
250
|
+
deviceName: string;
|
|
251
251
|
|
|
252
252
|
/** Отображаемое название устройства блока алармов. */
|
|
253
|
-
deviceTitle: string
|
|
253
|
+
deviceTitle: string;
|
|
254
254
|
|
|
255
255
|
/** Список получателей. */
|
|
256
|
-
recipients: Recipient[]
|
|
256
|
+
recipients: Recipient[];
|
|
257
257
|
|
|
258
258
|
/** Список алармов. */
|
|
259
|
-
alarms: Alarm[]
|
|
259
|
+
alarms: Alarm[];
|
|
260
260
|
}
|
|
261
261
|
}
|
|
262
262
|
|
|
@@ -271,6 +271,6 @@ declare namespace WbRules {
|
|
|
271
271
|
*
|
|
272
272
|
* @param config Объект конфигурации или путь к файлу конфигурации в формате JSON.
|
|
273
273
|
*/
|
|
274
|
-
load(config: string | Alarms.Config): void
|
|
274
|
+
load(config: string | Alarms.Config): void;
|
|
275
275
|
}
|
|
276
276
|
}
|
package/types/wb-rules.d.ts
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
declare namespace WbRules {
|
|
6
6
|
|
|
7
7
|
/** Расширение для поддержки module.static */
|
|
8
|
-
type ModuleStatic = Record<string, unknown
|
|
8
|
+
type ModuleStatic = Record<string, unknown>;
|
|
9
9
|
|
|
10
10
|
/**
|
|
11
11
|
* Набор методов для логирования.
|
|
@@ -27,14 +27,14 @@ declare namespace WbRules {
|
|
|
27
27
|
* log.info('Свет в комнате включён на {} мин.', 30)
|
|
28
28
|
* ```
|
|
29
29
|
**/
|
|
30
|
-
info(format: string, ...args: unknown[]): void
|
|
30
|
+
info(format: string, ...args: unknown[]): void;
|
|
31
31
|
|
|
32
32
|
/**
|
|
33
33
|
* Запись в лог произвольного значения, полезного в долгосрочной перспективе.
|
|
34
34
|
* @param value Значение для записи в лог.
|
|
35
35
|
*
|
|
36
36
|
**/
|
|
37
|
-
info(value: unknown): void
|
|
37
|
+
info(value: unknown): void;
|
|
38
38
|
|
|
39
39
|
/**
|
|
40
40
|
* Запись в лог сообщения, полезного при отладке и не имеющего долгосрочной ценности.
|
|
@@ -46,7 +46,7 @@ declare namespace WbRules {
|
|
|
46
46
|
* ```ts
|
|
47
47
|
* log.debug('Значение сенсора "{}": температура {} °C, влажность {} %', 'bathroom', 25, 40)
|
|
48
48
|
**/
|
|
49
|
-
debug(format: string, ...args: unknown[]): void
|
|
49
|
+
debug(format: string, ...args: unknown[]): void;
|
|
50
50
|
|
|
51
51
|
/**
|
|
52
52
|
* Запись в лог произвольного значения, полезного при отладке и не имеющего долгосрочной ценности.
|
|
@@ -58,7 +58,7 @@ declare namespace WbRules {
|
|
|
58
58
|
* log.debug(JSON.stringify({ location: 'bathroom', temperature: 25, humidity: 40 }))
|
|
59
59
|
* ```
|
|
60
60
|
**/
|
|
61
|
-
debug(value: unknown): void
|
|
61
|
+
debug(value: unknown): void;
|
|
62
62
|
|
|
63
63
|
/**
|
|
64
64
|
* Запись в лог предупреждения о ненормальном или неожиданном событии,
|
|
@@ -74,7 +74,7 @@ declare namespace WbRules {
|
|
|
74
74
|
* log.warning('Движение в охраняемой зоне: {}', 'hallway_sensor_1')
|
|
75
75
|
* ```
|
|
76
76
|
**/
|
|
77
|
-
warning(format: string, ...args: unknown[]): void
|
|
77
|
+
warning(format: string, ...args: unknown[]): void;
|
|
78
78
|
|
|
79
79
|
/**
|
|
80
80
|
* Запись в лог предупреждения о ненормальном или неожиданном значении,
|
|
@@ -83,7 +83,7 @@ declare namespace WbRules {
|
|
|
83
83
|
* @param value Значение для записи в лог.
|
|
84
84
|
*
|
|
85
85
|
**/
|
|
86
|
-
warning(value: unknown): void
|
|
86
|
+
warning(value: unknown): void;
|
|
87
87
|
|
|
88
88
|
/**
|
|
89
89
|
* Запись в лог критического события, приведшего к сбою и остановке выполнения.
|
|
@@ -97,7 +97,7 @@ declare namespace WbRules {
|
|
|
97
97
|
* log.error('Перегев тёплого пола: {} °C, выключение', 30)
|
|
98
98
|
* ```
|
|
99
99
|
**/
|
|
100
|
-
error(format: string, ...args: unknown[]): void
|
|
100
|
+
error(format: string, ...args: unknown[]): void;
|
|
101
101
|
|
|
102
102
|
/**
|
|
103
103
|
* Запись в лог критического значения, приведшего к сбою и остановке выполнения.
|
|
@@ -105,36 +105,36 @@ declare namespace WbRules {
|
|
|
105
105
|
* @param value Значение для записи в лог.
|
|
106
106
|
*
|
|
107
107
|
**/
|
|
108
|
-
error(value: unknown): void
|
|
108
|
+
error(value: unknown): void;
|
|
109
109
|
}
|
|
110
110
|
|
|
111
111
|
/** @deprecated since version 0.3.2 */
|
|
112
|
-
type LogFunc = (format: string, ...args: unknown[]) => void
|
|
112
|
+
type LogFunc = (format: string, ...args: unknown[]) => void;
|
|
113
113
|
|
|
114
|
-
type Log = LogMethods['info'] & LogMethods
|
|
114
|
+
type Log = LogMethods['info'] & LogMethods;
|
|
115
115
|
|
|
116
|
-
type Debug = LogMethods['debug']
|
|
116
|
+
type Debug = LogMethods['debug'];
|
|
117
117
|
|
|
118
118
|
interface CronEntry {
|
|
119
|
-
spec: string
|
|
119
|
+
spec: string;
|
|
120
120
|
}
|
|
121
121
|
|
|
122
122
|
interface Timer {
|
|
123
|
-
firing: boolean
|
|
123
|
+
firing: boolean;
|
|
124
124
|
|
|
125
|
-
stop(): void
|
|
125
|
+
stop(): void;
|
|
126
126
|
}
|
|
127
127
|
|
|
128
|
-
type TimerCollection = Record<string, Timer
|
|
128
|
+
type TimerCollection = Record<string, Timer>;
|
|
129
129
|
|
|
130
130
|
/** Тип значения топика MQTT. */
|
|
131
|
-
type MqttValue = string | number | boolean
|
|
131
|
+
type MqttValue = string | number | boolean;
|
|
132
132
|
|
|
133
|
-
type Dev = Record<string, MqttValue | Record<string, MqttValue
|
|
133
|
+
type Dev = Record<string, MqttValue | Record<string, MqttValue>>;
|
|
134
134
|
|
|
135
135
|
interface MqttMessage {
|
|
136
|
-
topic: string
|
|
137
|
-
value: MqttValue
|
|
136
|
+
topic: string;
|
|
137
|
+
value: MqttValue;
|
|
138
138
|
}
|
|
139
139
|
|
|
140
140
|
/**
|
|
@@ -144,12 +144,12 @@ declare namespace WbRules {
|
|
|
144
144
|
/**
|
|
145
145
|
* Поле или список полей, которые необходимо отслеживать
|
|
146
146
|
*/
|
|
147
|
-
whenChanged?: string[] | string
|
|
147
|
+
whenChanged?: string[] | string;
|
|
148
148
|
|
|
149
149
|
/**
|
|
150
150
|
* Правило срабатывает, когда значение, возвращаемое функцией, меняется с false на true.
|
|
151
151
|
*/
|
|
152
|
-
asSoonAs?(): boolean
|
|
152
|
+
asSoonAs?(): boolean;
|
|
153
153
|
|
|
154
154
|
/**
|
|
155
155
|
* Функция или экземпляр {@link CronEntry}, возвращаемый функцией {@link cron}.
|
|
@@ -157,7 +157,7 @@ declare namespace WbRules {
|
|
|
157
157
|
* Сигнализирует, когда правило должно отработать.
|
|
158
158
|
*
|
|
159
159
|
**/
|
|
160
|
-
when?: CronEntry | (() => number | boolean)
|
|
160
|
+
when?: CronEntry | (() => number | boolean);
|
|
161
161
|
|
|
162
162
|
/**
|
|
163
163
|
* Функция, которая вызывается при срабатывании правила
|
|
@@ -169,7 +169,7 @@ declare namespace WbRules {
|
|
|
169
169
|
newValue: MqttValue,
|
|
170
170
|
deviceId?: string,
|
|
171
171
|
controlId?: string
|
|
172
|
-
): void
|
|
172
|
+
): void;
|
|
173
173
|
}
|
|
174
174
|
|
|
175
175
|
/**
|
|
@@ -195,7 +195,7 @@ declare namespace WbRules {
|
|
|
195
195
|
* @since 0.4.0
|
|
196
196
|
*
|
|
197
197
|
**/
|
|
198
|
-
type RuleHandle = Branded<number, 'WbRules.RuleHandle'
|
|
198
|
+
type RuleHandle = Branded<number, 'WbRules.RuleHandle'>;
|
|
199
199
|
|
|
200
200
|
/**
|
|
201
201
|
* Соответствие типа контрола его типу значения.
|
|
@@ -204,22 +204,22 @@ declare namespace WbRules {
|
|
|
204
204
|
**/
|
|
205
205
|
interface TypeMappings {
|
|
206
206
|
/** A control that displays a value as text. */
|
|
207
|
-
'text': string
|
|
207
|
+
'text': string;
|
|
208
208
|
/** A control for a arbitrary value. */
|
|
209
|
-
'value': number
|
|
209
|
+
'value': number;
|
|
210
210
|
/** A control that toggles it's value when pressed by the user. */
|
|
211
|
-
'switch': boolean
|
|
211
|
+
'switch': boolean;
|
|
212
212
|
/** A stateless push button. */
|
|
213
|
-
'pushbutton': boolean
|
|
213
|
+
'pushbutton': boolean;
|
|
214
214
|
/** A control for color in `'R;G;B'` format */
|
|
215
|
-
'rgb': string
|
|
215
|
+
'rgb': string;
|
|
216
216
|
/** A range slider that takes integer values between 0 and any other integer that is greater 1. */
|
|
217
|
-
'range': number
|
|
217
|
+
'range': number;
|
|
218
218
|
/** A control that indicates whether an alarm is active. */
|
|
219
|
-
'alarm': boolean
|
|
219
|
+
'alarm': boolean;
|
|
220
220
|
}
|
|
221
221
|
|
|
222
|
-
type ControlType = Expand<keyof TypeMappings
|
|
222
|
+
type ControlType = Expand<keyof TypeMappings>;
|
|
223
223
|
|
|
224
224
|
/**
|
|
225
225
|
* Объект настроек передаваемого в контрол значения.
|
|
@@ -228,17 +228,17 @@ declare namespace WbRules {
|
|
|
228
228
|
/**
|
|
229
229
|
* Значение контрола
|
|
230
230
|
*/
|
|
231
|
-
value: string | number | boolean
|
|
231
|
+
value: string | number | boolean;
|
|
232
232
|
|
|
233
233
|
/**
|
|
234
234
|
* Уведомить правила об изменении значения,
|
|
235
235
|
* по умолчанию - `true`.
|
|
236
236
|
*/
|
|
237
|
-
notify?: boolean
|
|
237
|
+
notify?: boolean;
|
|
238
238
|
}
|
|
239
239
|
|
|
240
|
-
type Title = string | TitleLocalized
|
|
241
|
-
type TitleLocalized = Record<string, string
|
|
240
|
+
type Title = string | TitleLocalized;
|
|
241
|
+
type TitleLocalized = Record<string, string>;
|
|
242
242
|
|
|
243
243
|
/**
|
|
244
244
|
* Контрол устройства
|
|
@@ -248,30 +248,30 @@ declare namespace WbRules {
|
|
|
248
248
|
* Устанавливает заголовок.
|
|
249
249
|
* @param title
|
|
250
250
|
*/
|
|
251
|
-
setTitle(title: Title): void
|
|
251
|
+
setTitle(title: Title): void;
|
|
252
252
|
|
|
253
253
|
/**
|
|
254
254
|
* Устанавливает описание.
|
|
255
255
|
* @param description
|
|
256
256
|
*/
|
|
257
|
-
setDescription(description: string): void
|
|
257
|
+
setDescription(description: string): void;
|
|
258
258
|
|
|
259
259
|
/**
|
|
260
260
|
* Устанавливает тип значения.
|
|
261
261
|
* @param type Тип значения.
|
|
262
262
|
* @see ControlType
|
|
263
263
|
*/
|
|
264
|
-
setType(type: ControlType): void
|
|
264
|
+
setType(type: ControlType): void;
|
|
265
265
|
|
|
266
|
-
setUnits(units: string): void
|
|
266
|
+
setUnits(units: string): void;
|
|
267
267
|
|
|
268
|
-
setReadonly(isReadonly: boolean): void
|
|
268
|
+
setReadonly(isReadonly: boolean): void;
|
|
269
269
|
|
|
270
|
-
setMax(max: number): void
|
|
270
|
+
setMax(max: number): void;
|
|
271
271
|
|
|
272
|
-
setMin(min: number): void
|
|
272
|
+
setMin(min: number): void;
|
|
273
273
|
|
|
274
|
-
setPrecision(precision: number): void
|
|
274
|
+
setPrecision(precision: number): void;
|
|
275
275
|
|
|
276
276
|
/**
|
|
277
277
|
* Позволяет указать на наличие ошибки уровня контрола.
|
|
@@ -280,44 +280,44 @@ declare namespace WbRules {
|
|
|
280
280
|
* @param message Текст ошибки.
|
|
281
281
|
*
|
|
282
282
|
**/
|
|
283
|
-
setError(message: string): void
|
|
283
|
+
setError(message: string): void;
|
|
284
284
|
|
|
285
|
-
setOrder(order: number): void
|
|
285
|
+
setOrder(order: number): void;
|
|
286
286
|
|
|
287
|
-
setValue(value: MqttValue | ControlValueOptions): void
|
|
287
|
+
setValue(value: MqttValue | ControlValueOptions): void;
|
|
288
288
|
|
|
289
|
-
getId(): string
|
|
289
|
+
getId(): string;
|
|
290
290
|
|
|
291
291
|
/**
|
|
292
292
|
* Возвращает заголовок контрола.
|
|
293
293
|
* @param lang Язык заголовка, "en" по умолчанию.
|
|
294
294
|
*/
|
|
295
|
-
getTitle(lang?: string): string
|
|
295
|
+
getTitle(lang?: string): string;
|
|
296
296
|
|
|
297
|
-
getDescription(): string
|
|
297
|
+
getDescription(): string;
|
|
298
298
|
|
|
299
|
-
getType(): string
|
|
299
|
+
getType(): string;
|
|
300
300
|
|
|
301
|
-
getUnits(): string
|
|
301
|
+
getUnits(): string;
|
|
302
302
|
|
|
303
|
-
getReadonly(): boolean
|
|
303
|
+
getReadonly(): boolean;
|
|
304
304
|
|
|
305
|
-
getMax(): number
|
|
305
|
+
getMax(): number;
|
|
306
306
|
|
|
307
|
-
getMin(): number
|
|
307
|
+
getMin(): number;
|
|
308
308
|
|
|
309
|
-
getPrecision(): number
|
|
309
|
+
getPrecision(): number;
|
|
310
310
|
|
|
311
311
|
/**
|
|
312
312
|
* Возвращает текст ошибки,
|
|
313
313
|
* а при её отсутствии - пустую строку.
|
|
314
314
|
*
|
|
315
315
|
**/
|
|
316
|
-
getError(): string
|
|
316
|
+
getError(): string;
|
|
317
317
|
|
|
318
|
-
getOrder(): number
|
|
318
|
+
getOrder(): number;
|
|
319
319
|
|
|
320
|
-
getValue(): string | number | boolean
|
|
320
|
+
getValue(): string | number | boolean;
|
|
321
321
|
}
|
|
322
322
|
|
|
323
323
|
/**
|
|
@@ -327,9 +327,9 @@ declare namespace WbRules {
|
|
|
327
327
|
**/
|
|
328
328
|
interface BaseControlType<TControl, TValue> {
|
|
329
329
|
/** Тип контрола, публикуемый в MQTT-топике. */
|
|
330
|
-
type: TControl
|
|
330
|
+
type: TControl;
|
|
331
331
|
/** Значение по умолчанию. */
|
|
332
|
-
value?: TValue
|
|
332
|
+
value?: TValue;
|
|
333
333
|
}
|
|
334
334
|
|
|
335
335
|
/**
|
|
@@ -346,7 +346,7 @@ declare namespace WbRules {
|
|
|
346
346
|
* ограничено - например, при перечислении дней недели.
|
|
347
347
|
*
|
|
348
348
|
**/
|
|
349
|
-
enum?: Record<string, Title
|
|
349
|
+
enum?: Record<string, Title>;
|
|
350
350
|
}
|
|
351
351
|
|
|
352
352
|
/**
|
|
@@ -363,18 +363,18 @@ declare namespace WbRules {
|
|
|
363
363
|
* ограничено - например, при перечислении дней недели.
|
|
364
364
|
*
|
|
365
365
|
**/
|
|
366
|
-
enum?: Record<number, WbRules.Title
|
|
366
|
+
enum?: Record<number, WbRules.Title>;
|
|
367
367
|
|
|
368
368
|
/** Задаёт минимально допустимое значение. */
|
|
369
|
-
min?: number
|
|
369
|
+
min?: number;
|
|
370
370
|
|
|
371
371
|
/** Задаёт максимально допустимое значение. */
|
|
372
|
-
max?: number
|
|
372
|
+
max?: number;
|
|
373
373
|
|
|
374
374
|
/** Определяет количество знаков после запятой. */
|
|
375
|
-
precision?: number
|
|
375
|
+
precision?: number;
|
|
376
376
|
|
|
377
|
-
units?: string
|
|
377
|
+
units?: string;
|
|
378
378
|
}
|
|
379
379
|
|
|
380
380
|
/**
|
|
@@ -385,13 +385,13 @@ declare namespace WbRules {
|
|
|
385
385
|
interface __RangeControlTypeExtension {
|
|
386
386
|
|
|
387
387
|
/** Задаёт минимально допустимое значение. */
|
|
388
|
-
min?: number
|
|
388
|
+
min?: number;
|
|
389
389
|
|
|
390
390
|
/** Задаёт максимально допустимое значение. */
|
|
391
|
-
max?: number
|
|
391
|
+
max?: number;
|
|
392
392
|
|
|
393
393
|
/** Определяет количество знаков после запятой. */
|
|
394
|
-
precision?: number
|
|
394
|
+
precision?: number;
|
|
395
395
|
}
|
|
396
396
|
|
|
397
397
|
/**
|
|
@@ -406,14 +406,14 @@ declare namespace WbRules {
|
|
|
406
406
|
? __ValueControlTypeExtension
|
|
407
407
|
: TControl extends 'range'
|
|
408
408
|
? __RangeControlTypeExtension
|
|
409
|
-
: {}
|
|
409
|
+
: {};
|
|
410
410
|
|
|
411
411
|
type __MappedControlTypes<
|
|
412
412
|
K extends keyof TypeMappings = keyof TypeMappings
|
|
413
413
|
>
|
|
414
414
|
= K extends infer TControl
|
|
415
415
|
? BaseControlType<TControl, TypeMappings[K]> & ControlTypeExtension<TControl>
|
|
416
|
-
: never
|
|
416
|
+
: never;
|
|
417
417
|
|
|
418
418
|
/**
|
|
419
419
|
* Параметры контрола.
|
|
@@ -425,20 +425,20 @@ declare namespace WbRules {
|
|
|
425
425
|
* Заголовок, публикуемый в MQTT-топике (meta/title)
|
|
426
426
|
*
|
|
427
427
|
**/
|
|
428
|
-
title?: Title
|
|
428
|
+
title?: Title;
|
|
429
429
|
|
|
430
430
|
/**
|
|
431
431
|
* Когда задано истинное значение, при запуске контроллера параметр всегда устанавливается в значение по умолчанию.
|
|
432
432
|
* Иначе он будет установлен в последнее сохранённое значение.
|
|
433
433
|
*
|
|
434
434
|
**/
|
|
435
|
-
forceDefault?: boolean
|
|
435
|
+
forceDefault?: boolean;
|
|
436
436
|
|
|
437
437
|
/**
|
|
438
438
|
* Когда задано истинное значение, параметр становится доступным только для чтения.
|
|
439
439
|
*
|
|
440
440
|
**/
|
|
441
|
-
readonly?: boolean
|
|
441
|
+
readonly?: boolean;
|
|
442
442
|
|
|
443
443
|
/**
|
|
444
444
|
* Когда задано истинное значение, при описании контрола в коде фактическое создание его в MQTT происходить
|
|
@@ -449,14 +449,14 @@ declare namespace WbRules {
|
|
|
449
449
|
* dev[deviceID][controlID] = "string"
|
|
450
450
|
* ```
|
|
451
451
|
**/
|
|
452
|
-
lazyInit?: boolean
|
|
452
|
+
lazyInit?: boolean;
|
|
453
453
|
|
|
454
454
|
/**
|
|
455
455
|
* Порядок следования полей.
|
|
456
456
|
*
|
|
457
457
|
**/
|
|
458
|
-
order?: number
|
|
459
|
-
}
|
|
458
|
+
order?: number;
|
|
459
|
+
}>;
|
|
460
460
|
|
|
461
461
|
/**
|
|
462
462
|
* Опции контрола типа `text`.
|
|
@@ -464,7 +464,7 @@ declare namespace WbRules {
|
|
|
464
464
|
* @since 0.3.2
|
|
465
465
|
*
|
|
466
466
|
**/
|
|
467
|
-
type TextControlOptions = Extract<ControlOptions, { type: 'text' }
|
|
467
|
+
type TextControlOptions = Extract<ControlOptions, { type: 'text' }>;
|
|
468
468
|
|
|
469
469
|
/**
|
|
470
470
|
* Опции контрола типа `value`.
|
|
@@ -472,7 +472,7 @@ declare namespace WbRules {
|
|
|
472
472
|
* @since 0.3.2
|
|
473
473
|
*
|
|
474
474
|
**/
|
|
475
|
-
type ValueControlOptions = Extract<ControlOptions, { type: 'value' }
|
|
475
|
+
type ValueControlOptions = Extract<ControlOptions, { type: 'value' }>;
|
|
476
476
|
|
|
477
477
|
/**
|
|
478
478
|
* Опции контрола типа `range`.
|
|
@@ -480,7 +480,7 @@ declare namespace WbRules {
|
|
|
480
480
|
* @since 0.3.2
|
|
481
481
|
*
|
|
482
482
|
**/
|
|
483
|
-
type RangeControlOptions = Extract<ControlOptions, { type: 'range' }
|
|
483
|
+
type RangeControlOptions = Extract<ControlOptions, { type: 'range' }>;
|
|
484
484
|
|
|
485
485
|
/**
|
|
486
486
|
* Опции контрола типа `switch`.
|
|
@@ -488,7 +488,7 @@ declare namespace WbRules {
|
|
|
488
488
|
* @since 0.3.2
|
|
489
489
|
*
|
|
490
490
|
**/
|
|
491
|
-
type SwitchControlOptions = Extract<ControlOptions, { type: 'switch' }
|
|
491
|
+
type SwitchControlOptions = Extract<ControlOptions, { type: 'switch' }>;
|
|
492
492
|
|
|
493
493
|
/**
|
|
494
494
|
* Опции контрола типа `pushbutton`.
|
|
@@ -496,7 +496,7 @@ declare namespace WbRules {
|
|
|
496
496
|
* @since 0.3.2
|
|
497
497
|
*
|
|
498
498
|
**/
|
|
499
|
-
type PushButtonControlOptions = Extract<ControlOptions, { type: 'pushbutton' }
|
|
499
|
+
type PushButtonControlOptions = Extract<ControlOptions, { type: 'pushbutton' }>;
|
|
500
500
|
|
|
501
501
|
/**
|
|
502
502
|
* Опции контрола типа `rgb`.
|
|
@@ -504,7 +504,7 @@ declare namespace WbRules {
|
|
|
504
504
|
* @since 0.3.2
|
|
505
505
|
*
|
|
506
506
|
**/
|
|
507
|
-
type RgbControlOptions = Extract<ControlOptions, { type: 'rgb' }
|
|
507
|
+
type RgbControlOptions = Extract<ControlOptions, { type: 'rgb' }>;
|
|
508
508
|
|
|
509
509
|
/**
|
|
510
510
|
* Опции контрола типа `alarm`.
|
|
@@ -512,27 +512,27 @@ declare namespace WbRules {
|
|
|
512
512
|
* @since 0.3.2
|
|
513
513
|
*
|
|
514
514
|
**/
|
|
515
|
-
type AlarmControlOptions = Extract<ControlOptions, { type: 'alarm' }
|
|
515
|
+
type AlarmControlOptions = Extract<ControlOptions, { type: 'alarm' }>;
|
|
516
516
|
|
|
517
517
|
/**
|
|
518
518
|
* Интерфейс устройства
|
|
519
519
|
*/
|
|
520
520
|
interface Device {
|
|
521
|
-
getId(): string
|
|
521
|
+
getId(): string;
|
|
522
522
|
|
|
523
|
-
getCellId(cellName: string): string
|
|
523
|
+
getCellId(cellName: string): string;
|
|
524
524
|
|
|
525
|
-
addControl(cellName: string, description: ControlOptions): void
|
|
525
|
+
addControl(cellName: string, description: ControlOptions): void;
|
|
526
526
|
|
|
527
|
-
removeControl(cellName: string): void
|
|
527
|
+
removeControl(cellName: string): void;
|
|
528
528
|
|
|
529
|
-
getControl(cellName: string): Control
|
|
529
|
+
getControl(cellName: string): Control;
|
|
530
530
|
|
|
531
|
-
isControlExists(cellName: string): boolean
|
|
531
|
+
isControlExists(cellName: string): boolean;
|
|
532
532
|
|
|
533
|
-
controlsList(): Control[]
|
|
533
|
+
controlsList(): Control[];
|
|
534
534
|
|
|
535
|
-
isVirtual(): boolean
|
|
535
|
+
isVirtual(): boolean;
|
|
536
536
|
|
|
537
537
|
/**
|
|
538
538
|
* Позволяет указать на наличие ошибки уровня устройства.
|
|
@@ -541,21 +541,21 @@ declare namespace WbRules {
|
|
|
541
541
|
* @param message Текст ошибки.
|
|
542
542
|
*
|
|
543
543
|
**/
|
|
544
|
-
setError(message: string): void
|
|
544
|
+
setError(message: string): void;
|
|
545
545
|
|
|
546
546
|
/**
|
|
547
547
|
* Возвращает текст ошибки,
|
|
548
548
|
* а при её отсутствии - пустую строку.
|
|
549
549
|
*
|
|
550
550
|
**/
|
|
551
|
-
getError(): string
|
|
551
|
+
getError(): string;
|
|
552
552
|
}
|
|
553
553
|
|
|
554
|
-
type ControlOptionsTree = Record<string, ControlOptions
|
|
554
|
+
type ControlOptionsTree = Record<string, ControlOptions>;
|
|
555
555
|
|
|
556
556
|
interface DeviceOptions {
|
|
557
|
-
title: Title
|
|
558
|
-
cells: ControlOptionsTree
|
|
557
|
+
title: Title;
|
|
558
|
+
cells: ControlOptionsTree;
|
|
559
559
|
}
|
|
560
560
|
|
|
561
561
|
/**
|
|
@@ -569,7 +569,7 @@ declare namespace WbRules {
|
|
|
569
569
|
exitCode: number,
|
|
570
570
|
capturedOutput?: string,
|
|
571
571
|
capturedErrorOutput?: string
|
|
572
|
-
) => void
|
|
572
|
+
) => void;
|
|
573
573
|
|
|
574
574
|
interface SpawnOptions {
|
|
575
575
|
|
|
@@ -577,34 +577,34 @@ declare namespace WbRules {
|
|
|
577
577
|
* Если true, захватить stdout процесса и передать его в виде строки в {@link exitCallback}
|
|
578
578
|
*
|
|
579
579
|
**/
|
|
580
|
-
captureOutput?: boolean
|
|
580
|
+
captureOutput?: boolean;
|
|
581
581
|
|
|
582
582
|
/**
|
|
583
583
|
* Если true, захватить stderr процесса и передать его в виде строки в {@link exitCallback}.
|
|
584
584
|
* Если данный параметр не задан, то stderr дочернего процесса направляется в stderr процесса wb-rules
|
|
585
585
|
*
|
|
586
586
|
**/
|
|
587
|
-
captureErrorOutput?: boolean
|
|
587
|
+
captureErrorOutput?: boolean;
|
|
588
588
|
|
|
589
589
|
/**
|
|
590
590
|
* Строка, которую следует использовать в качестве содержимого stdin процесса.
|
|
591
591
|
*
|
|
592
592
|
**/
|
|
593
|
-
input?: string
|
|
593
|
+
input?: string;
|
|
594
594
|
|
|
595
595
|
/**
|
|
596
596
|
* Функция, вызываемая при завершении процесса.
|
|
597
597
|
*
|
|
598
598
|
**/
|
|
599
|
-
exitCallback?: ExitCallback
|
|
599
|
+
exitCallback?: ExitCallback;
|
|
600
600
|
}
|
|
601
601
|
|
|
602
602
|
interface ReadConfigOptions {
|
|
603
|
-
logErrorOnNoFile: boolean
|
|
603
|
+
logErrorOnNoFile: boolean;
|
|
604
604
|
}
|
|
605
605
|
|
|
606
606
|
interface StorageOptions {
|
|
607
|
-
global: boolean
|
|
607
|
+
global: boolean;
|
|
608
608
|
}
|
|
609
609
|
|
|
610
610
|
interface Notify {
|
|
@@ -616,7 +616,7 @@ declare namespace WbRules {
|
|
|
616
616
|
* @param text Текст письма.
|
|
617
617
|
*
|
|
618
618
|
**/
|
|
619
|
-
sendEmail(to: string, subject: string, text: string): void
|
|
619
|
+
sendEmail(to: string, subject: string, text: string): void;
|
|
620
620
|
|
|
621
621
|
/**
|
|
622
622
|
* Отправляет SMS на указанный номер
|
|
@@ -627,7 +627,7 @@ declare namespace WbRules {
|
|
|
627
627
|
* @param command Используя команду.
|
|
628
628
|
*
|
|
629
629
|
**/
|
|
630
|
-
sendSMS(to: string, text: string, command?: string): void
|
|
630
|
+
sendSMS(to: string, text: string, command?: string): void;
|
|
631
631
|
|
|
632
632
|
/**
|
|
633
633
|
* Отправляет сообщение в указанный чат или канал Telegram.
|
|
@@ -639,14 +639,14 @@ declare namespace WbRules {
|
|
|
639
639
|
* @since 0.3.2
|
|
640
640
|
*
|
|
641
641
|
**/
|
|
642
|
-
sendTelegramMessage(token: string, chatId: string, text: string): void
|
|
642
|
+
sendTelegramMessage(token: string, chatId: string, text: string): void;
|
|
643
643
|
}
|
|
644
644
|
}
|
|
645
645
|
|
|
646
646
|
declare namespace NodeJS {
|
|
647
647
|
interface Module {
|
|
648
648
|
/** Хранит данные, общие для всех экземпляров данного модуля. */
|
|
649
|
-
static: WbRules.ModuleStatic
|
|
649
|
+
static: WbRules.ModuleStatic;
|
|
650
650
|
}
|
|
651
651
|
}
|
|
652
652
|
|
|
@@ -655,10 +655,10 @@ declare namespace NodeJS {
|
|
|
655
655
|
* Пример строки: `/etc/wb-rules/my-script.js`
|
|
656
656
|
*
|
|
657
657
|
**/
|
|
658
|
-
declare var __filename: string
|
|
658
|
+
declare var __filename: string;
|
|
659
659
|
|
|
660
660
|
/** Используется для вывода сообщений в журнал контроллера и отладочную консоль. */
|
|
661
|
-
declare var log: WbRules.Log
|
|
661
|
+
declare var log: WbRules.Log;
|
|
662
662
|
|
|
663
663
|
/**
|
|
664
664
|
* Используется для вывода отладочных сообщений в журнал контроллера и отладочную консоль.
|
|
@@ -666,13 +666,13 @@ declare var log: WbRules.Log
|
|
|
666
666
|
* @since 0.3.2
|
|
667
667
|
*
|
|
668
668
|
**/
|
|
669
|
-
declare var debug: WbRules.Debug
|
|
669
|
+
declare var debug: WbRules.Debug;
|
|
670
670
|
|
|
671
671
|
/** Объект доступа к MQTT-топикам устройства. */
|
|
672
|
-
declare var dev: WbRules.Dev
|
|
672
|
+
declare var dev: WbRules.Dev;
|
|
673
673
|
|
|
674
674
|
/** Объект доступа к именованным таймера. */
|
|
675
|
-
declare var timers: WbRules.TimerCollection
|
|
675
|
+
declare var timers: WbRules.TimerCollection;
|
|
676
676
|
|
|
677
677
|
/**
|
|
678
678
|
* Используется для ввода спецификации cron-правила.
|
|
@@ -689,7 +689,7 @@ declare var timers: WbRules.TimerCollection
|
|
|
689
689
|
* })
|
|
690
690
|
* ```
|
|
691
691
|
**/
|
|
692
|
-
declare function cron(spec: string): WbRules.CronEntry
|
|
692
|
+
declare function cron(spec: string): WbRules.CronEntry;
|
|
693
693
|
|
|
694
694
|
/**
|
|
695
695
|
* Создаёт правило обработки.
|
|
@@ -697,14 +697,14 @@ declare function cron(spec: string): WbRules.CronEntry
|
|
|
697
697
|
* @param options Конфигурация правила.
|
|
698
698
|
*
|
|
699
699
|
**/
|
|
700
|
-
declare function defineRule(name: string, options: WbRules.RuleOptions): WbRules.RuleHandle
|
|
700
|
+
declare function defineRule(name: string, options: WbRules.RuleOptions): WbRules.RuleHandle;
|
|
701
701
|
|
|
702
702
|
/**
|
|
703
703
|
* Создаёт анонимное правило обработки.
|
|
704
704
|
* @param options Конфигурация правила.
|
|
705
705
|
*
|
|
706
706
|
**/
|
|
707
|
-
declare function defineRule(options: WbRules.RuleOptions): WbRules.RuleHandle
|
|
707
|
+
declare function defineRule(options: WbRules.RuleOptions): WbRules.RuleHandle;
|
|
708
708
|
|
|
709
709
|
/**
|
|
710
710
|
* Отключает правило. Оно перестаёт реагировать на события.
|
|
@@ -720,7 +720,7 @@ declare function defineRule(options: WbRules.RuleOptions): WbRules.RuleHandle
|
|
|
720
720
|
* @since 0.4.0
|
|
721
721
|
*
|
|
722
722
|
**/
|
|
723
|
-
declare function disableRule(rule: WbRules.RuleHandle): void
|
|
723
|
+
declare function disableRule(rule: WbRules.RuleHandle): void;
|
|
724
724
|
|
|
725
725
|
/**
|
|
726
726
|
* Включает ранее отключённое правило.
|
|
@@ -734,7 +734,7 @@ declare function disableRule(rule: WbRules.RuleHandle): void
|
|
|
734
734
|
* @since 0.4.0
|
|
735
735
|
*
|
|
736
736
|
**/
|
|
737
|
-
declare function enableRule(rule: WbRules.RuleHandle): void
|
|
737
|
+
declare function enableRule(rule: WbRules.RuleHandle): void;
|
|
738
738
|
|
|
739
739
|
/**
|
|
740
740
|
* Запускает правило по его дескриптору.
|
|
@@ -753,7 +753,7 @@ declare function enableRule(rule: WbRules.RuleHandle): void
|
|
|
753
753
|
* @since 0.4.0
|
|
754
754
|
*
|
|
755
755
|
**/
|
|
756
|
-
declare function runRule(rule: WbRules.RuleHandle): void
|
|
756
|
+
declare function runRule(rule: WbRules.RuleHandle): void;
|
|
757
757
|
|
|
758
758
|
/**
|
|
759
759
|
* Создаёт виртуальное устройство.
|
|
@@ -764,21 +764,21 @@ declare function runRule(rule: WbRules.RuleHandle): void
|
|
|
764
764
|
declare function defineVirtualDevice(
|
|
765
765
|
deviceId: string,
|
|
766
766
|
options: WbRules.DeviceOptions
|
|
767
|
-
): WbRules.Device
|
|
767
|
+
): WbRules.Device;
|
|
768
768
|
|
|
769
769
|
/**
|
|
770
770
|
* Позволяет получить объект для работы с указанным устройством.
|
|
771
771
|
* @param deviceId Идентификатор устройства.
|
|
772
772
|
*
|
|
773
773
|
**/
|
|
774
|
-
declare function getDevice(deviceId: string): WbRules.Device | undefined
|
|
774
|
+
declare function getDevice(deviceId: string): WbRules.Device | undefined;
|
|
775
775
|
|
|
776
776
|
/**
|
|
777
777
|
* Позволяет получить объект для работы с указанным контролом устройства.
|
|
778
778
|
* @param controlPath Строка в формате "deviceId/controlId"
|
|
779
779
|
*
|
|
780
780
|
**/
|
|
781
|
-
declare function getControl(controlPath: string): WbRules.Control | undefined
|
|
781
|
+
declare function getControl(controlPath: string): WbRules.Control | undefined;
|
|
782
782
|
|
|
783
783
|
/**
|
|
784
784
|
* Запускает периодический таймер с указанным интервалом.
|
|
@@ -788,7 +788,7 @@ declare function getControl(controlPath: string): WbRules.Control | undefined
|
|
|
788
788
|
* @param delay Интервал срабатывания, в миллисекундах
|
|
789
789
|
*
|
|
790
790
|
**/
|
|
791
|
-
declare function startTicker(name: string, interval: number): void
|
|
791
|
+
declare function startTicker(name: string, interval: number): void;
|
|
792
792
|
|
|
793
793
|
/**
|
|
794
794
|
* Запускает однократный таймер с указанным именем,
|
|
@@ -821,7 +821,7 @@ declare function startTicker(name: string, interval: number): void
|
|
|
821
821
|
*
|
|
822
822
|
* ```
|
|
823
823
|
*/
|
|
824
|
-
declare function startTimer(name: string, delay: number): void
|
|
824
|
+
declare function startTimer(name: string, delay: number): void;
|
|
825
825
|
|
|
826
826
|
/**
|
|
827
827
|
* Запуск внешних процессов.
|
|
@@ -834,17 +834,17 @@ declare function spawn(
|
|
|
834
834
|
cmd: string,
|
|
835
835
|
args: string[],
|
|
836
836
|
options: WbRules.SpawnOptions | WbRules.ExitCallback
|
|
837
|
-
): void
|
|
837
|
+
): void;
|
|
838
838
|
|
|
839
839
|
declare function runShellCommand(
|
|
840
840
|
command: string,
|
|
841
841
|
options?: WbRules.SpawnOptions | WbRules.ExitCallback
|
|
842
|
-
): void
|
|
842
|
+
): void;
|
|
843
843
|
|
|
844
844
|
declare function readConfig(
|
|
845
845
|
fileName: string,
|
|
846
846
|
options?: WbRules.ReadConfigOptions
|
|
847
|
-
): object
|
|
847
|
+
): object;
|
|
848
848
|
|
|
849
849
|
/**
|
|
850
850
|
*
|
|
@@ -856,7 +856,7 @@ declare function readConfig(
|
|
|
856
856
|
* defineAlias('heaterOn', 'Relays/Relay 1')
|
|
857
857
|
* ```
|
|
858
858
|
*/
|
|
859
|
-
declare function defineAlias(alias: string, controlPath: string): void
|
|
859
|
+
declare function defineAlias(alias: string, controlPath: string): void;
|
|
860
860
|
|
|
861
861
|
interface String {
|
|
862
862
|
/**
|
|
@@ -864,7 +864,7 @@ interface String {
|
|
|
864
864
|
* на строковые представления своих аргументов и возвращает результирующую строку.
|
|
865
865
|
* @param args
|
|
866
866
|
*/
|
|
867
|
-
format(...args: (string | number | boolean)[]): string
|
|
867
|
+
format(...args: (string | number | boolean)[]): string;
|
|
868
868
|
|
|
869
869
|
/**
|
|
870
870
|
* Осуществляет последовательную замену подстрок `{}` в указанной строке
|
|
@@ -872,7 +872,7 @@ interface String {
|
|
|
872
872
|
*
|
|
873
873
|
* @warning В отличие от {@link format}, выполняет код внутри строки! Не использовать для обработки значений, вводимых пользователем.
|
|
874
874
|
*/
|
|
875
|
-
xformat(...args: (string | number | boolean)[]): string
|
|
875
|
+
xformat(...args: (string | number | boolean)[]): string;
|
|
876
876
|
}
|
|
877
877
|
|
|
878
878
|
/**
|
|
@@ -883,7 +883,7 @@ interface String {
|
|
|
883
883
|
declare function trackMqtt(
|
|
884
884
|
topic: string,
|
|
885
885
|
callback: (message: WbRules.MqttMessage) => void
|
|
886
|
-
): void
|
|
886
|
+
): void;
|
|
887
887
|
|
|
888
888
|
/**
|
|
889
889
|
* Публикация сообщений в MQTT.
|
|
@@ -899,7 +899,7 @@ declare function publish(
|
|
|
899
899
|
value: WbRules.MqttValue,
|
|
900
900
|
qos?: number,
|
|
901
901
|
retain?: boolean
|
|
902
|
-
): void
|
|
902
|
+
): void;
|
|
903
903
|
|
|
904
904
|
/**
|
|
905
905
|
* Проксирует исходный объект, обеспечивая автоматическую синхронизацию
|
|
@@ -945,10 +945,10 @@ declare function publish(
|
|
|
945
945
|
*
|
|
946
946
|
* ```
|
|
947
947
|
*/
|
|
948
|
-
declare function StorableObject<TObject>(source: TObject): TObject
|
|
948
|
+
declare function StorableObject<TObject>(source: TObject): TObject;
|
|
949
949
|
|
|
950
950
|
declare class PersistentStorage {
|
|
951
|
-
constructor(name: string, options: WbRules.StorageOptions)
|
|
951
|
+
constructor(name: string, options: WbRules.StorageOptions);
|
|
952
952
|
}
|
|
953
953
|
|
|
954
954
|
/**
|
|
@@ -956,7 +956,7 @@ declare class PersistentStorage {
|
|
|
956
956
|
* сообщений по разным каналам коммуникации (почта, SMS, Telegram).
|
|
957
957
|
*
|
|
958
958
|
**/
|
|
959
|
-
declare var Notify: WbRules.Notify
|
|
959
|
+
declare var Notify: WbRules.Notify;
|
|
960
960
|
|
|
961
961
|
/**
|
|
962
962
|
* Сервис оповещений Alarms — инструмент для автоматической отправки
|
|
@@ -982,4 +982,4 @@ declare var Notify: WbRules.Notify
|
|
|
982
982
|
* @since 0.3.3
|
|
983
983
|
*
|
|
984
984
|
**/
|
|
985
|
-
declare var Alarms: WbRules.Alarms
|
|
985
|
+
declare var Alarms: WbRules.Alarms;
|