Festività italiane

Non posso usare quella libreria e con i comandi AT non riesco a recuperare quel codice.
Potete aiutarmi ?

  SIM800L.println("AT+HTTPINIT");
  WaitForOk("OK", 1);
  SIM800L.println("AT+HTTPPARA=\"URL\",\"https://date.nager.at/Api/v2/IsTodayPublicHoliday/IT\"");                                          // open GPRS context
  WaitForOk("OK", 1);
  SIM800L.println("AT+HTTPPARA=\"CID\",1");
  WaitForOk("OK", 1);
  SIM800L.println("AT+HTTPACTION=0");
  WaitForOk("OK", 1);
  WaitForOk("+HTTPACTION", 1);
  SIM800L.println("AT+HTTPREAD=0, 100");
  WaitForOk("OK", 1);
  SIM800L.println("AT+HTTPREAD");
  WaitForOk("OK", 1);
  WaitForOk("OK", 1);
AT+SAPBR=2,1
+SAPBR: 1,1,"10.56.133.19"

OK

GPRS Connection Ok
AT+HTTPINIT
ERROR

AT+HTTPPARA="URL","https://date.nager.at/Api/v2/IsTodayPublicHoliday/IT"
OK

AT+HTTPPARA="CID",1
OK

AT+HTTPACTION=0
OK


+HTTPACTION: 0,603,0

AT+HTTPREAD=0, 100
OK

AT+HTTPREAD
OK

Forse ho capito che la risposta dovrei trovarla nel HTTPACTION al posto del 603 che ora è DNS error.

Ho provato a mettere l'URL http o https ma nulla.
Ho provato ad aggiungere
AT+HTTPSSL=1
Ma peggio, l'errore non è nemmeno in lista 606

Però il DNS e il SSL lo uso già per mandare le email e non da problemi.

Io non capisco perché volete reinventare la ruota ogni volta..
Il grande vantaggio dell'ecosistema Arduino è la
vasta community e l'enorme disponibilità di ottime librerie pronte all'uso.

Utilizzando una delle più diffuse per moduli GPRS e partendo dagli esempi inclusi, ho testato il servizio online con successo in non più di 5 minuti di orologio.

Comunque, potresti andare a vedere il sorgente e replicare i comandi AT usati.

Ne quella libreria ne altre che ho trovato fanno cosa mi serve.
Inviare e ricevere SMS, DTMF, email, cronometrare la durata di una chiamata dalla risposta, recuperare l'ora e giorno dalla rete, ed altro.

Ho provato a seguire il codice ma mi sono già perso nello schetch
Magari proverò a loggare la seriale.

Sto cercando di impostare il DNS, ma come faccio da sempre errore e mi resta sempre impostato a 0.0.0.0

Ho lo stesso problema con la libreria Tiny
Senza TSL mi da errore "301 Moved Permanently"
Con TSL si inloppa.

[1023] Modem responded at rate 115200
Initializing modem...
[11255] ### TinyGSM Version: 0.11.4
[11256] ### TinyGSM Compiled Module:  TinyGsmClientSIM800
[11569] ### Modem: SIMCOM SIM800L
[11570] ### Modem: SIMCOM SIM800L
Modem Info: SIM800 R14.18
Waiting for network...[18970] ### Network time and time zone updated.
[18971] ### Daylight savings time state updated.
 success
Network connected
Connecting to apn.fastweb.it[24006] ### Network time zone updated.
[24010] ### Network time and time zone updated.
[24011] ### Daylight savings time state updated.
 success
GPRS connected
Connecting to date.nager.at
 fail
Waiting for network... success
Network connected
Connecting to apn.fastweb.it[39066] ### Network time zone updated.
[39072] ### Network time and time zone updated.
[39074] ### Daylight savings time state updated.
 success
GPRS connected
Connecting to date.nager.at
 fail

Libreria config:

// Uncomment this if you want to use SSL
#define USE_SSL
// Server details
const char server = "date.nager.at";
const char resource = "/Api/v2/IsTodayPublicHoliday/IT";

Stesso aggiungendo https://

Dal PC mi va, con Fastweb.
A meno che non vada da Fastweb mobile.

wget https://date.nager.at/Api/v2/IsTodayPublicHoliday/IT
--2021-10-13 15:00:02--  https://date.nager.at/Api/v2/IsTodayPublicHoliday/IT
Resolving date.nager.at (date.nager.at)... 172.67.152.64, 104.21.1.132, 108.162.195.29, ...
Connecting to date.nager.at (date.nager.at)|172.67.152.64|:443... connected.
HTTP request sent, awaiting response... 204 No Content
2021-10-13 15:00:03 (0.00 B/s) - ‘IT’ saved [0]

nemmeno con l'IP va
E su un altro sito, va solo in HTTP e non in HTTPS
Sembra quasi non abbia la versione di SSL necessaria.
Però le email escono e la R14.18 mi sembra l'ultima versione.

Che board stai usando?

Questo modulo su una mia scheda con il SAMD21

image

Con SAMD21 puoi usare una libreria "esterna" per quanto riguarda il supporto SSL/TLS e svincolarti completamente dalle versioni supportate dal modulo (in pratica lo usi sempre come se fosse un client "normale", ci pensa poi la libreria a crittografare).

Ad esempio io uso sempre questa che è basata su infrastruttura BearSSL (leggera e performante).
OPEnSLab-OSU/SSLClient: :lock:Add SSL/TLS functionality to any Arduino library (github.com)

Ora devo uscire, più tardi se vuoi ti metto un esempio usando questa libreria.

Mi verrebbe comodo perchè adesso posso solo mandare le email via modem e non via Ethernet.
W5500
Ho previsto un chip crypto, saldabile a richiesta, ma non so come usarlo.
ATECC508A-SSHDA

Però non capisco, le email le manda.
E' una versione SSL diversa dalle pagine https :
Che versione è il tuo modem ?

ATI
SIM800 R14.18
AT+GMM
AT+GMR
Revision:1418B02SIM800L24

HW:

S2-1065J-Z1435

Con "www.gmail.com" va (AT+HTTPSSL=1)
Solo con "date.nager.at" oppure con "https://date.nager.at" mi da errore 603 = DNS error

GPRS Connection Ok
AT+HTTPINIT
AT+HTTPPARA="CID",1
AT+HTTPPARA="URL","date.nager.at/Api/v2/IsTodayPublicHoliday/IT"
AT+HTTPPARA="REDIR",1
AT+HTTPSSL=1
AT+HTTPACTION=0
+HTTPACTION: 0,606,0
AT+HTTPTERM

GPRS Connection Ok
AT+HTTPINIT
AT+HTTPPARA="CID",1
AT+HTTPPARA="URL","www.gmail.com"
AT+HTTPPARA="REDIR",1
AT+HTTPSSL=1
AT+HTTPACTION=0
+HTTPACTION: 0,200,103357
AT+HTTPTERM

GPRS Connection Ok
AT+HTTPINIT
AT+HTTPPARA="CID",1
AT+HTTPPARA="URL","https:\date.nager.at"
AT+HTTPPARA="REDIR",1
AT+HTTPSSL=1
AT+HTTPACTION=0
+HTTPACTION: 0,603,0
AT+HTTPTERM

200 = OK
606 = DNS error
603 = Port Error