Request/Response MQTT требует прикладного соглашения поверх свойств
Передача команды с Response Topic упрощает направление ответа, но не создаёт автоматически готовый RPC-сервис. Клиенты должны договориться о формате, сроках и значении результата. Broker пересылает сообщения и не выполняет за них бизнес-операцию.
MQTT 5 передаёт Response Topic и Correlation Data предусмотренным получателям без изменения. Эти свойства помогают адресовать ответ и связать его с запросом. Однако само наличие correlation bytes не доказывает подлинность отправителя или завершение нужного действия.
Для response topic требуются подходящие подписка и права. Поздний ответ, несколько исполнителей или отсутствие обработчика должны иметь определённую семантику. При timeout изменяющей команды нельзя автоматически считать, что действие не произошло и его безопасно повторить.
В приёмке проверяют корректный ответ, задержку, неизвестный correlation ID и предусмотренное отсутствие исполнителя. Сопоставляют ответ с фактическим итогом операции. Отчёт должен показывать прикладной контракт и границу доверия. Успешный PUBLISH с Response Topic сам по себе не подтверждает доставку ответа нужному заявителю и единственность выполненного действия.
Основание — MQTT Version5.0 OASIS Standard07March2019, official os HTML edition, разделы MQTT5.0 3.3.2.3.5 Response Topic;3.3.2.3.6 Correlation Data;4.10 Request Response. Сохранён текст публичной справочной публикации; конкретная реализация может поддерживать только часть возможностей. Основание — MQTT Version 5.0, OASIS Standard от 7 марта 2019 года. Поддержка возможностей конкретными broker и client library, дисковое хранение и политика доступа не проверялись. Соединения, подписки, сообщения и настройки рабочих систем не выполнялись; приведены критерии будущей приёмки.












