Difference between revisions of "M4 Termination Points"
(23 intermediate revisions by 5 users not shown) | |||
Line 1: | Line 1: | ||
=Description= | =Description= | ||
Termination Point is connection to some final entity (device/line/trunk/provider/supplier/etc) where call will be terminated. | The Termination Point is a connection to some final entity (device/line/trunk/provider/supplier/etc) where the call will be terminated. | ||
The call comes from [[M4 Origination Points | Origination Points]] and goes to Termination Point. | |||
Termination Points are assigned to [[ | Termination Points are assigned to [[M4 Dial Peers | Dial Peers]].<br> | ||
<br><br> | |||
==Timeouts== | ==Timeouts== | ||
* '''Progress Timeout''' – allows | * '''Progress Timeout''' – allows limiting the maximum time we will wait before we get media (whether it's early media (SIP 183), ringing (SIP 180), or answer (SIP 200)). Leave 0 for unlimited. | ||
* '''Ringing Timeout''' – allows | * '''Ringing Timeout''' – allows limiting the ringing duration in seconds. Leave 0 for unlimited. The minimal value is 10 seconds. | ||
* '''Call Timeout''' – allows to limit answered call duration. Leave 0 for unlimited. | * '''Call Timeout''' – allows to limit answered call duration. Leave 0 for unlimited. | ||
<br><br> | |||
==Termination Point== | ==Termination Point== | ||
Line 17: | Line 20: | ||
* '''Act as Termination Point''' - turns on/turns of Termination Point. If selected No and saved, all settings of Termination Point will be erased.<br> | * '''Act as Termination Point''' - turns on/turns of Termination Point. If selected No and saved, all settings of Termination Point will be erased.<br> | ||
* '''Active''' - activates/deactivates Termination Point.<br> | * '''Active''' - activates/deactivates Termination Point.<br> | ||
* '''Capacity''' - limits the number of concurrent calls to this termination point.<br> | * '''Capacity''' - limits the number of concurrent calls to this termination point.<br> | ||
* ''' | * '''Authentication''' - allows to Register with username and password.<br> | ||
* ''' | * '''Manage A number''' and '''Manage B number''' - allows to Transform, Blacklist and Whitelist Source and Destination numbers/ | ||
Old Format transformation examples can be found [http://wiki.kolmisoft.com/index.php/M4_Destination_Transformation here] and [http://wiki.kolmisoft.com/index.php/M4_Source_Transformation here].<br> | |||
Regexp transformation examples can be found [http://wiki.kolmisoft.com/index.php/M4_Regexp_Examples#Regexp_for_transformation here]. | |||
<br><br> | |||
==Termination Point Tariffs== | ==Termination Point Tariffs== | ||
[[File:TerminationPoint_Tariffs.png]] | [[File:TerminationPoint_Tariffs.png]] | ||
* '''Tariff''' - Tariff used for Termination Point accounting.<br> | * '''Tariff''' - Tariff used for Termination Point accounting.<br> | ||
* '''Use Tariffs by CLIs''' – disabled by default.<br> | * '''Use Tariffs by CLIs''' – disabled by default. When enabling this option, the system asks to choose tariff and number pool. If CLI is found in the number pool, the provider tariff will be changed to the chosen one.<br> | ||
<br><br> | |||
==Codecs== | ==Codecs== | ||
Line 42: | Line 39: | ||
Define which Codecs will be offered when dialing Terminator (in the order they are listed). | Define which Codecs will be offered when dialing Terminator (in the order they are listed). | ||
* '''Enforce leg A Codecs to leg B''' - if this option is enabled in Terminator settings, | * '''Enforce leg A Codecs to leg B''' - if this option is enabled in Terminator settings, M4 will ignore selected Terminator Codecs and will offer the same Codecs (in the same order) from leg A to leg B. | ||
<br><br> | |||
== CallerID == | == CallerID == | ||
* '''Name''' - set name part for CallerID.<br> | * '''Name''' - set name part for CallerID.<br> | ||
* '''Number''' - set number part for CallerID.<br> | * '''Number''' - set number part for CallerID.<br> | ||
* '''Random Number from Number Pool''' - set random number from Number Pool. Only number part for CallerID is set. | * '''Random Number from Number Pool''' - set random number from Number Pool. Only the number part for CallerID is set. | ||
** '''Random''' - Send random CallerID from Number Pool. | ** '''Random''' - Send random CallerID from Number Pool. | ||
** '''Pseudorandom with Deviation''' - Range can vary from 0 to 9999999. If 0 is chosen, then all numbers will be chosen same amount of times. If 9999999 is set, then numbers will be completely random. | ** '''Pseudorandom with Deviation''' - Range can vary from 0 to 9999999. If 0 is chosen, then all numbers will be chosen the same amount of times. If 9999999 is set, then numbers will be completely random. | ||
<br><br> | |||
== Advanced Settings == | == Advanced Settings == | ||
* '''Grace Time''' - Grace time in seconds. | * '''Grace Time''' - Grace time in seconds. | ||
* '''Limit up to X Calls, during Y seconds''' - allows controlling Calls per Second (CPS).<br> | |||
* '''Limit up to X Calls, during Y seconds''' - allows | <br><br> | ||
== Advanced Termination Point Settings == | == Advanced Termination Point Settings == | ||
* '''Periodic check''' – if enabled, periodic SIP OPTIONS requests will be sent to Termination Point to check if it is reachable. If Periodic Check is enabled and Termination Point does not respond to OPTIONS request then Termination Point will be marked as unreachable and will be skipped with '''HGC 324 - Unreachable Terminator skipped (Periodic Check is enabled)''' when making calls. Once Termination Point starts to respond to OPTIONS requests it will be marked as reachable and calls will be routed through this Termination Point. Termination Points are checked every 5 minutes. If the Periodic check is enabled, and Termination Point IP is reachable, in [[M4_Connection_Points|Connection Points]] window IP will be in green color. If Termination Point IP is NOT reachable, its IP will be in red color, also the UNCREACHABLE icon near IP will appear in the Termination Point edit window.<br> | |||
* '''TP Allows Media from any IP address''' – are we allowed to pass any media IP address to Termination Point (direct media from OP)? | |||
* '''Periodic check''' | * '''Add STIR/SHAKEN Identity''' – should we add the SIP Identity header when calling to this Termination Point? More info on [[M4 STIR/SHAKEN|STIR/SHAKEN]]. | ||
* ''' | * '''STIR/SHAKEN Attestation Level''' – set attestation level. A, B, C, or Default (use stirshaken_attest_level from /etc/m2/system.conf). More info on [[M4 STIR/SHAKEN|STIR/SHAKEN]]. | ||
* ''' | * '''Fix NAT'ed Contact''' – When this setting is enabled, M4 replaces the local IP in the Contact header with the source IP. | ||
<br><br> | |||
== Termination Point Signaling Settings == | == Termination Point Signaling Settings == | ||
* '''Remote-Party-ID to TP''' - same options as for ''' P-Asserted-Identity to TP''' | * '''Header Transformation Rules Group''' - which [[M4 Header Transformation Rules Groups|Header Transformation Rules Group]] to use. | ||
* '''Remote-Party-ID to TP''' - same options as for ''' P-Asserted-Identity to TP''' below. These options are identical both for Remote-Party-ID and for P-Asserted-Identity and so only P-Asserted-Identity will be described below | |||
* ''' P-Asserted-Identity to TP''' - allow manipulation P-Asserted-Identity headers before sending them to TP. Available options are: <br><br>[[File:Pai_to_tp.png]]<br><br> | * ''' P-Asserted-Identity to TP''' - allow manipulation P-Asserted-Identity headers before sending them to TP. Available options are: <br><br>[[File:Pai_to_tp.png]]<br><br> | ||
** '''Drop''' - drop (do not send) header to TP. | ** '''Drop''' - drop (do not send) header to TP. | ||
Line 76: | Line 76: | ||
** '''Generate if missing''' - Generate header if it is missing. | ** '''Generate if missing''' - Generate header if it is missing. | ||
*** '''PAI from OP Transformation:''' - Optional regex to transform header before forwarding if header is '''not''' missing. [[M4 Transformations | More info]]. | *** '''PAI from OP Transformation:''' - Optional regex to transform header before forwarding if header is '''not''' missing. [[M4 Transformations | More info]]. | ||
*** '''PAI Generation:''' - PAI header value to | *** '''PAI Generation:''' - PAI header value to generate if header '''is''' missing. [[M4 PAI And RPID Header Generation| More info]]. | ||
** '''Overwrite''' - Overwrite header value with a new one. | ** '''Overwrite''' - Overwrite the header value with a new one. | ||
*** '''PAI Generation:''' - PAI header value to generate which will overwrite existing PAI. [[M4 PAI And RPID Header Generation| More info]]. | *** '''PAI Generation:''' - PAI header value to generate which will overwrite existing PAI. [[M4 PAI And RPID Header Generation| More info]]. | ||
* '''Send PAI Number as CallerID (From:) to TP | * '''Send PAI Number as CallerID (From:) to TP''' - take a number from the incoming SIP PAI header and set it as CallerID (SIP From) in the outgoing Invite to Termination Point. Available options are: Never, Always, If FROM is Anonymous, If FROM is not Anonymous, By OP (uses Origination Point setting). | ||
This setting depends on the same setting from the OP. The logic is described | This setting depends on the same setting from the OP. The logic is described below: | ||
[[File:Send pai table.png]] | [[File:Send pai table.png]] | ||
Line 87: | Line 87: | ||
* '''Ignore SIP 183 without SDP''' - by default disabled. Select '''Yes''' to enable the option. | * '''Ignore SIP 183 without SDP''' - by default disabled. Select '''Yes''' to enable the option. | ||
* '''Ignore SIP 180 after 183''' - by default disabled. Select '''Yes''' to enable the option. | * '''Ignore SIP 180 after 183''' - by default disabled. Select '''Yes''' to enable the option. | ||
* '''Disconnect Codes Group:''' - Disconnect Codes Group to use. More information available [[M4 Disconnect Codes|here]]. | * '''Disconnect Codes Group:''' - Disconnect Codes Group to use. More information is available [[M4 Disconnect Codes|here]]. | ||
<br><br> | |||
== Subnetting == | == Subnetting == | ||
It is possible to set [http://en.wikipedia.org/wiki/Subnetwork subnetwork] for Termination Point. Instead of IP address, you can set subnet in '''IP Address''' input field. Subnet should be written in [http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing CIDR notation] (for example 192.168.0.1/28). When call is routed through Termination Point which uses subnet, '''random''' IP address from that subnet will be chosen for outgoing call. | It is possible to set [http://en.wikipedia.org/wiki/Subnetwork subnetwork] for Termination Point. Instead of IP address, you can set subnet in '''IP Address''' input field. Subnet should be written in [http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing CIDR notation] (for example 192.168.0.1/28). When a call is routed through Termination Point which uses a subnet, '''random''' IP address from that subnet will be chosen for the outgoing call. | ||
M4 subnet value range is 4-30. | |||
<br><br> | <br><br> | ||
You can use online subnet [http://www.aboutmyip.com/AboutMyXApp/SubnetCalculator.jsp? calculator] to check first and last usable IP address from given subnet. | You can use an online subnet [http://www.aboutmyip.com/AboutMyXApp/SubnetCalculator.jsp? calculator] to check the first and last usable IP address from a given subnet. | ||
<br><br> | |||
== IP range == | == IP range == | ||
If you need to set multiple IP addresses for single Termination Point and Subnetting does not meet your needs, then you can set IP ranges. Ranges are written in the following format: | If you need to set multiple IP addresses for a single Termination Point and Subnetting does not meet your needs, then you can set IP ranges. Ranges are written in the following format: | ||
xxx.xxx.xxx.xxx-yyy | xxx.xxx.xxx.xxx-yyy | ||
Note that you can set range only for last octet in IP address.<br> | Note that you can set the range only for the last octet in the IP address.<br> | ||
When call is routed through Termination Point which uses IP range, '''random''' IP address from that range will be chosen for outgoing call. For example, if we have IP range 192.168.0.100-150, then random IP address from range 192.168.0.100 - 192.168.0.150 will be generated.<br> | When a call is routed through Termination Point which uses the IP range, '''random''' IP address from that range will be chosen for the outgoing call. For example, if we have an IP range 192.168.0.100-150, then a random IP address from the range 192.168.0.100 - 192.168.0.150 will be generated.<br> | ||
<br><br> | |||
== Hostname == | |||
If the Connection point is set to work '''ONLY as Termination point''', it is allowed to put a hostname in the IP Address field, for example, sip.voipservice.org | |||
<br><br> | |||
=See also= | =See also= | ||
* [[ | * [[M4 Disconnect Code Changes|Disconnect Code Changes]] | ||
* [[ | * [[M4 STIR/SHAKEN|STIR/SHAKEN]] |
Latest revision as of 08:38, 7 August 2024
Description
The Termination Point is a connection to some final entity (device/line/trunk/provider/supplier/etc) where the call will be terminated.
The call comes from Origination Points and goes to Termination Point.
Termination Points are assigned to Dial Peers.
Timeouts
- Progress Timeout – allows limiting the maximum time we will wait before we get media (whether it's early media (SIP 183), ringing (SIP 180), or answer (SIP 200)). Leave 0 for unlimited.
- Ringing Timeout – allows limiting the ringing duration in seconds. Leave 0 for unlimited. The minimal value is 10 seconds.
- Call Timeout – allows to limit answered call duration. Leave 0 for unlimited.
Termination Point
- Act as Termination Point - turns on/turns of Termination Point. If selected No and saved, all settings of Termination Point will be erased.
- Active - activates/deactivates Termination Point.
- Capacity - limits the number of concurrent calls to this termination point.
- Authentication - allows to Register with username and password.
- Manage A number and Manage B number - allows to Transform, Blacklist and Whitelist Source and Destination numbers/
Old Format transformation examples can be found here and here.
Regexp transformation examples can be found here.
Termination Point Tariffs
- Tariff - Tariff used for Termination Point accounting.
- Use Tariffs by CLIs – disabled by default. When enabling this option, the system asks to choose tariff and number pool. If CLI is found in the number pool, the provider tariff will be changed to the chosen one.
Codecs
Define which Codecs will be offered when dialing Terminator (in the order they are listed).
- Enforce leg A Codecs to leg B - if this option is enabled in Terminator settings, M4 will ignore selected Terminator Codecs and will offer the same Codecs (in the same order) from leg A to leg B.
CallerID
- Name - set name part for CallerID.
- Number - set number part for CallerID.
- Random Number from Number Pool - set random number from Number Pool. Only the number part for CallerID is set.
- Random - Send random CallerID from Number Pool.
- Pseudorandom with Deviation - Range can vary from 0 to 9999999. If 0 is chosen, then all numbers will be chosen the same amount of times. If 9999999 is set, then numbers will be completely random.
Advanced Settings
- Grace Time - Grace time in seconds.
- Limit up to X Calls, during Y seconds - allows controlling Calls per Second (CPS).
Advanced Termination Point Settings
- Periodic check – if enabled, periodic SIP OPTIONS requests will be sent to Termination Point to check if it is reachable. If Periodic Check is enabled and Termination Point does not respond to OPTIONS request then Termination Point will be marked as unreachable and will be skipped with HGC 324 - Unreachable Terminator skipped (Periodic Check is enabled) when making calls. Once Termination Point starts to respond to OPTIONS requests it will be marked as reachable and calls will be routed through this Termination Point. Termination Points are checked every 5 minutes. If the Periodic check is enabled, and Termination Point IP is reachable, in Connection Points window IP will be in green color. If Termination Point IP is NOT reachable, its IP will be in red color, also the UNCREACHABLE icon near IP will appear in the Termination Point edit window.
- TP Allows Media from any IP address – are we allowed to pass any media IP address to Termination Point (direct media from OP)?
- Add STIR/SHAKEN Identity – should we add the SIP Identity header when calling to this Termination Point? More info on STIR/SHAKEN.
- STIR/SHAKEN Attestation Level – set attestation level. A, B, C, or Default (use stirshaken_attest_level from /etc/m2/system.conf). More info on STIR/SHAKEN.
- Fix NAT'ed Contact – When this setting is enabled, M4 replaces the local IP in the Contact header with the source IP.
Termination Point Signaling Settings
- Header Transformation Rules Group - which Header Transformation Rules Group to use.
- Remote-Party-ID to TP - same options as for P-Asserted-Identity to TP below. These options are identical both for Remote-Party-ID and for P-Asserted-Identity and so only P-Asserted-Identity will be described below
- P-Asserted-Identity to TP - allow manipulation P-Asserted-Identity headers before sending them to TP. Available options are:
- Drop - drop (do not send) header to TP.
- Forward - Forward header from OP to TP.
- PAI from OP Transformation: - Optional regex to transform header before forwarding. More info.
- Generate if missing - Generate header if it is missing.
- Overwrite - Overwrite the header value with a new one.
- PAI Generation: - PAI header value to generate which will overwrite existing PAI. More info.
- Send PAI Number as CallerID (From:) to TP - take a number from the incoming SIP PAI header and set it as CallerID (SIP From) in the outgoing Invite to Termination Point. Available options are: Never, Always, If FROM is Anonymous, If FROM is not Anonymous, By OP (uses Origination Point setting).
This setting depends on the same setting from the OP. The logic is described below:
- Ignore SIP 183 without SDP - by default disabled. Select Yes to enable the option.
- Ignore SIP 180 after 183 - by default disabled. Select Yes to enable the option.
- Disconnect Codes Group: - Disconnect Codes Group to use. More information is available here.
Subnetting
It is possible to set subnetwork for Termination Point. Instead of IP address, you can set subnet in IP Address input field. Subnet should be written in CIDR notation (for example 192.168.0.1/28). When a call is routed through Termination Point which uses a subnet, random IP address from that subnet will be chosen for the outgoing call.
M4 subnet value range is 4-30.
You can use an online subnet calculator to check the first and last usable IP address from a given subnet.
IP range
If you need to set multiple IP addresses for a single Termination Point and Subnetting does not meet your needs, then you can set IP ranges. Ranges are written in the following format:
xxx.xxx.xxx.xxx-yyy
Note that you can set the range only for the last octet in the IP address.
When a call is routed through Termination Point which uses the IP range, random IP address from that range will be chosen for the outgoing call. For example, if we have an IP range 192.168.0.100-150, then a random IP address from the range 192.168.0.100 - 192.168.0.150 will be generated.
Hostname
If the Connection point is set to work ONLY as Termination point, it is allowed to put a hostname in the IP Address field, for example, sip.voipservice.org