• Eigenständig gehostete oder lokal installierte Instanzen sind komplexer in der Einrichtung und Fehlerbehebung und erfordern daher kostenpflichtigen technischen Support. Kostenlosen Support erhalten Sie mit 3CX StartUP oder einer gehosteten 3CX-Installation mit einen unterstützten SIP-Trunk-Anbieter.

Anpassen des SIP-Headers mit dem CallFlow Designer

patrickb

Gold Partner
Advanced Certified
Mitglied seit
6. Februar 2021
Beiträge
756
Kennt jemand eine Möglichkeit wie ich aus dem CallFlow Designer, Daten im SIP-Header anpassen kann?
Konkret geht es darum, das ich die Reihenfolge der Kontaktanzeige-Funktion "Rufnummer mit Name der Gruppe, Warteschleife oder DID/DDI ergänzen" gerne anpassen möchte. Derzeit steht sie im Format QUEUE:DID-NAME: NUMMER.

Vllt. geht das ja auch mit Anpassungen einzelner Parameter auf Anlagenebene - bisher habe ich da aber vergeblich gesucht.
Daher hatte ich die Idee mir mal den SIP-Header anzuschauen und dort gesehen, das diese Kombi "QUEUE:DID-NAME: NUMMER" einfach in den FROM User-Bereich gesetzt wird. Wenn man den anpassen könnte, könnte man auch andere Infos aus dem CFD entfernen/hinzufügen.

Über den CFD mit Attach Call Data und "public_lookup_displayname_override" zu arbeiten funktioniert leider nicht.

Vielleicht hat ja jemand eine Idee. Danke im Voraus
 
Hallo,

wenn es diesen Parameter in den SIP Trunk Einstellungen in der 3CX gibt oder man diesen Parameter in einem Backup der 3CX in der XML Datei findet, dann kann man den vmtl. ändern.
 
Denkfehler von mir nach dem zweiten Lesen: das was du da schreibst funktioniert anders. Man hat in einer 3CX die Option, die Anzeige der Kontakte anzupassen. Das auch ausschließlich für die NSt. der 3CX oder über eine Bridge o.ä..

Das hat erstmal nichts mit dem SIP Header zu tun. Der SIP Header ist üblicherweise jener, welcher der Kommunikation nach außen dient, zum Provider. Diese Daten sind im SIP Trunk tlw. änderbar und wie von mir weiter oben beschrieben vmtl. auch per CFD. Die von dir gewünscht änderbaren Daten werden von diesem SIP Trunk gar nicht genutzt.

Du meinst den SIP Header, der für VoIP / SIP Geräte innerhalb der 3CX Umgebung Verwendung findet. Den möchtest du (per CFD) ändern. Daher die Antwort auf die urspr. Frage: das wird nicht funktionieren. Das ist vmtl. mit div. Variablen - in der 3CX anpassbar unter Erweitert / Kontakte / Optionen - irgendwo fest in einem 3CX Modul kodiert.

Da nicht alle 3CX NSt. mit SIP Geräten betrieben werden müssen, kommt der von dir gewünschte SIP Header ohnehin nur an phys. Endgeräten zum Einsatz. Ein Webclient, die Desktop App und die Smartphone Apps sehen den nicht. Die bekommen die Daten anders.
 
Genau. Intern. Im Header From user wird der aber entsprechend der Konfiguration mit eingebaut. Also da wird die interne angepasste Anzeige reingeschrieben.
Interessant: Wenn ich ein Custom Feld in den Eingangsparamtern setze und dort ABCD reinschreibe, wird auf den Clients (Desktoptel, Web und Handy) genau dieses ABCD gesetzt und angezeigt.

Jetzt wäre meine Idee, die session.ani plus eine Variable die im CFD generiert wird, in genau dieses Customfield zu setzen. Dann müsste er ja z.B. ABCD + Nummer anzeigen.

Kann man halbwegs logisch verstehen was ich meine?

Die Frage ist halt ob man das an der Stelle noch anpassen kann, bevor der Call an eine DW vermittelt wird.
 
Wenn ich ein Custom Feld in den Eingangsparamtern setze und dort ABCD reinschreibe, wird auf den Clients (Desktoptel, Web und Handy) genau dieses ABCD gesetzt und angezeigt.
Das ist ja auch Sinn und Zweck dieser Parameter.

Jetzt wäre meine Idee, die session.ani plus eine Variable die im CFD generiert wird, in genau dieses Customfield zu setzen.
Tolle Idee. Aber eben nur eine Idee.
Die Frage ist halt ob man das an der Stelle noch anpassen kann, bevor der Call an eine DW vermittelt wird.
Ja, wenn du eine eigene PBX baust. Oder eine davor oder eine danach. In der 3CX geht das vmtl. nichtmal wenn du selber einen Hook für einen solchen Handler schreibst (ein Programm auf dem Betriebssystem, nicht der 3CX).

Nachtrag: Könnte ich so etwas (auf dem Betriebssystem in die 3CX eingreifen, in den Flow), dann hätte ich längst wieder einen Lenny irgendwo eingebaut. Aktuell läuft der bei Bedarf auf einer kleinen Asterisk (und ausschließlich dafür) dahinter :(
 
Zuletzt bearbeitet:
  • Like
Reaktionen: patrickb
Hi, das Thema ist jetzt für einen anderen Anwendungsfall wieder aufgekommen. Jetzt aber mit einem eben anderem Ziel.

Ich würde gerne via CFA einen Rebound Befehl mitsenden bei einer Weiterleitung ans Handy (und gelegentlich auch mal eine SIP302 Umleitung) aber ohne den Weg über eine Dummy NS gehen zu müssen. Vor allen Dingen beim Rebound.

Ziel: Wenn der Anruf wieder "zurückgezogen" wird würde ich ihn gerne wieder in die CFA führen um diesen dann dort weiter zu verarbeiten. Lasse ich den Rebound über eine Nebenestelle laufen gehts immer nur an die Mailbox der Nebenstelle.
 
Hallo,
Ich würde gerne via CFA einen Rebound Befehl mitsenden bei einer Weiterleitung ans Handy (und gelegentlich auch mal eine SIP302 Umleitung)
Das ist unmöglich. Die CFA nimmt in jedem Fall an. Daher wird das eine Weiterleitung und damit ein separater zweiter Anruf.
Ziel: Wenn der Anruf wieder "zurückgezogen" wird würde ich ihn gerne wieder in die CFA führen um diesen dann dort weiter zu verarbeiten.
s.o.

Aber: der Parallelruf einer NSt. an deren Mobilnummer (Anrufe gleichzeitig auf Mobiltelefon signalisieren) funktioniert (i.d.R.). Da kommt der Anruf auch 'zurück'. Darüber mal nachdenken.
 
  • Like
Reaktionen: MarcosV_ 3CX
Aber: der Parallelruf einer NSt. an deren Mobilnummer (Anrufe gleichzeitig auf Mobiltelefon signalisieren) funktioniert (i.d.R.). Da kommt der Anruf auch 'zurück'. Darüber mal nachdenken.

Problem hier wäre ja evtl. wenn die Mailbox des Handys ran geht dann wäre der Anruf ja angenommen.
Was passiert wenn die Ansage vom Netzbetreiber kommt Teilnehmer nicht erreichbar?
Habe auch schon rum probiert in einer Ähnlichen Situation und keine gute Lösung gefunden.
 
Problem hier wäre ja evtl. wenn die Mailbox des Handys ran geht dann wäre der Anruf ja angenommen.
Was passiert wenn die Ansage vom Netzbetreiber kommt Teilnehmer nicht erreichbar?
Habe auch schon rum probiert in einer Ähnlichen Situation und keine gute Lösung gefunden.
Das geht über die Option "Rebound aktivieren". Dann holt die Anlage den Call in genau dem Moment zurück wenn die Mailbox rangeht. Das was mich dabei aber nervt ist die Tatsache das bei diesem "zurückholen" der Anruf auf der Mailbox der Nebenstelle landet und ich ihn somit nicht weiter verarbeiten kann. Zudem gibts in diesem Fall keine Möglichkeit eine Ansage ohne Aufnahmefunktion auszuspielen.

Die Möglichkeit mit dem Rebound geht in den Nebenstellen aber nur im Status Abwesend und DND, wenn gleichzeitig auf dem Mobiltelefon signalisiert wird. Bei Verfügbar nur dann, wenn an eine "externe Nummer weitergeleitet" wird. Dann taucht die Option "Anruf ankündigen (Rebound)" setzen.

@fxbastler dass das ein Zweiter Call wäre ist kein Problem. Für die 302 Weiterleitung wäre es eins. (Das ist aber nicht das akute Problem, wäre nur nice to have). Mir gehts vorwiegend darum den Anruf nach dem "Zurückholen" wieder an eine CFA leiten zu können und da würde es natürlich von der Logik her am simpelsten sein, wenn eine CFA einen Transfer mit Rebound/Ankündigung macht und beim zürückkommenden Anruf entsprechend einfach in der CFA weitermacht.

Ich hoffe man kann verstehen was ich meine. Eine Umleitung vom Handy via GSM Code zurück in die Anlage ist mir zu unsicher da das quasi ausserhalb des administrierbaren Bereichs liegt - auch wenn das bisher mein einzig funktionierender Lösungsweg wäre.
 
Zuletzt bearbeitet:
Kurze Frage nochmal: Mir ist zu dem Thema "Anrufanzeige" noch was eingefallen. Ist es möglich via CFA eine Signalisierungsgruppe oder Queue temporär umzubenennen? Idee dahinter:

Wenn ein Call eingeht und an eine Q oder SG geht wird der Name der SG ja wie oben beschrieben mit angezeigt sofern das aktiviert ist. Das passiert aber auch, sobald der Call transferiert wird. Heisst: Kommt der Call von der 100 wird er dort nur mit der Nummer angezeigt. Leitet die 100 aber über die Q oder SG weiter, wird den Usern in der Gruppe der SG oder Q-Name noch mit angefügt.

Wenn ich jetzt beigehe und den Anruf vorher über eine CFA schiebe, die mir vor dem Transfer an die SG oder Q diese umbennt, müsste ich ja den aktuellen Namen mit in den String bekommen der auf dem Telefon angezeigt wird.

Heißt ich baue mir im Grunde so viele Dummygruppen wie ich Sprachkanäle habe, verändere im laufenden Call deren Namen via CFA und schiebe sie dann darüber, so dass in der Gruppe dann der Name mit ausgegeben wird. Da ich ja so oder so Nur X Calls gleichzeitig behandeln kann, belegt ein Call dann jeweils eine SG oder Q was man ja via CFA auch überprüfen könnte. Bei z.B. Queues durch abfragen der wartenden Anrufe.

Via CFA kann ich dann ja auch noch das vorherige Ziel als Datensatz anfügen und dann so am Ende wieder an das eigentliche Ziel zurückleiten (auf z.B. die Mailbox der Nebenstelle).

Konfuse Idee aber wenn das geht würde es das immernoch bestehende Problem lösen.
 
Ist es möglich via CFA eine Signalisierungsgruppe oder Queue temporär umzubenennen?
ja - aber: das ist dauerhaft

Edit: Man kann auch (immer wieder gern genutzt) dynamisch und temporär eine SG (aus einem Pool freier ungenutzter Nummern) erstellen, benennen, eine oder mehrere NSt. da einbauen und diese anrufen. Diese SG werden für sonst nichts genutzt und (wenn frei) immer wieder überschrieben.
 
Zuletzt bearbeitet:
Ein Beispiel für das Ändern des Namen der Warteschleife mit der Nummer 300:
C#:
Queue Extension=(Queue)PhoneSystem.Root.GetDNByNumber("300");
Extension.Name="Warteschleife 300";
Extension.Save();

Stichwort: Call Flow Designer App Schnipsel
 
ja - aber: das ist dauerhaft

Edit: Man kann auch (immer wieder gern genutzt) dynamisch und temporär eine SG (aus einem Pool freier ungenutzter Nummern) erstellen, benennen, eine oder mehrere NSt. da einbauen und diese anrufen. Diese SG werden für sonst nichts genutzt und (wenn frei) immer wieder überschrieben.
Okay, wie macht man das denn bitte? Ich sags immer wieder. Schreib mal nen Buch über den CFD, die API und Co. Ich würds kaufen :)

PS: Mir gefällt dein Tagging mit dem Schnipsel Zusatz. Das machts so langsam echt zur Super-Bibliothek hier :)
 
  • Like
Reaktionen: fxbastler
Was genau meinst du bitte? Dynamisch angelegte SG mit NSt. und individuellen Namen? Oder Warteschleifen?
Dynamische SG mit variablen Nst. und Namen. Warteschleifen bestehen ja aus deutlich mehr Parametern die gesetzt werden müssten.

Aber wenn man aus einer CFA direkt eine SG erstellen kann und dann temporär an diese weiterleiten kann und am Ende wieder zurück in die CFA kommen würde, wäre das ein guter Ansatz die Problematik mit der Anzeige vom Anfang zu lösen.
 
Sprich du leitest von der Nst. an eine CFA weiter, die dann eine virtuelle SG bastelt, dann an diese transferiert, dort den Namen aufgreift, anzeigt und am Ende wieder auf die Mailbox der ursprünglichen Nst. oder eine andere CFA zurückleitet falls keiner aus der SG rangeht.
 
Der Anruf kommt nicht wieder zurück in die CFA. Die CFA nimmt den Anruf (per DID und eingehende Regel?) an, untersucht (aus einem Pool von NSt. Nummern) evtl. dort angelegten SG (ob es da aktuell ruft), nimmt sich eine 'freie' SG Nummer (eine die grad nicht benutzt wird) wenn möglich, legt die SG neu an wenn nötig, setzt den Namen, entfernt alle Mitglieder der SG, setzt die gewünschte NSt. in die SG und leitet den Anruf dort hin. Der Anruf kommt nicht zurück.

Nachfrage: Wieso kommt der Anruf von einer NSt. an die CFA?
 
Szenario ist folgendes:
Mitarbeiter A wird direkt über seine Durchwahl angerufen, geht nicht ran. Dann geht der Call an eine CFA, die einen Datensatz an den Call anhängt wer ursprünglich angerufen wurde (transferring.extension -> public_Durchwahl in dem Fall.) Anschliessend leitet die CFA entsprechend an eine SG weiter. Dort soll der Name des Mitarbeiter stehen der ursprüngich angerufen wurde (deswegen dann die SG umbennenen auf z.B. "von Müller")

Für die SG siehts dann aus wie :von Müller:+4912345...

So wissen alle, das der Anruf eigtl. für den/die Müller ist.

Geht in der SG keiner ran, wird der Call von der SG dann an eine weitere CFA (z.B. anrufbeantworter.Main) weitergeleitet, wo dann der Datensatz public_Durchwahl aus CFA 1 ausgelesen wird und die CFA dann an die Mailbox der Nebenstelle weiterleitet für den der Call ursprünglich war. (Bzw. sich alle Daten der Nebenstelle zieht und dann selber mit Record and Mail Element einen AB emuliert.)

So schiebe ich quasi den Anruf der bei Mitarbeiter A nicht angenommen wurde über die SG (wo alle drin sind die in dem jeweiligen Team arbeiten und auch weiterhelfen könnten), bevor der Call am Ende aufem AB des eigentlich angerufenen Mitarbeiters landet.
 
Zuletzt bearbeitet:
Mitarbeiter A wird direkt über seine Durchwahl angerufen, geht nicht ran. Dann geht der Call an eine CFA, die einen Datensatz an den Call anhängt wer ursprünlgich angerufen wurde (transferring.extension in dem Fall.) Anschliessend leitet die CFA entsprechend an eine SG weiter. Dort soll der Name des Mitarbeiter stehen der ursprüngich angerufen wurde (deswegen dann die SG umbennenen auf z.B. "von Müller")
Das geht prinzipiell einfacher: benenne die eingehende Regel für die DID Müller entsprechend.
So schiebe ich quasi den Anruf der bei Mitarbeiter A nicht angenommen wurde über die SG (wo alle drin sind die in dem jeweiligen Team arbeiten und auch weiterhelfen könnten), bevor der Call am Ende aufem AB desbeigentlich angerufenen Mitarbeiters landet.
Sicher, dass kein AB eines Teams benutzt werden soll? Dann kann man sich das alles sparen.
 
Das geht prinzipiell einfacher: benenne die eingehende Regel für die DID Müller entsprechend.

Sicher, dass kein AB eines Teams benutzt werden soll? Dann kann man sich das alles sparen.
Leider routet er aber die DID nicht durch bis zur SG. Also in der SG taucht der Name der DID nicht im Anzeigefeld auf wenn sie vorher transferiert wurde. Evtl. weil der String zu lang ist bei manchen Namen für die Anzeige? Muss ich nochmal testen in verschiedenen Anlagen.

Ja der Team AB sorgt für Chaos da jeder eine Mail bekommt und keiner mehr weiß wer wen schon bearbeitet hat da du ja leider immer noch nicht auf alle Anrufe einschließlich der deiner Kollegen zugreifen kannst als User der keinen Zugriff auf die Adminkonsole hat. Du siehst ja im Client nur deine eigenen Calls sofern es geklingelt hat, was ohnehin schon für viel Chaos sorgt wenn man keine Mailbenachrichtigungen nutzt und dann mot IMAP oder Push an einem Gruppenpostfach hängt das sich überall synct.
 
Zuletzt bearbeitet:

Zurzeit aktive Besucher

Statistik des Forums

Themen
21.359
Beiträge
107.421
Mitglieder
70.518
Neuestes Mitglied
jeanmarieguillaume392@gma
Holen Sie sich 3CX - völlig kostenlos!

Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX register cta
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.