update_command_definition
Для создания, редактирования или удаления команды используйте метод unit/update_command_definition.
Конечная точка
svc=unit/update_command_definition¶ms={
"itemId": <long>,
"id": <long>,
"callMode": "<text>",
"n": "<text>",
"c": "<text>",
"l": "<text>",
"p": "<text>",
"a": <long>,
"f": <uint>,
"jp": "<text>"
}
Параметры
Запрос должен содержать следующие параметры:
| Параметр | Описание |
|---|---|
itemId |
ID объекта. |
id |
ID команды. При создании команды укажите 0. Система игнорирует это значение и присваивает ID самостоятельно. |
callMode |
Действие: create, update или delete. |
Для создания или редактирования команды также укажите следующие параметры:
| Параметр | Описание |
|---|---|
n |
Имя команды. |
c |
Тип команды (см. Типы команд). |
l |
Тип связи (см. Типы связи). |
p |
Параметры. |
a |
Права доступа, которые необходимы пользователю для выполнения этой команды (см. check_items_billing). |
Следующие параметры необязательны:
| Параметр | Описание |
|---|---|
f |
Флаги команды. Значение по умолчанию — 0. Флаг 0x4 означает, что к команде прикреплен файл. Он устанавливается автоматически, если вы загружаете файл вместе с запросом. |
jp |
JSON-параметры команды в виде текста. Если не указать этот параметр при редактировании команды, ее JSON-параметры удаляются. |
Типы команд
| Значение | Тип команды |
|---|---|
block_engine |
Заблокировать двигатель |
unblock_engine |
Разблокировать двигатель |
custom_msg |
Отправить произвольное сообщение |
driver_msg |
Отправить сообщение водителю |
download_msgs |
Загрузить сообщения |
query_pos |
Запросить координаты |
query_photo |
Запросить фотографию |
query_photo_cam |
Запросить фотографию с определенной камеры |
query_ddd |
Запросить файл DDD с тахографа |
output_on |
Активировать выход |
output_off |
Деактивировать выход |
send_position |
Отправить координаты |
send_route |
Отправить маршрут |
send_waypoints |
Отправить точки маршрута |
set_report_interval |
Установить интервал отправки данных |
request_configuration |
Запросить конфигурацию |
upload_cfg |
Загрузить конфигурацию |
upload_sw |
Загрузить прошивку |
wiatag_service |
Запустить или остановить WiaTag (для типа устройства WiaTag) |
secoon |
Активировать функцию SECO (secure engine cut-off) |
secooff |
Отключить функцию SECO (secure engine cut-off) |
Список неполный: типы устройств могут определять другие типы команд.
В Wialon Local типы команд secoon и secooff доступны начиная с версии 2504.
Типы связи
| Значение | Тип связи |
|---|---|
| Пустая строка | Авто |
tcp |
TCP |
udp |
UDP |
vrt |
Виртуальный |
gsm |
SMS |
Копирование прикрепленного файла
Чтобы скопировать файл, прикрепленный к команде другого объекта, укажите флаг 0x4 в f и следующие параметры в дополнение к тем, которые необходимы для создания или редактирования команды:
| Параметр | Описание |
|---|---|
oldItemId |
ID объекта, из которого нужно скопировать файл. |
oldCmdId |
ID команды, файл которой нужно скопировать. |
Копируется только файл. Остальные свойства команды берутся из запроса. Если значение p пустое, используются параметры исходной команды. Чтобы скопировать файл, пользователь должен иметь право доступа Просмотр команд на исходный объект.
Ответ
Если команда успешно создана или отредактирована, возвращается ответ в следующем формате:
[
<long>, /* ID команды */
{
"id": <long>, /* ID команды */
"n": "<text>", /* Имя команды */
"c": "<text>", /* Тип команды */
"l": "<text>", /* Тип связи */
"p": "<text>", /* Параметры */
"a": <long>, /* Права доступа, необходимые для выполнения команды */
"f": <uint>, /* Флаги */
"jp": "<text>",/* JSON-параметры; только если они указаны */
"ct": <uint>, /* Время создания (Unix timestamp) */
"mt": <uint> /* Время последнего изменения (Unix timestamp) */
}
]
В Wialon Local поля ct и mt доступны начиная с версии 2304.
Если команда успешно удалена, возвращается ответ в следующем формате:
[
<long>, /* ID команды */
null
]
Если запрос не выполнен, возвращается код ошибки.
Коды ошибок
| Код ошибки | Описание |
|---|---|
| 4 | Неверные входные параметры: обязательный параметр отсутствует или имеет неверный тип, callMode имеет неподдерживаемое значение, команду не удалось создать или обновить либо исходный объект, команда или файл для копирования недоступны. |
| 6 | Команда с указанным id не существует (при обновлении и удалении) или команду не удалось удалить. |
| 7 | Объект не существует, или у пользователя нет прав доступа Просмотр команд и Создание, редактирование и удаление команд на него. |