Warteschleifen Loop

EliasRuss

Silver Partner
Mitglied seit
9. Februar 2026
Beiträge
16
Hallo zusammen,

wir haben bei einer Anlage aktuell folgendes Szenario umgesetzt:

Warteschleife 1 → Überlauf-Warteschleife 1 → zurück zu Warteschleife 1 → usw.
Warteschleife 2 → Überlauf-Warteschleife 2 → zurück zu Warteschleife 2 → usw.
Warteschleife 3 → Überlauf-Warteschleife 3 → zurück zu Warteschleife 3 → usw.
Warteschleife 4 → Überlauf-Warteschleife 4 → zurück zu Warteschleife 4 → usw.

Das System funktioniert grundsätzlich, allerdings entsteht erwartungsgemäß folgendes Problem:

Wenn sich ein Anrufer in einer Warteschleife befindet und sowohl in der ursprünglichen Warteschleife als auch in der zugehörigen Überlauf-Warteschleife kein Mitarbeiter verfügbar ist, läuft der Anruf dauerhaft in dieser Schleife weiter.

Gibt es eine Möglichkeit, den Anrufer stattdessen gezielt in der ursprünglichen Warteschleife zu halten, auch wenn aktuell kein Agent verfügbar ist, und beispielsweise nach einer definierten maximalen Wartezeit eine alternative Aktion auszuführen (z. B. Weiterleitung, Ansage oder Auflegen)?

Vielen Dank im Voraus für eure Unterstützung.
 
Ich habe deine Ausführungen jetzt mehrfach gelesen und verstehe weder das Problem noch die Frage.

allerdings entsteht erwartungsgemäß folgendes Problem:
Wir haben vmtl. eine unterschiedliche Erwartungshaltung. Wenn ich deine Erklärung lese, dann erkenne ich nur ein Problem in der Beschreibung deiner Situation:
Wenn sich ein Anrufer in einer Warteschleife (z.B. WS1) befindet und sowohl in der ursprünglichen Warteschleife (z.B. WS1) als auch in der zugehörigen Überlauf-Warteschleife (z.B. ÜWS1) kein Mitarbeiter verfügbar (definiere verfügbar) ist, läuft der Anruf dauerhaft in dieser Schleife weiter.
Das kann ich so nicht bestätigen. Hier die Erklärung:
Ich definiere mit keine Mitarbeiter verfügbar: alle in der WS angemeldeten Agenten führen bereits einen Anruf oder sind noch in der Wrap-Up-Zeit.
Dazu zählt nicht, wenn in der WS ausschließlich Agenten angemeldet sind (deaktivierte Option 'Abmelden von Wartschleifen' im Status und keine einzelne direkte Abmeldung von der WS) die gerade nicht in der 3CX registriert sind (DECT Handset verlegt / Akku tot, Browser Benachrichtigung nicht aktiviert, Smartphone Energieeinstellungen falsch eingestellt usw.).
Das ist die Ausnahme.
Eventuell hast du da eine andere Definition von keine Mitarbeiter verfügbar, z.B. keiner ist angemeldet / alle sind abgemeldet, aber das ist etwas anderes.

Wenn dieser von mir so beschriebene konkrete Fall keine Mitarbeiter verfügbar eintritt, dann wird dennoch die WS1 komplett abgearbeitet, danach wird die ÜWS1 komplett abgearbeitet, danach wieder komplett die WS1 usw. usf.. Dafür ist eine Wartschleife da. Nur wenn alle Agenten einer WS abgemeldet oder nicht erreichbar (registriert) sind passiert etwas anderes: die WS wird nicht mit der eingestellten Wartezeit abgearbeitet sondern sofort.

Daher verstehe ich deine Aussage
entsteht erwartungsgemäß folgendes Problem
nicht.

Gibt es eine Möglichkeit, den Anrufer stattdessen gezielt in der ursprünglichen Warteschleife zu halten, auch wenn aktuell kein Agent verfügbar ist
Das funktioniert doch, s.o.. Der Anrufer wird in der WS gehalten so lange deren Wartezeit nicht abläuft.
Probiere es: baue eine WS1, eine ÜWS1, verkette die miteinander, stelle die Wartezeit je auf 10 sek., nimm je zwei Agenten (dieselben) dazu, setze deren Status auf Verfügbar (mit deaktivierter Option 'Abmelden von Wartschleifen' im Status), lasse die beiden Agenten einen direkten Anruf miteinander führen (damit sind beide lt. oben beschriebener Definition nicht verfügbar) und rufe die WS1 an. Du solltest 10 sek. in der WS1 sein, dann 10 sek. in der ÜWS1 sein, dann wieder 10 sek. in der WS1 usw. usf..

Ich habe gehört, es gibt spezielle 3CXler (*hust*), die genau diesen Umstand ausnutzen. Die haben immer einen künstlichen mit einem Programm erzeugten Mitarbeiter (z.B.einen gewissen Herrn K) als Agent in einer WS, der durchgehend angemeldet und durchgehend besetzt ist (weil er durchgehend telefoniert) - nur um zu so ermöglichen, dass die WS auch in dem Fall abgearbeitet wird wenn sich alle Agenten abgemeldet haben bzw. nicht erreichbar sind. So ein Szenario (das da umgesetzt wurde) würde lt. deiner Beschreibung nie funktionieren, tut es aber.

und beispielsweise nach einer definierten maximalen Wartezeit eine alternative Aktion auszuführen (z. B. Weiterleitung, Ansage oder Auflegen)
Wenn du damit meinst, dass der Anrufer der zw. WS1 und ÜWS1 hin- und herwechselt, irgendwann irgendwie die Schleife künstlich verlassen soll, dann gibt es - unabhängig vom Skill-Based Routing) mehrere Möglichkeiten. Z.B.:
  1. Du kaskadierst nach WS1 und ÜWS1 noch eine ÜÜWS1 und eine ÜÜÜWS1 usw. und entlässt den Anrufer danach.
  2. Du baust zwischen der WS1 und der ÜWS1 und zwischen der ÜWS1 und der WS1 ein CFD App ein, die diesen Anruf alle X Überläufe aus der Schleife der Warteschleifen leitet.
Was nicht ohne weiteres geht (ja, es gibt spezielle Möglichkeiten, ich denke aber das ist nichts für dich) ist: jeden Anruf insgesamt im Hintergrund zu überwachen und egal wie lange der sich in welcher der WS befindet durch 'irgend etwas' gezielt nach Zeit X da aus den Warteschleifen Schleifen zwangsweise zu holen.

Ansonsten: wenn ich das was du geschrieben habe völlig falsch verstanden habe: schreibe es bitte so wie es wirklich ist. Das was du beschreibst funktioniert anders, s.o..
 
Zuletzt bearbeitet:
  • Like
Reaktionen: Josef L
die Verzweigung in die Warteschleifen ist quasi eine Rufumleitung und daran besteht wohl das Problem in der Verkettung dieser. Verkettung von Rufumleitung ist in der Regel nicht zulässig. Wie fxbastler schon anmerkte wird da wohl eine individuelle CFD Programmierung der Schlüssel zu der Lösung sein.
 
In WS1 sind MA1 und MA2
In ÜWS1 sind MA3 und MA4.

Die "Max. Wartezeit in Schleife" liegt bei jewieils 30sek.
Die "Signalisierungsstrategie" ist "geringste Anzahl betreuter Anrufe".

WS1 "Ziel bei Nichtannahme" ist ÜWS1 und umgekehrt.

--------------------------------------------------------------------------------------------------------

Wenn die MA1-4 alle nicht in den zugewiesenen WS/ÜWS angemeldet sind läuft der Anruf im Loop.

Ich hoffe das ist für alle jetzt schon mal verständlicher :)

--------------------------------------------------------------------------------------------------------
Gewüschtes Verhalten wäre allerdings folgendermaßen:

WS1 und ÜWS1 sind nicht besetzt. Bedeutet kein Agenten ist angemeldet.
Wenn in der Situation ein Anruf bei WS1 eingeht soll dieser für die 30 sek. auch in WS1 bleiben.
Danach auf ÜWS1 springen und das selbe machen.

Hin und her bis ein Agent angemeldet ist ODER der Anrufer auflegt.
 
Das geht so nicht, evtl mit CFD umsetzbar. So hast du wie schon erkannt einen Loop. Den Sinn solch einer Warteschleife verstehe ich trotzdem nicht. Wer will denn Stundenlang in einer Warteschleife hängen wo nie jemand dran geht? (Worst Case)
 
Den Sinn solch einer Warteschleife verstehe ich trotzdem nicht. Wer will denn Stundenlang in einer Warteschleife hängen wo nie jemand dran geht? (Worst Case)
Im Worst Case Szenario ist mindestens 1 von 4 MA nur kurzzeitig nicht Angemeldet. Damit aber nicht innerhalb von einigen Sekunden 80 verpasste Anrufe in der Liste auftauchen soll die Wartezeit dennoch greifen.

Ich versuchs einfach mal mit dem CFD. Wenns hin haut mach ich auch einen LoopCount rein damit man (im Worst Worst Case) nicht für immer in der Warteschleife hängt sondern mit ner netten Ansage disconnected wird.
 
  • Like
Reaktionen: bitn2
Wenn die MA1-4 alle nicht in den zugewiesenen WS/ÜWS angemeldet sind läuft der Anruf im Loop.
Das erklärt das Verhalten.

Ich hoffe das ist für alle jetzt schon mal verständlicher :)
ja

Es gibt mehrere Lösungen dafür. +

Dazu noch zwei Fragen:
  1. Kommen die Anrufe an die WS ausschließlich von außerhalb (evtl. gar direkt per DID) über den Trunk?
    Hintergrund: Wenn die WS nicht intern genutzt werden, dann wird es vmtl. einfacher.
  2. Ist es explizit gewünscht, dass Anrufer in den je in der WS und ÜWS gehalten werden auch wenn da grds. kein Agent eingebucht ist?
    Hintergrund: Man kann die Anrufe auch vorher handhaben und so lange warten bis wieder ein Agent in einer WS oder ÜWS angemeldet ist. Das heißt, der Anrufer bekommt Audio von einem Skript. Das heißt auch: grundsätzlich sieht vmtl. niemand (gibt evtl. noch eine Möglichkeit) dass gerade jemand anruft eben weil der Anruf in keiner WS oder ÜWS ist. Aber wenn das reicht, dann spart man SC und evtl. zusätzliche Geräte.
Wenn die Antworten auf die beiden Fragen ja und nein sind, dann gibt es eine Abkürzung.
 
1. Kommen die Anrufe an die WS ausschließlich von außerhalb (evtl. gar direkt per DID) über den Trunk?
Ja. Die Warteschleifen werden ausschließlich von extern über den SIP-Trunk und die jeweils zugehörige DID erreicht. Intern werden die Warteschleifen nicht verwendet.
2. Ist es explizit gewünscht, dass Anrufer in den je in der WS und ÜWS gehalten werden auch wenn da grds. kein Agent eingebucht ist?
Nein, das ist nicht zwingend erforderlich.

Wichtig ist lediglich, dass der Anrufer seine Wartezeit sinnvoll überbrücken kann, bis einer der vier Mitarbeiter das Gespräch entgegennehmen kann.

Zusätzlich ist zu beachten, dass insgesamt sechs verschiedene Warteschleifen und sechs zugehörige Überlaufwarteschleifen vorhanden sind. In allen Warteschleifen sind jedoch dieselben vier Mitarbeiter tätig.2 pro WS und 2 andere pro ÜWS. Sollte es bei 3 der Warteschleifen zu Anrufen kommen und einer der MA meldet sich an ist nicht relevant welches der Anrufe zuerst bearbeitet wird.
 
Dann würde ich doch eher die Warteschleife länger agieren zu lassen und zwar so lange wie die jetzige WS und ÜWS laufen. Für mich macht in dieser von dir beschriebenen Konstallation mit einer WS und ÜWS keinen Sinn, nach der defenierten Zeit kannst du ja eine Ansage abspielen lassen das alle Teilnehmer im Gespräch sind oder auf eine Mailbox wor er einen Nachricht hinterlassen kann.
 
  • Sad
Reaktionen: EliasRuss
Dann würde ich doch eher die Warteschleife länger agieren zu lassen und zwar so lange wie die jetzige WS und ÜWS laufen.
So hatte ich das ursprünglich auch gebaut aber der Kunde wollte die Aufteilung auf WS und ÜWS.
nach der defenierten Zeit kannst du ja eine Ansage abspielen lassen das alle Teilnehmer im Gespräch sind oder auf eine Mailbox wor er einen Nachricht hinterlassen kann.
Leider Nein. Wenn keiner Angemeldet sein sollte würde dann ja sofort die Ansage kommen. Der Kunde wünscht, dass der Anrufer die eingestelle Zeit auch tatsächlich wartet.
 
Nun ich habe jetzt keine Erfahrung mit der ÜWS, sind jetzt warscheinlich nur normale Warteschleifen, wie verhalten die sich, wenn keiner eingeloggt ist? über den Status kann man sich ja nur an oder abmelden und nicht gezielt auswählen. Wie ist es denn einen analogen Dummy einzusetzen und den in die Warteschleife als angemeldeten User zu belassen.
 
sind jetzt warscheinlich nur normale Warteschleifen
Ja das sind normale Warteschleifen.

wie verhalten die sich, wenn keiner eingeloggt ist?
Wenn in einer Warteschleife keiner Angemeldet ist springt es sofort auf "Ziel bei Nichtannahme". Die eingestellte Zeit wird dann übersprungen.
über den Status kann man sich ja nur an oder abmelden und nicht gezielt auswählen.
Korrekt. Zwei festgelegte Mitarbeiter in der Warteschleife und zwei weitere in der "Überlauf" Warteschleife.
Wie ist es denn einen analogen Dummy einzusetzen und den in die Warteschleife als angemeldeten User zu belassen.
Theoretisch die einfachste Lösung aber in der Praxis wieder komplizierter. Da ein Anruf nicht ewig in dem Loop hängen soll muss ab einem bestimmten Zeitpunkt eine Ansage kommen mit Alle Ma in Gespräch bla bla bla.. Jetzt könnte man sagen WS1 30sek ->ÜWS1 30sek -> Ansage. Klar. Aber. Wenn sich ,innerhalb der 30sek die es in ÜWS1 klingelt, ein MA der WS1 anmeldet könnte dieser das Gespräch ja annhemen. Deswegen ist dieses Ping Pong / Loop System gewünscht. Wenn aber jetzt eine Dummy Nbst. konstant Available ist wäre der Loop endlos. Dann müsste ich auch was machen damit erkannt wird wie oft der Call schon durch den loop lief und dann disconnected wird.

Ob ich jetzt das eine oder das andere Umsetzte ist mir recht egal. Wenn ich die möglichkeit habe das sauber über ein CFD oder sogar nativ in der Anlage umzusetzen wäre das natürlich die bessere Lösung. Die Dummy Nbst. wäre für mich eher ein "Notfallplan".
 
Für mich ist das zu kompliziert gedacht. Wenn ich das jetzt richtig verstehe ist immer einer angemeldet, oder?

Ich würde immer alle in eine Warteschleife packen und und die jeweils nach der Priorisierung in der jeweiligen Warteschleifengruppe sortieren. Dann machst du die Zeit WS+ÜWS gleich 60 Sekunden oder auch länger. Dann hast du immer den Fall das jemand in der Warteschleife ist und leitest die nach Ende auf eine Mailbox oder was anderen oder lässt eine Ansage laufen oder oder

Das Ping Pong wird aus dem Grunde schon nicht im Standard gehen, weil in der Regel eine Verkettung von Rufumleitungen nicht möglich ist.
 
  • Sad
Reaktionen: EliasRuss
Für mich ist das zu kompliziert gedacht. Wenn ich das jetzt richtig verstehe ist immer einer angemeldet, oder?
Es geht ja um den Fall, dass mal keiner Angemeldet ist.

Das Ping Pong wird aus dem Grunde schon nicht im Standard gehen, weil in der Regel eine Verkettung von Rufumleitungen nicht möglich ist.
Funktionieren tut das schon. Haben es ja getestet. Aber wenn keiner Angemeldet ist kommt es zu dem mehrfach beschriebenen Problem.
 
was dazu gelernt. Ich würde das mit einem Dummyteilnehmer lösen, kann ja ein billiges IP Telefon sein, das als letztes in der Reihe ist, kann ja leise irgndwo stehen.
 
Ohne jetzt alles gelesen zu haben eine Dummy Nebenstelle kann man auch gut mit einem SNOM SP800 abbilden.
 

Zurzeit aktive Besucher

Statistik des Forums

Themen
44.285
Beiträge
232.286
Mitglieder
78.245
Neuestes Mitglied
Pubblivall