Um verpasste Anrufe zu erkennen, können Sie drei Dinge versuchen.
Überprüfen Sie, ob eine geeignete AT+CIND
Anzeige vorhanden ist, die Sie einschalten können. Ich glaube nicht, call
werde tun, da ich davon ausgehe, es geht nur auf 1
, wenn der Anruf beantwortet wird. Wenn Ihr Telefon callsetup
oder etwas Ähnliches unterstützt, sollte das sein, was Sie brauchen (Sie müssen eine Logik implementieren, um zu erkennen, wenn ein Anruf nicht in den Status "Aktiv" geht).
Ein Beispiel für die Aktivierung von AT + CIND-Indikatoren finden Sie in Kapitel "8.57 Informative Beispiele" in 27.007 für weitere Erläuterungen, und achten Sie auf The subparameter order in the command is defined by the query command order
, z. wenn AT + CIND =?
kehrt
+CIND: ("abc",(0-1)),("xyz",(0,1)),("call",(0,1))
dann nennen, ist Index 3 und für
+CIND: ("abc",(0-1)),("call",(0,1)),("xyz",(0,1))
Anruf Index 2. Wählen Sie nicht harten Code alle Annahmen, hier sollte diese Laufzeit (ein Check analysiert und geprüft werden am Anfang ist genug).
Alternativ können Sie auf RING
Start Polling Anrufstatus mit AT+CLCC
, bis der Anruf wird nicht mehr aufgeführt.
Oder Sie könnten die MC
Telefonbuchspeicher abfragen und Änderungen erkennen.
Ich habe deine zweite Methode verwendet. Jedes Mal, wenn mein Modem klingelt, sende ich das AT + CLCC und sehe, ob es etwas anderes als nur "OK" zurückgibt. Danke für Ihre Hilfe. – Dac