PBX in a Flash (PiaF) is a free distribution containing a prebuilt Asterisk server. It is made to run on an IBM PC platform. PBX in a Flash is composed of 6 main parts:
CentOS is a distribution of Linux that runs a Security Enhanced Linux kernal called SELinux. Linux as used in PBX in a Flash is the command line operating system. It also uses logical volume management LVM instead of hard-drive partitions. The interface to the CentOS/Linux operating system is referred to as the Linux command line. Joe Roper has an excellent online book called Conversational Linux for Newbies - well worth the read!
- Asterisk PBX
The core application is Asterisk PBX which provides the telecommunication functionality on the PC. The interface to Asterisk PBX is either through the Asterisk command line interface referred to as Asterisk CLI or through the web-based interface FreePBX. O'Reilly has made a well written 600 page reference book called Asterisk: The Future of Telephony (2nd Edition) available online. DON'T READ IT, YET!
Why? Asterisk has jumped leaps and bounds in development over the last few years. Especially in the areas of web based configuration using tools such as FreePBX and Webmin. Unfortunately, the book was written before PBX in a Flash came out and instructs you to manually edit the conf (configuration) files. This is a no-no with PBX in a Flash as FreePBX and the mySQL database will write over-top of your manually configured files erasing your hard work and causing untold confusion and grief.
A much better resource at this time is PiaF Without Tears from Ben Sharif. It is written specifically for Piaf.
FreePBX is the web based interface that is used to configure the Asterisk PBX server from another PC's web-browser. It is a graphical user interface (GUI). It is an amazing combination of applications that does pretty much everything you would want in configuring an Asterisk PBX Server.
Webmin is the web based interface that is used to configure Linux and the servers that are running on it. It is an incredible piece of software. Kudos to Jamie Cameron for the fanastic work that he has done! Here's Webmin's Introduction to Webmin page.
- MySQL Database
The configuration data for Asterisk is saved in a database running on a mySQL server. FreePBX and Webmin use the data to form the text configuration files for Linux, the support servers and the Asterisk PBX server. mySQL is running in the background and is transparent to the user (the user does not know that it exists).
There are many server applications (daemons) running in the background that we don't really see. For example: a web server, ftp server, email server, dhcp server, etc.. These daemons are required to make the PBX in a Flash system work seamlessly. As you progress, you will become acquainted with these servers and start to customize them to your operation.