[Asterisk-doc] docs/volume-one vm1chp4-channelconfig.xml,1.9,1.10

jimvanm cvs at sohoskyway.net
Sun Oct 3 02:30:40 CDT 2004


Comments:
Update of /cvsroot/asterisk/docs/volume-one
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv10517/volume-one

Modified Files:
	vm1chp4-channelconfig.xml 
Log Message:
I'm on a roll now! 
Just more editing, re-working, correcting, etc.
Index: vm1chp4-channelconfig.xml
===================================================================
RCS file: /cvsroot/asterisk/docs/volume-one/vm1chp4-channelconfig.xml,v
retrieving revision 1.9
retrieving revision 1.10
diff -C2 -d -r1.9 -r1.10
*** vm1chp4-channelconfig.xml	2 Oct 2004 18:16:54 -0000	1.9
--- vm1chp4-channelconfig.xml	3 Oct 2004 07:30:35 -0000	1.10
***************
*** 7,19 ****
  >Introduction to Channels</title
  ><para
! >Channels are the various paths which Asterisk connects together to create calls. Essentially, if you want a call to take place in an Asterisk, you will need at least one channel. Connecting callers to callees is done by connecting channels. The dialplan (Chapter 5) is how you define the rules which Asterisk follows to determine how to link channels together. Before we can build a dial plan, we will need to determine what kind of channels we need, and configure them to be available to the system.</para
  ><para
! >Channels come in all kinds of different formats from analog phone lines from your telephone company (FXO, FXS, PRI, BRI) to completely IP (SIP, IAX, etc). Asterisk transforms all of these channels into a kind of pipe for your call to flow through, and the pipes are connected together. It is important to remember that even though channels may vary in terms of technology and delivery, they are all just a channels, and channels can be connected to make a call.</para
  ><para
! >Asterisk is an extremely flexible and powerful PBX in large part because of the way it handles channels. In many older, proprietary PBXs, different channels have completely different ways of communicating. Station ports, Trunk ports and IP ports are so different that it requires years of training to figure out how to creatively connect them together. Indeed, it could be argued that becoming an expert on a particular PBX is mostly becoming intimately aware of it's limitations, and learning creative kludges to get around those limitations. Asterisk changes all that.</para
  ><para
! >Wherever possible, Asterisk allows you to treat any channel type in the same manner as any other channel type. Whether you are connnected to an analog set on an FXS port, or an IAX channel to your favourite VSP, the functions available to you are the same. This puts a greater responsibility on you the designer, as Asterisk will happily allow you to create something that is not workable. But it also means that Asterisk is able to be flexible as no other PBX can be.</para
  ><para
! ></para
  ></sect1
  ><sect1
--- 7,25 ----
  >Introduction to Channels</title
  ><para
! ><glossterm
! >Channels</glossterm
! > are logical connections to the various signalling and transmission paths which Asterisk can use to create and connect calls. They can be physical (such as an analog FXO port), or software-based (such as an IAX channel), depending on their nature. The dialplan (Chapter 5) is where you define the rules which Asterisk follows to determine how you want it to connect channels together. Obviously, before we can build a dial plan, we must determine what kind of channels we need, and configure them to be useable by the system.</para
  ><para
! >Channels come in all kinds of different formats; physical telecommunications circuits (such as FXO, FXS, PRI, BRI), software-based, network attached entities (such as SIP and IAX), and internal channels exclusive to Asterisk for all kinds of interesting wizardry (such as Agent, Console, Local and the very brilliant <glossterm
! >TDMoE</glossterm
! >). Asterisk treats all of these channels as connection points which you bring together in the dialplan. It is important to remember that even though channels may vary in terms of technology and connectivity, Asterisk allows you to treat them all pretty much the same.</para
  ><para
! >Asterisk is an extremely flexible and powerful PBX in large part because of the way it handles channels. In many older, proprietary PBXs, different channels have completely different ways of communicating. Station ports, Trunk ports and IP ports are so different that it requires years of experience to figure out how to creatively connect them together. Indeed, it could be argued that becoming an expert on a particular PBX is mostly becoming intimately aware of it's limitations, and learning creative kludges to get around those limitations. Asterisk changes all that.</para
  ><para
! >Wherever possible, Asterisk allows you to treat any channel type in the same manner as any other channel type. Whether you are connnected to an analog set on an FXS port, an IAX channel to IAXTel, or a SIP softphone, the functions available to you are usually going to be the same. This puts a greater responsibility on you the designer, as Asterisk will allow you to create something that is not workable. But it also means that Asterisk is flexible in ways no other PBX can be.</para
  ><para
! >In this document, we are going to walk you through the creation of four different channel types: FXO, FXS, IAX and SIP. These were chosen because they are the most popular channel types currently in use. If you do not have a development kit from Digium, you may not have access to FXO and FXS cards, if that is the case, please do read the FXO and FXS section, but do not create the <filename
! >/etc/asterisk/zapata.conf</filename
! > file.</para
  ></sect1
  ><sect1
***************
*** 21,30 ****
  >FXO and FXS</title
  ><para
! >The Terms FXO and FXS are terms referring to what the telephone companies called Foreign eXchange (or FX) circuits. The original purpose of an FX circuit was to allow an analog phone at a remote location to be connected to a PBX somewhere else. An FX circuit has two ends (the Station end, where the telephone is, and the Office end, where the PBX is). The confusing part about understanding FXO and FXS is that the cards are not named by what they do, but rather by what is connected to them. An FXS card, therefore, is a card that you connect a Station to. If that is so, you can see that an FXS card will need to behave like a central office in order to do it's job. Similarly, an FXO card connects to a Central Office, which means it will need to behave like a station (a modem is a classic example of an FXO device).</para
  ><sect2
  ><title
  >FXS</title
  ><para
! >Foreign eXchange Station (FXS) channels are exactly the same as the traditional analog line your phone company provides to most homes or small businesses. Among other things, FXS channels have to provide:</para
  ><itemizedlist
  ><listitem
--- 27,36 ----
  >FXO and FXS</title
  ><para
! >The terms "FXO" and "FXS" have their origins in an old telephone service called Foreign eXchange (FX). The original purpose of an FX circuit was to allow an analog phone at a remote location to be connected to a PBX somewhere else. An FX circuit has two ends (the Station end, where the telephone is, and the Office end, where the PBX is). The confusing part about understanding FXO and FXS is that FX cards are not named by what they are, but rather by what is connected to them. An FXS card, therefore, is a card that you connect a Station to. Since that is so, you can see that in order to do it's job an FXS card must behave like a central office. Similarly, an FXO card connects to a Central Office, which means it will need to behave like a telephone (a modem is a classic example of an FXO device).</para
  ><sect2
  ><title
  >FXS</title
  ><para
! >Foreign eXchange Station (FXS) channels provide the same interface as the traditional analog line your phone company provides to most homes or small businesses. Among other things, FXS channels would normally provide:</para
  ><itemizedlist
  ><listitem
***************
*** 44,63 ****
  >Message waiting</para
  ></listitem
  ></itemizedlist
  ><para
! >In Asterisk, when you configure a Digium card that can provide an FXS channel (such as the TDM400P with FXS cards installed), you will need to define parameters that are relevant to an FXS card. <emphasis
! >Most importantly, you need to remember that an FXS card provides the sitgnalling of a central office</emphasis
! >. It can be configured in <filename
! >zapata.conf</filename
  > as follows:</para
  ><informalexample
  ><programlisting
! >
! 		language=en
  		context=default
  		switchtype=national
! 		signalling=fxo_ks ; This describes the function the card is providing. Since an FXS card performs the functions of a Central 
! 						;office (providing dial tone, ring voltage, message waiting, etc), we specify that the signalling we want to provide 
! 						;is that of a central <emphasis
  >O</emphasis
  >ffice - thus FXO_KS is the signaling. It's an FX<emphasis
--- 50,79 ----
  >Message waiting</para
  ></listitem
+ ><listitem
+ ><para
+ >Calling Line ID</para
+ ></listitem
  ></itemizedlist
  ><para
! >In Asterisk, when you configure a Digium FXS card (such as the TDM400P with FXS cards installed), you will need to define parameters that are relevant to an FXS card. <emphasis
! ><emphasis
! >Most importantly, you need to remember that </emphasis
! >an FXS card provides the signalling of a central office</emphasis
! >. You will want to configure <filename
! >/etc/asterisk/zapata.conf</filename
  > as follows:</para
  ><informalexample
  ><programlisting
! >		language=en
  		context=default
  		switchtype=national
! 		signalling=fxo_ks
! 		channel =&gt; 1</programlisting
! ></informalexample
! ><note
! ><para
! >Notice the line where we define <varname
! >signalling=fxo_ks</varname
! >. This describes the function the card is providing. Since an FXS card performs the functions of a Central office (providing dial tone, ring voltage, message waiting, etc), we specify that the signalling we want to provide is that of a central <emphasis
  >O</emphasis
  >ffice - thus FXO_KS is the signaling. It's an FX<emphasis
***************
*** 65,79 ****
  > card, because you connect <emphasis
  >S</emphasis
! >tations to it, but it needs to 
! 						;provide the functions of a central <emphasis
  >O</emphasis
  >ffice, so the signalling has to be FX<emphasis
  >O</emphasis
! >.
! 		channel =&gt; 1
! 		</programlisting
! ></informalexample
  ><para
! >This does not of course contain all of the options but it sets up a simple FXS channel. Remember that the name of the device type (FXS) is the device that is connecting to you, so you have to assume the opposite characteristics. If I am an FXS card, I have to behave like a central office, if I am an FXO card, I have to behave like a station (a telephone set).</para
  ></sect2
  ><sect2
--- 81,94 ----
  > card, because you connect <emphasis
  >S</emphasis
! >tations to it, but it needs to provide the functions of a central <emphasis
  >O</emphasis
  >ffice, so the signalling has to be FX<emphasis
  >O</emphasis
! >. </para
! ></note
  ><para
! >The above example does contain all of the possible options but will set up a simple FXS channel for you, which is all we are going to do for now. </para
! ><para
! >Don't forget that an FXS card has to provide central office functionality to the device(s) connected to it.</para
  ></sect2
  ><sect2
***************
*** 81,87 ****
  >FXO</title
  ><para
  >The main difference in the settings that are provided above when configuring an FXO channel instead of an FXS channel is signalling. Of course an FXO channel will get plugged into something that provides an FXS channel (like the phone company).</para
  ><para
! >In the zapata.conf we set up the channel as follows (the previous :</para
  ><informalexample
  ><programlisting
--- 96,139 ----
  >FXO</title
  ><para
+ >An FXO card is a card that connects to a central office. A modem is a classic example of an FXO card (in fact, if you have one of Digium's old FXO cards, the X100P, it is in actual fact a modem). An FXO device must be able to:</para
+ ><itemizedlist
+ ><listitem
+ ><para
+ >Generate DTMF (touch tones)</para
+ ></listitem
+ ><listitem
+ ><para
+ >Detect dial tone</para
+ ></listitem
+ ><listitem
+ ><para
+ >Detect ringing </para
+ ></listitem
+ ><listitem
+ ><para
+ >Detect message waiting</para
+ ></listitem
+ ><listitem
+ ><para
+ >Interpret Caller ID</para
+ ></listitem
+ ><listitem
+ ><para
+ >Signal On Hook/Off Hook condition to the far end, as well as Flash</para
+ ></listitem
+ ></itemizedlist
+ ><para
  >The main difference in the settings that are provided above when configuring an FXO channel instead of an FXS channel is signalling. Of course an FXO channel will get plugged into something that provides an FXS channel (like the phone company).</para
  ><para
! >In your <filename
! >/etc/asterisk/zapata.conf</filename
! > file we will want to add the following:<informalexample
! ><programlisting
! >		signalling=fxs_ks
! 		channel =&gt; 2</programlisting
! ></informalexample
! ></para
! ><para
! >So your the whole file should now look like this:</para
  ><informalexample
  ><programlisting
***************
*** 90,107 ****
  		context=default
  		switchtype=national
! 		signalling=fxo_ks ; This describes the function the card is providing. Since an FXS card performs the functions of a Central 
! 						;office (providing dial tone, ring voltage, message waiting, etc), we specify that the signalling we want to provide 
! 						;is that of a central <emphasis
! >O</emphasis
! >ffice - thus FXO_KS is the signaling. It's an FX<emphasis
! >S</emphasis
! > card, because you connect <emphasis
! >S</emphasis
! >tations to it, but it needs to 
! 						;provide the functions of a central <emphasis
! >O</emphasis
! >ffice, so the signalling has to be FX<emphasis
! >O</emphasis
! >.
  		channel =&gt; 1
  		signalling=fxs_ks
--- 142,146 ----
  		context=default
  		switchtype=national
! 		signalling=fxo_ks
  		channel =&gt; 1
  		signalling=fxs_ks
***************
*** 119,123 ****
  >IAX</title
  ><para
! >The Inter-Asterisk eXchange (IAX) protocol is a completely IP based protocol. To create a conversation between to people via IP you use IAX with as the method of transporting the audio. To create an IAX channel you need to set up the IAX communications in your iax.conf file.</para
  ><sect2
  ><title
--- 158,170 ----
  >IAX</title
  ><para
! >The <glossterm
! >Inter-Asterisk eXchange</glossterm
! > (<glossterm
! >IAX</glossterm
! >) protocol is an IP-based media transport protocol. To create a conversation between to people via IP you use IAX with as the method of transporting the audio. To create an IAX channel you need to set up the IAX communications in your iax.conf file.<note
! ><para
! >IAX is pronounced "eeks" by the Asterisk developer community, although no one minds if you say "AYE-AY-EX".</para
! ></note
! ></para
  ><sect2
  ><title
***************
*** 131,135 ****
  		port=5036	       ; What port to use
  		bindaddr=10.78.1.90    ; What IP address to bind to
! 		allow=all              ; Allow the use of all audio codecs
  		</programlisting
  ></informalexample
--- 178,184 ----
  		port=5036	       ; What port to use
  		bindaddr=10.78.1.90    ; What IP address to bind to
! 		allow=all              ; Allow the use of all audio <glossterm
! >codecs</glossterm
! >
  		</programlisting
  ></informalexample
***************
*** 139,145 ****
  ><sect2
  ><title
! >Allowing communications</title
  ><para
! >Unfortunately the settings above are just a start and don't allow us to actually use that IAX connection. So we have to add some channels so that in and out bound calls can be handled.</para
  ><informalexample
  ><programlisting
--- 188,202 ----
  ><sect2
  ><title
! >Defining IAX Channels</title
  ><para
! >Now that we've defined the global parameters for our IAX interface to the outside world, we can create our IAX channels. IAX channels are very flexible, and are successfully used to connect to many kinds of endpoints. Digium makes an IAX-based device nicknamed the IAXy, which provides an FXS interface to support an analog telephone at the end of an IAX channel. IAX is also (naturally) the protocol used by the IAXTel network, which is what our examples will be connecting you to. </para
! ><para
! >Although IAX is not an RFC standard protocol, it is enourmously well respected. Many pundits predict that IAX will supplant SIP.</para
! ><para
! ><note
! ><para
! >Before creating this file you will probably want to get an IAXTel account set up. </para
! ></note
! ></para
  ><informalexample
  ><programlisting
***************
*** 182,186 ****
  >SIP</title
  ><para
! >The Session Initiation Protocol (SIP) is rapidly becoming the most widely support VoIP protocol. Like IAX, SIP is pretty easy to set up. There are some gotcha's with the protocol though. Be aware that while your channels may be set up correctly, SIP does not handle NAT very well, and this can be a source of significant headaches.</para
  ><sect2
  ><title
--- 239,243 ----
  >SIP</title
  ><para
! >The Session Initiation Protocol (SIP) is rapidly becoming the most widely supported VoIP protocol. Like IAX, SIP is pretty easy to set up. There are some gotcha's with the protocol though. Be aware that while your channels may be set up correctly, SIP does not handle NAT very well, and this can be a source of significant headaches.</para
  ><sect2
  ><title
***************
*** 205,209 ****
  ><sect2
  ><title
! >Allowing Communications</title
  ><para
  >For SIP channels to be used, clients have to be given permission to authenticate to Asterisk via SIP. Also for Asterisk to be used as a client (for something like Free World Dialup phone service via SIP, the client settings must be setup.</para
--- 262,266 ----
  ><sect2
  ><title
! >Defining SIP Channels</title
  ><para
  >For SIP channels to be used, clients have to be given permission to authenticate to Asterisk via SIP. Also for Asterisk to be used as a client (for something like Free World Dialup phone service via SIP, the client settings must be setup.</para
***************
*** 242,245 ****
--- 299,354 ----
  ><para
  >The first entry is the information necessary for outbound calls to use the FWD service as a client. It is almost identical to the section under IAX for "type=user". The second entry is for authenticating inbound calls, to ensure that we're not getting fake call routing from another source.</para
+ ><para
+ ></para
+ ><sect3
+ ><title
+ ></title
+ ><para
+ ></para
+ ></sect3
+ ></sect2
+ ></sect1
+ ><sect1
+ ><title
+ >Other Channel Protocols</title
+ ><para
+ >Asterisk is the most standards-compliant PBX in existence. It's support of every important telephony standard is unmatched in the industry.</para
+ ><para
+ ></para
+ ><sect2
+ ><title
+ >H.323</title
+ ><para
+ ></para
+ ></sect2
+ ><sect2
+ ><title
+ >ISDN</title
+ ><para
+ ></para
+ ></sect2
+ ><sect2
+ ><title
+ >MGCP</title
+ ><para
+ ></para
+ ></sect2
+ ><sect2
+ ><title
+ >SCCP (Skinny)</title
+ ><para
+ ></para
+ ></sect2
+ ><sect2
+ ><title
+ >VoFR</title
+ ><para
+ ></para
+ ></sect2
+ ><sect2
+ ><title
+ >Bluetooth</title
+ ><para
+ ></para
  ></sect2
  ></sect1


More information about the Asterisk-Doc mailing list