ich möchte gerade zur Konfiguration von Gateways über sms ein programm schreibenwelches mein internes Modem in meinem DELL-Notebook (Win10) nutzt.
Die Modem-Demo von synapse hat schon für den Anfang geholfen. Das senden ist kein Problem (Auszug):
Code: Alles auswählen
memo1.lines.Clear;
ser:=TBlockSerial.Create;
ser.config(StrToIntDef(Edit2.Text, 9600),8,'N',1,false,true);
ser.RaiseExcept:=True;
try
ser.Connect(Edit1.Text);
memo1.lines.add(ser.ATCommand('AT+CMGF=0')); //<-- Text Mode
ser.SendString('AT+CMGS="' + 'Hier die Ziel-Mobilnummer' + '"'+ #$0D);
sleep(100);
ser.SendString('Das ist die zu sendende Nachricht' + #$1A); //<-- Send SMS
memo1.lines.Add('SMS gesendet!');
finally
ser.free;
Beim Empfang bekomme ich aber keine Nachrichten. Die entsprechenden AT-Befehle werden wohl mit OK quittiert aber er holt keine Nachrichten.
AT+CNMI=? zeigt folgendes an:
+CNMI: (0,1,2),(0,1,2,3),(0,2),(0,1,2),(0,1)
OK
Das heißt doch, das das Modem auf jeden Fall versucht die Nachricht zu speichern.AT+CNMI? zeigt folgendes an:
+CNMI: 0,0,0,0,0
OK
Alle Abfragen mit AT+CMGL=1 (bis 4) bringen aber keine Nachricht sondern nur das OK
Demnach sollten ankommende Nachrichten auf der SIM-Karte liegen.at+cpms? liefert
+CPMS: "ME",0,23,"ME",0,23,"SM",0,20
OK
Abfrage mit at+cmgr=0 (und 1 und 2) liefert aber nur OK oder Time-Out aber keine Nachricht, weder im Pu noch im Text-Mode
Wenn ich in Windows die Nachrichten-App öffne. Laufen die eingegangenen Nachrichten da auf. Dort kann ich mit ihnen aber nichts anfangen.
Habt Ihr ideen? Ich habe schon überlegt ob Windows sich die SMS bei Eingang schon wegholt ohne das das Modem sie speichert.
Schöne Grüße