Arduino VoiceCall Status abrufen

OP #4784560
Hallo,
ich möchte gerne mit dem Arduino und dem GSM Shield einen Sprachanruf 
starten. Das klappt auch soweit ohne Probleme.
Jedoch würde ich gerne wenn eine Nummer angerufen wird und nach 5 
Sekunden nicht abgenommen wurde, den Anruf beenden. Dazu muss ich ja 
irgendwie den Status abfragen.
So habe ich es versucht:
1
 unsigned long previousMillis = 0;
2
 unsigned long interval = 5000; 
3
 previousMillis = millis();   
4
 vcs.voiceCall(Telefonnummer);
5
      
6
 while(vcs.getvoiceCallStatus() == CALLING)
7
 {          
8
     Serial.println((millis() - previousMillis));
9
     if((millis() - previousMillis) > interval)
10
       {
11
           vcs.hangCall();
12
       }
13
 }

Jedoch funktioniert es nicht, denn nach Aufruf des Befehls
1
vcs.voiceCall(charbuffer)

wird erst der nächste Befehl ausgeführt, wenn der Anruf angenommen 
wurde.


Hat jemand eine Idee, wie ich das Problem lösen kann?
Vielen Dank im Voraus
Ludwig
OP #4784591
Danke für die Antwort.
Der Code in der Dokumentation war die Basis meines bisherigen Projektes.
Ist also auch der selbe Modus, wie ich ihn verwende, also nicht 
asynchron.
In der Dokumentation werden zwar die unterschiedlichen Rückgabewerte im 
jeweiligen Modus erwähnt, jedoch nicht wie man den asynchronen Modus 
verwendet.

Wie verwendet man den asynchronen Modus?

Gruß Ludwig
OP #4785579
Ich habe jetzt (laut der Dokumentation) den asynchronen Modus aktiviert, 
und zwar mit folgender Zeile.
1
gsmAccess.begin(PINNUMBER,true,false);
https://www.arduino.cc/en/Reference/GSMBegin

Wenn ich mir jetzt die vergangenden Millisekunden seit starten des 
Anrufes ausgeben lasse, so wird mir ziemlich genau 30 Sekunden nichts 
angezeigt. Scheinbar ist der Befehl voiceCall() erst nach 30 Sekunden 
beendet.

Hat jemand eine Idee was ich falsch mache?
Bin für jede Hilfe dankbar! Ludwig

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 10 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.