[asterisk-doc] Who's Willing to Contribute ?
Leif Madsen
leif.madsen at asteriskdocs.org
Mon Feb 9 12:05:07 CST 2009
Robert Broyles wrote:
> Sorry in advance for any grammer/spelling mistakes. (I've been at it for
> almost 18 hours now.)
No problem! Thanks for getting this thread started. I have some ideas I'll be
elaborating on in-line.
Let me start that there has been some work going on in the background to get a
new AsteriskDocs.org site up and running which would ideally become the
'de-facto' location for Asterisk documentation. However, that goal is a ways
out, so lets start with just getting a site up :) I have been working on that
in my spare time, and have also thought quite extensively about what that would
look like, and have spoken to many people about the way forward.
I'll explain some of my thoughts throughout this email in response to your
questions and suggestions.
> My thoughts are basically this...
>
> 1) We can start from scratch, and create a new single wiki, which is
> recognized as the most comprehensive guide to Asterisk.
I've never really liked the idea of a wiki for the Asterisk community, because
we already have one -- and it doesn't work. Most information is based on
Asterisk 1.2, and has become quite stagnant, and is rarely updated. I think we
need a new approach for Asterisk documentation that is not wiki based. At least
for now.
> 2) We can expand further on voip-info.org.
Yes we could also do that. In fact I would encourage ANYONE to update
voip-info.org in any way possible to help with the documentation front there.
However, that is not the approach I wish to take. An Asterisk wiki already
exists, and for whatever reason it hasn't worked until now. I'm not interested
in duplicating effort using a method that hasn't proven itself (in the context
of Asterisk of course -- it works great for wikipedia obviously).
> Regardless of which option we do, regular 'audits' of the documentation
> is done, to ensure that the latest and most accurate information is
> available.
I agree, and I have some ways of making some of the things you mention below
more readily available and up-to-date.
One of the things I've found that causes a great deal of inconsistency and
errors is the fact that was have documentation for Asterisk in many locations.
We have the source code (documentation for dialplan applications, CLI commands,
dialplan functions, manager commands, etc...), we have the 'doc' directory in
the source tree, we have the voip-info.com wiki, and we have the O'Reilly book.
I think the way to get all this information accurate, up to date, and consistent
across the many platforms is to centralize the documentation somehow, or at
least pseudo-centralize it. By doing this, we would be able to "update once,
distribute many" so that all levels of documentation (whether they be in
Asterisk software, in the O'Reilly Book, or on the Asterisk Docs website) are
accurate and up to date.
This is already somewhat possible. A few developers (lead by eliel on IRC from
what I can tell), have started with creating an XML type markup in the Asterisk
code base which allows the documentation from the dialplan applications and
functions (and could then be spread to the CLI commands, Manager commands, AGI
commands, etc...) to be exported out of the source code, and into things like
HTML pages, PDF books, etc...
Using this approach, we could use a web frame work like Drupal (to be consistent
with the Asterisk.org site which is also Drupal based; my preference) and import
the documentation from the Asterisk source code from the markup language, and
get it into a web page available for wider viewing.
From this approach, we could then use the PHP style commenting system
(php.net), thereby allowing people to comment on errors, and provide useful
commentary. Those comments could then be monitored by 'documentation marshals'
who could then get the relative changes acknowledged upstream, put back into the
Asterisk code base (central documentation repo), and from there, when the pages
were rebuilt (nightly? weekly?) then the documentation on the Asterisk Docs site
would immediately become up to date.
Additionally, since A:TFoT (Asterisk: The Future of Telephony) is written in
DocBook, we could potentially synchronize the documentation from the appendices
with the documentation in the Asterisk source code, thereby keeping changes to
the book in sync with Asterisk documentation, and vice-versa. This would be
advantages as any update to the book would get pushed back down to Asterisk, and
any updates to the Asterisk source would get pushed back up to the book. Both
locations would benefit from this.
> What information will be available?
> Everything about Asterisk.
> - Guide to setup/install of Asterisk (Using the Realtime Engine, AEL,
> etc)
I like this idea. I've been thinking of the Asterisk Docs website as a spot
where articles could be contributed for guides of how to setup new features that
are being contributed to Asterisk on a nearly weekly basis. Each new feature
added could potentially have it's own guide (or at least article) in the site.
I'd like to see this as kind of "extending" the book so that things that might
not fit into the book, or which people want to know more about could have some
sort of article or guide that extends beyond the introduction provided in A:TFoT.
> - Troubleshooting/debugging guide, common issues and their
> resolution, etc
Again, a great idea, and could be a "book" of articles in itself. The Drupal
framework makes this quite trivial as you can create a "book" inside, and then
create pages that link up within the book framework on the site.
> - Each dialplan application, explanation of it's use, it's
> parameters/options, examples of use.
See my lengthy description above of how I imagine this to be accomplished.
> - depreciated functions, and detailed alternative methods
This would really just be an expansion of the current documentation of dialplan
applications, functions, etc... and simply needs us to update the primary
locations of that documentation.
> Some of this stuff seems silly, but the point it to make the information
> available to even the newbies. Someone mentioned in a previous thread
> that alot of the information on voip-info.org is written for advanced
> users, and it assumes too much about the reader, and their skillset.
> This only leads to more silly questions from the reader.
I can agree with that. I don't believe that lowering the barrier of entry for
users is silly at all. That is actually how the Asterisk Documentation Project
came to be, and from that, A:TFoT.
> Anyway, this is my start. I am at least attempting to improve the
> documentation on Asterisk. Anyone go any other suggestions?
I have a few :) See above!
So, how do we get where we want to go?
The first step is really to get some sort of module for Drupal that allows the
importation of documentation from DocBook (or some other XML type markup
language like what is being used in the Asterisk source code) into the website
so that we can start the process of 'centralizing' the source of documentation.
We would use the Asterisk Docs site to give access to A:TFoT, and would further
expand on that wealth of knowledge using articles and guides which would be in a
CMS such as Drupal. From there, other pages of reference would be built and
imported into Drupal (read only, commenting system available), but the source of
the documentation would live in Asterisk source code. This way the documentation
on the Asterisk Docs site is the exact same as the Asterisk source (and thus the
same as what you would see when you type something like 'core show application
Dial' from the Asterisk CLI).
There is a module for Drupal called 'Book Import/Export' that may be the start
of the framework for getting this information out of Asterisk source and into
Asterisk Docs (see http://drupal.org/node/286592). However that module appears
to be the start, and incomplete, so someone would have to take that on and get
us a working module for our purposes.
Any other suggests for CMS's that already have this functionality would be
welcome, but I've been researching (lightly) for the last few months, and have
yet to find anything that does this.
That is where, IMHO, we have to start.
Leif Madsen.
http://www.asteriskdocs.org/
More information about the asterisk-doc
mailing list