Excerpt |
---|
This page contains explanations to help you better understand the SIP provider template. |
...
- use one of the available predefined provider templates that are designed for providers certified by the vendor (4PSA, in this case)
- download one of the available predefined templates, modify its content to meet your requirements, and and upload it it in the system as a new provider template
- access the special customization form available available on the website, fill in the desired parameters, and we will generate an XML file that you can save on your machine and upload it in VoipNow as shown in the Add Template section section
The provider XML file includes the tags described below.
...
The UUID that identifies each provider template is contained between the the <provider-template> </provider-template> tags tags. When a user uploads a certificate that has an UUID identical with one from a certified provider, the the Certification level level is set to to None. When the cron script updates the entries, the certification level will be changed to as required (e.g. to Silver or to Goldto Silver or to Gold).
Expand |
---|
title | Click here to see the tags. |
---|
|
Code Block |
---|
| <provider-template uuid="333333">
.
.
.
</provider-template> |
|
Provider tag
The The <provider> </provider> tags tags contain general information about the service provider.
Expand |
---|
title | Click here to see the tags. |
---|
|
Code Block |
---|
| <provider>
<!-- Name of the provider (as it appears in the VoipNow <name>BestProvider</name>
<!-- Certification level, requires signing by 4PSA -->
<certification>Silver</certification>
<!-- Provider's website -->
<website>http://www.bestprovider.net</website>
<!-- List of countries where the provider is active - at least one <active-countries>
<!-- List countries, code ISO 3166 -->
<country>UK</country>
.
.
.
</active-countries>
<description>The provider description</description>
</provider> |
|
The The <channel> </channel> tags tags contain technical information about how the channels should be configured for that service provider. All All options are specific to a SIP channel that can also be manually configured from the interface. Not all the tags presented below are mandatory. All fields, visible or not, can be edited. The visibility variable specifies if the field will be visible in the interface. If the value is set to 0, then the field can still be seen, but only after expanding the Channel Channel Preferences - Reveal All Fields fieldset fieldset in the channel configuration page. For more details, see the the Add a SIP Channel section section.
Expand |
---|
title | Click here to see the tags. |
---|
|
Code Block |
---|
| <channel>
<!-- VoipNow send calls to Hostname/IP -->
<hostname visible="1/0"></hostname>
<!-- VoipNow send calls to Port -->
<port visible="1/0"></port>
<!-- VoipNow accepts calls from IPs/network -->
<acceptips visible="1/0">
<!-- IPs list -->
<ip></ip>
.
.
</acceptips>
<!-- Username to connect to provider -->
<username visible="1/0"></username>
<!-- Password to connect to provider -->
<password visible="1/0"></password>
<!-- Do not register with provider, the VoipNow IP
<donotregister visible="1/0">0/1</donotregister>
<!-- Authorization username -->
<authorization-username visible="1/0"></authorization-username>
<!-- Concurrent calls (outgoing + incoming), usually should not
<concurrent-calls visible="1/0"></concurrent-calls>
<!-- Charging plan, usually should not be included in template
<charging-plan visible="1/0">free/paid</charging-plan>
<!-- Channel capabilities, usually should not be included in template
<flow-capable visible="1/0">incoming/outgoing/both</flow-capable>
<!-- DTMF mode -->
<dtmf visible="1/0">rfc2833/inband/info/auto</dtmf>
<!-- Behind NAT -->
<nat visible="1/0">0/1</nat>
<!-- CallerID -->
<callerid visible="1/0"></callerid>
<!-- From user -->
<from-user visible="1/0"></from-user>
<!-- From domain -->
<from-domain visible="1/0"></from-domain>
<!-- Authorization extension -->
<auth-extension visible="1/0"></auth-extension>
<!-- Get DID from custom header -->
<did-header visible="1/0"></did-header>
<!-- Qualify, send SIP:Options to provider periodically -->
<qualify visible="1/0">0(none)/100........3000</qualify>
<!-- Prefix all calls with -->
<prefix visible="1/0"></prefix>
<!-- Trusted channel -->
<trust visible="1/0"></trust>
<!-- Trust Remote-Party-ID SIP header -->
<trust-rpid visible="1/0"></trust-rpid>
<!-- Send Remote-Party-ID SIP header -->
<send-rpid visible="1/0"></send-rpid>
<!-- Session timers -->
<session-timers visible="1/0">accept/originate/refuse</session-<!-- Session refresh interval --><session-refresh visible="1/0"></session-refresh>
<!-- Session refresh interval -->
<session-refresh visible="1/0"></session-refresh>
<!-- Minimum session refresh interval -->
<min-session-refresh visible="1/0"></min-session-refresh>
<!-- Session refresh source -->
<refresh-source visible="1/0"></refresh-source>
<!-- Codecs: g723, ulaw, alaw, gsm, g726, slin, g729, speex, ilbc,
<permit-codecs visible="1/0">
<!-- Codecs list -->
<codec></codec>
.
.
.
</permit-codecs>
<!-- Use MD5 -->
<md5 visible="1/0"></md5>
</channel>
|
|
...
An optional section that allows to override the labels displayed in the interface without modifying them can be present. If the label is not available for the language the VoipNow interface is rendered in, the default VoipNow labels are used. This This information can be found between the the <label> </label> tags tags.
Expand |
---|
title | Click here to see the tags. |
---|
|
Code Block |
---|
| <label>
<!-- Code of the channel parameter, as defined above -->
<trust>
<!-- What is displayed before the field value, if empty, VoipNow
<pre value="IETF language tag">Hello</pre>
<!-- What is displayed after the field value, has precedence over
<post value="IETF language tag">world</post>
</trust>
<min-session-refresh>
<!-- What is displayed before the field value, if empty, VoipNow
<pre value="IETF language tag">Hello</pre>
<!-- What is displayed after the field value, has precedence over
<post value="IETF language tag">world</post>
</min-session-refresh>
.
.
.
</label> |
|
Signature tag
The The <signature> </signature> tags tags contain the the signature that is necessary and checked only for certified providers with silver/gold levels.
Expand |
---|
title | Click here to see the tags. |
---|
|
Code Block |
---|
| <signature>
.
.
.
</signature> |
|
In order for provider templates to support TCP transport on channels, the the sip-transport tag tag must be added to the XML and have the following the following properties:
- it can take one of the two values: TCP or UDP
- it must support the visible attribute
- it must support localization
Validating this tag requires that you modify the XSD. First, add an add an element that validates the sip-transport tag of the XML.
Code Block |
---|
|
<xs:element name="sip-transport" minOccurs="0">
<xs:complexType>
<xs:annotation>
<xs:documentation>SIP signal transport</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="SipTransportType">
<xs:attribute name="visible" type="xs:integer"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element> |
...
Then add an element that validates the labels.
...