Domani è il primo di aprile e, se non avete in mente scherzi, che ne direste di creare eventi con notifiche "Pesce d'aprile!!!" popup ed email sul Google Calendar della sfortunata vittima?
Per lo scherzo è necessario:
- che la vittima abbia un account Gmail (dovete conoscere la password o avere accesso a un suo dispositivo collegato come pc, smartphone...);
- essere in possesso di una scheda di sviluppo basata sul SoC ESP32 compatibile Arduino.
Lo sketch per programmare la scheda è scaricabile al link bit.ly/2w4Rk5C ed è basato sulla precedente guida sites.google.com/view/tin...e-calend. Prima di poter essere utilizzato, è necessario inserire i valori mostrati nelle seguenti immagini.
Nel file "sketch.ino" è necessario inserire le credenziali della propria rete WiFi.
Nella funzione "loop()" di "sketch.ino" è possibile scegliere tra la versione in italiano o in inglese dello scherzo e variare il ritardo di creazione degli eventi.
Nel file "configurations.h" è necessario inserire i valori ottenibili seguendo la prima parte della guida di Google developers.google.com...oauth2/input-device#prerequisites. È anche possibile variare il fuso orario agendo sulle variabili TIMEZONE e TIMEZONE_H 1.
Una volta eseguita la procedura di login dell'account Gmail con l'ESP32 (vedi guida precedente sites.google.com/view/...e-calend ), sul Google Calendar della vittima verranno creati eventi col titolo "Pesce d'aprile!!!" ripetuti ogni giorno; inoltre, un minuto prima dell'inizio, verranno inviate una notifica popup e una per email su pc, smartphone, ... della vittima, come mostrato nelle figure successive.
Alcune notifiche da pc.
Alcune notifiche da smartphone.
A questo punto buono scherzo ma attenzione a non esagerare!
Per la scrittura dello sketch mi sono aiutato con gli esempi contenuti in Arduino IDE, le librerie OakOLED (supporto al display, di netguy204) e Time (gestione del tempo, di PaulStoffregen). Pertanto ringrazio i relativi autori.
Note:
1) il progetto non implementa tutti i sistemi di sicurezza moderni per la protezione dei dati scambiati attraverso Internet, quindi è meglio evitare di inserire dati sensibili nelle informazioni scambiate dalla scheda di sviluppo su Internet;
2) lo sketch non è corredato da una documentazione completa;
3) le mie conoscenze di programmazione non sono molto elevate e punto a migliorarle nel tempo; prestate attenzione dunque, perché potreste trovare errori di programmazione e algoritmi sbagliati nel codice sorgente;
4) il software è fornito "così com'è", senza alcun tipo di garanzia; non mi assumo nessuna responsabilità sulle conseguenze derivanti dall'uso delle informazioni contenute in questa pagina.