-
Notifications
You must be signed in to change notification settings - Fork 0
Message Queue
Исходящее сообщение сначала сохраняется в SQLite. Если радио недоступно, оно ждёт подключения. Перед отправкой можно выбрать срок ожидания: 15 минут, 1 час, 24 часа или 7 дней. По умолчанию — 24 часа.
Срок ограничивает ожидание в очереди, но не прерывает уже начатую передачу. Проверка очереди выполняется с интервалом MESHCORE_MESSAGE_RETRY_SECONDS (обычно 10 секунд). Старые сообщения из предыдущих версий без срока остаются без срока до ручного повтора.
| Статус | Значение | Доступное действие |
|---|---|---|
| В очереди | Ожидает передачи | Отменить |
| Отправка… | Передано транспорту, операция выполняется | Дождаться результата |
| Отправлено | Канальное сообщение передано радио, подтверждения получателем нет | Просмотреть подробности |
| Доставлено | Получено подтверждение доставки личного сообщения | Просмотреть подробности |
| Доставка не подтверждена | Нет ACK, произошла ошибка транспорта либо перезапуск во время отправки | Решить, нужен ли ручной повтор |
| Ошибка | Отправка отклонена, например контакт заблокирован | Устранить причину и повторить вручную |
| Срок истёк | Время ожидания закончилось до передачи | Повторить вручную |
| Отменено | Очередь отменена пользователем либо импортирована из копии | Повторить вручную |
| Получено | Входящее сообщение | Просмотреть подробности |
Нажмите на сообщение в чате. Карточка показывает историю статусов, попытки, время, срок ожидания, Radio ID и доступные метаданные. Кнопки отмены или повтора отображаются только для подходящего статуса.
Ручной повтор возвращает сообщение в очередь, обнуляет счётчик попыток для нового цикла и задаёт новый срок 24 часа. Предыдущая история статусов сохраняется.
«Доставка не подтверждена» не означает, что пакет не дошёл. Повтор может создать дубликат: перед повторной отправкой интерфейс предупреждает об этом. Автоматический повтор после неопределённой передачи в 0.7.0 отключён, включая внутренние повторные попытки отправки личного сообщения через библиотеку транспорта.
После перезапуска прерванная отправка становится неподтверждённой, а не отправляется повторно сама. Импортированные из копии сообщения со статусом «в очереди» или «отправка» становятся отменёнными. Обычная очистка истории не удаляет сообщения в очереди, активную отправку и неподтверждённые сообщения.