aboutsummaryrefslogtreecommitdiffstats
path: root/doc/channels.txt
diff options
context:
space:
mode:
authorrussell <russell@f38db490-d61c-443f-a65b-d21fe96a405b>2007-03-15 22:25:12 +0000
committerrussell <russell@f38db490-d61c-443f-a65b-d21fe96a405b>2007-03-15 22:25:12 +0000
commit3bc7e211a435c49aa70ad227799bd7b0c40356a1 (patch)
treed8e5262f1e1a9faad716b36f59a6b3fe65c288bd /doc/channels.txt
parenta63acaa328b9937677f3f5c4d861889a6e369034 (diff)
Merge changes from svn/asterisk/team/russell/LaTeX_docs.
* Convert most of the doc directory into a single LaTeX formatted document so that we can generate a PDF, HTML, or other formats from this information. * Add a CLI command to dump the application documentation into LaTeX format which will only be include if the configure script is run with --enable-dev-mode. * The PDF turned out to be close to 1 MB, so it is not included. However, you can simply run "make asterisk.pdf" to generate it yourself. We may include it in release tarballs or have automatically generated ones on the web site, but that has yet to be decided. git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@58931 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'doc/channels.txt')
-rw-r--r--doc/channels.txt44
1 files changed, 0 insertions, 44 deletions
diff --git a/doc/channels.txt b/doc/channels.txt
deleted file mode 100644
index b907a92aa..000000000
--- a/doc/channels.txt
+++ /dev/null
@@ -1,44 +0,0 @@
-Implementing a Channel
-======================
-
-* What is a channel?
-
-A channel is a unit which brings in a call to the Asterisk PBX. A channel
-could be connected to a real telephone (like the Internet Phone Jack) or
-to a logical call (like an Internet phone call). Asterisk makes no
-distinction between "FXO" and "FXS" style channels (that is, it doesn't
-distinguish between telephone lines and telephones).
-
-Every call is placed or received on a distinct channel. Asterisk uses a
-channel driver (typically named chan_xxx.so) to support each type of
-hardware.
-
-* What do I need to create a channel?
-
-In order to support a new piece of hardware you need to write a channel
-driver. The easiest way to do so is to look at an existing channel driver
-and model your own code after it.
-
-* What's the general architecture?
-
-Typically, a channel reads a configuration file on startup which tells it
-something about the hardware it's going to be servicing. Then, it
-launches a thread which monitors all the idle channels (See the chan_modem
-or the chan_ixj for an example of this). When a "RING" or equivalent is
-detected, the monitoring thread should allocate a channel structure and
-assign all the callbacks to it (see ixj_new, for example), and then call
-ast_pbx_start on that channel. ast_pbx_start will launch a new thread to
-handle the channel as long as the call is up, so once pbx_start has
-successfully been run, the monitor should no longer monitor that channel.
-The PBX thread will use the channel, reading, writing, calling, etc., and
-multiplexing that channel with others using select() on the channel's
-file descriptor (if your channel doesn't have an associated file
-descriptor, you'll need to emulate one somehow, perhaps along the lines of
-what the translator API does with its channel.
-
-When the PBX is finished with the line, it will hang up the line, at which
-point it the hardware should again be monitored by the monitoring thread.
-
----------------
-For more information, please consult the Asterisk Developer's Documentation
-on http://www.asterisk.org