====== Описание WEB-API UniServer AUTO. Плагин лазерных весов LaseTVM3D ======
===== 1. Основные методы и примеры запросов =====
==== 1.1. Команда чтения текущего состояния (параметров) системы ====
Наименование метода: **Parameters**
Пример запроса: \\
**[[http://127.0.0.1:8087/core/plugins/LaseTVM3D1/Parameters?auth_user=admin&auth_password=admin]]**
Список важных параметров в формате JSON:
{
"CurrentState": "Empty", // Состояние системы
"CurrentStateCaption": "Пусто. Ожидание заезда", // Описание состояния системы
"ObjectName": "LaseTVM 1", // Имя объекта
"Result_FixTSNumb": false, // Флаг фиксации изменения номера ТС, чтобы не изменился от системы распознавания
"Result_FULL_NUMB_TS": "", // Полный номер ТС
"Result_IsParametersValid": false, // Входные параметры правильные
"Result_LocateSt": "", // Описание поиска номера ТС по журналу
"Result_MasterMeasurementID": 0, // Master ID измерения
"Result_MeasurementOrder": "Incoming", // Порядок измерения - Outgoing или Incoming
"Result_MeasurementOrderCaption": "Первое",// Порядок измерения - описание
"Result_MeasurementType": "Empty", // Тип измерения Full или Empty
"Result_MeasurementTypeCaption": "Пустой", // Тип измерения - Описание
"Result_MeasurementStart_DateTime": "", // Время старта
"Result_MeasurementStop_DateTime": "",
"Result_Recog_FULL_NUMB_TS": "", // Полный Номер ТС
"Result_NUMB_TS": "", // Номер ТС
"Result_REG_TS": "", // Регион ТС
"Result_TryNUMBER_TS_ID": false, // Флаг - транспорт из справочника
"Result_NUMBER_TS_ID": "", // ID из справочника ТС
"Result_TS_TYP_FULL_NAME": "", // Полное наименование Марка ТС
"Result_TS_TYP_NAME": "", // наименование Марка ТС
"SerialTCPIPPort_Parameters": { //Список параметров Порта TCP/IP
"Mode": "Client",
"StState": "TCP Клиент. Порт ОТКРЫТ: 127.0.0.1:55510", // Состояние подключение
"PortName": "127.0.0.1:55510",
"Connected": true, // Флаг подключения
..
}
...
}
==== 1.2. Команда передачи (установки) входных параметров системы ====
Наименование метода: **UpdateParam** \\
В заголовке команды перечисляются имена и значения параметров.
Пример запроса: \\
**[[http://127.0.0.1:8087/core/plugins/LaseTVM3D1/UpdateParam?Result_NUMB_TS=Т001ОТ&Result_REG_TS=123&auth_user=admin&auth_password=admin]]**
==== 1.3. Команда старта измерения ====
Наименование метода: **SetManualStartMeasurement**
Пример запроса: \\
**[[http://127.0.0.1:8087/core/plugins/LaseTVM3D1/SetManualStartMeasurement?auth_user=admin&auth_password=admin]]**
==== 1.4. Пример отправки команды в 1С 8.3 ====
Соединение = Новый HTTPСоединение("127.0.0.1", "8087", "user", "user",,5);
Запрос = Новый HTTPЗапрос("/core/plugins/LaseTVM3D1/UpdateParam?Result_NUMB_TS=Т001ОТ&Result_REG_TS=123&Result_FixTSNumb=true&Result_MeasurementOrder=Incoming&Result_MeasurementType=Empty");
Ответ = Соединение.Получить(Запрос);
Если Ответ.КодСостояния = 200 Тогда
// Команда выполнена
Иначе
// Команда не выполнена
КонецЕсли
===== 2. Инструкции =====
==== 2.1. Инструкция. Последовательность команд для первого измерения ====
**Шаг 1.** Проверка исходного состояния командой **/Parameters**. Пусто.
Пример запроса: \\
[[http://127.0.0.1:8087/core/plugins/LaseTVM3D1/Parameters?auth_user=admin&auth_password=admin]]
Ответ в формате JSON:
{
CurrentState: "Empty",
CurrentStateCaption: "Пусто. Ожидание заезда",
..
}
Необходимо убедиться в готовности системы.
**Шаг 2.** Команда передать параметры для 1-го измерения. Порядок: 1-ый; Тип: Пустой
Главные параметры команды:
* **Result_MeasurementOrder:** Порядок измерения - Incoming (Первое) или Outgoing (Второе)
* **Result_MeasurementType:** Тип измерения - Empty (Пустой) или Full (Полный)
* **Result_NUMB_TS:** Номер ТС
* **Result_REG_TS:** Регион ТС
* **Result_FixTSNumb:** Флаг фиксации изменения номера ТС (true/false), используется чтобы не номер ТС не меняла система распознавания
Пример запроса с передачей параметров: \\
[[http://127.0.0.1:8087/core/plugins/LaseTVM3D1/UpdateParam?Result_NUMB_TS=Т001ОТ&Result_REG_TS=123&Result_FixTSNumb=true&Result_MeasurementOrder=Incoming&Result_MeasurementType=Empty&auth_user=admin&auth_password=admin]]
**Шаг 3.** Проверка состояния командой **/Parameters**. Готовность измерить ПУСТОЙ транспорт.
Пример запроса: \\
[[http://127.0.0.1:8087/core/plugins/LaseTVM3D1/Parameters?auth_user=admin&auth_password=admin]]
Ответ в формате JSON:
{
CurrentState: "ReadyTara",
CurrentStateCaption: "Готовность измерить ПУСТОЙ транспорт",
Result_FULL_NUMB_TS: "Т001ОТ123",
Result_NUMB_TS:"Т001ОТ",
Result_REG_TS:"123",
..
}
**Шаг 4.** Отправить команду старт измерения.
Пример запроса: \\
[[http://127.0.0.1:8087/core/plugins/LaseTVM3D1/SetManualStartMeasurement?auth_user=admin&auth_password=admin]]
Ожидание 25 секунд. В процессе проверять состояние командой /Parameters
{
CurrentState: "ScannTara"
CurrentStateCaption: "Внимание! Идет измерение ПУСТОГО транспорта.."
..
}
По завершению состояние перйдет в исходное - **"Пусто"** (Empty) или **"Измерение завершено. Ожидание выезда ТС"** (ScanCompleteReadyToExit)
==== 2.2. Инструкция. Последовательность команд для второго измерения ====
**Шаг 1.** Проверка исходного состояния командой **/Parameters**. Пусто.
Пример запроса: \\
[[http://127.0.0.1:8087/core/plugins/LaseTVM3D1/Parameters?auth_user=admin&auth_password=admin]]
Ответ в формате JSON:
{
CurrentState: "Empty",
CurrentStateCaption: "Пусто. Ожидание заезда",
..
}
Необходимо убедиться в готовности системы.
**Шаг 2.** Команда передать параметры для 2-го измерения. Порядок: 2-ой; Тип: Груженый
Пример запроса: \\
[[http://127.0.0.1:8087/core/plugins/LaseTVM3D1/UpdateParam?Result_NUMB_TS=Т001ОТ&Result_REG_TS=123&Result_FixTSNumb=true&Result_MeasurementOrder=Outgoing&Result_MeasurementType=Full&auth_user=admin&auth_password=admin]]
**Шаг 3.** Проверка состояния командой **/Parameters**. Готовность измерить ГРУЖЁНЫЙ транспорт.
Пример запроса: \\
[[http://127.0.0.1:8087/core/plugins/LaseTVM3D1/Parameters?auth_user=admin&auth_password=admin]]
Ответ в формате JSON:
{
CurrentState: "ReadyBrutto",
CurrentStateCaption: "Готовность измерить ГРУЖЁНЫЙ транспорт",
Result_FULL_NUMB_TS: "Т001ОТ123",
Result_NUMB_TS:"Т001ОТ",
Result_REG_TS:"123",
Result_LocateSt: "Найдена запись о первом измерении Пустого ТС: Т001ОТ123 от: 2026-04-16T03:18:17.894",
Result_MasterMeasurementID: 9614,
..
}
Возможный вариант неготовности системы к измерению:
Ответ в формате JSON:
{
CurrentState: "DetectedAuto",
CurrentStateCaption: "Обнаружен транспорт. Идентификация",
Result_FULL_NUMB_TS: "Т001ОТ123",
Result_NUMB_TS:"Т001ОТ",
Result_REG_TS:"123",
Result_LocateSt: "Первое измерение Пустого ТС: Т001ОТ123 не найдено!",
Result_MasterMeasurementID: 0,
..
}
**Шаг 4.** Отправить команду старт измерения.
Пример запроса: \\
[[http://127.0.0.1:8087/core/plugins/LaseTVM3D1/SetManualStartMeasurement?auth_user=admin&auth_password=admin]]
Ожидание 25 секунд. В процессе проверять состояние командой **/Parameters**
{
"CurrentState": "ScannTara"
"CurrentStateCaption": "Внимание! Идет измерение ПУСТОГО транспорта.."
..
}
По завершению состояние перйдет в исходное - **"Пусто"** (Empty) или **"Измерение завершено. Ожидание выезда ТС"** (ScanCompleteReadyToExit)
Результаты измерения берем из параметра **Result_LastVOLUME**
{
"CurrentState": "Empty", // Состояние системы
"CurrentStateCaption": "Пусто. Ожидание заезда", // Описание состояния системы
..
// Результат последнего измерения
"Result_LastFULL_NUMB_TS": "Т001ОТ123", // Номер ТС
"Result_LastMasterMeasurementID": 9614, // Master ID измерения
"Result_LastMeasurementOrder": "Outgoing", // Порядок измерения - Outgoing или Incoming
"Result_LastMeasurementOrderCaption": "Второе", // Порядок измерения - описание
"Result_LastMeasurementType": "Full", // Тип измерения Full или Empty
"Result_LastMeasurementTypeCaption": "Гружёный", // Тип измерения - Описание
"Result_LastMeasurementStart_DateTime": "2026-04-16T03:32:23.262", // Время старта
"Result_LastMeasurementStop_DateTime": "2026-04-16T03:32:46.343", // Время завершения
"Result_LastVOLUME": 31.89, // Измеренный объем
}