How To's

From Yate Documentation
(Difference between revisions)
Jump to: navigation, search
(Call detail records)
(SS7 Setups)
 
(46 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
Yate has multiple routing modules and signalling modules. Here you can find some how to's for configuring Yate using different modules.
 
Yate has multiple routing modules and signalling modules. Here you can find some how to's for configuring Yate using different modules.
 
  
 
==Routing==
 
==Routing==
Line 6: Line 5:
  
 
{|class="yate-table"
 
{|class="yate-table"
|class="yate-header-right"| How To's
+
|class="yate-header-right" colspan="2"| How To's
 
|-
 
|-
|class="yate-content-right"|
+
|class="yate-content-left"|
 
* [[How to register users from regfile]]
 
* [[How to register users from regfile]]
 
Example of register users in Regfile module.
 
Example of register users in Regfile module.
Line 19: Line 18:
 
* [[Round_Robin_Routing|How to do round-robin routing]]
 
* [[Round_Robin_Routing|How to do round-robin routing]]
 
Round robin routing examples.
 
Round robin routing examples.
 +
 +
|class="yate-content-right"|
 
* [[How to convert SIP headers into SIP parameters names in messages]]
 
* [[How to convert SIP headers into SIP parameters names in messages]]
 
Examples on how to convert SIP headers into SIP parameters.
 
Examples on how to convert SIP headers into SIP parameters.
Line 27: Line 28:
 
* [[Routing tips from various users]]
 
* [[Routing tips from various users]]
 
Useful information from various users about routing.
 
Useful information from various users about routing.
<!-- *[[Example using parameters in cluster route module|Configuring regexp and callto parameters in cluster route module]]
 
Example of configuring parameters in cluster route module.
 
*[[Example of forking a call using lateroute|Forking a call using lateroute]]
 
Examples for routing calls using lateroute.
 
*[[How to use callcounters module to count incoming calls]]
 
Example of count incoming calls.-->
 
 
|}
 
|}
  
Line 40: Line 35:
  
 
{|class="yate-table"
 
{|class="yate-table"
|class="yate-header-right"|How To's
+
|class="yate-header-right" colspan="2"|How To's
 
|-
 
|-
 
|class="yate-content-right"|
 
|class="yate-content-right"|
Line 49: Line 44:
 
* [[Yate as SIP server]]
 
* [[Yate as SIP server]]
 
Configuring Yate as a SIP server.
 
Configuring Yate as a SIP server.
* [[SIP Flood Protection]]
 
Yate provides a protection mechanism against several types of SIP flood attacks.
 
 
* [[Jabber Client With Jingle Yate Server]]
 
* [[Jabber Client With Jingle Yate Server]]
 
Configuring Yate Server to use Jingle and YateClient to use a Jabber client.
 
Configuring Yate Server to use Jingle and YateClient to use a Jabber client.
 +
* [[Yate as a PBX]]
 +
How to set up Yate as a PBX depending on the features you need.
 
* [[H323 To SIP Signalling Proxy]]
 
* [[H323 To SIP Signalling Proxy]]
 
Configuring Yate Server to be a H323 to SIP Signalling Proxy.
 
Configuring Yate Server to be a H323 to SIP Signalling Proxy.
 
* [[Connecting To Google Voice|Connecting To Google Voice using your SIP account]]
 
* [[Connecting To Google Voice|Connecting To Google Voice using your SIP account]]
 
Use Yate server to handle all your Google Voice calls.
 
Use Yate server to handle all your Google Voice calls.
* [[Using Yate with various service providers]]
+
 
Yate can be used with various service providers.
+
|class="yate-content-left"|
* [[Yate as a PBX]]
+
* [[Using YateClient with SIPsocial]]
How to set up Yate as a PBX depending on the features you need.
+
How to use YateClient with SIPsocial
 +
* [[Connecting to FWD-FreeWorldDialUp]]
 +
How to connect to FreeWorldDialUp
 +
* [[Connecting to InPhoneX]]
 +
How to connect to InPhoneX
 +
* [[Connecting to SAPO]]
 +
How to connect to SAPO
 +
* [[Connecting to IAXtel]]
 +
How to connect to IAXtel
 +
* [[Using SIP MESSAGE or how to enable chat messages in SIP]]
 +
How to enable SIP MESSAGE request in yate5 to allow chat messages between registered users.
 +
* [[SIP Flood Protection]]
 +
Yate provides a protection mechanism against several types of SIP flood attacks.
 
|}
 
|}
  
Line 66: Line 73:
 
Below are the modules and some tips you can use when writing call logs. You use this modules to obtain billing information.
 
Below are the modules and some tips you can use when writing call logs. You use this modules to obtain billing information.
 
{|class="yate-table"
 
{|class="yate-table"
|class="yate-header-right"|How To's
+
|class="yate-header-right" colspan="2"|How To's
 
|-
 
|-
|class="yate-content-right"|
+
|class="yate-content-left"|
 
* [[Register]]
 
* [[Register]]
 
How to write call logs to a database
 
How to write call logs to a database
Line 75: Line 82:
 
* [[CDR File Module]]
 
* [[CDR File Module]]
 
How to write call logs to a file
 
How to write call logs to a file
 +
 +
|class="yate-content-right"|
 
* [[How to add custom parameters in CDR from routing]]
 
* [[How to add custom parameters in CDR from routing]]
 
Example of how to add custom parameters in CDR
 
Example of how to add custom parameters in CDR
 
* [[CDRcombine_Module|Cdrcombine]]
 
* [[CDRcombine_Module|Cdrcombine]]
 
For basic setups configure yate to write single cdr entry per call, instead of entry for each call leg
 
For basic setups configure yate to write single cdr entry per call, instead of entry for each call leg
 +
* [[Starting CDR Ring Timer on call.progress]]
 +
Example on how to start CDR Ring Timer on call.progress message.
 
|}
 
|}
  
Line 86: Line 97:
  
 
{|class="yate-table"
 
{|class="yate-table"
|class="yate-header-right"|How To's
+
|class="yate-header-right" colspan="2"|How To's
 
|-
 
|-
 +
|class="yate-content-left"|
 +
* [[Monitoring Yate]]
 +
Overview on how to monitor yate using SNMP and rmanager.
 +
* [[Debug Output | How to set debug levels in Yate]]
 +
Yate provides Debugging info on console.
 +
* [[How to find which external modules are loaded from rmanager]]
 +
Debug an external module in Telnet
 +
 
|class="yate-content-right"|
 
|class="yate-content-right"|
<div class="bullet">&nbsp;</div><font class="yate-page-title">[[Monitoring Yate]]</font><br/>
+
* [[Debugging and, or Investigation of messages]]
<div class="yate-page-desc">Overview on how to monitor yate using SNMP and rmanager.</div>
+
Yate offers the msgsniff module to allow the investigation of messages at runtime.
<div class="bullet">&nbsp;</div><font class="yate-page-title">[[Debug Output | How to set debug levels in Yate]]</font><br/>
+
* [[Monitoring Yate with Munin]]
<div class="yate-page-desc">Yate provides Debugging info on console.</div>
+
Yate can be monitored using Munin.
<div class="bullet">&nbsp;</div><font class="yate-page-title">[[How to find which external modules are loaded from rmanager]]</font><br/>
+
<div class="yate-page-desc">Debug an external module in Telnet.</div>
+
<div class="bullet">&nbsp;</div><font class="yate-page-title">[[Debugging and, or Investigation of messages]]</font><br/>
+
<div class="yate-page-desc">Yate offers the msgsniff module to allow the investigation of messages at runtime.</div>
+
<div class="bullet">&nbsp;</div><font class="yate-page-title">[[Monitoring Yate with Munin]]</font><br/>
+
<div class="yate-page-desc">Yate can be monitored using Munin.</div>
+
 
|}
 
|}
  
Line 104: Line 117:
  
 
{|class="yate-table"
 
{|class="yate-table"
|class="yate-header-right"|How To's
+
|class="yate-header-right" colspan="2"|How To's
 
|-
 
|-
 +
|class="yate-content-left"|
 +
* [[Yate and VMWare]]
 +
Tips on what you should pay attention to when running Yate in VMWare.
 +
* [[How to setup chat and short file transfer using MESSAGE Request Method]]
 +
This example allows chat and short files transfer between Twinkle clients using SIP MESSAGE Request Method.
 +
 
|class="yate-content-right"|
 
|class="yate-content-right"|
<div class="bullet">&nbsp;</div><font class="yate-page-title">[[Yate and VMWare]]</font><br/>
+
* [[Handling many simultaneous calls]]
<div class="yate-page-desc">Tips on what you should pay attention to when running Yate in VMWare.</div>
+
Notes on various protocols when you wish to handle many simultaneous calls.
<div class="bullet">&nbsp;</div><font class="yate-page-title">[[How to setup chat and short file transfer using MESSAGE Request Method]]</font><br/>
+
* [[Altering release cause]]
<div class="yate-page-desc">This example allows chat and short files transfer between Twinkle clients using SIP MESSAGE Request Method.</div>
+
How to modify call release cause codes.
<div class="bullet">&nbsp;</div><font class="yate-page-title">[[Handling many simultaneous calls]]</font><br/>
+
<div class="yate-page-desc">Notes on various protocols when you wish to handle many simultaneous calls.</div>
+
<div class="bullet">&nbsp;</div><font class="yate-page-title">[[Altering release cause]]</font><br/>
+
<div class="yate-page-desc">How to modify call release cause codes.</div>
+
 
|}
 
|}
  
 
==VoIP to PSTN gateway==
 
==VoIP to PSTN gateway==
 
{|class="yate-table"
 
{|class="yate-table"
|class="yate-header-right"|How To's
+
|class="yate-header-right" colspan="2"|How To's
 
|-
 
|-
 +
|class="yate-content-left"|
 +
* [[VoIP PSTN Gateway]]
 +
Example on how to use Yate as VoIP-PSTN gateway
 +
* [[Installing Sangoma cards under Linux]]
 +
Guide to install Sangoma cards under Linux.
 +
 
|class="yate-content-right"|
 
|class="yate-content-right"|
<div class="bullet">&nbsp;</div><font class="yate-page-title">[[VoIP PSTN Gateway]]</font><br/>
+
* [[Installing Sangoma cards under Windows]]
<div class="yate-page-desc">Example on how to use Yate as VoIP-PSTN gateway.</div>
+
Guide to install Sangoma cards under Windows.
<div class="bullet">&nbsp;</div><font class="yate-page-title">[[Installing Sangoma cards under Linux]]</font><br/>
+
* [[Setting up Yate with ISDN BRI]]
<div class="yate-page-desc">Guide to install Sangoma cards under Linux.</div>
+
Guide to use Yate with ISDN BRI.
<div class="bullet">&nbsp;</div><font class="yate-page-title">[[Installing Sangoma cards under Windows]]</font><br/>
+
|}
<div class="yate-page-desc">Guide to install Sangoma cards under Windows.</div>
+
 
<div class="bullet">&nbsp;</div><font class="yate-page-title">[[Setting up Yate with ISDN BRI]]</font><br/>
+
==SS7 Setups==
<div class="yate-page-desc">Guide to use Yate with BRI Stuff.</div>
+
{|class="yate-table"
 +
|class="yate-header-right" colspan="2"|How To's
 +
|-
 +
|class="yate-content-left"|
 +
* [[Configuring MTP2]]
 +
The [http://en.wikipedia.org/wiki/Message_Transfer_Part#Signalling_Link_Functional_Level MTP2] links are the classic way of interconnecting SS7 over [http://en.wikipedia.org/wiki/Time-division_multiplexing TDM].
 +
* [[Configuring SCTP]]
 +
This [http://en.wikipedia.org/wiki/SCTP SCTP/IP] protocol is used as network transport by all forms of SIGTRAN to replace classic TDM links.
 +
* [[Configure Cisco MGCP]]
 +
The voice channels on Cisco Universal Gateways (AS 53xx and 54xx series) can be controlled using the [http://en.wikipedia.org/wiki/MGCP Media Gateway Control Protocol]. This usually complements the Signalling Link Transport so both signaling and voice can be provided on the same set of trunks.
 +
* [[Configure Mediant MGCP]]
 +
Voice circuits on Mediant gateways can be controlled on MGCP. Specific [[Configure Mediant MGCP|instructions]] for configuring [[Configure Mediant MGCP#Yate_configuration|Yate]] and [[Configure Mediant MGCP#Mediant configuration|Mediant]] are provided.
 +
* [[VoIP_PSTN_Gateway | Configure Wanpipe]]
 +
[[VoIP_PSTN_Gateway|Configuration instructions]] for [http://sangoma.com/products/hardware_products.html Sangoma cards] using the Wanpipe kernel mode drivers.
 +
* [[SCCP decoder ]]
 +
The SCCP can be used as a SCCP message decoder. This case can be found if SCCP is used with M3UA-GW.
 +
* [[STP SCCP configuration ]]
 +
A STP represents a Service Transfer Point in SS7 network.
 +
* [[Configuring DAHDI (Zaptel) TDM cards ]]
 +
[[Configuring_DAHDI_(Zaptel)_TDM_cards|Configuration instructions]] for cards using the [http://www.asterisk.org/dahdi/ DAHDI] (former Zaptel) kernel mode drivers.
 +
 
 +
 
 +
|class="yate-content-right"|
 +
* [[Configure MTP3]]
 +
The configuration of [http://en.wikipedia.org/wiki/Message_Transfer_Part#Signalling_Network_Functional_Level MTP3] in Yate describes the type and Point Codes of each attached linkset.
 +
* [[Configure Cisco SLT]]
 +
Cisco Signalling Link Transport is a [http://en.wikipedia.org/wiki/Backhaul_(telecommunications) backhauling] protocol that transports remotely MTP2 links on a Cisco Access Server. The transport protocol is [http://en.wikipedia.org/wiki/RUDP Reliable UDP (RUDP)].
 +
* [[How to configure ISUP in Yate]]
 +
We will setup a ISUP configuration in Yate to make calls.
 +
* [[Configure SCCP and GTT]]
 +
The [http://en.wikipedia.org/wiki/Signalling_Connection_Control_Part SCCP] protocol provides additional signaling commonly used by mobile networks. In most cases the [http://en.wikipedia.org/wiki/Global_Title_Translation Global Title Translation] needs also to be configured.
 +
* [[Configure Mediant M2UA]]
 +
The [http://www.audiocodes.com/products/mediant-2000 Mediant 2000] and [http://www.audiocodes.com/products/mediant-3000 Mediant 3000] series from [http://www.audiocodes.com/ Audiocodes] support standard [http://en.wikipedia.org/wiki/SIGTRAN SIGTRAN] M2UA backhaul for SS7 links.
 +
* [[SEP SCCP configuration]]
 +
When using SCCP in a SEP, the SCCP must have a SCCP application above it to process the messages. This is usually a TCAP application.
 +
* [[SCCP address translation]]
 +
SCCP can be used to change the network type of the messages. An example for this is passing from an international to a national network.
 +
* [[Miscellaneous configurations]]
 +
Miscellaneous configurations (M2UA Gateway, M3UA Gateway, Camel, ISUP)
 
|}
 
|}
  
Line 135: Line 194:
  
 
{|class="yate-table"
 
{|class="yate-table"
|class="yate-header-right"|Issue
+
|class="yate-header-right" colspan="2"|Issue
 
|-
 
|-
 +
|class="yate-content-left"|
 +
* [[Database Connection Problems]]
 +
What to do if you suspect Yate is not connected to the database
 +
* [[Debugging with tcpdump]]
 +
You can use tcmpdump to follow VoIP traffic
 +
 
|class="yate-content-right"|
 
|class="yate-content-right"|
<div class="bullet">&nbsp;</div><font class="yate-page-title">[[Database Connection Problems]]</font><br/>
+
* [[YateAdmin Headers Sent Fix]]
<div class="yate-page-desc">What to do if you suspect Yate is not connected to the database.</div>
+
How to solve 'Headers already sent' warning for YateAdmin
<div class="bullet">&nbsp;</div><font class="yate-page-title">[[YateAdmin Headers Sent Fix]]</font><br/>
+
* [[Miscellaneous problems]]
<div class="yate-page-desc">How to solve 'Headers already sent' warning for YateAdmin</div>
+
Various issues: STUN, kdoc, YateClient on Ubuntu 11.10
<div class="bullet">&nbsp;</div><font class="yate-page-title">[[Debugging with tcpdump]]</font><br/>
+
<div class="yate-page-desc">You can use tcmpdump to follow VoIP traffic.</div>
+
<div class="bullet">&nbsp;</div><font class="yate-page-title">[[Miscellaneous problems]]</font><br/>
+
<div class="yate-page-desc">Various issues: STUN, kdoc, YateClient on Ubuntu 11.10</div>
+
 
|}
 
|}
  
Line 151: Line 212:
  
 
* [[Telephony]]
 
* [[Telephony]]
 +
 +
[[Category:Routing]] [[Category:Debug]] [[Category:Monitoring]] [[Category:Server]]

Latest revision as of 12:01, 27 October 2017

Yate has multiple routing modules and signalling modules. Here you can find some how to's for configuring Yate using different modules.

Contents

[edit] Routing

The most popular scenarios for routing:

How To's

Example of register users in Regfile module.

Example of redirecting calls to another user.

Examples of how to route calls from javascript module.

Example of how to register users from a database.

Round robin routing examples.

Examples on how to convert SIP headers into SIP parameters.

Example on how to use copyparams from routing in CDR.

Setting up an IVR.

Useful information from various users about routing.

[edit] Yate configuration as Server and / or Client

Various configuration for Yate to act as a Server and as a Client using different protocols.

How To's

Yate can be used as IAX Server and YateClient as IAX Client.

Yate used as a H323 Gatekeeper and YateClient as a H323 Client.

Configuring Yate as a SIP server.

Configuring Yate Server to use Jingle and YateClient to use a Jabber client.

How to set up Yate as a PBX depending on the features you need.

Configuring Yate Server to be a H323 to SIP Signalling Proxy.

Use Yate server to handle all your Google Voice calls.

How to use YateClient with SIPsocial

How to connect to FreeWorldDialUp

How to connect to InPhoneX

How to connect to SAPO

How to connect to IAXtel

How to enable SIP MESSAGE request in yate5 to allow chat messages between registered users.

Yate provides a protection mechanism against several types of SIP flood attacks.

[edit] Call detail records

Below are the modules and some tips you can use when writing call logs. You use this modules to obtain billing information.

How To's

How to write call logs to a database

Some things to take into account when wanting to bill from a database

How to write call logs to a file

Example of how to add custom parameters in CDR

For basic setups configure yate to write single cdr entry per call, instead of entry for each call leg

Example on how to start CDR Ring Timer on call.progress message.

[edit] Monitoring and debugging Yate

Some examples on how to monitor and enable debugging in Yate and the modules involved in this actions.

How To's

Overview on how to monitor yate using SNMP and rmanager.

Yate provides Debugging info on console.

Debug an external module in Telnet

Yate offers the msgsniff module to allow the investigation of messages at runtime.

Yate can be monitored using Munin.

[edit] Miscellaneous

How To's

Tips on what you should pay attention to when running Yate in VMWare.

This example allows chat and short files transfer between Twinkle clients using SIP MESSAGE Request Method.

Notes on various protocols when you wish to handle many simultaneous calls.

How to modify call release cause codes.

[edit] VoIP to PSTN gateway

How To's

Example on how to use Yate as VoIP-PSTN gateway

Guide to install Sangoma cards under Linux.

Guide to install Sangoma cards under Windows.

Guide to use Yate with ISDN BRI.

[edit] SS7 Setups

How To's

The MTP2 links are the classic way of interconnecting SS7 over TDM.

This SCTP/IP protocol is used as network transport by all forms of SIGTRAN to replace classic TDM links.

The voice channels on Cisco Universal Gateways (AS 53xx and 54xx series) can be controlled using the Media Gateway Control Protocol. This usually complements the Signalling Link Transport so both signaling and voice can be provided on the same set of trunks.

Voice circuits on Mediant gateways can be controlled on MGCP. Specific instructions for configuring Yate and Mediant are provided.

Configuration instructions for Sangoma cards using the Wanpipe kernel mode drivers.

The SCCP can be used as a SCCP message decoder. This case can be found if SCCP is used with M3UA-GW.

A STP represents a Service Transfer Point in SS7 network.

Configuration instructions for cards using the DAHDI (former Zaptel) kernel mode drivers.


The configuration of MTP3 in Yate describes the type and Point Codes of each attached linkset.

Cisco Signalling Link Transport is a backhauling protocol that transports remotely MTP2 links on a Cisco Access Server. The transport protocol is Reliable UDP (RUDP).

We will setup a ISUP configuration in Yate to make calls.

The SCCP protocol provides additional signaling commonly used by mobile networks. In most cases the Global Title Translation needs also to be configured.

The Mediant 2000 and Mediant 3000 series from Audiocodes support standard SIGTRAN M2UA backhaul for SS7 links.

When using SCCP in a SEP, the SCCP must have a SCCP application above it to process the messages. This is usually a TCAP application.

SCCP can be used to change the network type of the messages. An example for this is passing from an international to a national network.

Miscellaneous configurations (M2UA Gateway, M3UA Gateway, Camel, ISUP)

[edit] Troubleshooting

Issue

What to do if you suspect Yate is not connected to the database

You can use tcmpdump to follow VoIP traffic

How to solve 'Headers already sent' warning for YateAdmin

Various issues: STUN, kdoc, YateClient on Ubuntu 11.10

See also

Personal tools
Namespaces

Variants
Actions
Preface
Configuration
Administrators
Developers