Pattern-Hilfe
Verfügbare Platzhalter:
N: Ziffer 2–9
X: Ziffer 0–9
Z: Ziffer 1–9
[ ]: Definiert einen Bereich erlaubter Ziffern (z.B. [2-5])
'.': Mindestens eine beliebige Ziffer
'!': 0 oder mehr beliebige Ziffern
Ziffern (0–9) oder Zeichen (+,*,#) müssen exakt passen
Beispiel: NXX.
bedeutet: Erste Ziffer 2–9, dann zwei Ziffern 0–9, dann mind. eine weitere beliebige Ziffer.
DE: Die Berechnung/Prüfung erfolgt direkt per JavaScript in Ihrem Browser. Es werden keine eingegebenen Daten an den Server übermittelt.
EN: The calculation/validation is performed directly using JavaScript in your browser. No entered data is transmitted to the server.
Basics of Match Patterns
Match Patterns are essential rules in FreePBX that determine how incoming and outgoing calls are processed based on the selected numbers. By correctly defining Match Patterns, you can ensure that calls are efficiently routed, distributed to the right departments, or trigger specific services.
Wildcards and Special Characters
FreePBX provides a variety of wildcards and special characters that can be used in Match Patterns to create flexible and precise rules. The following table provides an overview of the most important wildcards:
Wildcard | Meaning | Description |
---|---|---|
N | Digit between 2 and 9 | Allows only the digits 2 to 9 in this position. |
Z | Digit between 1 and 9 | Allows only the digits 1 to 9 in this position. |
X | Any digit from 0 to 9 | Allows any digit (0-9) in this position. |
. | One or more of any digits | Allows any number of digits or characters at this position. |
! | Zero or more of any digits | Allows no or any number of digits or characters at this position. |
[ ] | Range of defined digits or characters | Defines a group of allowed digits or characters, e.g., [2-5] allows the digits 2, 3, 4, and 5. |
1, 2, 3, 4, etc. | Whole number (not actually a wildcard) | Checks if the number matches the pattern at the given position. |
+, *, # | Fixed characters (not actually a wildcard) | These characters must match exactly and are fixed parts of the pattern. |
Warning: Avoid Patterns Made Only of !
or .
It is recommended to avoid using patterns that consist solely of !
or .
. These patterns are extremely broad and may allow or block unintended calls, leading to security risks and unwanted call forwarding.
Reasons for Warning:
- Security Risk: Patterns like
!
or.
may allow undesired or malicious calls into the system as they have no specific restrictions. - Lack of Control: These patterns offer no control over call forwarding, which can lead to system congestion due to excessive calls.
- Management Difficulties: Tracking and managing calls becomes more challenging, as no clear rules are defined.
- Unwanted Forwarding: Calls may be forwarded to incorrect or undesired destinations, negatively affecting user experience.
Recommendation: Always use specific patterns that define exactly which numbers should be allowed or blocked. Avoid using !
or .
as the sole elements of a pattern to ensure the security and efficiency of your phone system.
Difference Between Match Patterns With and Without an Underscore (_
)
The underscore (_
) plays a crucial role in defining Match Patterns in FreePBX. It is important to understand when and where it is used to ensure correct call forwarding and routing.
Match Patterns Without an Underscore
In Outbound Routes (outgoing routes), Match Patterns are entered without the underscore (_
). FreePBX automatically adds the underscore in the backend when pattern matching is required. This simplifies configuration, as the administrator does not need to manually manage the underscore.
Example:
For local numbers, you would simply use NXXXXXXX
instead of _NXXXXXXX
.
Configuration Steps:
- Navigate to Outbound Routes: Log in to the FreePBX Dashboard and go to Connectivity > Outbound Routes.
- Create or Edit an Outbound Route: Click on Add Outbound Route or select an existing route.
- Set the Match Pattern: In the Dial Patterns field, enter the pattern without the underscore, e.g.,
NXXXXXXX
. - Define the Destination: Select the desired trunk or destination for this route.
- Save and Apply: Click Submit and then Apply Config.
Match Patterns With an Underscore
In certain contexts such as Caller ID (CID) fields or custom dialplan scripts, Match Patterns with an underscore (_
) can be used. The underscore signals to Asterisk that the following pattern should be interpreted as a regular expression.
Creating Match Patterns in FreePBX
Creating Match Patterns in FreePBX is done through the web interface. A structured approach ensures that the patterns work effectively and securely.
Step-by-Step Guide:
- Define Requirements:
Begin with a thorough analysis of the required types of numbers. Determine which types of numbers (e.g., local numbers, internal extensions) need to be handled and identify the target groups. - Select Wildcards:
Decide which wildcards best fit your requirements. UseN
,Z
,X
according to the digit restrictions, and use[ ]
to define specific groups. - Add Fixed Characters if Needed:
Add fixed characters like numbers or the+
sign, if necessary. - Create and Test the Pattern:
Combine the selected wildcards and fixed characters into a complete pattern. Test the pattern using tools available on this page and, of course, by simulating calls with various numbers to ensure everything works as expected.
Best Practices:
- Clarity and Simplicity: Keep patterns as simple as possible to ensure maintainability. Complex patterns can be hard to understand and manage.
- Documentation: Document each pattern and its function. Clear documentation helps with traceability and future modifications.
- Specificity Over Generalization: Define patterns as specifically as possible to avoid unwanted matches. More precise patterns reduce the risk of misrouting and security gaps.
- Use of Contexts: Use different inbound routes to organize different patterns for different purposes. This enhances clarity and simplifies management.
- Consider Security: Limit the number of allowed calling numbers to prevent abuse. Implement security measures like Access Control Lists (ACLs) and rate limiting.
- Regular Review and Adjustment: Regularly review patterns and adjust them according to changed requirements. Continuous monitoring and adjustment ensure that the system functions optimally.
Official Documentation:
Grundlagen der Match Patterns
Match Patterns sind grundlegende Regeln in FreePBX, die festlegen, wie eingehende und ausgehende Anrufe basierend auf den gewählten Nummern verarbeitet werden. Durch eine präzise Definition von Match Patterns stellen Sie sicher, dass Anrufe effizient weitergeleitet, korrekt an die zuständigen Abteilungen verteilt oder spezifische Dienste aktiviert werden.
Platzhalter und Sonderzeichen
FreePBX bietet eine Vielzahl von Platzhaltern und Sonderzeichen, die in Match Patterns verwendet werden, um flexible und präzise Regeln zu erstellen. Die folgende Tabelle gibt einen Überblick über die wichtigsten Platzhalter:
Platzhalter | Bedeutung | Beschreibung |
---|---|---|
N | Ziffer zwischen 2 und 9 | Erlaubt nur die Ziffern 2 bis 9 an dieser Position. |
Z | Ziffer zwischen 1 und 9 | Erlaubt nur die Ziffern 1 bis 9 an dieser Position. |
X | Jede Ziffer von 0 bis 9 | Erlaubt alle Ziffern (0-9) an dieser Position. |
. | Eine oder mehrere beliebige Ziffern | Erlaubt eine beliebige Anzahl von Ziffern oder Zeichen an dieser Stelle. |
! | Null oder mehr beliebige Ziffern | Erlaubt keine oder eine beliebige Anzahl von Ziffern oder Zeichen an dieser Stelle. |
[ ] | Bereich definierter Ziffern oder Zeichen | Definiert eine Gruppe von erlaubten Ziffern oder Zeichen, z.B. [2-5] erlaubt die Ziffern 2, 3, 4 und 5. |
1, 2, 3, 4, etc. | Ganze Zahl (kein Platzhalter) | Prüft, ob die Zahl an der jeweiligen Position des Patterns übereinstimmt. |
+, *, # | Feste Zeichen (kein Platzhalter) | Diese Zeichen müssen exakt übereinstimmen und sind feste Bestandteile des Musters. |
Warnung: Vermeidung von Mustern, die ausschließlich aus !
oder .
bestehen
Die Verwendung von Mustern, die ausschließlich aus !
oder .
bestehen, sollte vermieden werden. Solche Muster sind zu allgemein gehalten und können unbeabsichtigte Anrufe zulassen oder blockieren, was zu Sicherheitsrisiken und unerwünschten Anrufweiterleitungen führen kann.
Hintergrund:
- Sicherheitsrisiko: Muster wie
!
oder.
können dazu führen, dass unerwünschte oder bösartige Anrufe ins System gelangen, da sie keine spezifischen Einschränkungen enthalten. - Fehlende Kontrolle: Solche Muster bieten keine Kontrolle über die Anrufweiterleitung, was zu einer Überlastung des Systems mit Anrufen führen kann.
- Verwaltungsschwierigkeiten: Das Nachverfolgen und Verwalten von Anrufen wird erschwert, da keine klaren Regeln definiert sind.
- Unerwünschte Weiterleitungen: Anrufe können an falsche oder unerwünschte Ziele weitergeleitet werden, was die Benutzererfahrung beeinträchtigen kann.
Empfehlung: Verwenden Sie stets präzise Muster, die genau festlegen, welche Nummern erlaubt oder blockiert werden sollen. Vermeiden Sie es, !
oder .
als alleinige Musterbestandteile zu verwenden, um die Sicherheit und Effizienz Ihres Telefonsystems zu gewährleisten.
Unterschied zwischen Match Patterns mit und ohne Unterstrich (_
)
Der Unterstrich (_
) spielt eine entscheidende Rolle bei der Definition von Match Patterns in FreePBX. Es ist wichtig zu verstehen, wann und wo dieser verwendet wird, um korrekte Anrufweiterleitungen und -steuerungen sicherzustellen.
Match Patterns ohne Unterstrich
In den Outbound Routes (ausgehende Routen) werden Match Patterns ohne den Unterstrich (_
) eingegeben. FreePBX fügt den Unterstrich automatisch im Backend hinzu, wenn ein Pattern-Matching erforderlich ist. Dies vereinfacht die Konfiguration, da der Administrator sich nicht manuell um den Unterstrich kümmern muss.
Beispiel:
Für lokale Nummern wird einfach NXXXXXXX
verwendet, anstatt _NXXXXXXX
.
Konfigurationsschritte:
- Navigieren zu Outbound Routes: Melden Sie sich im FreePBX-Dashboard an und gehen Sie zu Connectivity > Outbound Routes.
- Erstellen oder Bearbeiten einer Outbound Route: Klicken Sie auf Add Outbound Route oder wählen Sie eine bestehende Route aus.
- Festlegen des Match Patterns: Im Feld Dial Patterns geben Sie das Muster ohne Unterstrich ein, z.B.
NXXXXXXX
. - Ziel-Destination definieren: Wählen Sie den gewünschten Trunk oder die Ziel-Destination für diese Route.
- Speichern und Anwenden: Klicken Sie auf Submit und dann auf Apply Config.
Match Patterns mit Unterstrich
In bestimmten Kontexten, wie beispielsweise in Caller ID (CID)-Feldern oder benutzerdefinierten Dialplan-Skripten, können Match Patterns mit einem Unterstrich (_
) verwendet werden. Der Unterstrich zeigt Asterisk an, dass das folgende Muster als regulärer Ausdruck interpretiert werden soll.
Erstellung von Match Patterns in FreePBX
Die Erstellung von Match Patterns in FreePBX erfolgt über die Weboberfläche. Eine strukturierte Vorgehensweise stellt sicher, dass die Muster effektiv und sicher funktionieren.
Schritt-für-Schritt-Anleitung
- Anforderungen definieren:
Beginnen Sie mit einer gründlichen Analyse der benötigten Nummernarten. Bestimmen Sie, welche Arten von Nummern (z. B. lokale Nummern, interne Durchwahlen) behandelt werden sollen und identifizieren Sie die Zielgruppen. - Platzhalter auswählen:
Entscheiden Sie, welche Platzhalter am besten zu Ihren Anforderungen passen. Nutzen SieN
,Z
,X
entsprechend den Ziffernbeschränkungen und verwenden Sie[ ]
, um spezifische Gruppen zu definieren. - Gegebenenfalls feste Zeichen integrieren:
Fügen Sie feste Zeichen wie Zahlen oder das+
hinzu, wenn notwendig. - Muster erstellen und testen:
Kombinieren Sie die ausgewählten Platzhalter und festen Zeichen zu einem vollständigen Muster. Testen Sie das Muster z. B. mit dem verfügbaren Prüftool und simulieren Sie Anrufe mit verschiedenen Nummern, um sicherzustellen, dass alles wie erwartet funktioniert.
Best Practices
- Klarheit und Einfachheit:
Halten Sie die Muster so einfach wie möglich, um die Wartbarkeit zu gewährleisten. Komplexe Muster können schwer verständlich und schwer zu verwalten sein. - Dokumentation:
Dokumentieren Sie jedes Muster und dessen Funktion. Eine klare Dokumentation erleichtert die Nachvollziehbarkeit und zukünftige Anpassungen. - Spezifität statt Allgemeinheit:
Definieren Sie Muster so spezifisch wie möglich, um unerwünschte Übereinstimmungen zu vermeiden. Präzisere Muster minimieren das Risiko von Fehlleitungen und Sicherheitslücken. - Verwendung von Kontexten:
Nutzen Sie unterschiedliche Inbound Routes, um verschiedene Muster für unterschiedliche Zwecke zu organisieren. Dies verbessert die Übersichtlichkeit und vereinfacht die Verwaltung. - Sicherheit berücksichtigen:
Begrenzen Sie die Anzahl der erlaubten Anrufnummern, um Missbrauch zu verhindern. Implementieren Sie Sicherheitsmaßnahmen wie Access Control Lists (ACLs) und Ratenbegrenzung. - Regelmäßige Überprüfung und Anpassung:
Überprüfen Sie die Muster regelmäßig und passen Sie sie an geänderte Anforderungen an. Eine kontinuierliche Überwachung und Anpassung stellt sicher, dass das System stets optimal funktioniert.