Работа с этикетками ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. |br| raw:: html
.. literalinclude:: Заметка_tcp.txt :language: text Загрузить JSON-данные этикетки на устройство ---------------------------------------------------------------------------------------------------------------------------- .. note:: Структура JSON-данных описана в соответствующем разделе .. csv-table:: Содержимое запроса :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "2", "0xFF, 0x18 - код команды" "4", "4", "Пароль" "5", "2", "Длина JSON-строки" "6", "N", "JSON-строка" .. csv-table:: Содержимое ответа :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "2", "0xFF, 0x18 - код команды" "4", "1", "Код результата" Получить JSON-данные этикетки с устройства ---------------------------------------------------------------------------------------------------------------------------- .. note:: Структура JSON-данных описана в соответствующем разделе .. csv-table:: Содержимое запроса :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "2", "0xFF, 0x19 - код команды" "4", "4", "Пароль" "5", "1", "Номер этикетки. Диапазон 1-14" .. csv-table:: Содержимое ответа :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "2", "0xFF, 0x19 - код команды" "4", "1", "Код результата" "5", "2", "Длина JSON-строки" "6", "N", "JSON-строка" Задать изображение на этикетке ---------------------------------------------------------------------------------------------------------------------------- .. csv-table:: Содержимое запроса :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "1", "0xC0 - код команды" "4", "4", "Пароль" "5", "1", "Размер изображения в мм по горизонтали" "6", "1", "Размер изображения в мм по вертикали" "7", "1", "Номер изображения. Диапазон 0-4 |br| 0 - Лента Мёбиуса" "8", "1", "Номер блока данных" "9", "100", "Блок данных" .. csv-table:: Содержимое ответа :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "1", "0xC0 - код команды" "4", "1", "Код результата" .. note:: Блок данных содержит данные о пикселях для картинки, картинка состоит из черных и белых пикселей, поэтому каждый бит байта отвечает за один пиксель (1 - черный, 0 - белый) .. note:: Если последний блок данных при загрузке неполон (менее 100 байт), то его нужно дополнить его до 100 байт значением 0. Получить размер изображения на этикетке ---------------------------------------------------------------------------------------------------------------------------- .. csv-table:: Содержимое запроса :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "1", "0xС5 - код команды" "4", "4", "Пароль" "5", "1", "Номер изображения. Диапазон 0-4 |br| 0 - Лента Мёбиуса" .. csv-table:: Содержимое ответа :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "1", "0xС5 - код команды" "4", "1", "Код результата" "5", "1", "Ширина в мм" "6", "1", "Высота в мм" Печать тестовой этикетки ---------------------------------------------------------------------------------------------------------------------------- .. csv-table:: Содержимое запроса :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "1", "0x44 - код команды" "4", "4", "Пароль" .. csv-table:: Содержимое ответа :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "1", "0x44 - код команды" "4", "1", "Код результата" Получить формат этикетки по умолчанию ---------------------------------------------------------------------------------------------------------------------------- .. csv-table:: Содержимое запроса :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "1", "0x70 - код команды" "4", "4", "Пароль" .. csv-table:: Содержимое ответа :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "1", "0x70 - код команды" "4", "1", "Код результата" "5", "1", "Формат этикетки. Диапазон 0-102" Задать формат этикетки по умолчанию ---------------------------------------------------------------------------------------------------------------------------- .. csv-table:: Содержимое запроса :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "1", "0x71 - код команды" "4", "4", "Пароль" "5", "1", "Формат этикетки. Диапазон 0-102" .. csv-table:: Содержимое ответа :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "1", "0x71 - код команды" "4", "1", "Код результата" Получить формат итоговой этикетки по умолчанию ---------------------------------------------------------------------------------------------------------------------------- .. csv-table:: Содержимое запроса :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "2", "0xFF, 0x37 - код команды" "4", "4", "Пароль" .. csv-table:: Содержимое ответа :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "2", "0xFF, 0x37 - код команды" "4", "1", "Код результата" "5", "1", "Формат этикетки. Диапазон 0-102" Задать формат итоговой этикетки по умолчанию ---------------------------------------------------------------------------------------------------------------------------- .. csv-table:: Содержимое запроса :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "2", "0xFF, 0x38 - код команды" "4", "4", "Пароль" "5", "1", "Формат этикетки. Диапазон 0-102" .. csv-table:: Содержимое ответа :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "2", "0xFF, 0x38 - код команды" "4", "1", "Код результата" Задать формат итоговой этикетки корзины по умолчанию ---------------------------------------------------------------------------------------------------------------------------- .. csv-table:: Содержимое запроса :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "2", "0xFF, 0x47 - код команды" "4", "4", "Пароль" "5", "1", "Формат этикетки. Диапазон 0-102" .. csv-table:: Содержимое ответа :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "2", "0xFF, 0x47 - код команды" "4", "1", "Код результата" Получить формат итоговой этикетки корзины по умолчанию ---------------------------------------------------------------------------------------------------------------------------- .. csv-table:: Содержимое запроса :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "2", "0xFF, 0x46 - код команды" "4", "4", "Пароль" .. csv-table:: Содержимое ответа :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "2", "0xFF, 0x46 - код команды" "4", "1", "Код результата" "5", "1", "Формат этикетки. Диапазон 0-102" Задать формат этикетки для добавления товара в корзину по умолчанию ---------------------------------------------------------------------------------------------------------------------------- .. csv-table:: Содержимое запроса :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "2", "0xFF, 0x49 - код команды" "4", "4", "Пароль" "5", "1", "Формат этикетки. Диапазон 0-102" .. csv-table:: Содержимое ответа :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "2", "0xFF, 0x49 - код команды" "4", "1", "Код результата" Получить формат этикетки для добавления товара в корзину по умолчанию ---------------------------------------------------------------------------------------------------------------------------- .. csv-table:: Содержимое запроса :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "2", "0xFF, 0x48 - код команды" "4", "4", "Пароль" .. csv-table:: Содержимое ответа :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "2", "0xFF, 0x48 - код команды" "4", "1", "Код результата" "5", "1", "Формат этикетки. Диапазон 0-102" Задать итоговый формат этикетки по умолчанию ---------------------------------------------------------------------------------------------------------------------------- .. csv-table:: Содержимое запроса :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "2", "0xFF, 0x38 - код команды" "4", "4", "Пароль" "5", "1", "Формат этикетки. Диапазон 0-102" .. csv-table:: Содержимое ответа :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "2", "0xFF, 0x38 - код команды" "4", "1", "Код результата" Получить пользовательский текст в кодировке UTF-8 ---------------------------------------------------------------------------------------------------------------------------- .. csv-table:: Содержимое запроса :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "2", "0xFF, 0x99 - код команды" "4", "4", "Пароль" "5", "1", "Номер текста. Диапазон 1-5" .. csv-table:: Содержимое ответа :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "2", "0xFF, 0x99 - код команды" "4", "1", "Код результата" "5", "2", "Количество байт в тексте" "6", "N", "Текст" Задать пользовательский текст в кодировке UTF-8 ---------------------------------------------------------------------------------------------------------------------------- .. csv-table:: Содержимое запроса :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "2", "0xFF, 0x9A - код команды" "4", "4", "Пароль" "5", "1", "Номер текста. Диапазон 1-5" "6", "2", "Количество байт в тексте" "7", "N", "Текст" .. csv-table:: Содержимое ответа :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "2", "0xFF, 0x9A - код команды" "4", "1", "Код результата" Получить адрес магазина в кодировке UTF-8 ---------------------------------------------------------------------------------------------------------------------------- .. csv-table:: Содержимое запроса :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "2", "0xFF, 0x21 - код команды" "4", "4", "Пароль" .. csv-table:: Содержимое ответа :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "2", "0xFF, 0x21 - код команды" "4", "1", "Код результата" "5", "2", "Количество байт в тексте" "6", "N", "Текст" Задать многострочное название магазина в кодировке UTF-8 ---------------------------------------------------------------------------------------------------------------------------- .. csv-table:: Содержимое запроса :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "2", "0xFF, 0x44 - код команды" "4", "4", "Пароль" "6", "2", "Количество байт в тексте" "7", "N", "Текст" .. csv-table:: Содержимое ответа :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "2", "0xFF, 0x44 - код команды" "4", "1", "Код результата" Получить многострочное название магазина в кодировке UTF-8 ---------------------------------------------------------------------------------------------------------------------------- .. csv-table:: Содержимое запроса :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "2", "0xFF, 0x45 - код команды" "4", "4", "Пароль" .. csv-table:: Содержимое ответа :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "2", "0xFF, 0x45 - код команды" "4", "1", "Код результата" "5", "2", "Количество байт в тексте" "6", "N", "Текст" Задать адрес магазина в кодировке UTF-8 ---------------------------------------------------------------------------------------------------------------------------- .. csv-table:: Содержимое запроса :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "2", "0xFF, 0x20 - код команды" "4", "4", "Пароль" "6", "2", "Количество байт в тексте" "7", "N", "Текст" .. csv-table:: Содержимое ответа :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "2", "0xFF, 0x20 - код команды" "4", "1", "Код результата" Получить тип валюты на этикетке ---------------------------------------------------------------------------------------------------------------------------- .. csv-table:: Содержимое запроса :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "2", "0xFF, 0x01 - код команды" "4", "4", "Пароль" .. csv-table:: Содержимое ответа :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "2", "0xFF, 0x01 - код команды" "4", "1", "Код результата" "5", "1", "Код выбранной валюты |br| 0 – ₽, |br| 1 – $, |br| 2 – €, |br| 3 – ₾, |br| 4 – ¥, |br| 5 – ₼, |br| 6 – ֏, |br| 7 – Br, |br| 8 – ₸, |br| 9 – L, |br| 10 – m, |br| 11 – ₴, |br| 12 – с." Задать тип валюты на этикетке ---------------------------------------------------------------------------------------------------------------------------- .. csv-table:: Содержимое запроса :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "2", "0xFF, 0x02 - код команды" "4", "4", "Пароль" "5", "1", "Код выбранной валюты |br| 0 – ₽, |br| 1 – $, |br| 2 – €, |br| 3 – ₾, |br| 4 – ¥, |br| 5 – ₼, |br| 6 – ֏, |br| 7 – Br, |br| 8 – ₸, |br| 9 – L, |br| 10 – m, |br| 11 – ₴, |br| 12 – с." .. csv-table:: Содержимое ответа :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "2", "0xFF, 0x02 - код команды" "4", "1", "Код результата" Задать номер весов ---------------------------------------------------------------------------------------------------------------------------- .. csv-table:: Содержимое запроса :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "1", "0x25 - код команды" "4", "4", "Пароль" "5", "1", "Номер весов. Диапазон 1-99" .. csv-table:: Содержимое ответа :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "1", "0x25 - код команды" "4", "1", "Код результата" Печать этикетки конкретного товара ---------------------------------------------------------------------------------------------------------------------------- .. csv-table:: Содержимое запроса :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "2", "0xFF, 0x42 - код команды" "4", "4", "Пароль" "5", "1", "Тип идентификатора: |br| 0 – Код товара, |br| 1 – ПЛУ, |br| 2 – Номер кнопки" "6", "4", "Значение идентификатора товара" .. csv-table:: Содержимое ответа :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "2", "0xFF, 0x42 - код команды" "4", "1", "Код результата" Получить значение угла поворота этикетки ---------------------------------------------------------------------------------------------------------------------------- .. csv-table:: Содержимое запроса :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "2", "0xFF, 0x54 - код команды" "4", "4", "Пароль" .. csv-table:: Содержимое ответа :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "2", "0xFF, 0x54 - код команды" "4", "1", "Код результата" "5", "1", "Код угла поворота этикетки |br| 0 – 0°, |br| 1 – 90°, |br| 2 – 180°, |br| 3 – 270°" Задать значение угла поворота этикетки ---------------------------------------------------------------------------------------------------------------------------- .. csv-table:: Содержимое запроса :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "2", "0xFF, 0x55 - код команды" "4", "4", "Пароль" "5", "1", "Код угла поворота этикетки |br| 0 – 0°, |br| 1 – 90°, |br| 2 – 180°, |br| 3 – 270°" .. csv-table:: Содержимое ответа :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "2", "0xFF, 0x055 - код команды" "4", "1", "Код результата" Получить JSON-данные тегов сообщений ---------------------------------------------------------------------------------------------------------------------------- .. csv-table:: Содержимое запроса :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "2", "0xFF, 0x60 - код команды" "4", "4", "Пароль" .. csv-table:: Содержимое ответа :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "2", "0xFF, 0x60 - код команды" "4", "1", "Код результата" "5", "2", "Длина JSON-строки" "6", "N", "JSON-строка" Задать JSON-данные тегов сообщений ---------------------------------------------------------------------------------------------------------------------------- .. csv-table:: Содержимое запроса :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "2", "0xFF, 0x61 - код команды" "4", "4", "Пароль" "5", "2", "Длина JSON-строки" "6", "N", "JSON-строка" .. csv-table:: Содержимое ответа :header: "№", "Байт", "Содержимое" :widths: 5, 5, 50 "1", "1", "0x02 - байт инициализирующий команду (STX)" "2", "1", "Длина оставшейся части команды, если больше 255, то 0xFF" "3", "2", "0xFF, 0x61 - код команды" "4", "1", "Код результата"