Liebe Experten,
ein nicht ganz alltägliches Konstrukt funktioniert leider nicht so, wie es eigentlich sollte (und vom Anbieter versprochen).
Konkret geht es um die Anbindung / Einbindung des Ticketsystems Liveagent in die 3cx. Liveagent ist ein Cloud-Ticketsystem, eingehende und ausgehende Emails, Chats - und eben auch Telefonate - werden dabei in Tickets zur weiteren Bearbeitung überführt.
Es lassen sich dabei verschiedenste VOIP-Anbieter integrieren (z.B.: Plusnet, Placetel, Equada) und eben auch 3cx. Die Anbindung erfolgt über ganz normale Sip-Credentials (Passwort, Username, Port). Für die 3cx gibt es ein eigenes Template, ansonsten noch ein Generic Template.
Das heisst, wir haben für LiveAgent eine eigene Nebenstelle angelegt, auf diese wiederum greift LiveAgent quasi als IP-Telefon zu, Gespräche (eingehend und ausgehend) werden also von/nach LiveAgent über die Nebenstelle abgewickelt, bzw. man telefoniert und empfängt dann Gespräche via Nebenstelle in der LiveAgent-Browserumgebung.
Das Problem: Egal ob wir ein Generic Template verwenden oder das vom Hersteller extra angebotene 3cx-Template: es werden keine ausgehenden Gespräche etabliert (eingehend klappt alles). Ich darf dazu schreiben, dass wir an unserer 3cx mit 3cx-SBCs an verschiedenen Standorten diverse IP-Telefone seit Jahren erfolgreich betreiben.
Unser Aufbau:
- 3cx V20 selbstgehosted bei Hetzner, shared Server, Split DNS
- Gateway: pf.sense
- Trunk: Easybell, Einzelnummer nur für LiveAgent
- In Easybell: Format E164 mit führendem „+“
- LiveAgent schickt Telefonate im Format +49.. heraus
- derzeitige Einstellung im Trunk: From Display Name: CallerDispName, Remote Party ID + P-Asserted Identity: OutboundCallerId
Wir haben vielfache Tests und Änderungen am Trunk selbst und auch am Generic Template von Liveagent probiert (das 3cx-Template ist nur rudimentär, hier lassen sich nur die Nebenstellen-Credentials eintragen).
Ebenso haben wir diverse Wireshark-Mittschnitte gemacht.
Das Muster ist immer gleich: Wenn wir die Nebenstelle bsp. mit einem Softphone verknüpfen oder direkt mit der Nebenstelle via Browser und unserer FQDN telefonieren, so gibt es:
- ein startendes Invite, dann folgt ein zweites Invite (möglicherweise Übergabe von Credentials) das Gespräch wird etabliert.
- bei Liveagent, oder besser gesagt: Wenn dieselbe Nebenstelle mit Liveagent verknüpft ist, schickt die 3cx nie das von Easybell erwartete zweite Invite. Der Trunk antwortet mit: 407 Proxy Authentification Required, gefolgt dann von ACK, das Gespräch wird verworfen, 3cx loggt als unauthorized.
Wir konnten noch nicht herausfinden, wie 3cx überhaupt erkennt, dass die Nebenstelle in diesem Fall nicht mit einem Softphone verbunden ist, sondern mit LiveAgent (obschon es technisch gesehen bei der Registrierung keinen Unterschied gibt?) und dann auf das zweite Invite verzichtet. Im Trunk selbst haben wir bei den Header-Einstellungen herumexperimentiert, erfolglos. Auch gibt es in der V20 ja keine Inbound-Roules mehr, womit wir diese bestimmte Nebenstelle in diesem Konstrukt als vertrauenswürdig hinterlegen können.
Beobachtet haben wir allerdings: Wenn wir den Easybell-Trunk direkt in LiveAgent anmelden (also auf 3cx komplett verzichten), dann klappen ausgehende Gespräche. Also muss die Ursache unserer Ansicht nach in der 3cx zu suchen sein.
Wir sind inzwischen ratlos, was wir noch probieren können. Dass es mit 3cx grundsätzlich funktionieren sollte, zeigt sich für uns daran, dass LiveAgent ja nicht ohne Grund ein eigenes 3cx-Template entwickelt hat, was bei anderen Kunden wohl ohne Probleme funktioniert.
Gibt es hier evt. jemanden, der uns in eine Richtung „schubsen“ kann?
Danke Euch!
ein nicht ganz alltägliches Konstrukt funktioniert leider nicht so, wie es eigentlich sollte (und vom Anbieter versprochen).
Konkret geht es um die Anbindung / Einbindung des Ticketsystems Liveagent in die 3cx. Liveagent ist ein Cloud-Ticketsystem, eingehende und ausgehende Emails, Chats - und eben auch Telefonate - werden dabei in Tickets zur weiteren Bearbeitung überführt.
Es lassen sich dabei verschiedenste VOIP-Anbieter integrieren (z.B.: Plusnet, Placetel, Equada) und eben auch 3cx. Die Anbindung erfolgt über ganz normale Sip-Credentials (Passwort, Username, Port). Für die 3cx gibt es ein eigenes Template, ansonsten noch ein Generic Template.
Das heisst, wir haben für LiveAgent eine eigene Nebenstelle angelegt, auf diese wiederum greift LiveAgent quasi als IP-Telefon zu, Gespräche (eingehend und ausgehend) werden also von/nach LiveAgent über die Nebenstelle abgewickelt, bzw. man telefoniert und empfängt dann Gespräche via Nebenstelle in der LiveAgent-Browserumgebung.
Das Problem: Egal ob wir ein Generic Template verwenden oder das vom Hersteller extra angebotene 3cx-Template: es werden keine ausgehenden Gespräche etabliert (eingehend klappt alles). Ich darf dazu schreiben, dass wir an unserer 3cx mit 3cx-SBCs an verschiedenen Standorten diverse IP-Telefone seit Jahren erfolgreich betreiben.
Unser Aufbau:
- 3cx V20 selbstgehosted bei Hetzner, shared Server, Split DNS
- Gateway: pf.sense
- Trunk: Easybell, Einzelnummer nur für LiveAgent
- In Easybell: Format E164 mit führendem „+“
- LiveAgent schickt Telefonate im Format +49.. heraus
- derzeitige Einstellung im Trunk: From Display Name: CallerDispName, Remote Party ID + P-Asserted Identity: OutboundCallerId
Wir haben vielfache Tests und Änderungen am Trunk selbst und auch am Generic Template von Liveagent probiert (das 3cx-Template ist nur rudimentär, hier lassen sich nur die Nebenstellen-Credentials eintragen).
Ebenso haben wir diverse Wireshark-Mittschnitte gemacht.
Das Muster ist immer gleich: Wenn wir die Nebenstelle bsp. mit einem Softphone verknüpfen oder direkt mit der Nebenstelle via Browser und unserer FQDN telefonieren, so gibt es:
- ein startendes Invite, dann folgt ein zweites Invite (möglicherweise Übergabe von Credentials) das Gespräch wird etabliert.
- bei Liveagent, oder besser gesagt: Wenn dieselbe Nebenstelle mit Liveagent verknüpft ist, schickt die 3cx nie das von Easybell erwartete zweite Invite. Der Trunk antwortet mit: 407 Proxy Authentification Required, gefolgt dann von ACK, das Gespräch wird verworfen, 3cx loggt als unauthorized.
Wir konnten noch nicht herausfinden, wie 3cx überhaupt erkennt, dass die Nebenstelle in diesem Fall nicht mit einem Softphone verbunden ist, sondern mit LiveAgent (obschon es technisch gesehen bei der Registrierung keinen Unterschied gibt?) und dann auf das zweite Invite verzichtet. Im Trunk selbst haben wir bei den Header-Einstellungen herumexperimentiert, erfolglos. Auch gibt es in der V20 ja keine Inbound-Roules mehr, womit wir diese bestimmte Nebenstelle in diesem Konstrukt als vertrauenswürdig hinterlegen können.
Beobachtet haben wir allerdings: Wenn wir den Easybell-Trunk direkt in LiveAgent anmelden (also auf 3cx komplett verzichten), dann klappen ausgehende Gespräche. Also muss die Ursache unserer Ansicht nach in der 3cx zu suchen sein.
Wir sind inzwischen ratlos, was wir noch probieren können. Dass es mit 3cx grundsätzlich funktionieren sollte, zeigt sich für uns daran, dass LiveAgent ja nicht ohne Grund ein eigenes 3cx-Template entwickelt hat, was bei anderen Kunden wohl ohne Probleme funktioniert.
Gibt es hier evt. jemanden, der uns in eine Richtung „schubsen“ kann?
Danke Euch!