Regions & Scopes в MeshCore
Что такое Regions и Scopes
Regions (регионы) и Scopes (зоны) — это система организации mesh-сети MeshCore по географическим областям.
Зачем это нужно:
- Оптимизация трафика — сообщения не распространяются туда, где их никто не ждёт
- Снижение нагрузки на эфир — репитеры пересылают только релевантные пакеты
- Возможность создавать локальные сети по городам
Иерархия: Регионы можно организовать в дерево. Например, страна → город:
Региональная схема для Беларуси
В сети MeshCore Беларуси используется простая двухуровневая структура со всеми областными центрами:
by (Беларусь)
├── minsk (Минск)
├── brest (Брест)
├── gomel (Гомель)
├── grodno (Гродно)
├── vitebsk (Витебск)
└── mogilev (Могилёв)
Выберите код вашего города из списка выше для настройки устройств ниже.
Настройка Repeater (ретранслятор)
CLI команды для репитера
Подключитесь к устройству через serial-консоль и выполните:
Что делают команды
| Команда | Описание |
|---|---|
region allowf * |
Сохраняет совместимость со старыми сообщениями без scope |
region def by minsk |
Задаёт дерево regions одной строкой (для прошивки 1.16+) |
region allowf by |
Разрешает пересылать flood-пакеты с region by (Беларусь) |
region allowf minsk |
Разрешает пересылать flood-пакеты с region minsk (Минск) |
region save |
Сохраняет изменения после перезагрузки устройства |
Важно
Команда region allowf * не ломает regions, а сохраняет совместимость со старыми сообщениями без scope на период миграции сети.
Альтернативный вариант через region put
То же дерево regions, но через отдельные команды. Полезно для совместимости и ручной проверки:
Настройка Companion (клиент)
Общий принцип
Companion нужно настроить на работу с regions вашего города. Добавьте два scope:
- by — общий scope для всей Беларуси
- [код_города] — scope вашего города (см. список ниже)
Установите scope вашего города как default scope.
Пример для Минска
Если вы в Минске, добавьте следующие scopes:
- by — Беларусь
- minsk — Минск
Default scope: minsk
Настройки для других областных городов
Брест:
- Scopes: by, brest
- Default scope: brest
Гомель:
- Scopes: by, gomel
- Default scope: gomel
Гродно:
- Scopes: by, grodno
- Default scope: grodno
Витебск:
- Scopes: by, vitebsk
- Default scope: vitebsk
Могилёв:
- Scopes: by, mogilev
- Default scope: mogilev
Как настроить в приложении
- Откройте приложение MeshCore
- Зайдите в настройки устройства
- Найдите раздел Regions / Scopes
- Добавьте scopes:
byи код вашего города (см. выше) - Установите Default scope — код вашего города
- Для каждого группового чата можно отдельно выбрать scope в настройках чата
Что такое Default scope
Default scope работает как запасной вариант, если у группового чата не выбран свой scope.
Рекомендация
Scope задаётся отдельно для каждого группового чата. Scope группы важнее default scope.
Для важных групп в Companion лучше явно задать scope самой группы, а не полагаться только на default scope.
Мастер настройки
Для автоматического подбора команд в зависимости от вашего устройства, региона и прошивки используйте:
Мастер настройки Regions & Scopes
Мастер поможет: - Выбрать тип устройства (Companion, Repeater, Room server) - Указать вашу региональную схему - Выбрать версию прошивки - Получить готовые CLI-команды для копирования
Структура regions для областных городов Беларуси
Для сети MeshCore в Беларуси используется простая двухуровневая структура:
by (Беларусь)
├── minsk (Минск)
├── brest (Брест)
├── gomel (Гомель)
├── grodno (Гродно)
├── vitebsk (Витебск)
└── mogilev (Могилёв)
Настройки для других областных центров
Если вы создаёте сеть в другом областном городе, используйте команды по аналогии с Минском:
Брест:
Гомель:
Гродно:
Витебск:
Могилёв:
Рекомендация
Используйте название областного центра как scope. Это обеспечивает простую и понятную структуру сети по всей Беларуси.
Проверка настроек
После настройки regions можно проверить конфигурацию: