Un programme pour recevoir des SMS sur l'ESP32
Révision datée du 4 décembre 2023 à 21:23 par 192.168.2.1 (discussion)
Cette fois le programme est plus "opérationnel", il s'agit de recevoir des SMS sur le module ESP32-SIM800. Ainsi, on pourra envoyer des commandes depuis un tel pouvant déclencher des actions sur l'ESP32.
Voici le code, qui s'appuie sur la bibliothèque AsyncSMS. Ce code envoie un accusé de réception "BIEN RECU".
Nous pourrons revenir sur tout cela en atelier, avec de plus amples explications.
https://github.com/centaq/arduino-async-sms
// Please select the corresponding model // #define SIM800L_IP5306_VERSION_20190610 // #define SIM800L_AXP192_VERSION_20200327 // #define SIM800C_AXP192_VERSION_20200609 #define SIM800L_IP5306_VERSION_20200811 #include "AsyncSMS.h" #include "utilities.h" #define SerialMon Serial #define SerialAT Serial1 AsyncSMS smsHelper(&SerialAT, 115200); void messageReceived(char * number, char * message) { //Do something with your message Serial.println("Message received"); Serial.println(number); Serial.println(message); // envoyer un message d'acquittement à l'émetteur String numberString = String(number); // Convertir en String Serial.println(numberString.c_str()); smsHelper.send(numberString.c_str(), "BIEN RECU", 10); } void setup() { // Set console baud rate SerialMon.begin(115200); // Set GSM module baud rate and UART pins SerialAT.begin(115200, SERIAL_8N1, MODEM_RX, MODEM_TX); setupModem(); smsHelper.init(); smsHelper.smsReceived = *messageReceived; } void loop() { smsHelper.process(); }