Проверка через Bruno
Используйте коллекцию Bruno для проверки аутентификации, запросов устройств, управления реле, передачи RS485 и получения результатов команд. По сравнению с двумя запросами curl, этот путь охватывает больше сценариев, а встроенные проверки (assertions) автоматически подтверждают структуру ответа вместо ручного сравнения JSON.
Перед началом
- Подготовьте
clientIdиclientSecret. - Включите
device:read; включайтеdevice:controlилиdevice:configтолько если будете выполнять запросы к реле или RS485. - Убедитесь, что целевым устройством и реле безопасно управлять.
- Ещё нет оборудования или учётных данных? Напишите на support@svnwi.com, чтобы запросить тестовые учётные данные и доступные демонстрационные модели устройств — покупать оборудование заранее не нужно.
1. Установка Bruno
Скачайте десктопное приложение Bruno. Для CI или сред без интерфейса установите CLI:
npm install -g @usebruno/cli
bru --version2. Получение коллекции
Вам нужна только папка examples/bruno из репозитория SDK, а не весь репозиторий. Используйте sparse checkout, чтобы загрузить только эту часть:
git clone --filter=blob:none --sparse https://github.com/svnwi/wlte-openapi-sdk.git
cd wlte-openapi-sdk
git sparse-checkout set examples/brunoОткройте эту папку в десктопном приложении Bruno:
examples/bruno/WLTE-OpenAPI/3. Настройка учётных данных
Файл environments/quickstart.bru, зафиксированный в репозитории, содержит только заглушки, поэтому его безопасно хранить в истории Git. Реальные учётные данные помещаются в локальную копию, которая никогда не коммитится:
cd examples/bruno/WLTE-OpenAPI
cp environments/quickstart.bru environments/quickstart.local.bruОткройте environments/quickstart.local.bru и замените только:
clientId -> your_client_id
clientSecret -> your_client_secretВыберите окружение quickstart.local в Bruno. Скрипты коллекции автоматически заполняют accessToken, deviceId и commandId; relayIndex по умолчанию равен 1.
Файл quickstart.local.bru уже исключён через .gitignore — не изменяйте это правило.
4. Выполнение проверки только для чтения
Выполните эти запросы по порядку:
| Порядок | Запрос | Назначение |
|---|---|---|
| 1 | 00-auth / Auth | Получить access token |
| 2 | 01-device-queries / 01-list-devices | Подтвердить доступные устройства и автоматически заполнить deviceId |
| 3 | 01-device-queries / 02-get-device-real-time-status | Обновить и прочитать состояние одного устройства |
| 4 | 01-device-queries / 03-list-profiles | Запросить определения типов устройств для подтверждения возможностей |
| 5 | 01-device-queries / 04-get-device-config | Прочитать текущую конфигурацию (скорость передачи, длительность импульса и т. д.) |
Встроенные проверки подтверждают статус HTTP и структуру ответа.
5. Опционально: проверка управления устройством
Команды устройств изменяют реальное состояние оборудования. Продолжайте только если у API Client есть соответствующее право доступа, а операция безопасна; выберите нужные запросы:
| Порядок | Запрос | Назначение | Требуемое право доступа |
|---|---|---|---|
| 6 | 02-relay-control / 01-turn-relay-on | Включить одно реле | device:control |
| 7 | 02-relay-control / 02-turn-relay-off | Выключить одно реле | device:control |
| 8 | 02-relay-control / 03-jog-relay | Выполнить один импульс | device:control |
| 9 | 02-relay-control / 04-set-relay-jog-time | Задать длительность импульса (не меняет текущее состояние реле) | device:config |
| 10 | 02-relay-control / 05-control-multiple-relays | Управление несколькими реле в одном запросе | device:control |
| 11 | 04-rs485 / 01-rs485-transceive | Отправить прозрачные данные RS485 (требуется устройство с поддержкой RS485) | device:control |
| 12 | 04-rs485 / 02-set-rs485-baud-rate | Задать скорость передачи RS485 | device:config |
| 13 | 03-command-result / 01-get-command-result | Запросить финальный результат по commandId из предыдущего шага | device:read |
Для интеграций только для чтения пропустите этот раздел целиком. Перед проверкой запросов RS485 установите rs485DeviceId на устройство, реально поддерживающее RS485 (по умолчанию используется первое найденное устройство — только для навигации по коллекции, это не означает поддержку RS485).
Использование через командную строку
CLI позволяет выбирать по пути, какие папки выполнять, поэтому можно разделить проверку только для чтения и управление устройствами на две отдельные команды вместо одной, которая может случайно активировать реле:
cd examples/bruno/WLTE-OpenAPI
# Проверка только для чтения: только читает данные, не меняет состояние устройства
bru run --env-file environments/quickstart.local.bru \
00-auth 01-device-queries
# Проверка управления: реально управляет реле и устройствами RS485 — сначала убедитесь, что это безопасно
bru run --env-file environments/quickstart.local.bru \
02-relay-control 04-rs485 03-command-resultНе выполняйте bru run --env quickstart без указания путей
Без указания пути папки bru run рекурсивно выполняет все запросы коллекции, включая включение/выключение реле, импульс и команды RS485 — даже если вы хотели только проверку для чтения. Всегда указывайте папки явно, как показано выше.
Для первой интеграции десктопное приложение удобнее для изучения переменных окружения, проверок и содержимого ответов. CLI лучше подходит для повторной проверки или CI.
Результат проверки
После завершения этой страницы вы проверили:
- Аутентификацию API Client
- Доступ к устройствам, их состояние в реальном времени, конфигурацию и определения типов
- Опционально — управление реле, передачу RS485 и получение результатов команд
Не отслеживайте всю учётную запись, повторяя запросы к одному устройству. Используйте списки устройств для массового отображения и события WebSocket для непрерывных изменений.
