Difference between revisions of "Providers"

From Kolmisoft Wiki
Jump to navigationJump to search
 
(107 intermediate revisions by 16 users not shown)
Line 1: Line 1:
== Description ==
= Description =


In the old PSTN world, Providers were called Trunks. Providers are your route out of your VoIP network to the outside world.
In the old PSTN world, Providers were called Trunks. Providers are your route out of your VoIP network to the outside world.
Line 8: Line 8:


Every Provider will charge you for calling a destination through his service (although the rate might be zero). The rate to every destination is different. Because of this, we need to have a Tariff (or Price List) for each Provider. This Tariff will tell our billing what price we will pay to a destination when using this Provider's services. In other words, this will be our Selfcost.
Every Provider will charge you for calling a destination through his service (although the rate might be zero). The rate to every destination is different. Because of this, we need to have a Tariff (or Price List) for each Provider. This Tariff will tell our billing what price we will pay to a destination when using this Provider's services. In other words, this will be our Selfcost.
<br><br>
=Usage=


Providers' configurations can be found in '''SETTINGS –> Billing –> Providers'''.
Go to '''SETTINGS –> Billing –> Providers'''.
<br><br>
<br><br>
[[File:providers_path.png]]
[[File:providers_path.png]]
<br><br>
<br><br>
To create new provider, click [[image:add.png]] '''New Provider'''.
Here you can see a list of all Providers:
 
<br><br>
Here, enter the Name for a new provider, select its Technology, Tariff, Asterisk server which should be used for this provider and click Create.
[[File:providers_list.png]]
<br><br>
* Click [[image:add.png]] '''New Provider''' to create new Provider, enter the Name for a new Provider, select its Technology, Tariff, Asterisk server which should be used for this provider and click Create.
* Click [[image:icon_edit.png]] icon to change settings for old Provider.
<!---This functionality is available from MOR X4--->
* Click [[Image:icon_check.png]] icon to disable Provider and it will not be used while it is cross in Active column. It affects only outgoing calls. Incoming calls from this provider will be accepted.
* Click [[Image:icon_cross.png]] icon to enable Provider if you want to use it again.
* Click [[Image:icon_vcard.png]] icon to access [[Provider Contact Info]].
* Click [[Image:icon_list.png]] icon to access [[Provider assigned to LCRs list]].
NOTE:  
NOTE:  
* You can't create a new Provider if there are no Tariffs available for Providers.
* You can't create a new Provider if there are no Tariffs available for Providers.
* A Provider is also able to send calls, not just receive them. More info [[Configure Provider which can make calls | here]]. In case you want to sell services to a provider you have to create such a provider.
* A Provider is also able to send calls, not just receive them. More info [[Configure Provider which can make calls | here]]. In case you want to sell services to a provider you have to create such a provider.
<br>
===Provider balance===
Provider balance increases when calls are made via that provider. Currently it is not available to decrease provider's balance. You can read more about [[Provider_billing_addon|Provider Billing Addon here]].
<br><br>
<br><br>
 
== Settings ==
== Settings ==  


=== General ===
=== General ===
 
<br>
 
[[File:Prov addon.png]]
[[File:Providers edit general.png]]
<br><br>
 
 
* '''Name''' – a name for the provider, for informational purposes.
* '''Name''' – a name for the provider, for informational purposes.
* '''Technology''' – out of SIP/IAX2/ZAP/H323, choose which technology your provider uses - that is, the way you connect to the provider.
* '''Technology''' – out of SIP/IAX2/ZAP/H323, choose which technology your provider uses - that is, the way you connect to the provider.
* '''Tariff''' – the list of rates the provider charges you.
* '''DTMF Mode''' – the available options are inband, info, RFC2833, and auto. Choose the one used by your provider.
* '''DTMF Mode''' – the available options are inband, info, RFC2833, and auto. Choose the one used by your provider.
* '''Location''' – which Localization rules are set to apply to INCOMING calls COMING FROM this provider.
* '''Location''' – which Localization rules are set to apply to INCOMING calls COMING FROM this provider.
* '''Automatic Number Identification''' - used in a special case explained here: [[Provider with ANI]]
* '''Automatic Number Identification''' - used in a special case explained here: [[Provider with ANI]]
* '''Ringing Timeout''' – this setting lets you set for how long this provider should be dialed before giving up. The default value is 60 seconds, and the minimum value is 30 seconds.
* '''Ringing Timeout''' – this setting lets you set for how long this provider should be dialed before giving up. The default value is 60 seconds, and the minimum value is 30 seconds.
* '''Call Timeout''' - this setting lets you set the duration of the whole call: ringing and the period after connection.  
* '''Call Timeout''' this setting lets you set the duration of the whole call: ringing and the period after connection.  
* '''Device ID''' – informational data. No longer used starting from MOR 0.8.
* '''Device ID''' – informational data.  
* '''Call limit''' – explained here: [[Simultaneous call limitation]].
* '''Call limit''' – explained here: [[Simultaneous call limitation]].
* '''Hidden?''' - [[Hide_provider|hide/unhide provider]]
* '''Hidden?''' [[Hide_provider|hide/unhide provider]]
<!---This functionality is available from MOR 12--->
* '''Balance''' – provider balance. Provider balance increases when calls are made via that provider. Currently it is not available to decrease provider's balance. You can read more about [[Provider Billing Addon|Provider Billing Addon here]].
<!---This functionality is available from MOR x4--->
* '''Balance limit''' – this is the limit of balance that can be reached by the provider. After he reaches the specified balance, calls aren't sent through this provider anymore.  Balance limit value of zero means that balance is unlimited.
* '''Responsible Accountant''' – dropdown to choose Provider's responsible accountant.
<br><br>
 
=== Tariffs ===
<br>
[[File:Mor_prov_tariffs.png]]
* '''Default Tariff''' – the list of rates the provider charges you.
* '''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><br>


Line 52: Line 65:


* '''Channel''' – which channel (or channel group) to use on a PRI/BRI/PSTN card. Channels and groups should be configured in zapata.conf.
* '''Channel''' – which channel (or channel group) to use on a PRI/BRI/PSTN card. Channels and groups should be configured in zapata.conf.
 
<br><br>
==== For SIP/IAX2 providers ====
==== For SIP/IAX2 providers ====


* '''Login''' – username if your provider asks for it.
* '''Login''' – username if your provider asks for it.
* '''Password''' – password used for authentication by your provider.
* '''Password''' – password used for authentication by your provider (characters '''@ : /''' are not allowed when Register option is enabled)
* '''Authenticate by IP''' – just check the checkbox (Login/Password can be left empty).
* '''Authenticate by IP''' – just check the checkbox (Login/Password can be left empty).
** Make sure you put the correct Hostname/IP address!
** Make sure you put the correct Hostname/[[IP address]]!
* '''Register''' – should we register the provider? (option is not visible when '''Dynamic''' is selected in '''Network related''' section)
* '''Register''' – should we register the provider? (option is not visible when '''Dynamic''' is selected in '''Network related''' section)
* '''Register extension''' – if the provider asks to use an extension for registration (usually they don't), enter it here.
* '''Register extension''' – if the provider asks to use an extension for registration (usually they don't), enter it here.
<br>
<br><br>


=== Provider CallerID ===
=== Provider CallerID ===


'''CallerID''' – consists of two parts: Name and Number. The "Number" part is transferred by default on all technologies (GSM, PSTN, SIP etc), but the "Name" part only on some. The number you see on your mobile phone when someone is calling you is the "Number" part.
'''CallerID''' – consists of two parts: Name and Number. The "Number" part is transferred by default on all technologies (GSM, PSTN, SIP etc), but the "Name" part only on some. The number you see on your mobile phone when someone is calling you is the "Number" part.
 
<br><br>
* '''Name''' – the "Name" part of CallerID.
[[File:provider_callerid.png]]
* '''Number''' – the "Number" part of CallerID.
<br><br>
 
* '''Name''' – the "Name" part of CallerID. Works only on incoming calls.
NOTE: if you leave these fields empty, calls coming from this provider will have CallerID set by the Provider. It should almost always be this way.
* '''Number''' – the "Number" part of CallerID. Works only on incoming calls.
* '''Random Number from Number Pool''' – the "Number" part of CallerID selected from [[Number Pool]]
#Random - Send random CallerID.
#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.
* '''Set PAI from CallerID''' – creates PAI header from CallerID and sends to Provider. Example:
P-Asserted-Identity: <sip:CallerID@host;user=phone>
* '''Set RPID from CallerID''' – creates RPID header from CallerID and sends to Provider. Example:
RPID-Privacy: full
Remote-Party-ID: <sip:CallerID@host:5060>;privacy=off;screen=yes
<br><br>
<br><br>


Line 76: Line 97:


* '''Hostname''' – hostname of the provider.
* '''Hostname''' – hostname of the provider.
* '''Server IP''' – the provider's IP. The value can be "dynamic", which means that provider can change its IP. To discover this value, do ping to the provider's hostname.
* '''Server IP''' – the provider's IPv4 or IPv6. The value can be "dynamic", which means that provider can change its IP. To discover this value, do ping to the provider's hostname. Use command "''dig +short''". Example ''dig +short google.com''.
* '''Port''' – port used to connect to the provider (default: 5060 for SIP, 4569 for IAX2, 1720 for H323).
* '''Port''' – port used to connect to the provider (default: 5060 for SIP, 4569 for IAX2, 1720 for H323).
 
<br><br>
====H323 specific network settings====
====H323 specific network settings====


* '''Fast Start''' – an option specific to H323; it is either on or off.
* '''Fast Start''' – an option specific to H323; it is either on or off.
* '''h245 Tunneling''' – an option specific to H323; it is either on or of
* '''h245 Tunneling''' – an option specific to H323; it is either on or of
<br><br>
====SIP specific network settings====
====SIP specific network settings====


* '''Media control''' – canreinvite/transfer. Do you want your server to stay in the media path between your clients and your provider? Disable if you have a lot of 1-second answered calls.
* '''Media control''' – canreinvite/transfer. Do you want your server to stay in the media path between your clients and your provider? Disable if you have a lot of 1-second answered calls.
* '''NAT''' – the available options are: yes, no, never, and route. For a detailed explanation of these settings, refer to [http://www.voip-info.org/wiki-Asterisk+sip+nat here].
* '''NAT''' – the available options are: yes, no, never, and route. For a detailed explanation of these settings, refer to [http://www.voip-info.org/wiki-Asterisk+sip+nat here].
<br><br>
====IAX2 specific network settings====
* '''IAX2 Trunking Mode''' – enable/disable trunking mode, which allows multiple voice streams to share a single "trunk" to another server, reducing overhead created by IP packets. More details [http://wiki.kolmisoft.com/index.php/Trunks here]
<br><br>
====SIP and IAX2 specific network settings====
====SIP and IAX2 specific network settings====


* '''Qualify''' – how often to "ask" the provider about availability. More details [http://www.voip-info.org/wiki-Asterisk+sip+qualify here] for SIP providers and [http://www.voip-info.org/wiki/view/Asterisk+iax+qualify here] for IAX2 providers<br><br>
* '''Qualify''' – how often to "ask" the provider about availability. More details [http://www.voip-info.org/wiki/view/Asterisk+sip+qualify here] for SIP providers and [http://www.voip-info.org/wiki/view/Asterisk+iax+qualify here] for IAX2 providers.
<br><br>
 
=== Blacklist/Whitelist ===
<br>
[[File:MOR_provider_blacklist_whitelist.png]]
<br><br>
Enable static Source - enables a static Blacklist or a Whitelist for source (CallerID).
* '''No''' - use neither a Blacklist nor a Whitelist.
* '''Blacklist''' - set a [[Number Pool]] which is used to block a Provider from receiving specific Source Numbers. When a Source Number (RPID and PAI headers included) is found within a selected [[Number Pool]] this Provider is skipped with a Hangupcause Code ''272''.
* '''Whitelist''' - set a [[Number Pool]] which is used to allow a Provider to receive only specific Source numbers. When a Source Number (RPID and PAI headers included) is NOT found within a selected [[Number Pool]] this Provider is skipped with a Hangupcause Code ''273''.
<br><br>
Enable static Destination - enables a static Blacklist or a Whitelist for Destination.
* '''No''' - use neither a Blacklist nor a Whitelist.
* '''Blacklist''' - set a [[Number Pool]] which is used to block a Provider from sending to specific Destination. When a Destination Number is found within a selected [[Number Pool]] this Provider is skipped with a Hangupcause Code ''281''.
* '''Whitelist''' - set a [[Number Pool]] which is used to allow a Provider to send only specific Destination. When a Destination Number is NOT found within a selected [[Number Pool]] this Provider is skipped with a Hangupcause Code ''282''.
<br><br>


=== Servers ===
=== Servers ===
Line 99: Line 142:


NOTE: When no fields are checked, all codecs are available. ([[Image:asterisk_icon.png]] For example, settings in sip.conf or iax.conf are effective).
NOTE: When no fields are checked, all codecs are available. ([[Image:asterisk_icon.png]] For example, settings in sip.conf or iax.conf are effective).
* '''Enforce same codec as on Leg A''' - this option takes effect only when Device/Provider is used as Terminator. When this option is enabled, system checks what codec is used on Leg A. Then if Leg A codec matches one of codec enabled on Codecs list, system enforces callee to use that codec, by offering only that single codec in SDP data.
<br><br>
<br><br>
=== Advanced ===
=== Advanced ===
* '''Grace time''' - if call duration is less than <i>Grace Time</i>, it will not be accounted.
 
* '''Grace time''' if call duration is less than <i>Grace Time</i>, it will not be accounted.
* Progressinband:
* Progressinband:
**yes - when "RING" event is requested, always send 180 Ringing (if it hasn't been sent yet) followed by 183 Session Progress and in-band audio.
**yes when "RING" event is requested, always send 180 Ringing (if it hasn't been sent yet) followed by 183 Session Progress and in-band audio.
**no - send 180 Ringing if 183 has not yet been sent, establishing an audio path. If the audio path is established already (with 183), then send in-band ringing (this is the way Asterisk historically behaved because of buggy phones like Polycom's).
**no send 180 Ringing if 183 has not yet been sent, establishing an audio path. If the audio path is established already (with 183), then send in-band ringing (this is the way Asterisk historically behaved because of buggy phones like Polycom's).
**never - whenever ringing occurs, send "180 ringing" as long as "200 OK" has not yet been sent. This is the default behavior of Asterisk.
**never whenever ringing occurs, send "180 ringing" as long as "200 OK" has not yet been sent. This is the default behavior of Asterisk.
* '''Video support''' – does your provider support Video over IP? More info [http://www.voip-info.org/wiki/view/Asterisk+video here].
* '''Video support''' – does your provider support Video over IP? More info [http://www.voip-info.org/wiki/view/Asterisk+video here].
* '''[[Duplicate call prevention | Allow duplicate calls]]''' - the default setting is "no".
* '''[[Duplicate call prevention | Allow duplicate calls]]''' the default setting is "no".
* Interpret NO ANSWER as FAILED - default option is no (This will change the provider in LCR like it is failed, in last calls you will see
* '''Interpret NO ANSWER as FAILED''' – default option is no (This will change the provider in LCR like it is failed, in last calls you will see
the real hangupcause - no answer)
the real hangupcause no answer)
* '''Interpret BUSY as FAILED''' - default option is no (This will change the provider in LCR like it is failed, in last calls you will see
* '''Interpret BUSY as FAILED''' default option is no (This will change the provider in LCR like it is failed, in last calls you will see
the real hangupcause - busy)
the real hangupcause busy)
* '''Fake Ring''' - should system generate Fake Ring or not? Use only if your Device/Provider has bad protocol implementation and does not send RING signal properly.
* '''Fake Ring''' should system generate Fake Ring or not? Use only if your Device/Provider has bad protocol implementation and does not send the RING signal properly.
* '''Common Use''' - Provider can be used by Resellers which are able to create their own Providers. Reseller will be billed using this Provider. If provider is marked as common use and is used in one of reseller's LCR or is in Terminators list - admin is not allowed to delete this provider or remove common use option.
* '''Common Use''' Provider can be used by Resellers which are able to create their own Providers. The reseller will be billed using this Provider. If the provider is marked as common use and is used in one of reseller's LCR or is in Terminators list - admin is not allowed to delete this provider or remove common use option.
* '''Anti-resale (Auto-answer)''' – when the option is set to YES, MOR answers the call before sending it to the provider in order to generate FAS. Work only when the provider is the originator of the call. This option does not affect billing.
* '''Anti-resale (Auto-answer) Sound file''' - this setting is visible when the Anti-resale (Auto-answer) is set to '''Yes''' only.
* '''Transport''' – lets you choose protocol <nowiki>[tcp, udp]</nowiki> for data transfer. Appears only if Provider is SIP and when Asterisk 1.8 is enabled. Default value: ''udp''. If TCP is used, it has to be [[How_to_enable_TCP_for_Asterisk |enabled in Asterisk]].
* '''Time limit per day''' - Total time available for provider per day. When limit is reached, call fails with HGC "238 - Provider used its daily call time limit" and another provider in LCR is used (total time is calculated after rounding rules and minimal time adjustment, so if your provider tariff has increment higher than 1 or minimal time set, then total provider time may be different than actual call time). Only available with Provider Billing addon. '''Used minutes are calculated using the server timezone'''.
* '''Time limit per month''' - Total time available for provider per month in minutes. You can also set day of limit reset (default is 1st day of the month). When limit is reached, call fails with HGC "285 - Provider used its monthly call time limit" and another provider in LCR is used (total time is calculated after rounding rules and minimal time adjustment, so if your provider tariff has increment higher than 1 or minimal time set, then total provider time may be different than actual call time). Only available with Provider Billing addon. '''Used minutes are calculated using the server timezone'''.
* '''Limit up to X, during Y seconds''' – you can set a limit how many calls (X) can be done in some interval of seconds (Y). [[Last Calls]] will show '''FAILED([[Hangupcause Codes |243]])'''.
* '''Execute AGI script''' - Execute custom AGI script. More info [http://wiki.kolmisoft.com/index.php/Provider_AGI_script here].
<br><br>
===Recordings===


This section is available when [[Recordings Addon]] is installed in the system.
<br><br>
<br><br>


=== SIP Specific ===
=== SIP Specific ===


* Fromuser – [http://www.voip-info.org/wiki/index.php?page=Asterisk+sip+fromuser  more details]
* '''Fromuser''' – [http://www.voip-info.org/wiki/index.php?page=Asterisk+sip+fromuser  more details]
* Fromdomain – [http://www.voip-info.org/wiki/index.php?page=Asterisk+sip+fromuser  more details]
* '''Fromdomain''' – [http://www.voip-info.org/wiki/index.php?page=Asterisk+sip+fromuser  more details]
* Trustrpid – This defines whether or not Remote-Party-ID is trusted. It's defined in http://tools.ietf.org/id/draft-ietf-sip-privacy-04.txt
* '''Trustrpid''' – This defines whether or not Remote-Party-ID is trusted. It's defined in http://tools.ietf.org/id/draft-ietf-sip-privacy-04.txt
* Sendrpid – defines whether a Remote-Party-ID SIP header should be sent. It defaults to "No". This field is often used by wholesale VoIP providers to provide calling party identity regardless of the privacy settings (the From SIP header).  
* '''Sendrpid''' – defines whether a Remote-Party-ID SIP header should be sent. It defaults to "No". This field is often used by wholesale VoIP providers to provide calling party identity regardless of the privacy settings (the From SIP header).  
* Insecure – [http://www.voip-info.org/wiki/index.php?page=Asterisk+sip+insecure  more details]
* '''Insecure''' – [http://www.voip-info.org/wiki/index.php?page=Asterisk+sip+insecure  more details]
* T.38 Support – should we support T.38 pass-through?
* '''T.38 Support''' – should we support T.38 pass-through?
* [[SIP 302 Reinvite Support]] – turns this SIP feature on or off.  
* '''SIP Session Timers''' - SIP Session Timers provide an end-to-end keep-alive mechanism for active SIP sessions (more info [http://doxygen.asterisk.org/trunk/sip_session_timers.html here]). Possible values are "accept", "originate", "refuse":
* P-Asserted-Identity usage - The P-Asserted-Identity header field can be used to convey the proven identity of the originator of a request within a trusted network.
** '''originate''' - request and run session-timers always.
<br><br>
** '''accept''' - run session-timers only when requested by other UA.
 
** '''refuse''' - do not run session timers in any case.
===Debug===
* '''SIP Session Refresher''' - The session refresher (uac|uas). Defaults to 'uas'.
 
** '''uac''' - default to the caller initially refreshing when possible.
* Save Call Log - when this option is enabled you can access Call info information in last calls page.
** '''uas''' - default to the callee initially refreshing when possible.
* '''SIP Session Expires''' - maximum session refresh interval in seconds. Defaults to 1800 secs.
* '''SIP Min Session''' - minimum session refresh interval in seconds. Defaults to 90 secs.
* '''[[SIP 302 Reinvite Support]]''' – turns this SIP feature on or off.  
* '''P-Asserted-Identity usage''' – The P-Asserted-Identity header field can be used to convey the proven identity of the originator of a request within a trusted network. If pass_pai =0 in [http://wiki.kolmisoft.com/index.php/Mor.conf Mor.conf] and PAI usage in provider settings =1, then core will add PAI header.
* '''Periodic check''' - if enabled, periodic SIP OPTIONS requests will be sent to Provider to check if it is reachable. If Periodic Check is enabled and Provider does not respond to OPTIONS request then Provider will be marked as unreachable and will be skipped when making Calls. Once Provider starts to respond to OPTIONS request it will be marked as reachable and Calls will be routed through this Provider. Providers are checked every 5 minutes. Options packets are sent from IP address defined in /etc/asterisk/sip.conf. Some Providers may not respond to OPTIONS even they are Online. If you are getting HGC 247 on attempts to call a Provider that is online, disable this option.
* '''[http://wiki.kolmisoft.com/index.php/Mobile_Number_Portability_Addon#MNP_tags_in_SIP_INVITE Enable MNP tags]''' - adds MNP tags in SIP INVITE requests (if MNP is configured).
* '''Localize PAI''' - applies [[Provider_Rules#CallerID_Rules|Provider rules Source]] on PAI header for calls that are terminated by this Provider.
* '''Pass PAI''' - available options are 'Global', 'Yes', 'No'. Global (default value) means use value from  pass_pai in [[mor.conf]] file. More information available in table [[P-Asserted-Identity#How_P-Asserted-Identity_.28PAI.29_is_handled_in_MOR_X11_and_later_versions|here]].
* '''PAI Transformation''' - PAI Transformation. More info [https://wiki.kolmisoft.com/index.php/MOR_SIP_Header_Transformations here].
* '''Usereqphone''' - Yes or No. The default setting is "No". Option adds ;user=phone in From, To, Invite and PAI headers.
* '''Custom SIP Header''' - adds custom header to SIP request. Format is '''header: value''' (for example '''x-My-Custom-Header: my value''')
* '''Custom Destination Header''' - allows to read Destination number from specific SIP header (for example x-DID: 123) instead of SIP URI.
* '''Privacy CallerID''' - allows to change CallerID (From: <sip:'''xxxxxx'''@yyyyyyy>) when originator sends '''Privacy: id''' or '''Privacy: header'''. If originator does not send '''Privacy: id''' or '''Privacy: header''' or '''Privacy CallerID''' is empty, then SIP From header will not be modified. This option would only work on outbound calls terminated by this Provider.
* '''Privacy From Domain''' - allows to change Domain (From: <sip:xxxxxx@'''yyyyyyy'''>) when originator sends '''Privacy: id''' or '''Privacy: header'''. If originator does not send '''Privacy: id''' or '''Privacy: header''' or '''Privacy From Domain''' is empty, then SIP From header will not be modified.
* '''Playback before dial''' - allows to play selected sound file to originator before dialing to Provider. Select 'none' to disable this feature.
* '''Playback before dial mode''' - controls how '''Playback before dial''' handles media.
** '''Early media''' - uses '''183 Session Progress''' to send audio to originator. This is preferred way of sending media to originator since it does not require legA call to be answered. One drawback is that not all providers resend SIP 183 early media correctly. In those cases originator will hear silence.
** '''Answer and play''' - if this mode is selected, then '''MOR will answer legA''' and play media to originator. This way originator should always hear media but there are various drawbacks since legA is already answered. One of drawbacks is that MOR will generate false answer if Provider rejects call. Use this mode only if you know what you are doing.
<br><br>
<br><br>
=Failover provider=
''This functionality is available from [[MOR 12]]''
You can also assign a failover provider to a LCR by selecting ''No'' in ''Use only one provider (Turn off failover):''. Default value is ''Yes''.
[[File:Lcr provider failover.png]]


== VIDEO: How to create Provider ==


Failover provider is a provider used only in case of emergency. If all the other providers fail (returns FAILED error code) a failover provider is used.
<html>
<iframe width="640" height="360" src="https://www.youtube.com/embed/S7DHLOOMBUs" frameborder="0"></iframe>
</html>


If Provider returns NO ANSWER or BUSY - it means, that call not FAILED.


If you think that NO ANSWER/BUSY == FAILED, then you can use [http://wiki.kolmisoft.com/index.php/NO_ANSWER/BUSY_interpretation_for_providers this setting]
<br><br>
<br><br>


=See also=
=See also=


* [[H323 Provider settings]]
* [[Quick Providers changes]]
* [[Providers Statistics]]
* [[NO ANSWER/BUSY interpretation for providers]]
* [[NO ANSWER/BUSY interpretation for providers]]
* [[H323 Provider settings]]
* [[I have a problem with Provider]]
<br><br>
<br><br>

Latest revision as of 13:42, 15 October 2024

Description

In the old PSTN world, Providers were called Trunks. Providers are your route out of your VoIP network to the outside world.

Providers can be one of several types: ZAP, SIP, IAX2, and H323. The type determines which technology is used to connect to the Provider.

At the very start, you need to create a Provider through which you will dial out to PSTN or other VoIP networks.

Every Provider will charge you for calling a destination through his service (although the rate might be zero). The rate to every destination is different. Because of this, we need to have a Tariff (or Price List) for each Provider. This Tariff will tell our billing what price we will pay to a destination when using this Provider's services. In other words, this will be our Selfcost.

Usage

Go to SETTINGS –> Billing –> Providers.

Providers path.png

Here you can see a list of all Providers:

Providers list.png

  • Click Add.png New Provider to create new Provider, enter the Name for a new Provider, select its Technology, Tariff, Asterisk server which should be used for this provider and click Create.
  • Click Icon edit.png icon to change settings for old Provider.
  • Click Icon check.png icon to disable Provider and it will not be used while it is cross in Active column. It affects only outgoing calls. Incoming calls from this provider will be accepted.
  • Click Icon cross.png icon to enable Provider if you want to use it again.
  • Click Icon vcard.png icon to access Provider Contact Info.
  • Click Icon list.png icon to access Provider assigned to LCRs list.

NOTE:

  • You can't create a new Provider if there are no Tariffs available for Providers.
  • A Provider is also able to send calls, not just receive them. More info here. In case you want to sell services to a provider you have to create such a provider.



Settings

General


Prov addon.png

  • Name – a name for the provider, for informational purposes.
  • Technology – out of SIP/IAX2/ZAP/H323, choose which technology your provider uses - that is, the way you connect to the provider.
  • DTMF Mode – the available options are inband, info, RFC2833, and auto. Choose the one used by your provider.
  • Location – which Localization rules are set to apply to INCOMING calls COMING FROM this provider.
  • Automatic Number Identification - used in a special case explained here: Provider with ANI
  • Ringing Timeout – this setting lets you set for how long this provider should be dialed before giving up. The default value is 60 seconds, and the minimum value is 30 seconds.
  • Call Timeout – this setting lets you set the duration of the whole call: ringing and the period after connection.
  • Device ID – informational data.
  • Call limit – explained here: Simultaneous call limitation.
  • Hidden?hide/unhide provider
  • Balance – provider balance. Provider balance increases when calls are made via that provider. Currently it is not available to decrease provider's balance. You can read more about Provider Billing Addon here.
  • Balance limit – this is the limit of balance that can be reached by the provider. After he reaches the specified balance, calls aren't sent through this provider anymore. Balance limit value of zero means that balance is unlimited.
  • Responsible Accountant – dropdown to choose Provider's responsible accountant.



Tariffs


Mor prov tariffs.png

  • Default Tariff – the list of rates the provider charges you.
  • 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.



Authentication

For ZAP providers

  • Channel – which channel (or channel group) to use on a PRI/BRI/PSTN card. Channels and groups should be configured in zapata.conf.



For SIP/IAX2 providers

  • Login – username if your provider asks for it.
  • Password – password used for authentication by your provider (characters @ : / are not allowed when Register option is enabled)
  • Authenticate by IP – just check the checkbox (Login/Password can be left empty).
    • Make sure you put the correct Hostname/IP address!
  • Register – should we register the provider? (option is not visible when Dynamic is selected in Network related section)
  • Register extension – if the provider asks to use an extension for registration (usually they don't), enter it here.



Provider CallerID

CallerID – consists of two parts: Name and Number. The "Number" part is transferred by default on all technologies (GSM, PSTN, SIP etc), but the "Name" part only on some. The number you see on your mobile phone when someone is calling you is the "Number" part.

Provider callerid.png

  • Name – the "Name" part of CallerID. Works only on incoming calls.
  • Number – the "Number" part of CallerID. Works only on incoming calls.
  • Random Number from Number Pool – the "Number" part of CallerID selected from Number Pool
  1. Random - Send random CallerID.
  2. 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.
  • Set PAI from CallerID – creates PAI header from CallerID and sends to Provider. Example:
P-Asserted-Identity: <sip:CallerID@host;user=phone>
  • Set RPID from CallerID – creates RPID header from CallerID and sends to Provider. Example:
RPID-Privacy: full
Remote-Party-ID: <sip:CallerID@host:5060>;privacy=off;screen=yes



Network related

  • Hostname – hostname of the provider.
  • Server IP – the provider's IPv4 or IPv6. The value can be "dynamic", which means that provider can change its IP. To discover this value, do ping to the provider's hostname. Use command "dig +short". Example dig +short google.com.
  • Port – port used to connect to the provider (default: 5060 for SIP, 4569 for IAX2, 1720 for H323).



H323 specific network settings

  • Fast Start – an option specific to H323; it is either on or off.
  • h245 Tunneling – an option specific to H323; it is either on or of



SIP specific network settings

  • Media control – canreinvite/transfer. Do you want your server to stay in the media path between your clients and your provider? Disable if you have a lot of 1-second answered calls.
  • NAT – the available options are: yes, no, never, and route. For a detailed explanation of these settings, refer to here.



IAX2 specific network settings

  • IAX2 Trunking Mode – enable/disable trunking mode, which allows multiple voice streams to share a single "trunk" to another server, reducing overhead created by IP packets. More details here



SIP and IAX2 specific network settings

  • Qualify – how often to "ask" the provider about availability. More details here for SIP providers and here for IAX2 providers.



Blacklist/Whitelist


MOR provider blacklist whitelist.png

Enable static Source - enables a static Blacklist or a Whitelist for source (CallerID).

  • No - use neither a Blacklist nor a Whitelist.
  • Blacklist - set a Number Pool which is used to block a Provider from receiving specific Source Numbers. When a Source Number (RPID and PAI headers included) is found within a selected Number Pool this Provider is skipped with a Hangupcause Code 272.
  • Whitelist - set a Number Pool which is used to allow a Provider to receive only specific Source numbers. When a Source Number (RPID and PAI headers included) is NOT found within a selected Number Pool this Provider is skipped with a Hangupcause Code 273.



Enable static Destination - enables a static Blacklist or a Whitelist for Destination.

  • No - use neither a Blacklist nor a Whitelist.
  • Blacklist - set a Number Pool which is used to block a Provider from sending to specific Destination. When a Destination Number is found within a selected Number Pool this Provider is skipped with a Hangupcause Code 281.
  • Whitelist - set a Number Pool which is used to allow a Provider to send only specific Destination. When a Destination Number is NOT found within a selected Number Pool this Provider is skipped with a Hangupcause Code 282.



Servers

Allows to select on which Asterisk servers this provider should be used.

Codecs

Choose the codecs your provider uses.

NOTE: When no fields are checked, all codecs are available. (Asterisk icon.png For example, settings in sip.conf or iax.conf are effective).

  • Enforce same codec as on Leg A - this option takes effect only when Device/Provider is used as Terminator. When this option is enabled, system checks what codec is used on Leg A. Then if Leg A codec matches one of codec enabled on Codecs list, system enforces callee to use that codec, by offering only that single codec in SDP data.



Advanced

  • Grace time – if call duration is less than Grace Time, it will not be accounted.
  • Progressinband:
    • yes – when "RING" event is requested, always send 180 Ringing (if it hasn't been sent yet) followed by 183 Session Progress and in-band audio.
    • no – send 180 Ringing if 183 has not yet been sent, establishing an audio path. If the audio path is established already (with 183), then send in-band ringing (this is the way Asterisk historically behaved because of buggy phones like Polycom's).
    • never – whenever ringing occurs, send "180 ringing" as long as "200 OK" has not yet been sent. This is the default behavior of Asterisk.
  • Video support – does your provider support Video over IP? More info here.
  • Allow duplicate calls – the default setting is "no".
  • Interpret NO ANSWER as FAILED – default option is no (This will change the provider in LCR like it is failed, in last calls you will see

the real hangupcause – no answer)

  • Interpret BUSY as FAILED – default option is no (This will change the provider in LCR like it is failed, in last calls you will see

the real hangupcause – busy)

  • Fake Ring – should system generate Fake Ring or not? Use only if your Device/Provider has bad protocol implementation and does not send the RING signal properly.
  • Common Use – Provider can be used by Resellers which are able to create their own Providers. The reseller will be billed using this Provider. If the provider is marked as common use and is used in one of reseller's LCR or is in Terminators list - admin is not allowed to delete this provider or remove common use option.
  • Anti-resale (Auto-answer) – when the option is set to YES, MOR answers the call before sending it to the provider in order to generate FAS. Work only when the provider is the originator of the call. This option does not affect billing.
  • Anti-resale (Auto-answer) Sound file - this setting is visible when the Anti-resale (Auto-answer) is set to Yes only.
  • Transport – lets you choose protocol [tcp, udp] for data transfer. Appears only if Provider is SIP and when Asterisk 1.8 is enabled. Default value: udp. If TCP is used, it has to be enabled in Asterisk.
  • Time limit per day - Total time available for provider per day. When limit is reached, call fails with HGC "238 - Provider used its daily call time limit" and another provider in LCR is used (total time is calculated after rounding rules and minimal time adjustment, so if your provider tariff has increment higher than 1 or minimal time set, then total provider time may be different than actual call time). Only available with Provider Billing addon. Used minutes are calculated using the server timezone.
  • Time limit per month - Total time available for provider per month in minutes. You can also set day of limit reset (default is 1st day of the month). When limit is reached, call fails with HGC "285 - Provider used its monthly call time limit" and another provider in LCR is used (total time is calculated after rounding rules and minimal time adjustment, so if your provider tariff has increment higher than 1 or minimal time set, then total provider time may be different than actual call time). Only available with Provider Billing addon. Used minutes are calculated using the server timezone.
  • Limit up to X, during Y seconds – you can set a limit how many calls (X) can be done in some interval of seconds (Y). Last Calls will show FAILED(243).
  • Execute AGI script - Execute custom AGI script. More info here.



Recordings

This section is available when Recordings Addon is installed in the system.

SIP Specific

  • Fromusermore details
  • Fromdomainmore details
  • Trustrpid – This defines whether or not Remote-Party-ID is trusted. It's defined in http://tools.ietf.org/id/draft-ietf-sip-privacy-04.txt
  • Sendrpid – defines whether a Remote-Party-ID SIP header should be sent. It defaults to "No". This field is often used by wholesale VoIP providers to provide calling party identity regardless of the privacy settings (the From SIP header).
  • Insecuremore details
  • T.38 Support – should we support T.38 pass-through?
  • SIP Session Timers - SIP Session Timers provide an end-to-end keep-alive mechanism for active SIP sessions (more info here). Possible values are "accept", "originate", "refuse":
    • originate - request and run session-timers always.
    • accept - run session-timers only when requested by other UA.
    • refuse - do not run session timers in any case.
  • SIP Session Refresher - The session refresher (uac|uas). Defaults to 'uas'.
    • uac - default to the caller initially refreshing when possible.
    • uas - default to the callee initially refreshing when possible.
  • SIP Session Expires - maximum session refresh interval in seconds. Defaults to 1800 secs.
  • SIP Min Session - minimum session refresh interval in seconds. Defaults to 90 secs.
  • SIP 302 Reinvite Support – turns this SIP feature on or off.
  • P-Asserted-Identity usage – The P-Asserted-Identity header field can be used to convey the proven identity of the originator of a request within a trusted network. If pass_pai =0 in Mor.conf and PAI usage in provider settings =1, then core will add PAI header.
  • Periodic check - if enabled, periodic SIP OPTIONS requests will be sent to Provider to check if it is reachable. If Periodic Check is enabled and Provider does not respond to OPTIONS request then Provider will be marked as unreachable and will be skipped when making Calls. Once Provider starts to respond to OPTIONS request it will be marked as reachable and Calls will be routed through this Provider. Providers are checked every 5 minutes. Options packets are sent from IP address defined in /etc/asterisk/sip.conf. Some Providers may not respond to OPTIONS even they are Online. If you are getting HGC 247 on attempts to call a Provider that is online, disable this option.
  • Enable MNP tags - adds MNP tags in SIP INVITE requests (if MNP is configured).
  • Localize PAI - applies Provider rules Source on PAI header for calls that are terminated by this Provider.
  • Pass PAI - available options are 'Global', 'Yes', 'No'. Global (default value) means use value from pass_pai in mor.conf file. More information available in table here.
  • PAI Transformation - PAI Transformation. More info here.
  • Usereqphone - Yes or No. The default setting is "No". Option adds ;user=phone in From, To, Invite and PAI headers.
  • Custom SIP Header - adds custom header to SIP request. Format is header: value (for example x-My-Custom-Header: my value)
  • Custom Destination Header - allows to read Destination number from specific SIP header (for example x-DID: 123) instead of SIP URI.
  • Privacy CallerID - allows to change CallerID (From: <sip:xxxxxx@yyyyyyy>) when originator sends Privacy: id or Privacy: header. If originator does not send Privacy: id or Privacy: header or Privacy CallerID is empty, then SIP From header will not be modified. This option would only work on outbound calls terminated by this Provider.
  • Privacy From Domain - allows to change Domain (From: <sip:xxxxxx@yyyyyyy>) when originator sends Privacy: id or Privacy: header. If originator does not send Privacy: id or Privacy: header or Privacy From Domain is empty, then SIP From header will not be modified.
  • Playback before dial - allows to play selected sound file to originator before dialing to Provider. Select 'none' to disable this feature.
  • Playback before dial mode - controls how Playback before dial handles media.
    • Early media - uses 183 Session Progress to send audio to originator. This is preferred way of sending media to originator since it does not require legA call to be answered. One drawback is that not all providers resend SIP 183 early media correctly. In those cases originator will hear silence.
    • Answer and play - if this mode is selected, then MOR will answer legA and play media to originator. This way originator should always hear media but there are various drawbacks since legA is already answered. One of drawbacks is that MOR will generate false answer if Provider rejects call. Use this mode only if you know what you are doing.



VIDEO: How to create Provider




See also