[Asterisk-Dev] README.channels bugnote needs your help

John Todd jtodd at loligo.com
Wed Oct 15 01:32:51 MST 2003


[sent to the -dev list so I don't have to filter noise from a million 
-users replies and questions]

Mark and I had discussed building a "README.channels" file to start 
explaining some of the more esoteric features that aren't obvious in 
some of the channel dialing methods.  I've included some below for 
the channels with which I'm familiar, but my time is fairly short 
these days, and some of you may have much better grips on some of 
these channel types than I do, so please fill in the large tracts of 
missing channel data and we'll perhaps get this done more quickly.

I've created a bugnote on this: please submit your modifications and 
changes to the bugnote comments.  Please submit your changes in the 
form of a complete channel entry; no unified diffs, please, and don't 
submit six changes for six channels in a single bugnote; I'll compile 
everything in the next few days, but I don't want to spend hours 
sifting through a million shards of descriptions.

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

JT




-------------------------
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.


SIP

Syntax: SIP/extension[@hostname[:port]]

The full length of a sip peer name or username combination is 256 bytes.

Notes:
  - 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.



Local
   chan_local is a pseudo-channel.  Use of this channel simply loops 
calls back into the dialplan in a different context.  Useful for 
recursive routing.

Syntax: Local/extension at context[/n]

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
   chan_h323 is the default H.323 channel driver

MGCP
   chan_mgcp is the Media Gateway Control Protocol driver

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

Syntax: oss/console

MODEM
   chan_modem is the analog voice modem channel driver (yuck!)

MODEM_I4L
   chan_modem_i4l is the ISDN for Linux modem driver

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

PHONE
   chan_phone is the Linux Telephony API channel driver

ZAP
   chan_zap is the Zapata analog card channel driver

  Syntax: Zap/[group]|[port]|[span-port]/extension
    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
   chan_vofr is the Voice Over Frame Relay channel driver

AGENT

ALSA

IAX
   chan_iax is the IAX (Inter-Asterisk eXchange) version 1 channel driver

IAX2
   chan_iax2 is the IAX (Inter-Asterisk eXchange) version 2 channel driver
  Syntax: IAX2/user[:password]@host/extension

SKINNY
   chan_skinny is the SCCP (Skinny Client Control Protocol) channel driver

NBS
   chan_nbs is the Network Broadcast Sound driver.  No information available.

- cvs co nbs    [to get the other parts of this driver?]
- works in conjunction with xmms?

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]





More information about the asterisk-dev mailing list