[Asterisk-doc] docs/volume-one vm1chp4-channelconfig.xml,1.7,1.8

jimvanm cvs at sohoskyway.net
Sat Oct 2 12:03:26 CDT 2004


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

Modified Files:
	vm1chp4-channelconfig.xml 
Log Message:
Changed ocurrances of "_ls" to "_ks"  (as in "FXO_KS"). We want to recommend kewlstart signalling as first choice.
Index: vm1chp4-channelconfig.xml
===================================================================
RCS file: /cvsroot/asterisk/docs/volume-one/vm1chp4-channelconfig.xml,v
retrieving revision 1.7
retrieving revision 1.8
diff -C2 -d -r1.7 -r1.8
*** vm1chp4-channelconfig.xml	24 Sep 2004 17:54:01 -0000	1.7
--- vm1chp4-channelconfig.xml	2 Oct 2004 17:03:20 -0000	1.8
***************
*** 1,150 ****
  <?xml version="1.0" encoding="UTF-8"?>
! <chapter>
! 	<title>Configuring Channels</title>
! 		<sect1>
! 		<title>Introduction to Channels</title>
! 		<para>
! 		Channels are how an Asterisk system connects calls together.  They can be
! 		thought of like the wires used by old phone operators that hooked calls
! 		together.  The dialplan (Chapter 5) links these channels together and routes
! 		calls through them.  As all forms of calls create a channel of some sort,
! 		they play a vital role in developing your Asterisk installation.
! 		</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>
! 		</sect1>
! 
! 		<sect1>
! 		<title>FXO and FXS</title>
! 		<para>
! 		Foreign eXchange Station (FXS) channels are what your phone company provides
! 		to the wall of most homes or small businesses.  It is the traditional flat
! 		analog telephone line.  Since they provide dialtone, Asterisk can use an FXS
! 		channel to hook a basic analog phone set to the system to use for making and
! 		recieving calls.
! 		</para>
! 		<sect2><title>FXS</title>
! 		<para>
! 		If you have a Digium card that can provide an FXS channel,
! 		like the TDM400P,  it can be configured in <filename>zapata.conf</filename>
! 		as follows:
! 		</para>
! 
! 		<informalexample>
! 		<programlisting>
  		language=en
  		context=default
  		switchtype=national
! 		signalling=fxo_ls ; This is the signaling we're recieving not the one we're
  		                  ; providing.  ie. We get are providing an FXS signal so we
  				  ; are recieving an FXO signal.
  		channel =&gt; 1
! 		</programlisting>
! 		</informalexample>
! 
! 		<para>
! 		This does not of course contain all of the options but it sets up a simple
! 		FXS channel.  It's important to remember that the signalling is always the
! 		signal you are recieving from the connected device, not the signal you are
! 		providing.  The name of the device type (FXS) is the type of signal you are
! 		providing.  This is confusing to some people, so it's defintely something to
! 		look out for.
! 		</para>
! 		</sect2>
! 
! 		<sect2><title>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:
! 		</para>
! 
! 		<informalexample>
! 		<programlisting>
  		language=en
  		context=default
  		switchtype=national
! 		signalling=fxo_ls ; This is the signaling we're recieving not the one we're
  		                  ; providing.  ie. We get are providing an FXS signal so we
  				  ; are recieving an FXO signal.
  		channel =&gt; 1
! 		signalling=fxs_ls
  		channel =&gt; 2
! 		</programlisting>
! 		</informalexample>
! 
! 		<para>
! 		In the first example we listed channel 1 as an FXS channel.  To create an FXO
! 		channel on the same TDM400P card, we list all the settings for the channel
! 		and then define the channel number.  Instead of only having signalling be
! 		fxo_ls though we want the signalling to be fxs_ls.  Because the other
! 		settings haven't been changed (signalling=fxs_ls replaces the previous value
! 		of signalling), they stay the same.  Which means that while channel 1 takes
! 		on the values language=en, context=default, switchtype=national, and 
! 		signalling=fxo_ls; channel takes on the values language=en, context=default,
! 		switchtype=national, and signalling=fxs_ls.
! 		</para>
! 
! 		<para>
! 		We now having a working example of a zapata.conf with an FXS channel (1) and
! 		an FXO channel (2) that we can use.  Channel 2 can be hooked to an analog
! 		phone jack like the one provided by a phone company and Channel 1 can be
! 		hooked directly to a standard analog telephone.
! 		</para>
! 		</sect2>
! 		</sect1>
! 
! 		<sect1>
! 		<title>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>General Settings</title>
! 		<para>
! 		First we need to set up our IAX globally used settings:
! 		</para>
! 		<informalexample>
! 		<programlisting>
  		[general]
  		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>
! 		<para>
! 		The example above is very minimal and only sets up the basic settings to
! 		listen for connections and create them.  The same way that Apache listens
! 		for http requests on port 80, Asterisk will listen for IAX requests on port
! 		5036.
! 		</para>
! 		</sect2>
! 		<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>
                  [general]
                  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
! 		register => username:secret at iaxtel.com
  
  		[iaxtel-out]
--- 1,103 ----
  <?xml version="1.0" encoding="UTF-8"?>
! <chapter
! ><title
! >Configuring Channels</title
! ><sect1
! ><title
! >Introduction to Channels</title
! ><para
! >Channels are how an Asterisk system connects calls together. They can be thought of like the wires used by old phone operators that hooked calls together. The dialplan (Chapter 5) links these channels together and routes calls through them. As all forms of calls create a channel of some sort, they play a vital role in developing your Asterisk installation.</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
! ></sect1
! ><sect1
! ><title
! >FXO and FXS</title
! ><para
! >Foreign eXchange Station (FXS) channels are what your phone company provides to the wall of most homes or small businesses. It is the traditional flat analog telephone line. Since they provide dialtone, Asterisk can use an FXS channel to hook a basic analog phone set to the system to use for making and recieving calls.</para
! ><sect2
! ><title
! >FXS</title
! ><para
! >If you have a Digium card that can provide an FXS channel, like the TDM400P, it can be configured in <filename
! >zapata.conf</filename
! > as follows:</para
! ><informalexample
! ><programlisting
! >
  		language=en
  		context=default
  		switchtype=national
! 		signalling=fxo_ks ; This is the signaling we're recieving not the one we're
  		                  ; providing.  ie. We get are providing an FXS signal so we
  				  ; are recieving an FXO signal.
  		channel =&gt; 1
! 		</programlisting
! ></informalexample
! ><para
! >This does not of course contain all of the options but it sets up a simple FXS channel. It's important to remember that the signalling is always the signal you are recieving from the connected device, not the signal you are providing. The name of the device type (FXS) is the type of signal you are providing. This is confusing to some people, so it's defintely something to look out for.</para
! ></sect2
! ><sect2
! ><title
! >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:</para
! ><informalexample
! ><programlisting
! >
  		language=en
  		context=default
  		switchtype=national
! 		signalling=fxo_ks ; This is the signaling we're recieving not the one we're
  		                  ; providing.  ie. We get are providing an FXS signal so we
  				  ; are recieving an FXO signal.
  		channel =&gt; 1
! 		signalling=fxs_ks
  		channel =&gt; 2
! 		</programlisting
! ></informalexample
! ><para
! >In the first example we listed channel 1 as an FXS channel. To create an FXO channel on the same TDM400P card, we list all the settings for the channel and then define the channel number. Instead of only having signalling be fxo_ks though we want the signalling to be fxs_ks. Because the other settings haven't been changed (signalling=fxs_ks replaces the previous value of signalling), they stay the same. Which means that while channel 1 takes on the values language=en, context=default, switchtype=national, and signalling=fxo_ks; channel takes on the values language=en, context=default, switchtype=national, and signalling=fxs_ks.</para
! ><para
! >We now having a working example of a zapata.conf with an FXS channel (1) and an FXO channel (2) that we can use. Channel 2 can be hooked to an analog phone jack like the one provided by a phone company and Channel 1 can be hooked directly to a standard analog telephone.</para
! ></sect2
! ></sect1
! ><sect1
! ><title
! >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
! >General Settings</title
! ><para
! >First we need to set up our IAX globally used settings:</para
! ><informalexample
! ><programlisting
! >
  		[general]
  		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
! ><para
! >The example above is very minimal and only sets up the basic settings to listen for connections and create them. The same way that Apache listens for http requests on port 80, Asterisk will listen for IAX requests on port 5036.</para
! ></sect2
! ><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
! >
                  [general]
                  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
! 		register =&gt; username:secret at iaxtel.com
  
  		[iaxtel-out]
***************
*** 165,209 ****
  		permit=216.207.245.47/255.255.255.255	; This is a server at IAXTel
  		permit=69.73.19.178			; This is a server at IAXTel
! 		</programlisting>
! 		</informalexample>
! 		<para>
! 		In the example above you will notice that we have 2 entries to communicate 
! 		with the IAXTel service.  IAXTel is a free VoIP calling service and is used
! 		as a testbed for Asterisk and IAX as well, as a common communication system.
! 		</para>
! 		<para>
! 		The firt change you will notice actually comes in the general section.  It
! 		is a line to tell IAXTel that we are here and that calls to that IAX user
! 		should be routed to your asterisk server.  It's like connecting to your IM
! 		(AOL Instant Messenger, Yahoo, MSN, etc) so that when other people send you
! 		a message you get it wherever you are logged in.
! 		</para>
! 		<para>
! 		We have 2 different kinds of connections to IAXTel, the peer and the user.
! 		This allows us to decide that inbound calls can come from one server and
! 		outbound calls could come from another.  This is extremely useful when you
! 		are handling a major network of Asterisk servers and are using IAX for
! 		trunking the servers together.
! 		</para>
! 		</sect2>
! 		</sect1>
! 
! 		<sect1>
! 		<title>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>General Settings</title>
! 		<para>
! 		The first thing tht needs to be done is setup the general settings.  Much
! 		like IAX this allows you to make settings that all sip connections will use.
! 		</para>
! 		<informalexample>
! 		<programlisting>
  		[general]
  		port = 5060                     ; Port to bind to
--- 118,144 ----
  		permit=216.207.245.47/255.255.255.255	; This is a server at IAXTel
  		permit=69.73.19.178			; This is a server at IAXTel
! 		</programlisting
! ></informalexample
! ><para
! >In the example above you will notice that we have 2 entries to communicate with the IAXTel service. IAXTel is a free VoIP calling service and is used as a testbed for Asterisk and IAX as well, as a common communication system.</para
! ><para
! >The firt change you will notice actually comes in the general section. It is a line to tell IAXTel that we are here and that calls to that IAX user should be routed to your asterisk server. It's like connecting to your IM (AOL Instant Messenger, Yahoo, MSN, etc) so that when other people send you a message you get it wherever you are logged in.</para
! ><para
! >We have 2 different kinds of connections to IAXTel, the peer and the user. This allows us to decide that inbound calls can come from one server and outbound calls could come from another. This is extremely useful when you are handling a major network of Asterisk servers and are using IAX for trunking the servers together.</para
! ></sect2
! ></sect1
! ><sect1
! ><title
! >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
! >General Settings</title
! ><para
! >The first thing tht needs to be done is setup the general settings. Much like IAX this allows you to make settings that all sip connections will use.</para
! ><informalexample
! ><programlisting
! >
  		[general]
  		port = 5060                     ; Port to bind to
***************
*** 213,236 ****
  		dtmfmode=inband
  		allow=all                       ; Allow all codecs
! 		</programlisting>
! 		</informalexample>
! 		<para>
! 		As you can see, the settings are very similar to IAX.  We have a port, address,
! 		context, and allow.  The srvlookup setting is a way to look up host names.
! 		If set to yes, DNS lookups will happen on SRV records instead of A records to
! 		accomodate for load balancing.  The dtmfmode setting is used to determine how
! 		Asterisk should listen for tones, such as someone dialing an extension.
! 		</para>
! 		</sect2>
! 		<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>
! 
! 		<informalexample>
! 		<programlisting>
  		[general]
  		port = 5060                     ; Port to bind to
--- 148,164 ----
  		dtmfmode=inband
  		allow=all                       ; Allow all codecs
! 		</programlisting
! ></informalexample
! ><para
! >As you can see, the settings are very similar to IAX. We have a port, address, context, and allow. The srvlookup setting is a way to look up host names. If set to yes, DNS lookups will happen on SRV records instead of A records to accomodate for load balancing. The dtmfmode setting is used to determine how Asterisk should listen for tones, such as someone dialing an extension.</para
! ></sect2
! ><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
! ><informalexample
! ><programlisting
! >
  		[general]
  		port = 5060                     ; Port to bind to
***************
*** 240,244 ****
  		dtmfmode=inband
  		allow=all                       ; Allow all codecs
! 		register => FWDNumber:secretpassword at fwd.pulver.com/EXTEN
  
  		[fwd.pulver.com]
--- 168,172 ----
  		dtmfmode=inband
  		allow=all                       ; Allow all codecs
! 		register =&gt; FWDNumber:secretpassword at fwd.pulver.com/EXTEN
  
  		[fwd.pulver.com]
***************
*** 256,285 ****
  		nat=yes
  		canreinvite=no
! 		</programlisting>
! 		</informalexample>
! 
! 		<para>
! 		FWD stands for Free World Dialup, a free VoIP to VoIP service that can be
! 		found at http://www.freeworlddialup.com.  Communications between FWD and
! 		IAXTel are allowed and there are instructions on their respective websites
! 		on how to do this inter-service communications.
! 		</para>
! 
! 		<para>
! 		Again, you can see that we've put a register line in the general section to
! 		let the service provider know that we are the correct client for calls that
! 		would be routed to FWDNumber.  You'll also notice that there is a new context
! 		in the example.  The fwd.pulver.com context allows calls to FWD and from FWD
! 		to be handled by Asterisk.
! 		</para>
! 
! 		<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>
! 
! 		</sect2>
! 		</sect1>
! </chapter>
--- 184,197 ----
  		nat=yes
  		canreinvite=no
! 		</programlisting
! ></informalexample
! ><para
! >FWD stands for Free World Dialup, a free VoIP to VoIP service that can be found at http://www.freeworlddialup.com. Communications between FWD and IAXTel are allowed and there are instructions on their respective websites on how to do this inter-service communications.</para
! ><para
! >Again, you can see that we've put a register line in the general section to let the service provider know that we are the correct client for calls that would be routed to FWDNumber. You'll also notice that there is a new context in the example. The fwd.pulver.com context allows calls to FWD and from FWD to be handled by Asterisk.</para
! ><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
! ></sect2
! ></sect1
! ></chapter
! >
\ No newline at end of file


More information about the Asterisk-Doc mailing list