MQTT - pierwsze kroki

SOYER
Posts: 1172
Joined: Wed Aug 10, 2022 12:29 pm
Location: Kryry

Post

Inicjuję clienta, podaję user, pass, serwer, jedynie nigdzie nie wpisuję protokołu, ale może jest domyślny. Rejestracja aplikacja aktywna. Nie łączy się... O czym zapomniałem?
https://kryry01.aqi.eco/pl
https://app.weathercloud.net/d4311785603
SOYER
Posts: 1172
Joined: Wed Aug 10, 2022 12:29 pm
Location: Kryry

Post

Używam libsa pubsubclient.
Opis:
https://pubsubclient.knolleary.net/api

mam:

Code: Select all

const char* ssid = "xx";
const char* password = "xx";
const char* mqtt_server = "mqttxx.supla.org";
const char* mqtt_user = "8d0xxx956";
const char* mqtt_pass = "cQ)xxxQInDypoWP";
potem

Code: Select all

Serial.print("Attempting MQTT connection...");
    // Create a random client ID
    String clientId = "ESP8266Client-";
    clientId += String(random(0xffff), HEX);
    // Attempt to connect
    if (client.connect(clientId.c_str(), mqtt_user, mqtt_pass)) {
    
wreszcie:

Code: Select all

client.setServer(mqtt_server, 8883);
Czyli raczej ok..
literówek nie zrobiłem
https://kryry01.aqi.eco/pl
https://app.weathercloud.net/d4311785603
User avatar
klew
Posts: 10022
Joined: Thu Jun 27, 2019 12:16 pm
Location: Wrocław

Post

SOYER wrote: Fri Dec 20, 2024 6:23 pm Używam libsa pubsubclient.
Opis:
https://pubsubclient.knolleary.net/api

mam:

Code: Select all

const char* ssid = "xx";
const char* password = "xx";
const char* mqtt_server = "mqttxx.supla.org";
const char* mqtt_user = "8d0xxx956";
const char* mqtt_pass = "cQ)xxxQInDypoWP";
potem

Code: Select all

Serial.print("Attempting MQTT connection...");
    // Create a random client ID
    String clientId = "ESP8266Client-";
    clientId += String(random(0xffff), HEX);
    // Attempt to connect
    if (client.connect(clientId.c_str(), mqtt_user, mqtt_pass)) {
    
wreszcie:

Code: Select all

client.setServer(mqtt_server, 8883);
Czyli raczej ok..
literówek nie zrobiłem
Sprawdzałeś czy ta biblioteka ma szyfrowane połączenia? I czy dobrze ustawiłeś szyfrowanie?
Czasem wystarczy ustawienie portu, a czasem trzeba coś więcej
SOYER
Posts: 1172
Joined: Wed Aug 10, 2022 12:29 pm
Location: Kryry

Post

fakt szyfrowanie, sprawdzę
https://kryry01.aqi.eco/pl
https://app.weathercloud.net/d4311785603
SOYER
Posts: 1172
Joined: Wed Aug 10, 2022 12:29 pm
Location: Kryry

Post

Zrobiłem na
WiFiClientSecure client1;
PubSubClient client(client1);
jednak dalej nic, tylko kod zmienił się z -4 na -2.
https://kryry01.aqi.eco/pl
https://app.weathercloud.net/d4311785603
User avatar
klew
Posts: 10022
Joined: Thu Jun 27, 2019 12:16 pm
Location: Wrocław

Post

Mosquito ma gdzieś publiczny serwer do testowania. Spróbuj znaleźć na niego namiary i się z nim połączyć
SOYER
Posts: 1172
Joined: Wed Aug 10, 2022 12:29 pm
Location: Kryry

Post

Dzisiaj już to zostawię. Jutro dalej.
Czy czasem nie muszę też ustawić czasu na moim device?
Druga rzecz, próbuję to zrobić na esp8266, nie dotarło jeszcze esp32. Wiem, że z szyfrowanymi połączeniami na esp8266 był problem przy supli, z powodu małej ilości pamięci, ale nie wiem czy to też dotyczy "zwykłego" mqtt...
https://kryry01.aqi.eco/pl
https://app.weathercloud.net/d4311785603

Return to “MQTT”