11.8. [DKSF 489.1.10] Как управлять устройством при помощи SMS-команд
Устройство имеет возможность удаленного управления с помощью SMS-команд.
Синтаксис SMS-команд
Общий формат текста SMS-команды:
NETPING fff community_w kkkkkk
где:
fff — код команды, например, Р1+ (см. ниже).
community_w — пароль, соответствует SNMP community для записи. Задается на странице «НАСТРОЙКИ» web-интерфейса устройства. Можно применять латинские буквы, цифры, символ «_» без кавычек и пробелов.
kkkkk — идентификатор запроса (произвольное число от 3 до 9 цифр). Повторяется в ответе для установления соответствия между запросом и ответом. Необязательный элемент команды. Если идентификатор отсутствует в команде, также отсутствует в ответе.
Текст команды нечувствителен к регистру, можно применять строчные и прописные буквы. Элементы команды разделяются пробелами. Недопустимо использование символов: ‘ (апостроф), “ (кавычка), @. Включение этих символов может вызвать сбой прошивки. Выполнение команды подтверждается ответным сообщением (см. ниже).
Коды команд
Код команды указывается слитно, без пробелов.
SMS команды | |||
---|---|---|---|
Команда | Код команды | Ответ | Примечания |
Общие команды | |||
RB20 | Выполнить перезагрузку устройства |
| Перезагрузка выполняется через 20с. после получения команды |
Реле | |||
Pn? | Запросить состояние реле n, где n - номер реле | NP REPLY Pnb kkkkk |
|
Pn+ Pn- | Включить/выключить реле n, где n - номер реле | NP DONE Pn+ kkkkk NP DONE Pn- kkkkk |
|
PnR | Перезагрузить реле n, где n - номер реле | NP DONE PnR kkkkk | Полярность (направление) переключения реле при выполнении сброса должна соответствовать полярности, заданной в настройках модуля «Сторож» (режим сброса). Если реле уже находится в состоянии сброса, команда сброса не имеет эффекта, хотя ответное уведомление об успешном выполнении «NP DONE PnR» будет приходить отправителю |
P? | Запросить состояние всех реле в краткой форме | NP REPLY P1b P2b … P7b P8b kkkkk |
|
Пингер | |||
N? | Запросить состояние пингера | NP REPLY N=status kkkkk |
|
Датчики температуры | |||
Tb? | Запросить показания датчика температуры b, где b - номер термодатчика | NP REPLY Tb=? SENSOR FAILED kkkkk NP REPLY Tb=tC BELOW SAFE RANGE (t1..t2C) kkkkk NP REPLY Tb=tC IN SAFE RANGE (t1..t2C) kkkkk NP REPLY Tb=tC ABOVE SAFE RANGE (t1..t2C) kkkkk |
|
T? | Запросить состояние всех подключённых датчиков температуры в краткой форме | NP REPLY T2=21C SAFE (10..30C) T5=? T6=39C ABOVE (10..30C) kkkkk |
|
Датчики влажности | |||
Hx? | Запросить показания датчика влажности x, где x - номер датчика влажности | NP REPLY Hx=? SENSOR FAILED kkkkk NP REPLY Hx=h% BELOW SAFE RANGE (h1..h2%) T= tC kkkkk NP REPLY Hx=h% IN SAFE RANGE (h1..h2%) T= tC kkkkk NP REPLY Hx=h% ABOVE SAFE RANGE (h1..h2%) T= tC kkkkk |
|
АВР | |||
S? | Запросить состояние вводов | S1=in1 S2=in2 | in1/in2 - состояние напряжения на вводе. 1 -напряжение в норме 0 - повышение, пониженное или отсутствует. |
S=y | Задать основной ввод |
|
|
Адаптер аналоговых датчиков | |||
AINn? | Запросить состояние адаптера аналоговых датчиков |
|
|
Пример SMS-команды
Команда включения реле 1 устройства:
NETPING P1+ SWITCH
Ответные сообщения на SMS-команды
Подтверждение исполнения команды, такой как переключение реле или изменение состояния дискретной линии вывода:
где:
fff — код исходной команды, выполнение которой подтверждается данным сообщением; например, Р1+;
kkkkk — идентификатор запроса (произвольное число от 3 до 9 цифр). Повторяется в ответе для установления соответствия между запросом и ответом. Необязательный элемент команды. Если идентификатор отсутствует в команде, также отсутствует в ответе (вторая команда).
Ошибка при разборе команды устройством. Наиболее вероятен неправильный текст исходной команды:
где:
Исходная команда — текст исходной команды, полностью заключенный в кавычки.
Неправильный пароль (Community) в исходной команде:
где:
kkkkk — идентификатор запроса (произвольное число от 3 до 9 цифр). Повторяется в ответе для установления соответствия между запросом и ответом. Необязательный элемент команды. Если идентификатор отсутствует в команде, также отсутствует в ответе (вторая команда).
Ответные сообщения на SMS-команды запроса статуса/состояния
Ответ на запрос Pn? о состоянии реле:
где:
status — состояние реле: «+» (включено), «-» (выключено);
n — номер реле.
Ответ на запрос P? о состоянии всех реле:
где:
b — состояние реле: «+» (включено), «-» (выключено).
Ответ на запрос S? о состоянии вводов
где:
S1, S2 — группы розеток;
in1, in2 — ввод, от которого в данный момент запитана группа розеток;
B+|B- — «+» или «-» означает, разрешено или запрещено резервирование ввода для группы;
R+|R- — «+» или «-» означает, разрешён или запрещен автовозврат группы на основной ввод;
AC1+|AC2+ — «+» или «-» означает наличие или отсутствие напряжения на вводах 1 и 2.
Ответ на запрос N?
где:
status — состояние пингера, 0 — молчит, 1 — отвечает;
address — IP или доменное имя опрашиваемого узла.
Ответ на запрос Tb?
где:
b — номер термодатчика;
tC — текущее показание температуры, °C;
status — статус термодатчика: «BELOW», «IN» или «ABOVE»;
(t1..t2C) — диапазон нормы.
Ответ на запрос Hb?
где:
h% — текущее показание относительной влажности, в %;
tC — текущее показание температуры, в °C;
status — статус показаний датчика: «BELOW», «IN» или «ABOVE»;
h1..h2 — диапазон нормальной влажности;
t1..t2 — диапазон нормальной температуры.