π When VOS3000 sends a SIP INVITE to a routing gateway, which header determines the callee number? Is it the To header, the Request-Line, or the Contact header? The answer depends on a critical β yet often overlooked β parameter: SS_SIP_ROUTING_GATEWAY_INVITE_USE_CONTACT, which governs the VOS3000 SIP routing gateway contact behavior for outbound INVITE messages. π―
π By default, this parameter is set to Off, meaning VOS3000 uses the standard SIP convention where the callee number is taken from the To header. But when enabled (On), VOS3000 extracts the callee number from the request-line of the INVITE and preserves the original number in the To field. This subtle change has a significant impact on how calls are routed through your VoIP softswitch β especially when interfacing with gateways that rely on the Contact header or request-line for number identification. π§
π‘ This guide covers everything you need to know about the VOS3000 SIP routing gateway contact setting β from the core parameter SS_SIP_ROUTING_GATEWAY_INVITE_USE_CONTACT to the related per-gateway SIP settings (Reply address, Request address, Peer number information) and Mapping Gateway callee/caller field selection. All data is sourced exclusively from the official VOS3000 V2.1.9.07 Manual, Section 4.3.5.2 (Table 4-3). For expert assistance, contact us on WhatsApp at +8801911119966. π‘
π The VOS3000 SIP routing gateway contact parameter controls how VOS3000 constructs the SIP INVITE message when sending calls to a routing gateway. Specifically, it determines whether the callee number should be extracted from the request-line and whether the original number should be preserved in the To field. π
π According to the official VOS3000 V2.1.9.07 Manual, Table 4-3:
| Attribute | Value |
|---|---|
| π Parameter Name | SS_SIP_ROUTING_GATEWAY_INVITE_USE_CONTACT |
| π’ Default Value | Off |
| π Description | Use number from request-line as callee and keep original number in To field when send invite to callee |
| π Options | On / Off |
| π Navigation | Operation management β Softswitch management β Additional settings β SIP parameter |
π‘ Key insight: When this parameter is set to Off (default), VOS3000 follows the standard SIP RFC 3261 convention β the callee number in the INVITE is determined by the To header, and the request-line matches. When set to On, VOS3000 extracts the callee number from the request-line of the incoming SIP message and uses that for routing, while keeping the original number in the To field of the outbound INVITE. This is essential when upstream gateways manipulate the request-line during transit. π‘
β οΈ Understanding and correctly configuring this parameter is critical for several reasons:
π To understand this parameter, you need to see how the SIP INVITE message changes based on the setting. Here is a text-based comparison of the two modes: π‘
π SIP INVITE Message Structure β SS_SIP_ROUTING_GATEWAY_INVITE_USE_CONTACT: βββββββββββββββββββββββββββββββββββββββββββββββββββββ β¬οΈ Mode: OFF (Default) βββββββββββββββββββββββββββββββββββββββββββββββββββββ INVITE sip:8801234567@gateway.example.com SIP/2.0 β Request-Line Via: SIP/2.0/UDP 10.0.0.1:5060 From: "Caller" <sip:8801999888@vos3000.local>;tag=abc To: <sip:8801234567@gateway.example.com> β Callee = To header Contact: <sip:8801999888@10.0.0.1:5060> Content-Type: application/sdp π Result: Callee number = 8801234567 (from To header) Request-Line and To header contain the SAME number βββββββββββββββββββββββββββββββββββββββββββββββββββββ β¬οΈ Mode: ON βββββββββββββββββββββββββββββββββββββββββββββββββββββ INVITE sip:8801234567@gateway.example.com SIP/2.0 β Request-Line (used for routing) Via: SIP/2.0/UDP 10.0.0.1:5060 From: "Caller" <sip:8801999888@vos3000.local>;tag=abc To: <sip:ORIGINAL_NUMBER@gateway.example.com> β Original number PRESERVED Contact: <sip:8801999888@10.0.0.1:5060> Content-Type: application/sdp π Result: Callee number = 8801234567 (from Request-Line) To field keeps the ORIGINAL number (before any manipulation)
π Critical distinction: When the parameter is On, the request-line contains the number that VOS3000 uses for actual routing (the callee number), while the To header retains the original dialed number before any prefix manipulation or routing transformation. This is extremely useful when VOS3000 applies prefix conversion rules β the gateway receives the routing number in the request-line but the original number remains in the To field for reference. π―
π Beyond the global SS_SIP_ROUTING_GATEWAY_INVITE_USE_CONTACT parameter, VOS3000 provides per-gateway SIP settings that control how reply and request signals are addressed. These settings are configured at the individual gateway level under Routing Gateway β Additional settings β Protocol β SIP. π οΈ
π¬ The Reply address setting determines where VOS3000 sends the reply signal after receiving a SIP request from the gateway. This is critical for ensuring SIP responses (such as 200 OK, 180 Ringing) reach the correct destination. π‘
| Option | Description | Recommendation |
|---|---|---|
| π’ Socket | Send reply to the source IP and port from which the SIP request was received | β Recommended β most reliable for NAT traversal |
| π΅ Via port | Send reply to the port specified in the Via header | β οΈ Use when gateway requires Via-based routing |
| π‘ Via | Send reply to the address and port in the Via header | β οΈ Standard SIP behavior per RFC 3261 |
π‘ Best practice: The Socket option is recommended for the Reply address because it ensures SIP responses are sent back to the actual source of the request, which is critical for NAT traversal scenarios. For a deeper understanding of SIP signal flow, see our VOS3000 SIP call flow guide. π
π¨ The Request address setting determines where VOS3000 sends the request signal after a call is established. This setting directly relates to the VOS3000 SIP routing gateway contact concept because it controls whether VOS3000 uses the Contact header or socket information for subsequent requests. π§
| Option | Description | Recommendation |
|---|---|---|
| π’ Socket | Send request to the source IP and port from which the SIP request was received | β Recommended β most reliable |
| π΅ Contact Port | Send request to the port specified in the Contact header | β οΈ Use when gateway advertises a specific Contact port |
| π‘ Contact | Send request to the full address in the Contact header | β οΈ Standard SIP per RFC 3261 |
π§ How this relates to the Contact header: The Request address setting determines how VOS3000 uses the Contact header for subsequent in-dialog requests (such as re-INVITE or BYE). When set to Contact, VOS3000 follows the SIP standard and sends requests to the URI in the Contact header. When set to Socket, VOS3000 uses the source socket address instead β which can be more reliable in NAT scenarios. This is especially important when combined with SS_SIP_ROUTING_GATEWAY_INVITE_USE_CONTACT. π‘
π The Peer number information setting in the Routing Gateway SIP configuration determines how VOS3000 selects the caller number from incoming SIP signals. This works in conjunction with the Contact and request-line settings to ensure proper number identification for both caller and callee. π―
π For complete gateway configuration details, see our VOS3000 gateway configuration routing mapping guide. π§
π While the Routing Gateway settings control how VOS3000 sends INVITE messages, the Mapping Gateway settings control how VOS3000 receives and interprets incoming SIP signals. These are configured at Mapping Gateway β Additional settings β Protocol β SIP. π‘
π― The Mapping Gateway provides a setting to determine which SIP field VOS3000 uses to extract the callee number from incoming INVITE messages. This is the inbound counterpart to SS_SIP_ROUTING_GATEWAY_INVITE_USE_CONTACT: π
| Callee Source Field | Description | When to Use |
|---|---|---|
| π© To | Extract callee number from the SIP To header | β Default β standard SIP behavior, use when gateways follow RFC 3261 |
| π¨ Request-Line | Extract callee number from the SIP Request-Line | β οΈ Use when upstream gateway modifies the request-line with the routing number |
π‘ Critical relationship: The Mapping Gateway callee setting (To vs Request-Line) is the receiving side of the same concept that SS_SIP_ROUTING_GATEWAY_INVITE_USE_CONTACT handles on the sending side. If an upstream system sends INVITE messages where the request-line contains the routing number (different from the To header), you must configure the Mapping Gateway to extract the callee from the Request-Line. Similarly, if your downstream gateway expects the callee in the request-line, enable SS_SIP_ROUTING_GATEWAY_INVITE_USE_CONTACT. π
π€ The Mapping Gateway also provides settings for extracting the caller number from incoming SIP signals: π
| Caller Source Field | Description | When to Use |
|---|---|---|
| π© From | Extract caller number from the SIP From header | β Default β standard SIP behavior |
| π Remote-Party-ID | Extract caller number from the Remote-Party-ID header | β οΈ Use when upstream gateway sends caller ID in RPID header |
| π₯οΈ Display | Extract caller number from the Display name portion of the From header | β οΈ Use when caller ID is in the display name, not the URI |
π Practical tip: When connecting to carrier gateways that manipulate caller ID through P-Asserted-Identity or Remote-Party-ID headers, configure the Mapping Gateway caller field accordingly. For more on caller ID management, see our VOS3000 callee rewrite rule and prefix conversion guide. π§
π To fully understand how SS_SIP_ROUTING_GATEWAY_INVITE_USE_CONTACT interacts with per-gateway settings, here is a complete signal flow diagram: π‘
π VOS3000 SIP Routing Gateway Contact β Complete Signal Flow:
ββββββββββββββββ ββββββββββββββββ ββββββββββββββββ
β Calling β SIP β VOS3000 β SIP β Routing β
β Endpoint β INVITE β Softswitch β INVITE β Gateway β
ββββββββ¬ββββββββ ββββββββ¬ββββββββ ββββββββ¬ββββββββ
β β β
ββββ INVITE βββββββββββββΊβ β
β To: 8801234567 β β
β From: 8801999888 β β
β β β
β π Mapping Gateway: β β
β Callee from: To/ β β
β Request-Line β β
β Caller from: From/ β β
β RPID/Display β β
β β β
β β π€ SS_SIP_ROUTING_ β
β β GATEWAY_INVITE_USE_ β
β β CONTACT = ? β
β β β
β ββββ INVITE ββββββββββββββΊβ
β β ββββββββββββββββββββ β
β β β OFF (default): β β
β β β Request-Line: β β
β β β 8801234567 β β
β β β To: 8801234567 β β
β β ββββββββββββββββββββ β
β β ββββββββββββββββββββ β
β β β ON: β β
β β β Request-Line: β β
β β β 8801234567 β β
β β β To: ORIGINAL β β
β β β (preserved) β β
β β ββββββββββββββββββββ β
β β β
β β π¨ Reply address: β
β β Socket / Via port / Viaβ
β β π€ Request address: β
β β Socket / Contact Port β
β β / Contact β
β β β
ββββ 200 OK ββββββββββββββββ 200 OK ββββββββββββββ
β β β
ββββββββββββββββββββββββββ΄ββββββββββββββββββββββββββ
π― Key takeaway: The Mapping Gateway settings control what VOS3000 reads from incoming INVITE messages, while SS_SIP_ROUTING_GATEWAY_INVITE_USE_CONTACT and the per-gateway Reply/Request address settings control what VOS3000 writes into outgoing INVITE messages. For a comprehensive understanding of SIP session management, see our VOS3000 SIP session guide. π
π§ Follow these steps to configure the VOS3000 SIP routing gateway contact and related settings on your system:
π After configuration, verify the Contact header behavior by monitoring the SIP INVITE flow. Use the SIP debug tools to confirm that the request-line and To header are populated correctly. For comprehensive debugging techniques, see our VOS3000 SIP debug guide. π§
π― The decision to enable or disable SS_SIP_ROUTING_GATEWAY_INVITE_USE_CONTACT depends on your specific gateway interoperability requirements. Here is a detailed comparison: π‘
| Aspect | Off (Default) | On |
|---|---|---|
| π Callee Number Source | To header | Request-Line |
| π To Field Content | Same as request-line callee | Original number (preserved) |
| π Request-Line | Matches To header | Contains routing number |
| π‘οΈ RFC 3261 Compliance | β Full compliance | β οΈ Modified behavior |
| π§ Best For | Standard SIP gateways, carriers that follow RFC 3261 | Gateways that read callee from request-line, prefix conversion scenarios |
| π Billing Impact | CDR shows final routing number | CDR can preserve original dialed number |
| π Compatibility | Broad β works with most gateways | Specific β needed for certain gateway types |
π‘ Decision rule: Keep the default Off unless you encounter a specific gateway that routes based on the request-line callee number instead of the To header. Most modern SIP gateways follow RFC 3261 and use the To header. However, some legacy systems or carrier equipment may depend on the request-line β in those cases, enable the parameter to On. For help identifying which mode your gateway requires, contact us on WhatsApp at +8801911119966. π
π Here is the complete reference for all per-gateway SIP settings related to the VOS3000 SIP routing gateway contact configuration: π
| Setting | Location | Options | Recommended |
|---|---|---|---|
| π¬ Reply address | Routing Gateway β Protocol β SIP | Socket / Via port / Via | β Socket |
| π€ Request address | Routing Gateway β Protocol β SIP | Socket / Contact Port / Contact | β Socket |
| π€ Peer number info | Routing Gateway β Protocol β SIP | Caller selection mode | Depends on gateway |
| π Callee field | Mapping Gateway β Protocol β SIP | To / Request-Line | To (default) |
| π€ Caller field | Mapping Gateway β Protocol β SIP | From / Remote-Party-ID / Display | From (default) |
π§ For complete documentation on all SIP parameters, see our VOS3000 parameter description reference. π
π― Different gateway types require different configurations for the VOS3000 SIP routing gateway contact settings. Here are recommended configurations based on common deployment scenarios: π‘
| Gateway Type | SS_SIP_ROUTING_GATEWAY_INVITE_USE_CONTACT | Callee Field (Mapping) | Reply / Request Address |
|---|---|---|---|
| π’ Standard SIP carrier | Off (default) | To | Socket / Socket |
| π Legacy gateway (request-line routing) | On | Request-Line | Socket / Socket |
| π PSTN gateway (prefix conversion) | On | Request-Line | Socket / Contact |
| π‘ NAT-traversed gateway | Off (default) | To | Socket / Socket |
| π Wholesale carrier (multiple prefixes) | On | Request-Line | Socket / Contact |
π‘ Key pattern: Enable SS_SIP_ROUTING_GATEWAY_INVITE_USE_CONTACT (On) when your gateway performs prefix conversion and you need the original number preserved in the To field while the routing number goes in the request-line. For more on prefix conversion, see our VOS3000 routing optimization guide. π§
β οΈ Misconfigured Contact header settings can cause a range of call routing issues. Here are the most common problems and their solutions:
π Symptom: VOS3000 applies a prefix conversion rule, but the downstream gateway still routes the call using the original number instead of the converted number.
π‘ Cause: SS_SIP_ROUTING_GATEWAY_INVITE_USE_CONTACT is set to Off, so both the request-line and To header contain the original number. The gateway reads the To header and ignores the prefix conversion.
β Solutions:
π Symptom: Downstream gateway returns 404 Not Found for calls that should be routable, even though the callee number exists in the gatewayβs routing table.
π‘ Cause: The gateway extracts the callee number from a different header than what VOS3000 is populating. For example, the gateway reads the request-line but VOS3000 is only populating the To header (parameter set to Off).
β Solutions:
π Symptom: Call Detail Records show the routing number (with prefix) instead of the original dialed number, making billing reconciliation difficult.
π‘ Cause: SS_SIP_ROUTING_GATEWAY_INVITE_USE_CONTACT is Off, so the To header always contains the same number as the request-line β no original number is preserved.
β Solutions:
π Symptom: After enabling SS_SIP_ROUTING_GATEWAY_INVITE_USE_CONTACT, calls connect but audio only flows in one direction.
π‘ Cause: The Request address setting is configured to use Contact or Contact Port, and the Contact header in the gatewayβs 200 OK response points to an incorrect or unreachable address.
β Solutions:
β Use this checklist when deploying or tuning your VOS3000 SIP routing gateway contact settings:
| Check | Action | Status |
|---|---|---|
| π 1 | Determine if downstream gateway reads callee from To or Request-Line | β |
| π 2 | Set SS_SIP_ROUTING_GATEWAY_INVITE_USE_CONTACT to On if gateway uses Request-Line | β |
| π 3 | Configure Routing Gateway Reply address (Socket recommended) | β |
| π 4 | Configure Routing Gateway Request address (Socket recommended for NAT) | β |
| π 5 | Configure Mapping Gateway Callee field (To or Request-Line) | β |
| π 6 | Configure Mapping Gateway Caller field (From, Remote-Party-ID, or Display) | β |
| π 7 | Test with SIP debug β verify INVITE header fields match expected values | β |
| π 8 | Verify CDR records show correct callee number for billing | β |
π Need help configuring your gateway Contact header settings? Contact our VOS3000 experts on WhatsApp at +8801911119966 for personalized assistance. π§
π SS_SIP_ROUTING_GATEWAY_INVITE_USE_CONTACT is a VOS3000 SIP parameter that controls how the callee number is placed in outbound INVITE messages to routing gateways. When set to Off (default), VOS3000 follows standard SIP behavior where the To header and request-line contain the same callee number. When set to On, VOS3000 uses the number from the request-line as the callee for routing and keeps the original number in the To field. This is essential for gateways that read the callee from the request-line rather than the To header. π§
π Enable SS_SIP_ROUTING_GATEWAY_INVITE_USE_CONTACT (On) when your downstream routing gateway extracts the callee number from the SIP request-line instead of the To header. This is common with legacy PSTN gateways, gateways that perform number manipulation, and carrier equipment that routes based on the INVITE request-line. You should also enable it when you apply prefix conversion rules and need the original dialed number preserved in the To field for billing and CDR accuracy. π‘
π These settings control opposite directions of SIP signaling. SS_SIP_ROUTING_GATEWAY_INVITE_USE_CONTACT (Routing Gateway) controls what VOS3000 writes into outbound INVITE messages β it determines whether the callee comes from the request-line and whether the To field preserves the original number. The Mapping Gateway Callee field (To / Request-Line) controls what VOS3000 reads from inbound INVITE messages β it determines which SIP field VOS3000 uses to extract the callee number from incoming calls. They work together to ensure proper number handling in both directions. π
π¬ The Reply address setting in the Routing Gateway SIP configuration determines where VOS3000 sends SIP response messages (such as 200 OK, 180 Ringing, 403 Forbidden) after receiving a request from the gateway. When set to Socket (recommended), VOS3000 sends replies to the source IP address and port of the incoming SIP request. When set to Via, it uses the address in the Via header. When set to Via port, it uses the port from the Via header. The Socket option is most reliable for NAT traversal scenarios. π‘οΈ
π€ The Request address setting controls where VOS3000 sends in-dialog SIP requests (like re-INVITE or BYE) after call establishment. When set to Contact, VOS3000 sends requests to the full URI in the Contact header of the gatewayβs response. When set to Contact Port, it uses only the port from the Contact header. When set to Socket (recommended), it sends to the source IP:port of the received signal. This is closely related to the VOS3000 SIP routing gateway contact behavior because it determines how the Contact header is used for subsequent signaling. π§
βοΈ The SS_SIP_ROUTING_GATEWAY_INVITE_USE_CONTACT parameter is a global SIP parameter configured at the system level under Operation management β Softswitch management β Additional settings β SIP parameter. However, the related per-gateway settings (Reply address, Request address, Peer number information for Routing Gateways; Callee and Caller field selection for Mapping Gateways) are configured at the individual gateway level. This means the base Contact header behavior is global, but the specific address routing and field selection can be customized per gateway. For system-level parameter documentation, see VOS3000 system parameters. π
π When SS_SIP_ROUTING_GATEWAY_INVITE_USE_CONTACT is set to On, VOS3000 preserves the original callee number in the To field of the outbound INVITE. The request-line contains the number that VOS3000 uses for actual routing (which may include prefix modifications or routing transformations), while the To field retains the original dialed number before any manipulation. This dual-number approach ensures that downstream gateways can route using the request-line number while billing and CDR systems can reference the original number from the To field. π―
π Explore these related VOS3000 guides for deeper understanding:
For professional VOS3000 installations and deployment, VOS3000 Server Rental Solution:
π± WhatsApp: +8801911119966
π Website: www.vos3000.com
π Blog: multahost.com/blog
π₯ Downloads: VOS3000 Downloads
VOS3000 LRN number portability configuration for accurate US carrier lookup. Enable LRN query mode, handle…
VOS3000 server end reasons reference with all 25 codes. Understand call termination causes in CDRs…
VOS3000 LRN server configuration with SS_LRN_SERVER_IP and PORT parameters. Set up external LRN dip server…
VOS3000 H323 Q850 cause codes reference with 60+ ITU-T codes. Map Q.850 values to SIP…
VOS3000 SIP response codes CDR reference with 30+ codes. Understand 1xx through 6xx SIP responses…
Master VOS3000 SIP publish expire with SS_SIP_PUBLISH_EXPIRE. Configure 30-7200s timeout for gateway concurrency control, PUBLISH…