SIP Routing in Yate

From Yate Documentation
Jump to: navigation, search

SIP routing in Yate can be done from a single routing module or from a combination of modules.

The calls can be routed directly to a SIP channel from a routing module (e.g regexroute.conf).

Another way to route the calls is by using a SIP line(gateway) configured in accfile.conf.


Route to a SIP channel

From a routing module (e.g regexroute.conf) you can call an sip channel like this:

;extension match rule=sip/sip:user@ip:port

Route to a SIP line

Configure a SIP line

From accfile.conf you can configure a SIP line. In this case Yate is registers to a remote server.
Sections with enabled=no are always ignored so you have to changed them to enabled=yes.

Parameter description for SIP:

  • protocol: The protocol to register on
  • username: Account username
  • password: Account password
  • interval: Registration interval (in seconds) to request from server
  • description: Caller name to set on outgoing calls on this account if none specified when routing
  • registrar: Registrar address. A port can be specified here (e.g.
  • authname: Authentication name to use instead of username when authenticating
  • domain: Authentication domain if any
  • outbound: Optional outbound proxy server if different from registrar. A port can be specified here (e.g.
  • ip_transport: Optional SIP transport to use (UDP, TCP, TLS).
  • ip_transport_remoteip: IP address to connect to register the account.
  • ip_transport_remoteport: IP port to connect to register the account.
  • ip_transport_localip:
- UDP: This parameter is used in conjuction ip_transport_localport to identify the transport to use.
- TCP/TLS: Optional local ip to use when connecting ip_transport_localport: Local port.
  • localaddress: Local address to set in sent messages
- Set it to 'yes' to detect NAT and re-register with public ip when NAT is detected
- Set it to 'no' or ipaddress (e.g. or to disable NAT detection
  • keepalive: Optional interval for NAT keep alive.

Note: Default port is 5060 for UDP/TCP and 5061 for TLS

This is an example: Configure a SIP line called [test_sip].


description=Test SIP account

Route to the configured line

Route a call to the SIP line configured above:


  • this rule will match the number called: 100 and will route the call through the gateway
  • the line parameter is fixed.
  • line=test_sip will tell Yate on which gateway/account to route the call.

See also

Personal tools