Categories: VOS3000

VOS3000 Dial Plan Wildcards: Complete Asterisk Question Mark Pattern Easy Guide

VOS3000 Dial Plan Wildcards: Complete Asterisk Question Mark Pattern Guide

๐Ÿ“ž Every VOS3000 deployment relies on dial plans to transform phone numbers as calls flow through the softswitch. Whether you need to add area codes, strip prefixes, or rewrite entire number sequences, VOS3000 dial plan wildcards give you the pattern-matching power to do it precisely and efficiently. The two wildcard characters โ€” asterisk (*) and question mark (?) โ€” are the foundation of flexible number transformation in VOS3000, and understanding how they work is essential for any VoIP engineer configuring routing rules. ๐Ÿ”ง

โš™๏ธ The asterisk wildcard matches any number of digits (including zero), making it ideal for catch-all rules that apply regardless of the dialed number length. The question mark wildcard matches exactly one digit, giving you fine-grained control when you need to match specific number patterns with positional precision. Together, these VOS3000 dial plan wildcards enable sophisticated number transformation rules that handle national dialing conventions, international prefix manipulation, and gateway-specific number formatting requirements. ๐Ÿ“Š

๐ŸŽฏ This guide covers every aspect of VOS3000 dial plan wildcards: how the asterisk and question mark characters match digits in original prefix patterns, how they interact with target prefix replacement rules, how VOS3000 resolves conflicts between overlapping dial plans using longest-match priority, and practical configuration examples for common VoIP routing scenarios. Need expert help? WhatsApp us at +8801911119966 for professional VOS3000 configuration support. ๐Ÿ“ž

Table of Contents

๐Ÿ” What Are VOS3000 Dial Plan Wildcards?

โฑ๏ธ VOS3000 dial plan wildcards are special characters used in the Original Prefix field of dial plan rules to match variable digit patterns in dialed numbers. The VOS3000 softswitch evaluates incoming call numbers against dial plan rules, and when a match is found, it applies the corresponding Target Prefix transformation. The wildcard characters extend this matching capability beyond exact digit-to-digit comparison, enabling a single dial plan rule to cover an entire range of number patterns. ๐Ÿ“ž

๐Ÿ’ก Why wildcards matter: Without wildcard matching, you would need to create a separate dial plan rule for every possible number prefix โ€” an impractical approach when dealing with thousands of area codes, mobile prefixes, or international dialing patterns. Wildcards let you express complex matching logic in a single rule, reducing configuration complexity and making your dial plan table manageable and maintainable.

๐Ÿ“ Location in VOS3000 Client: Operation management โ†’ Gateway operation โ†’ Routing gateway โ†’ Dial plan (also available in Mapping gateway and Phone dial plans)

๐Ÿ“‹ The Two VOS3000 Dial Plan Wildcards Characters

๐ŸŒ VOS3000 supports exactly two wildcard characters for pattern matching in dial plans, each with distinct matching behavior:

WildcardNameMatching BehaviorUse Case
*Asterisk (star)Matches any number of digits, including zero digitsCatch-all rules, add/remove/replace entire prefixes
?Question markMatches exactly one digit (0-9)Positional matching where a specific digit position is variable

๐Ÿ”‘ Key distinction: The asterisk (*) is greedy โ€” it consumes as many digits as possible in the match. The question mark (?) is precise โ€” it matches exactly one digit and no more. You can use multiple question marks in a row (e.g., ???) to match exactly three digits, but you cannot control the specific digit value โ€” each ? matches any single digit from 0 to 9.

โš™๏ธ Asterisk Wildcard (*) โ€” Match Any Number of Digits

๐Ÿ”ง The asterisk wildcard is the most powerful and most frequently used of the VOS3000 dial plan wildcards. In the Original Prefix field, the asterisk matches any sequence of digits โ€” including an empty sequence. This means a dial plan with Original Prefix โ€œ*โ€ will match every possible dialed number, making it the ultimate catch-all rule.

According to the official VOS3000 2.1.9.07 manual ยง4.3.1, the following examples demonstrate asterisk wildcard behavior in dial plans:

Original PrefixTarget PrefixInput NumberResultExplanation
*025*117025117Add prefix 025 before any number
*(empty)02584316146(empty)Delete entire number
*123456780258431614612345678Replace entire number with fixed value
025*01002584316146010Replace 025-prefixed number with 010
025*010*0258431614601002584316146Add prefix 010 while keeping 025 prefix

๐Ÿ’ก How the asterisk preserves digits: When you use the asterisk in both the Original Prefix and Target Prefix, the digits matched by the asterisk in the original number carry through to the target. For example, Original Prefix โ€œ025*โ€ matches โ€œ02584316146โ€ where the asterisk matches โ€œ84316146โ€. In Target Prefix โ€œ010*โ€, the โ€œ010โ€ is the new prefix and the โ€œ*โ€ carries forward the matched digits โ€œ84316146โ€, producing โ€œ01084316146โ€. This is documented in the VOS3000 manual ยง4.3.1. For SIP protocol standards, refer to RFC 3261.

๐Ÿ“‹ Asterisk Wildcard Priority Rules

โš ๏ธ The VOS3000 dial plan wildcards follow strict priority rules when multiple dial plan rules could match the same number. Understanding these rules is critical to avoid unexpected number transformations:

RuleDescriptionExample
Longest match winsWhen multiple dial plans match, the one with the longest original prefix is selectedโ€œ010โ€ wins over โ€œ0โ€ for number 01012345678
* has lowest priorityThe asterisk wildcard pattern is only matched when no other specific pattern matchesโ€œ025*โ€ matches only if no more specific โ€œ0258โ€ rule exists
Exact match is highestAn exact prefix without wildcards always takes precedence over wildcard patterns of the same lengthโ€œ025โ€ exact beats โ€œ02?โ€ wildcard

๐Ÿ”‘ Practical implication: You can safely create a catch-all โ€œ*โ€ rule as a default transformation while adding more specific rules for particular prefixes. VOS3000 will always prefer the more specific rule. This layered approach is the recommended way to structure your dial plan configuration โ€” a broad default with narrow exceptions.

โ“ Question Mark Wildcard (?) โ€” Match Exactly One Digit

๐ŸŽฏ The question mark wildcard in VOS3000 dial plan wildcards matches exactly one digit at a specific position. This gives you positional control that the asterisk cannot provide. While the asterisk is broad and greedy, the question mark is narrow and precise โ€” it matches any single digit from 0 to 9, but only one digit in that exact position.

According to the VOS3000 manual ยง4.3.1, the question mark can appear multiple times in a single pattern, and each occurrence matches an independent digit. The following example from the manual illustrates this behavior:

Original PrefixTarget PrefixInput NumberResultExplanation
0??843184310258431614684316146Two ? wildcards match any two digits between 0 and 8431
*12345?780258431614612345178 (or similar)? in target prefix becomes a random digit

๐Ÿ’ก Question mark in target prefix: When the question mark appears in the Target Prefix field, it generates a random digit (0-9) at that position. This is different from the Original Prefix usage where it matches an existing digit. This distinction is crucial โ€” in the original prefix, ? matches any digit; in the target prefix, ? produces a random digit. This feature is documented in ยง4.3.1 of the VOS3000 manual.

๐Ÿ“‹ Common Question Mark Pattern Examples

PatternMatchesDoes NOT MatchScenario
0??84310258431โ€ฆ, 0138431โ€ฆ, 0998431โ€ฆ08431โ€ฆ (only one digit after 0)Area codes with two-digit variable middle
00?001, 002, 003โ€ฆ 00900, 0012 (too many/few digits)International prefix with single country digit
13???????1301234567, 139876543213, 13012 (too short)Mobile number pattern with fixed prefix

๐Ÿ–ฅ๏ธ Combined Wildcard Patterns with Semicolons and Ranges

๐Ÿ”„ The VOS3000 dial plan wildcards become even more powerful when combined with semicolon-separated targets and numeric ranges. The VOS3000 manual ยง4.3.1 documents that multiple substitution targets can be specified using the semicolon (;) separator, and ranges can be expressed using a dash (-) between numbers.

Original PrefixTarget PrefixInput NumberPossible ResultsExplanation
025*8008100-8008121025843161468008100 to 8008121 (randomly selected)Range generates numbers from 8008100 to 8008121
*12345678;8008100-8008121;12345?780258431614612345678 or 8008100-8008121 or 12345?78Randomly chooses one of the three rules, then applies

๐Ÿ’ก Semicolon behavior: When the target prefix contains semicolons, VOS3000 randomly selects one of the semicolon-separated rules at call time. This enables load-balanced number distribution across multiple target numbers โ€” a technique frequently used for distributing inbound calls across multiple service numbers or hunt groups. Combined with VOS3000 dial plan wildcards, this creates powerful routing patterns.

๐Ÿ“‹ Step-by-Step VOS3000 Dial Plan Wildcards Configuration

๐Ÿ–ฅ๏ธ Follow these steps to configure dial plan wildcard rules on a routing gateway, based on the VOS3000 2.1.9.07 manual ยง4.3.1:

Step 1: Access the Dial Plan Configuration ๐ŸŒ

  1. ๐Ÿ” Log in to VOS3000 Client
  2. ๐Ÿ“Œ Navigate: Operation management โ†’ Gateway operation โ†’ Routing gateway
  3. ๐Ÿ” Select the target routing gateway
  4. ๐Ÿ“‹ Go to the Dial plan tab in the gatewayโ€™s configuration

Step 2: Create Asterisk Wildcard Rules โฐ

  1. โž• Click Add to create a new dial plan row
  2. ๐Ÿ“ In the Original Prefix field, enter the wildcard pattern (e.g., โ€œ025*โ€ for all numbers starting with 025)
  3. ๐Ÿ“ In the Target Prefix field, enter the replacement pattern (e.g., โ€œ010*โ€ to prepend 010 while preserving the rest)
  4. ๐Ÿ’พ Save the dial plan configuration

Step 3: Create Question Mark Wildcard Rules ๐ŸŽฏ

  1. โž• Click Add to create a new dial plan row
  2. ๐Ÿ“ In the Original Prefix field, enter the positional wildcard pattern (e.g., โ€œ0??8431โ€ to match any two digits between 0 and 8431)
  3. ๐Ÿ“ In the Target Prefix field, enter the replacement (e.g., โ€œ8431โ€ to strip the leading 0 and two variable digits)
  4. ๐Ÿ’พ Save the configuration

Step 4: Verify Dial Plan Matching Order ๐Ÿ”

  1. ๐Ÿ“Š Review all dial plan rules to ensure more specific rules appear before generic ones
  2. ๐Ÿ”ง Remember: VOS3000 uses longest-match priority โ€” the rule with the longest matching original prefix wins
  3. ๐Ÿ“ž Test with sample numbers to verify the correct transformation is applied
  4. ๐Ÿ“ˆ Use the dial plan configuration guide for detailed walkthrough

๐Ÿ›ก๏ธ Common VOS3000 Dial Plan Wildcards Problems and Solutions

โš ๏ธ Misconfigured dial plan wildcard rules cause incorrect number transformations and failed call routing. Here are the most common problems and their solutions:

โŒ Problem 1: Wrong Dial Plan Matched โ€” Generic Rule Overriding Specific Rule

๐Ÿ” Symptom: A number starting with โ€œ025โ€ is being transformed by the โ€œ*โ€ catch-all rule instead of the โ€œ025*โ€ rule.

Related Post

๐Ÿ’ก Cause: VOS3000 always selects the dial plan with the longest matching original prefix. If your specific rule has a shorter effective match than another rule, the longer match wins.

โœ… Solutions:

  • ๐Ÿ”ง Make your specific ruleโ€™s original prefix longer โ€” e.g., use โ€œ0258โ€ instead of โ€œ025*โ€ if you only need to match 0258-prefixed numbers
  • ๐Ÿ“Š Verify the longest-match priority by testing with the exact number
  • ๐Ÿ“ž Review the call routing configuration to understand how dial plans interact with routing

โŒ Problem 2: Question Mark in Target Prefix Produces Unexpected Random Digits

๐Ÿ” Symptom: The transformed number contains random digits that were not in the original number.

๐Ÿ’ก Cause: The question mark (?) in the Target Prefix field generates a random digit, which is different from matching an existing digit in the Original Prefix.

โœ… Solutions:

  • ๐Ÿ”ง If you want to preserve digits from the original number, use the asterisk (*) in both original and target prefix fields
  • ๐Ÿ“Š Use the dollar sign ($) position keeper to preserve specific digit positions โ€” see our number transform guide
  • ๐Ÿ“ž Only use ? in target prefix when you intentionally want random digit generation

โŒ Problem 3: Asterisk Catch-All Rule Deleting All Numbers

๐Ÿ” Symptom: All dialed numbers are being deleted or replaced with empty strings.

๐Ÿ’ก Cause: A dial plan with Original Prefix โ€œ*โ€ and an empty Target Prefix removes all digits from the number. While this is valid per the VOS3000 manual ยง4.3.1, it may not be your intent.

โœ… Solutions:

  • ๐Ÿ”ง If you want to keep the number but add a prefix, use Target Prefix โ€œnewprefix*โ€ (e.g., โ€œ025*โ€)
  • ๐Ÿ“Š If you want to keep the number unchanged, set Original Prefix โ€œ0โ€ and Target Prefix โ€œ0โ€
  • ๐Ÿ“ž Remove the catch-all rule entirely if no default transformation is needed

๐Ÿ’ก VOS3000 Dial Plan Wildcards Best Practices

๐ŸŽฏ Follow these best practices to optimize your VOS3000 dial plan wildcards configuration for reliable number transformation:

Best PracticeRecommendationReason
๐Ÿ“Š Order by specificityCreate specific rules before generic * rulesโœ… Longest-match priority ensures correct rule applies
๐Ÿ”ง Use ? for positional matchingUse ? when you know the digit position is variable๐ŸŽฏ More precise than * for known-length patterns
๐Ÿ”„ Test with real numbersVerify every wildcard rule with test calls๐Ÿ›ก๏ธ Prevents misrouted calls in production
๐Ÿ“‹ Document wildcard rulesAdd memo comments explaining each wildcard pattern๐Ÿ“ž Easier troubleshooting and team collaboration
โš ๏ธ Avoid * with empty targetNever use Original โ€œ*โ€ with empty Target unless intentional๐Ÿ›ก๏ธ Prevents accidental number deletion
๐Ÿ“ˆ Combine with escape charactersUse L/E/G/F escape characters for length-based matching๐Ÿ”ง Adds number-length constraints to wildcard rules

๐Ÿ’ก Pro tip: VOS3000 dial plan wildcards work together with prefix settings and the callee rewrite rule to create a complete number transformation pipeline. Use dial plans for routing-level transformations and callee rewrite rules for account-level adjustments. For complex configurations, reach us at +8801911119966 for expert guidance. ๐Ÿ”ง

๐Ÿ“Š Complete VOS3000 Dial Plan Wildcard Reference

๐Ÿ“‹ Here is the complete reference table for all wildcard behaviors, sourced from the official VOS3000 2.1.9.07 manual ยง4.3.1:

CharacterUsage LocationBehaviorPriority
* in Original PrefixPattern matchingMatches any number of digits (including zero)Lowest โ€” only matched when no other rule matches
* in Target PrefixReplacementInserts the digits matched by the corresponding * in Original PrefixN/A โ€” substitution only
? in Original PrefixPattern matchingMatches exactly one digit at that positionSame as exact match length
? in Target PrefixReplacementGenerates a random digit (0-9) at that positionN/A โ€” substitution only

โ“ Frequently Asked Questions

โ“ What are VOS3000 dial plan wildcards?

โฑ๏ธ VOS3000 dial plan wildcards are special characters used in the Original Prefix and Target Prefix fields of dial plan rules to match and transform variable digit patterns. The two wildcard characters are the asterisk (*), which matches any number of digits including zero, and the question mark (?), which matches exactly one digit. These wildcards enable you to create flexible number transformation rules that handle a wide range of dialed number patterns without needing a separate rule for each possible number. They are documented in the VOS3000 2.1.9.07 manual ยง4.3.1.

โ“ How does the asterisk wildcard work in VOS3000 dial plans?

๐Ÿ”ง The asterisk (*) in the Original Prefix matches any sequence of digits โ€” from zero digits to an unlimited number. When used in the Target Prefix, it inserts the digits that were matched by the corresponding asterisk in the Original Prefix. For example, Original Prefix โ€œ025*โ€ with Target Prefix โ€œ010*โ€ transforms โ€œ02584316146โ€ into โ€œ01084316146โ€ โ€” the asterisk in the original prefix matches โ€œ84316146โ€ and the asterisk in the target prefix carries those digits forward after the new โ€œ010โ€ prefix. This carry-forward behavior is the key to prefix manipulation in VOS3000 dial plans.

โ“ How does the question mark wildcard work in VOS3000 dial plans?

๐ŸŽฏ The question mark (?) serves two different purposes depending on where it appears. In the Original Prefix, it matches exactly one digit (0-9) at that position. For example, โ€œ0??8431โ€ matches any number starting with 0, followed by any two digits, followed by 8431. In the Target Prefix, the question mark generates a random digit (0-9) at that position. This dual behavior is important to understand โ€” matching in the original prefix versus generating in the target prefix โ€” as documented in the VOS3000 manual ยง4.3.1.

โ“ What is the priority of VOS3000 dial plan wildcards?

๐Ÿ“‹ VOS3000 uses longest-match priority for dial plan selection. When multiple dial plan rules could match a given number, the rule with the longest original prefix is selected. The asterisk (*) wildcard has the lowest priority and will only be matched when no other more specific pattern matches. This means you can safely create a catch-all โ€œ*โ€ rule as a default while adding more specific rules like โ€œ025*โ€ or โ€œ010โ€ for particular prefixes โ€” VOS3000 will always prefer the more specific match.

โ“ Can I combine * and ? wildcards in the same dial plan rule?

๐Ÿ”„ Yes, you can combine asterisk and question mark wildcards in the same dial plan ruleโ€™s Original Prefix. For example, โ€œ0??*โ€ would match numbers starting with 0, followed by any two digits, followed by any number of additional digits. However, combining wildcards in the Target Prefix requires careful attention โ€” the asterisk carries matched digits forward while the question mark generates random digits. Understanding the interaction between these two behaviors is essential for correct number transformation.

โ“ How do VOS3000 dial plan wildcards interact with semicolons and ranges?

๐Ÿ“Š The VOS3000 dial plan wildcards work together with semicolons and ranges in the Target Prefix field. Semicolons (;) separate multiple substitution targets โ€” VOS3000 randomly selects one target at call time. Ranges (e.g., 8008100-8008121) define a span of numbers from which one is randomly selected. You can combine these with wildcards: for example, Target Prefix โ€œ12345678;8008100-8008121;12345?78โ€ would randomly choose between three different transformation patterns for each call. This is documented in ยง4.3.1 of the VOS3000 manual.

๐Ÿ“ž Still have questions? WhatsApp us at +8801911119966 for quick answers. ๐Ÿ“ž

๐Ÿ“ž Need Expert Help with VOS3000 Dial Plan Wildcards?

๐Ÿ”ง Proper VOS3000 dial plan wildcards configuration is essential for accurate number transformation, correct call routing, and efficient prefix management across your VoIP network. Misconfigured wildcard rules lead to misrouted calls, incorrect billing prefixes, and failed call completion. Whether you need help designing wildcard patterns, configuring prefix transformation rules, or troubleshooting dial plan issues, our team is ready to assist. Reach us on WhatsApp at +8801911119966 for professional VOS3000 support and configuration services. ๐Ÿ“ž


๐Ÿ“ž Need Professional VOS3000 Setup Support?

For professional VOS3000 installations and deployment, VOS3000 Server Rental Solution:

๐Ÿ“ฑ WhatsApp: +8801911119966
๐ŸŒ Website: www.vos3000.com
๐ŸŒ Blog: multahost.com/blog
๐Ÿ“ฅ Downloads: VOS3000 Downloads


Recent Posts

  • VOS3000

VOS3000 Password Policy Configuration: Robust Length and Character Rules

Master VOS3000 password policy configuration with SERVER_PASSWORD_LENGTH and SERVER_TERMINAL_ADDITIONAL_CHARACTERS. Enforce strong passwords for telecom security. Read More

2 hours ago
  • VOS3000

VOS3000 Login Brute-Force Lockout: Essential Failed Disable Time

Configure VOS3000 login brute-force lockout with SERVER_LOGIN_FAILED_DISABLE_TIME. Lock accounts after repeated failed logins and prevent dictionary attacks. Read More

2 hours ago
  • VOS3000

VOS3000 Concurrent Call Abuse Blacklist: Robust SS_BLACK_LIST_CALLER_CONCURRENT

Configure VOS3000 concurrent call abuse blacklist with SS_BLACK_LIST_CALLER_CONCURRENT. Auto-block callers exceeding concurrent limits, stop SIM-box fraud. Read More

2 hours ago

This website uses cookies.