login | register
Tue 09 of Feb, 2010 [21:32 UTC]

voip-info.org

Asterisk readme.channels

Created by: oej,Last modification on Sun 31 of Aug, 2008 [07:18 UTC] by voipdog
Note: This page is work in progress


README.channels


Channels are named methods by which a leg of a call can be received or transmitted. Specifying a different channel name in a Dial statement allows one to transparently link two calls from different drivers together, without knowing the specifics of the inbound or outbound call handler.
While channels are fairly generic in their syntax, there are special arguments for each channel type depending on what variables need to be handed to the channel in order to have a successful setup, or to specify unique characteristics of that channel type. Below is a list of the channel types, and the dialing syntaxes and special methods for each channel.

Most channels have specific configuration files that can be found in
/etc/asterisk/CHANNELNAME.conf files. Some of the values in the .conf
file may not be accessible from the dialplan, and vice versa.

An Asterisk channel is specified in this way:

<technology>/<dialstring>

   * Technology is one of installed channel modules, i.e. SIP, IAX, IAX2, MGCP, Modem
   * Dialstring depends on the channel 


SIP channel

 Description: Extensions connecting with the SIP protocol
 Syntax: SIP/extension[@hostname[:port]]
 Configuration file: sip.conf


Notes:
  • The full length of a sip peer name or username combination is 256 bytes.
  • Special variable ${VXML_URL} can be used to add additional items to the To: header
  • Special variable ${ALERT_INFO} can be used to create a new header called Alert-Info: which can be used to create distinctive ringing on the Cisco SIP-enabled phone devices.
  • Extension can be a text-based name, not only a number.



Local channel

 Description: Local Proxy Channel Driver
 Syntax: Local/extension[@context[/n]]
 Configuration file: none

chan_local is a pseudo-channel. Use of this channel simply loops calls back into the dialplan, possibly into a different context. Useful for recursive routing, adding Dial() options to an existing call, etc.

Notes: Adding "/n" at the end of the string will make the Local channel not
do a native transfer (the "n" stands for "n"o release) upon the remote end
answering the line. This is an esoteric, but important feature if you
expect the Local channel to handle calls _exactly_ like a normal channel.
If you do not have the "no release" feature set, then as soon as the
destination (inside of the Local channel0 answers the line, the variables
and dial plan will revert back to that of the original call, and the Local
channel will become a zombie and be removed from the active channels list.
This is desirable in some circumstances, but can result in unexpected
dialplan behavior if you are doing fancy things with variables in your call
handling.



H323 channel

 Description: The NuFone Network's Open H.323 Channel Driver
 Syntax: ??????????????
 Configuration: h323.conf
 
chan_h323 is the default H.323 channel driver

MGCP channel

 Description:   chan_mgcp is the Media Gateway Control Protocol, MGCP driver
 Syntax: ?????????????
 Configuration file: mgcp.conf

OSS channel

 chan_oss is the OSS audio drivers (some systems use this for
soundcards)

  Syntax: oss/console

MODEM

  Description: Generic Voice Modem Channel Driver
  Syntax: ???????????
  Configuration file: modem.conf

 

MODEM_I4L

  Description:  ISDN4Linux Emulated Modem Driver
  Syntax: ?????????????????
  Configuration file: modem.conf


MODEM_AOPEN

  Description: A/Open (Rockwell Chipset) ITU-2 VoiceModem Driver
  Syntax: ?????????????????
  Configuration file: modem.conf

chan_modem_aopen is the A/Open (Rockwell) analog voice modem driver
(yuck!)

MODEM_BESTDATA

  Description: BestData (Conexant V.90 Chipset) VoiceModem Driver
  Configuration file: modem.conf


PHONE

  Syntax: ?????????
 chan_phone is the Linux Telephony API channel driver

CAPI channel

   Description: Connections over ISDN CAPI drivers
   Syntax: ~/np~CAPI/clip optionoutgoing msn:b3 optionsdestination~/np~
    Configuration: capi.conf

ZAP channel

 Description: chan_zap is the Zapata analog card channel driver
 Syntax: Zap/group|port|span-port/extension
 Configuration: zapata.conf

Examples:
     Zap/g1/12394     : dial 12394 on first available channel on group1
     Zap/1-1/12394    : dial 12394 on span 1, port 1
     Zap/1/12394      : dial 12394 on port1 

Notes: special dial modifier "c" allows for clear channel connections between PRI ports


VOFR

  Syntax: ???
 chan_vofr is the Voice Over Frame Relay channel driver

AGENT

  Description: Call Agent Proxy Channel
  Syntax:???
  Configuration file: Asterisk config agent.conf


ALSA

  Description: ALSA Console Channel Driver
   Syntax: ???
   Configuration file: alsa.conf

IAX

 Descrtiption: chan_iax is the IAX (Inter-Asterisk eXchange) version 1 channel driver
 Syntax: IAX/user@peer[:exten@context]
 Configuration file: iax.conf


IAX2

 Description: chan_iax2 is the IAX (Inter-Asterisk eXchange) version 2 channel driver
 Syntax: IAX2/user:password@host/extension
 Configuration file: iax.conf

SKINNY

 Description: chan_skinny is the SCCP (Skinny Client Control Protocol) channel driver
 Syntax: Skinny/line@registered-client
 Configuration file: skinny.conf


NBS

  Description: the Network Broadcast Sound driver
  Syntax: ????
  Configuration file: none

Notes:

VPB

 chan_vpb is the Voicetronix card driver.  Rumored to work with 6 and 12 port cards.

 - Perhaps this is the same syntax as Zap drivers?   No idea.
Syntax: VPB/card/port



Notes: See http://bugs.digium.com/bug_view_page.php?bug_id=0000390

Comments