Blog

Zweiter Anruf während eines Gesprächs: Wie QC-Phone Plus mit Anklopfen umgeht, ohne Anrufe zuzustellen

Von Robert Brandt, QuadChroma

Veröffentlicht am . Stand: Entwurf. QC-Phone Plus ist in Entwicklung und noch nicht verfügbar.

Dies ist Teil 2 von „Anruf abholen statt zustellen“. Dort steht, wie QC-Phone Plus eingehende SIP-Anrufe auf ein schlafendes iPhone bringt. Der folgende Text bezieht sich auf die Schritte und Abschnitte von Teil 1.

Ein zweiter Anruf für dasselbe SIP-Konto kann kommen, während der Nutzer schon spricht: während eines vom Server abgeholten Gesprächs, eines Anrufs, den das Telefon direkt über den Anbieter aufgebaut hat, eines Gesprächs über das Mobilfunknetz oder eines Gesprächs in einer anderen App. Der zweite Anruf läuft wie jeder andere. Wie in Schritt 1 hält der Server pro Konto höchstens einen noch nicht angenommenen Anruf fest; ein weiterer Anruf, während einer noch klingelt, bekommt also 486 Busy Here. Wie viele angenommene Gespräche ein Konto gleichzeitig haben kann, ist eine Einstellung des Servers, eins oder zwei. Bei einem bekommt ein zweiter Anruf während eines vom Server abgeholten Gesprächs 486 Busy Here, und während jedes anderen Gesprächs trägt das Telefon nur einen verpassten Anruf ein. Bei zweien gilt Folgendes, und ein dritter Anruf bekommt 486 Busy Here.

  • Der zweite Anruf wird mit genau derselben Nachricht und auf demselben Weg angekündigt wie jeder Anruf, an jedes aktive Gerät, auch an das, auf dem das erste Gespräch läuft. Weder die Nachricht noch ihre Zustellung verrät, dass ein Gerät belegt ist oder ein Anruf wartet, und die Nachricht enthält keine Zahl von Anrufen. Das Telefon meldet dem Server nie, dass es telefoniert. Der Server kennt nur die Gespräche, deren SIP-Dialog er selbst hält, und nur im Arbeitsspeicher.
  • Nur das Telefon erkennt an seinem eigenen Zustand, dass es ein zweiter Anruf ist. Bis zum Tipp sendet es nichts zum zweiten Anruf und lehnt ihn nie von selbst ab. Nur das erste Gespräch läuft weiter wie bisher und in seinem bisherigen Takt: sein Ton, seine Statusabfrage und seine Signalisierung. Die Ankündigung löst nichts von diesem Verkehr aus und ändert seinen Takt nicht, und die Statusabfrage des ersten Gesprächs meldet nur Ereignisse des ersten Gesprächs.
  • Solange der zweite Anruf klingelt, löst ein Netzwechsel keine eigene Anfrage aus; nur die Statusabfrage des ersten Gesprächs wird nach einem Fehler neu aufgebaut, wie ohne zweiten Anruf. Endet das erste Gespräch in dieser Zeit, sendet das Telefon nur, was es beendet. Alles andere wartet mindestens, bis der Nutzer getippt hat oder der zweite Anruf geendet hat.
  • Kann das Telefon den zweiten Anruf nicht anbieten, etwa weil schon zwei Gespräche laufen, ein Gespräch noch aufgebaut wird, der Geräteschlüssel nicht lesbar ist oder der Server nur ein Gespräch pro Konto zulässt, trägt es nur einen verpassten Anruf ein und meldet sich bei niemandem. Diese Einstellung erfährt das Telefon aus den Antworten des Servers, wenn es sich einrichtet oder seine Einrichtung prüft, nie aus einer Ankündigung.
  • Nimmt der Nutzer an, holt das Telefon den zweiten Anruf per HTTPS genau wie in Schritt 4 ab. Es nennt dabei eine Leitungsnummer, 1 oder 2, die es selbst wählt und die kein anderes vom Server abgeholtes Gespräch nutzt; jede spätere Anfrage zu diesem Gespräch nennt dieselbe Leitung. Der Server hält die Gespräche eines Geräts für dasselbe Konto über diese Nummer auseinander. Sie stammt nie aus der Ankündigung und wird nie vom Server vergeben; eine noch belegte Leitung lehnt der Server ab und bietet keine andere an. Jedes abgeholte Gespräch hat seine eigene Statusabfrage, die der Server einzeln überwacht.
  • Der Server parkt den zweiten Anruf nie bis zum Ende des ersten und kündigt ihn nie erneut an. Er hält ihn nur, solange der Anbieter ihn klingeln lässt; eine eigene Frist für einen zweiten Anruf gibt es nicht, nur denselben Schutz-Timer wie bei jedem Anruf. Endet das erste Gespräch, während der zweite Anruf klingelt, schickt der Server nichts Neues.
  • Lehnt der Nutzer den zweiten Anruf ab, lehnt der Server ihn ab wie unter „Wenn der Anruf nicht angenommen wird“ beschrieben, und das erste Gespräch bleibt unberührt. Endet der zweite Anruf oder nimmt ihn ein anderes Gerät an, bekommen die anderen Geräte die stille Nachricht wie bei jedem Anruf. Auf einem Gerät mit laufendem Gespräch beendet diese Nachricht nur das Klingeln, nie das laufende Gespräch.
  • Das Telefon bietet nur die Möglichkeiten des Betriebssystems an: Halten und Annehmen, Beenden und Annehmen oder Ablehnen. Bei „Halten und Annehmen“ schließt es das Mikrofon des ersten Gesprächs beim Tipp und holt den zweiten Anruf sofort ab, ohne zu warten, bis das Halten bestätigt ist. Scheitert das Halten, bleibt das Mikrofon des ersten Gesprächs zu, solange der zweite Anruf besteht. Ein vom Server abgeholtes Gespräch zu halten ist ein eigenes neues Angebot des Telefons für die Leitung dieses Gesprächs, das der Server nur im Dialog dieses Gesprächs an den Anbieter weitergibt.
  • Solange ein zweiter Anruf beteiligt ist, ist jedes Halten still, unabhängig von der Einstellung für Wartemusik und auch nach dem Wechseln zwischen den Gesprächen: keine Musik, keine Ansage und keine Nachricht an den zweiten Anrufer oder an den Gehaltenen. Das gilt für jedes Gespräch, das die App hält, mit oder ohne Server, auch wenn das andere Gespräch über das Mobilfunknetz oder in einer anderen App läuft. Ist das erste Gespräch schon mit Musik gehalten, wenn der zweite Anruf klingelt, schaltet das Telefon die Musik lokal auf Stille, ohne neue Signalisierung. Der zweite Anrufer hört nur das Freizeichen; was ein Anbieter oder das Mobilfunknetz selbst einem Gehaltenen einspielt, liegt außerhalb von App und Server.
  • Der zweite Anruf bleibt von Anfang bis Ende ein eingehender Anruf. Vom Server abgeholte Anrufe werden nie zu einer Konferenz zusammengeführt.

Lizenz des Textes: CC BY 4.0.

Änderungen

  • 30. Oktober 2026: Neues Design des Kopfes. Der Text ist unverändert.