Viele Telefonnummern im Vorfeld filtern.

Jesper

Silver Partner
Basic Certified
Mitglied seit
4. März 2020
Beiträge
77
Hi Leute,

gibt es eine schöne Möglichkeit eine große Anzahl (200+) an Telefonnummern im Vorfeld zu filtern und an eine bestimmte Nebenstelle weiterzuleiten zu können?

Es gibt ja die CID Regeln. Dort kann man aber nur eine bestimmte Anzahl an Zeichen (ca. 3 Telefonnummern) eintragen. Somit müsste man über 60 Regeln anlegen...

Habt ihr da eine Idee?

Liebe Grüße
 
Ich habe von @avraammich_3CX bereits folgenden interessanten Hinweis bekommen:

"Wenn Du keine Datenbank einbinden möchten, kannst du die Nummern in einer Textdatei im 3CX-Server speichern. Die CFD-App kann die Datei lesen und mit einem C#-Skript prüfen, ob die Nummer in der Liste enthalten ist."

Nun ist es so, dass meine C# Skills gleich 0, da ich (wenn ich mal programmiert habe) mit C geschrieben habe.

Das Script müsste ja nur abfragen, ob die Nummer %variable%, genommen aus dem From Header oder so, in dieser Text / CSV Datei ist.
 
  • Like
Reaktionen: MarcosV_3CX
Hallo,

richtig, mit C# geht alles, muss aber vielleicht gar nicht sein (auch wenn es effizienter wäre).

Kommt ein Anruf auf die CFA dann mit 'Read / Write to File' die Datei einlesen, mit 'CreateCondition' das Ergebnis der Dateileseoperation mit der Variable session.ani mittels CONTAINS vergleichen und wenn Ergebnis positiv dann: 'Transfer' hierhin, sonst 'Transfer' dorthin. Das sollte auch mit mehrzeiligen Textdateien (eine Nummer pro Zeile) funktionieren. Ansonsten wird das eine verdammt lange Zeile in der alle diese Nummern drin sind.
 
Hallo,

sorry, dass ich mich erst jetzt melde, ich war die letzten beiden Wochen nicht da. Vielen Dank schonmal für die Hinweise.

Ich habe nun schonmal mit der CFD App folgendes erstellt.

1632823717130.png
Als erstes erfolgt das Lesen in der Textdatei:
1632823759727.png
Danach meintest du ja folgendes:
mit 'CreateCondition' das Ergebnis der Dateileseoperation mit der Variable session.ani mittels CONTAINS vergleichen

Das "CreateCondition" habe ich (wie du siehst) erstellt, nur wie vergleiche ich das "session.ani" (und wo finde ich das später?) und wo an welcher Stelle muss ich das vergleichen? Bei den beiden "conditionalComponent"?

Und darin sieht es ja so aus:
1632824099379.png


Danach erfolgt dann der Transfer in die jeweilige Gruppe.

Liebe Grüße
 
Schau mal unter Variables, da steht unter Session der Eintrag ani. Dort müsste als Variable auch der Wert der Leseoperation auswählbar sein.

Ich muss gestehen, ich habe noch nicht probiert was passiert wenn die Datei viele Zeilen mit Nummern enthält oder ob die Nummern alle in einer Zeile (getrennt mit irgendwas) stehen sollten. Es geht um einen Zeichenkettenvergleich. Wenn die Zeichenkette mit der akt. Anrufernummer in der gelesenen Datei auftaucht dann: Treffer.
 
Ich habe jetzt an dieser Stelle folgendes eingetragen:
1632838765600.png
Und zwar dies:
1632838796008.png
Das heißt ja, er vergleicht die aktuelle Nummer, die Anruft mit dem Text. Bei Result steht ja: "Enthält den Text, der aus der Datei gelesen wurde, wenn die Aktion „Lesen“ ist."
Soweit so gut, nur wo wird das Ergebnis gespeichert und ausgewertet? Oder ist es so, dass erste Auswahl von diesem Vergleich das richtige ist, und wenn es falsch ist, wird automatisch das 2. genommen?

Liebe Grüße
 
Oder ist es so, dass erste Auswahl von diesem Vergleich das richtige ist, und wenn es falsch ist, wird automatisch das 2. genommen?
ja

Wenn man mal nicht weiss was so ein Block genau macht: den Block anklicken und drück F1 :D

Die Bedingungen werden von links nach rechts abgearbeitet. Daher müssen in allen Bedingungszweigen ausser dem letzten (das können ganz viele sein) Abfragen ob wahr oder falsch getroffen werden, siehe das rote Ausrufezeichen an dem Block wenn die fehlt. Das ist wie ein if, elseif, elseif, else. Bei dir mit zwei Entscheidungsblöcken dann nur ein if, else.
 
Zuletzt bearbeitet:
Eben erst gesehen, da ist bei dir ein kleiner Fehler drin. Ändere bei dem CONTAINS mal die Reihenfolge. Das Leseresultat der Datei mit den Nummern kommt oben und Variable session.ani unten rein. Das wird sonst nicht funktionieren.
 
  • Like
Reaktionen: MarcosV_3CX

Statistik des Forums

Themen
44.415
Beiträge
232.722
Mitglieder
78.331
Neuestes Mitglied
b2daniel