Boa noite, estou com esta API do clima tempo http://apiadvisor.climatempo.com.br/api/v1/forecast/locale/6879/day... que me retorna o json abaixo:
{
“data“:
{
“humidity“: {
}
“rain“: {
}
“wind“: {
}
“uv“: {
}
“thermal_sensation“: {
}
“text_icon“: {
“icon“: {
}
“text“: {
“phrase“: {
}
}
}
“temperature“: {
“morning“: {
}
“afternoon“: {
}
“night“: {
}
}
}
{
“humidity“: {
}
“rain“: {
}
“wind“: {
}
“uv“: {
}
“thermal_sensation“: {
}
“text_icon“: {
“icon“: {
}
“text“: {
“phrase“: {
}
}
}
“temperature“: {
“morning“: {
}
“afternoon“: {
}
“night“: {
}
}
}
{
“humidity“: {
}
“rain“: {
}
“wind“: {
}
“uv“: {
}
“thermal_sensation“: {
}
“text_icon“: {
“icon“: {
}
“text“: {
“phrase“: {
}
}
}
“temperature“: {
“morning“: {
}
“afternoon“: {
}
“night“: {
}
}
}
{
}
{
}
{
}
{
}
}
eu preciso somente da variável “probability” que usarei em conjunto com um sensor de umidade do solo. Tentei seguir pelo curso do FreeRtos porem não estou conseguindo. Alguém poderia me ajudar com um exemplo de código por favor? Abaixo tem um codigo basico que fiz e está funcionando, porem ele imprime o json completo:
#include <WiFi.h>
#include <HTTPClient.h>
const char* ssid = “Restaurante_Tadeu”;
const char* password = “04190525”;
void setup() {
Serial.begin(9600);
delay(4000);
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
delay(10000);
Serial.println(“Connecting to WiFi..”);
}
Serial.println(“Connected to the WiFi network”);
}
void loop() {
if ((WiFi.status() == WL_CONNECTED)) { //Check the current connection status
HTTPClient http;
http.begin(“http://apiadvisor.climatempo.com.br/api/v1/forecast/locale/6879/day...”);
int httpCode = http.GET();
if (httpCode > 0) { //Check for the returning code
String payload = http.getString();
Serial.println(httpCode);
Serial.println(payload);
}
else {
Serial.println(“Error on HTTP request”);
}
http.end(); //Free the resources
}
delay(10000);
}
Tags:
https://arduinojson.org/v5/example/http-client/
https://arduinojson.org/v5/assistant/ (Cole seu json aí dentro e veja a mágica)
Boa tarde Eduardo, muito obrigado pela ajuda, será que poderia me responder só mais uma duvida, toda vez que esse json for atualizado, aqueles valores que coloquei no https://arduinojson.org/v5/assistant/ vão atualizar automaticamente? Sou novo nessa área e não conheço muita coisa. O meu json tem 7 array porem só preciso do array 7, entao coloquei somente ele no assistente por isso estou na dúvida se ele irá atualizar automaticamente. Obrigado novamente pelo apoio.
Olá, nunca usei. To aprendendo muito com seu post !!!
Acredito que toda vez que vc rodar:
int httpCode = http.GET();
Possivelmente isso muda pouco, convém rodar periodicamente. A cada 10 mins, 30 mins, sei lá.
Olá lembre-se de postar como ficou o código no final pra ajudar outras pessoas ! valeu !
Bem-vindo a
Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)
© 2024 Criado por Marcelo Rodrigues. Ativado por