VOIP Instanz und Connection ID bei IPS 5.4

Hallo.

Ich habe IPS 5.4 uns spiele mit der VOIP Instanz.
Dabei ist mir aufgefallen das die ConnectionID nicht immer richtig gesetzt wird.
Siehe VOIP Debug:


VOIP1.JPG

Ist das Problem bekannt oder mache ich etwas falsch?

Danke.
BYE
Thomas

Ist die ConnectionID nur im Debug Log fehlerhaft oder wird diese tatsächlich falsch verwendet, beispielsweise im Abarbeitungsskript?

Hallo.

Leider ist die Connection ID auch in den Arbeitsskripten falsch.
Z.B. im zweiten Picture.
Wenn VOIP connected ist, steht bei der Funktion VoIP_GetConnection mit connectionID „12“ in dem array[„Connected“]=1 drin und nicht in „14“.

BYE
Thomas

Letzteres ist kein Fehler, Connected ist ein Booleanwert, der angibt ob die Verbindung aktuell verbunden ist. Das Feld ID wäre relevant. Wenn sich das von deiner Eingabe unterscheidet, dann wäre hier etwas verkehrt.

Hallo.

In dem Beispiel mache ich ein AcceptCall auf connectionID=14.
Dann bekomme ich das Event Connected.
Wenn ich jetzt VoIP_GetConnection (VOIPID, 14) mache ist array[„Connected“]= ! Steht nicht drin.
Dann mache ich ein VoIP_GetConnection (VOIPID, 12), dann ist array[„Connected“]= 1.

Das gleiche dann beim Disconnect!
VoIP_GetConnection (VOIPID, 14) => array[„DisConnected“]=
VoIP_GetConnection (VOIPID, 12) => array[„DisConnected“]=1

BYE
Thomas

Ja, PHP gibt den Wert false manchmal als leeren String aus, beispielsweise per echo. Daher tendiere ich mittlerweile zu var_dump, da steht da denn auch false.

Ich weiß jetzt leider selbst nicht, wie das Abarbeitungsskript im ganzen Ablauf steckt, also ob jetzt zuerst die gespeicherten Werte aktualisiert werden oder zuerst das Skript ausgeführt wird. Das bringe ich sonst aber nochmal in Erfahrung.

Kannst du sonst erst einmal außerhalb des Abarbeitungsskript prüfen ob die Daten stimmig sind? Also beispielsweise in einem separaten Skript, dass du manuell ausführst nachdem ein Anruf angenommen oder beendet wurde.

Hallo.

Habe das jetzt auch in einem parallel Script getestet.
Das gleiche Problem.

Wenn VoIP_GetConnection (VOIPID, 14) mache ist array[„Connected“]=
Steht nichts drin. Also nicht conneted!
Dann mache ich ein VoIP_GetConnection (VOIPID, 12), dann ist array[„Connected“]= 1.
VoIP_GetConnection (VOIPID, 12) stand vor dem Accept Call auf array[„Connected“]=

Das gleiche dann beim Disconnect!
VoIP_GetConnection (VOIPID, 14) => array[„DisConnected“]=
VoIP_GetConnection (VOIPID, 12) => array[„DisConnected“]=1

Ich glaube IPS kommt mit der ConnectionID intern durcheinander. Intern wird wohl ConnectionID=12 geupdatet obwohl die bestehende Verbindung ConnectionID=14 ist.

BYE
Thomas

Ich denke einen Fix für das Problem gefunden zu haben. Magst du das nächste Update (5.5) einmal testen?

paresy

Hallo.
Habe ich soebend auf IPS 5.5 getestet. Ist gefixed! Danke.

Jetzt ist mir aber noch 2 Punkte Aufgefallen.

  1. Kommt ein Anruf rein und IPS nimmt diesen Anruf entgegen danach beendet IPS
    den Anruf so wird auf der Gegenstelle nicht Aufgelegt:
    IPS_VOIP1.JPG

  2. Kommt ein Anruf rein und IPS macht ein „Reject Call“ so wird auf der Gegenstelle aufgelegt, aber in den Meldungen sehe ich eine Fehler Meldung:



Gleiches verhalten bei IPS 5.4 und IPS 5.5!
Sind die Punkte auch bekannt?

Danke.
BYE
Thomas

  1. Kommt ein Fix zum nächsten Update
  2. Habe ich jetzt lange danach gesucht und glaube die Ursache gefunden zu haben. Kann es sein, dass bei dir auf der Nummer noch andere Teilnehmer sind? Denn wenn nicht alle Teilnehmer die Verbindung ablehnen, dann bekommst du dies auch nicht korrekt mit. Wir senden auf jeden Fall korrekt das Rejected - welches ich per Wireshark mehrfach kontrolliert habe :slight_smile: Zum Testen wäre es z.B. möglich, dass du mal dein Softphone anrufst und dort auf Reject klickst. Das verhalten dürfte gleich sein.

paresy