Paho MQTT Python: викличте proxy_set перед підключенням
Використовуйте API proxy_set від Paho для з'єднання MQTT і тримайте облікові дані проксі окремо від автентифікації брокера.
Python-клієнт Paho має задокументований метод proxy_set. Налаштуйте цей клієнт перед підключенням до брокера MQTT:
client.proxy_set(proxy_type=socks.SOCKS5,
proxy_addr='203.0.113.10',
proxy_port=1080)Це припускає, що сумісний клієнт Paho і потрібна підтримка SOCKS уже доступні. Кінцева точка наведена для прикладу. Для публічно доступного брокера на дозволеному маршруті через публічний проксі список проксі SOCKS5 пропонує варіанти хоста й порту; переконайтеся, що вузол дозволяє фактичну адресу брокера. Метод документує підтримувані типи проксі та передає проксіювання через PySocks.
Брокер усе ще має власне ім'я хоста, порт, вимоги TLS і автентифікацію MQTT. Обліковий запис проксі не стає іменем користувача, що надсилається брокерові. Так само налаштування облікових даних брокера не автентифікує перехід через проксі.
Перевірте транспорт з'єднання та дозволені адреси проксі, якщо налаштування з'єднання не вдалося. Проксі, що передає веб-перегляд, не дозволяє автоматично TCP-порт брокера.
Підтримуйте роботу мережевого циклу MQTT, як вимагає API Paho після налаштування з'єднання. Створення маршруту через проксі — це один крок; сам по собі він не забезпечує роботу MQTT keepalive, зворотних викликів і підтверджень.