INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
SMS mit 2 bis 7 Empfängern
29.01.2021, 22:17
Beitrag #1
SMS mit 2 bis 7 Empfängern
Guten Abend zusammen,

ich habe aktuell meinen Sketch so weit, dass bei auslösen eines Kontaktes eine SMS an eine vordefinierte Handynummer gesendet wird. Für mein Projekt benötige ich jedoch, dass eine SMS mit dem gleichen Textinhalt an 2 - 7 Handynummern verschickt wird. Wie kann ich dies am einfachsten bzw. am praktikabelsten Lösen? Habe schon ein bisschen rum getüftelt, aber leider bin ich auf keine Lösung gekommen.

Vielen Dank im Voraus

Gruß
Intel

Gruß
Intel
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
29.01.2021, 22:51
Beitrag #2
RE: SMS mit 2 bis 7 Empfängern
(29.01.2021 22:17)Intelmuh schrieb:  Guten Abend zusammen,

ich habe aktuell meinen Sketch so weit, dass bei auslösen eines Kontaktes eine SMS an eine vordefinierte Handynummer gesendet wird. Für mein Projekt benötige ich jedoch, dass eine SMS mit dem gleichen Textinhalt an 2 - 7 Handynummern verschickt wird. Wie kann ich dies am einfachsten bzw. am praktikabelsten Lösen? Habe schon ein bisschen rum getüftelt, aber leider bin ich auf keine Lösung gekommen.

Vielen Dank im Voraus

Gruß
Intel

Sketch? Wie, wo, was? Sind wir Hellseher?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
30.01.2021, 08:38
Beitrag #3
RE: SMS mit 2 bis 7 Empfängern
Guten Morgen,

hier noch der Sketch nachgereicht.

Code:
#include "SoftwareSerial.h"

#define PIN_RESET 7
#define PIN_TX 10
#define PIN_RX 11

// replace with your own PIN of the Sim card
//const char SIM_PIN_NUMBER = "XXX";

// statt XXX natürlich die Handynummer im Format +49
const char TELEFONE_NUMBER[] = "XXX";

SoftwareSerial mySerial(PIN_TX, PIN_RX);

void setup()
{
  pinMode(PIN_RESET, OUTPUT);
  digitalWrite(PIN_RESET, HIGH);

  Serial.begin(9600);
  mySerial.begin(9600);

  Serial.println("Initializing...");
  delay(1000);

  // Once the handshake test is successful, it will back to OK
  mySerial.println("AT");
  updateSerial();

  mySerial.println("AT+CSQ");
  updateSerial();

  //mySerial.println("AT+CPIN=\""+String(SIM_PIN_NUMBER)+"\"");
// updateSerial();

  // Configuring TEXT mode
  mySerial.println("AT+CMGF=1");
  updateSerial();

  mySerial.println("AT+CMGS=\""+String(TELEFONE_NUMBER)+"\"");
  updateSerial();

  // SMS text content
  mySerial.println("SMS vom Sim Modul");
  updateSerial();
  mySerial.write(26);

}

void loop() {}

void updateSerial()
{
  delay(200);
  while (Serial.available()) {
    // Forward what Serial received to Software Serial Port
    mySerial.write(Serial.read());
  }
  while(mySerial.available()) {
    // Forward what Software Serial received to Serial Port
    Serial.write(mySerial.read());
  }
}

Gruß
Intel
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
06.02.2021, 02:17
Beitrag #4
RE: SMS mit 2 bis 7 Empfängern
Kenne jetzt zwar den AT-Befehlssatz deines GSM-Moduls nicht, aber so könnte es klappen:
Code:
#include "SoftwareSerial.h"

#define PIN_RESET 7
#define PIN_TX 10
#define PIN_RX 11

// replace with your own PIN of the Sim card
//const char SIM_PIN_NUMBER = "XXX";

// statt XXX natürlich die Handynummer im Format +49
const char TELEFONE_NUMBER1[] = "XXX";
const char TELEFONE_NUMBER2[] = "yyy";
const char TELEFONE_NUMBER3[] = "zzz";


SoftwareSerial mySerial(PIN_TX, PIN_RX);

void setup()
{
  pinMode(PIN_RESET, OUTPUT);
  digitalWrite(PIN_RESET, HIGH);

  Serial.begin(9600);
  mySerial.begin(9600);

  Serial.println("Initializing...");
  delay(1000);

  // Once the handshake test is successful, it will back to OK
  mySerial.println("AT");
  updateSerial();

  mySerial.println("AT+CSQ");
  updateSerial();

  sendSMS(TELEFONE_NUMBER1);
  sendSMS(TELEFONE_NUMBER2);
  sendSMS(TELEFONE_NUMBER3);
}

void loop() {}

void sendSMS(const char* TelefonNr) {
  // Configuring TEXT mode
  mySerial.println("AT+CMGF=1");
  updateSerial();

  mySerial.println("AT+CMGS=\"" + String(TelefonNr) + "\"");
  updateSerial();

  // SMS text content
  mySerial.println("SMS vom Sim Modul");
  updateSerial();
  mySerial.write(26);
}

void updateSerial()
{
  delay(200);
  while (Serial.available()) {
    // Forward what Serial received to Software Serial Port
    mySerial.write(Serial.read());
  }
  while (mySerial.available()) {
    // Forward what Software Serial received to Serial Port
    Serial.write(mySerial.read());
  }
}
gruß lorenz
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
07.02.2021, 18:05
Beitrag #5
RE: SMS mit 2 bis 7 Empfängern
Habe mein Problem wie folgt gelöst:

Code:
#include "SoftwareSerial.h"
#define PIN_RESET 7
#define PIN_TX 10
#define PIN_RX 11

// replace with your own PIN of the Sim card
//const char SIM_PIN_NUMBER = "XXX";

// XX = country code, e.g. "49" for Germany and xxxxxxxxxxx = phone number
const char TELEFONE_NUMBER1[] = "+49XXX";
const char TELEFONE_NUMBER2[] = "+49XXX";

SoftwareSerial mySerial(PIN_TX, PIN_RX);

void setup()
{
  pinMode(PIN_RESET, OUTPUT);
  digitalWrite(PIN_RESET, HIGH);

  Serial.begin(9600);
  mySerial.begin(9600);

      Serial.println("Initializing...");
  delay(1000);

  // Once the handshake test is successful, it will back to OK
  mySerial.println("AT");
  updateSerial();

  mySerial.println("AT+CSQ");
  updateSerial();

  //mySerial.println("AT+CPIN=\""+String(SIM_PIN_NUMBER)+"\"");
// updateSerial();

SMS1();
delay(4500);
SMS2();

}

void loop() {}

void updateSerial()
{
  delay(200);
  while (Serial.available()) {
    // Forward what Serial received to Software Serial Port
    mySerial.write(Serial.read());
  }
  while(mySerial.available()) {
    // Forward what Software Serial received to Serial Port
    Serial.write(mySerial.read());
  }
}

void SMS1() {
  // Configuring TEXT mode
  mySerial.println("AT+CMGF=1");
  updateSerial();

  mySerial.println("AT+CMGS=\""+String(TELEFONE_NUMBER1)+"\"");
  updateSerial();

  // SMS text content
  mySerial.println("Hello from SIM800L GSM-Modul");
  updateSerial();
  mySerial.write(26);
}

void SMS2() {
  // Configuring TEXT mode
  mySerial.println("AT+CMGF=1");
  updateSerial();

  mySerial.println("AT+CMGS=\""+String(TELEFONE_NUMBER2)+"\"");
  updateSerial();

  // SMS text content
  mySerial.println("Hello from SIM800L GSM-Modul");
  updateSerial();
  mySerial.write(26);
}

Gruß
Intel
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
07.02.2021, 18:15
Beitrag #6
RE: SMS mit 2 bis 7 Empfängern
Und warum machst du das nicht aus der loop() heraus ?

Und bedenke, wenn die 1. Aussendung mal länger dauert, gibt es für die 2. Aussendung ein Problem.
Du solltest besser prüfen, ob die Aussendung erfolgreich war und dann erst die 2. absenden.

Gruß Dieter

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
07.02.2021, 18:17
Beitrag #7
RE: SMS mit 2 bis 7 Empfängern
In meinem Projekt habe ich das schon im Loop() eingefügt.

Wie prüfe ich denn, ob das versenden der ersten SMS erfolgreich war?
Dann kann ich das bei mir vielleicht noch ergänzend einfügen anstatt dem delay.

Gruß
Intel
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
07.02.2021, 18:23
Beitrag #8
RE: SMS mit 2 bis 7 Empfängern
(07.02.2021 18:17)Intelmuh schrieb:  Wie prüfe ich denn, ob das versenden der ersten SMS erfolgreich war?
Dann kann ich das bei mir vielleicht noch ergänzend einfügen anstatt dem delay.

Da gibt es für dein GSM ganz sicher einen Befehl den du in der seriellen auslesen kannst.

Gruß Dieter

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste