Archive:FreePBX Distribution: Difference between revisions
>Samthecrazyman Page created |
>Samthecrazyman m Minor changes to correct the article |
||
Line 3: | Line 3: | ||
On the server, we have implemented Asterisk 11.x series. This is a very new version of Asterisk but is also a LTS release so will be supported well into the future with fixes (slated to be supported until 2016). We are also using the Web GUI from the Subversion repository to make sure it is up to date. | On the server, we have implemented Asterisk 11.x series. This is a very new version of Asterisk but is also a LTS release so will be supported well into the future with fixes (slated to be supported until 2016). We are also using the Web GUI from the Subversion repository to make sure it is up to date. | ||
== Packages Required == | == Installation == | ||
=== Packages Required === | |||
To implement the system, the following packages are required: | To implement the system, the following packages are required: | ||
Line 23: | Line 24: | ||
* Checkout latest revision from http://svn.asterisk.org/svn/asterisk-gui/branches/2.0/ for Web GUI. | * Checkout latest revision from http://svn.asterisk.org/svn/asterisk-gui/branches/2.0/ for Web GUI. | ||
== Installing the TFTP server == | === Installing the TFTP server === | ||
The TFTP server is what hard-phones use to download the settings files from the server. This step is not required if your not using hard-phones. | The TFTP server is what hard-phones use to download the settings files from the server. This step is not required if your not using hard-phones. | ||
Line 32: | Line 33: | ||
# Files for the hard-phones can then be dropped into <code>/srv/tftpboot/</code>. | # Files for the hard-phones can then be dropped into <code>/srv/tftpboot/</code>. | ||
== Installing the Asterisk server == | === Installing the Asterisk server === | ||
# From YaST, select Software Management. Once this has started, select from the top menu Configuration and then click Repositories. | # From YaST, select Software Management. Once this has started, select from the top menu Configuration and then click Repositories. | ||
Line 41: | Line 42: | ||
# Find the Asterisk 11 repository that you just added from the list and click on it. | # Find the Asterisk 11 repository that you just added from the list and click on it. | ||
# Tick the packages that need to be installed from above in the Packages Required section above. | # Tick the packages that need to be installed from above in the Packages Required section above. | ||
# Click Accept to install the packages. This will install the Asterisk server. | # Click Accept to install the packages. This will install the Asterisk server. | ||
# When back in the YaST control panel, under System run System Services (Runlevel). | # When back in the YaST control panel, under System run System Services (Runlevel). | ||
Line 51: | Line 51: | ||
# If this says 'Cannot find remote Asterisk server', it may not have started or may not have installed properly. Type <code>service asterisk start</code> into the Terminal prompt. If you get no errors, it should have started and you can try the previous step again. If it says it can't find the service, it may not have installed properly and needs reinstalling again. | # If this says 'Cannot find remote Asterisk server', it may not have started or may not have installed properly. Type <code>service asterisk start</code> into the Terminal prompt. If you get no errors, it should have started and you can try the previous step again. If it says it can't find the service, it may not have installed properly and needs reinstalling again. | ||
== Installing the Web GUI == | NOTE: If you are running openSuSE 12.3, there is a problem with the Runlevel YaST module where it will say the service is enabled but it won't actually enable this. Make sure your system is up to date to solve this problem! | ||
=== Installing the Web GUI === | |||
The Web GUI allows simple administration of the Asterisk server without fiddling around manually changing the contents of the folder. | The Web GUI allows simple administration of the Asterisk server without fiddling around manually changing the contents of the folder. | ||
Subversion revision 5220 as of writing this article | |||
# Make sure <code>subversion</code> is installed through YaST. | # Make sure <code>subversion</code> is installed through YaST. | ||
Line 71: | Line 75: | ||
# In the File Manager, goto <code>/var/lib/asterisk/</code>. Right-click on the folder and change the permissions to asterisk once again. Tick the Apply changes to all sub-folders and their contents. check box and click OK. | # In the File Manager, goto <code>/var/lib/asterisk/</code>. Right-click on the folder and change the permissions to asterisk once again. Tick the Apply changes to all sub-folders and their contents. check box and click OK. | ||
# Now go back to the Terminal prompt left open. Run <code>service asterisk restart</code> to restart Asterisk and enable the Web GUI. Run <code>make checkconfig</code>. This will check all your settings you have changed and make sure it is all working. If it says there are any problems, follow what it says to find the problem. | # Now go back to the Terminal prompt left open. Run <code>service asterisk restart</code> to restart Asterisk and enable the Web GUI. Run <code>make checkconfig</code>. This will check all your settings you have changed and make sure it is all working. If it says there are any problems, follow what it says to find the problem. | ||
# You can now type <code>make checkconfig</code> into the terminal window you left open earlier. This will test the configuration and check that the web service is now running. | |||
== Using the Web GUI for the first time == | === Using the Web GUI for the first time === | ||
# Once it has all been installed and Asterisk restarted, it can be accessed from http://127.0.0.1:8088/static/config/index.html in your web browser. Type in the user name and password you added to <code>manager.conf</code> earlier. You should now be presented with Asterisk's status page. | # Once it has all been installed and Asterisk restarted, it can be accessed from http://127.0.0.1:8088/static/config/index.html in your web browser. Type in the user name and password you added to <code>manager.conf</code> earlier. You should now be presented with Asterisk's status page. | ||
# It will need to change some of the configuration files so the Web GUI can configure them. Once this is done, it will log out and you'll have to log in again. This should only happen once. | |||
== Troubleshooting == | === Troubleshooting === | ||
* If after logging in, the browser loops checking Extensions.conf, this means there is a permissions problem somewhere. Double check you have made all the files accessible to the asterisk user and group. | * If after logging in, the browser loops checking Extensions.conf, this means there is a permissions problem somewhere. Double check you have made all the files accessible to the asterisk user and group. | ||
* If after logging in, the browser stops at Checking write permissions for GUI folder, the basic link was not created properly during the installation. Make sure the basic link is created properly and pointing to the right place. | * If after logging in, the browser stops at Checking write permissions for GUI folder, the basic link was not created properly during the installation. Make sure the basic link is created properly and pointing to the right place. |
Revision as of 16:47, 18 October 2013
Asterisk VoIP server is a fully fledged VoIP allowing complete customisation to your needs and works with most setups. It has a web GUI that is slowly being developed to make implementation even easier for people.
On the server, we have implemented Asterisk 11.x series. This is a very new version of Asterisk but is also a LTS release so will be supported well into the future with fixes (slated to be supported until 2016). We are also using the Web GUI from the Subversion repository to make sure it is up to date.
Installation
Packages Required
To implement the system, the following packages are required:
- tftp
- yast2-tftp-server
- subversion
- make
- gcc
- gcc-c++
From Asterisk repository (http://download.opensuse.org/repositories/network:/telephony:/asterisk-11/openSUSE_12.3/)
- asterisk
- asterisk-console
- asterisk-dahdi
- libasteriskssl1
- Checkout latest revision from http://svn.asterisk.org/svn/asterisk-gui/branches/2.0/ for Web GUI.
Installing the TFTP server
The TFTP server is what hard-phones use to download the settings files from the server. This step is not required if your not using hard-phones.
- Install from YaST both the
tftp
andyast2-tftp-server
packages. - Run from YaST under Network Services "TFTP Server".
- Change the toggle box to Enabled. This will make the TFTP server start at start-up. Then click OK.
- Files for the hard-phones can then be dropped into
/srv/tftpboot/
.
Installing the Asterisk server
- From YaST, select Software Management. Once this has started, select from the top menu Configuration and then click Repositories.
- When the Repositories screen comes up, click Add. Make sure Specify URL... and Download repository description files are both checked then select Next.
- In Repository Name, type Asterisk 11. In URL, you will need the following URL: http://download.opensuse.org/repositories/network:/telephony:/asterisk-11/openSUSE_12.3/. Change the openSUSE version at the end of the link to your version of openSUSE. Then click Next.
- Click OK to return to the Software Management screen. It will ask you if you trust the key from this repository. This is an openSUSE project so make sure you push Trust.
- If you haven't used the Repositories filter before, you will need to click the View drop-down menu above the search box and then click Repositories. This will create a new Repositories tab and you won't have to do this step again. If you already have the Repositories tab, you can just click the tab.
- Find the Asterisk 11 repository that you just added from the list and click on it.
- Tick the packages that need to be installed from above in the Packages Required section above.
- Click Accept to install the packages. This will install the Asterisk server.
- When back in the YaST control panel, under System run System Services (Runlevel).
- Wait until all the ??? next to the services have changed to Yes or No.
- Find the asterisk (Asterisk PBX) service (this should be towards the top of the list) and click the line.
- Click Enable. No should change to Yes*. Then click OK.
- It will now say 'Now the changes to runlevels will be saved.' Click Yes. This has just started the Asterisk server and made it start on each boot.
- To check that Asterisk is running, open a Terminal prompt and su as root. Run
asterisk -rvvv
and it should open a new command prompt for Asterisk. You can then type exit and exit the Terminal. - If this says 'Cannot find remote Asterisk server', it may not have started or may not have installed properly. Type
service asterisk start
into the Terminal prompt. If you get no errors, it should have started and you can try the previous step again. If it says it can't find the service, it may not have installed properly and needs reinstalling again.
NOTE: If you are running openSuSE 12.3, there is a problem with the Runlevel YaST module where it will say the service is enabled but it won't actually enable this. Make sure your system is up to date to solve this problem!
Installing the Web GUI
The Web GUI allows simple administration of the Asterisk server without fiddling around manually changing the contents of the folder.
Subversion revision 5220 as of writing this article
- Make sure
subversion
is installed through YaST. - Open a Terminal prompt and su as root. Change directory to a folder to download the Web GUI software to.
- Run
svn co http://svn.asterisk.org/svn/asterisk-gui/branches/2.0/
. This will download the latest development snapshot of the Web GUI software. - Change directory to the new folder
2.0
- Run from the terminal
./configure
. This will only take a moment, this step configures the package for your computer. - Run from the terminal
make
. This will only take a moment, this step builds the packages for your computer. - Run from the terminal
make install
This step actually installs the packages on the computer. Keep this Terminal window open as we will need this later to check the configuration. - Open File Manager - Super User Mode. Then go to
/etc/asterisk
and openhttp.conf
with KWrite. - Comments in Asterisk configurations are marked with
;
. Make sureenabled = yes
,bindaddr = 127.0.0.1
,bindport = 8088
andenablestatic = yes
are uncommented.bindaddr = 127.0.0.1
can be adjusted to the IP address you'd like to access the GUI from. By default this is only the server itself for security. To allow access from any IP, you can change this tobindaddr = 0.0.0.0
.bindport
can be change to your preference too. Once you have finished, save the file. - Open from the File Manager
manager.conf
with KWrite. Make sure thatenabled = no
is changed toenabled = yes
. Uncommentwebenabled = yes
,port = 5038
andbindaddr = 0.0.0.0
. - We need to add a user to this file. This is the admin user to the Web GUI. Add the following to the bottom of the file. <> denotes a field to change to your preference:
[<admin>]
(This is the admin username)secret = <your-password-here>
read = all
write = all
Once you have added your user, save the file. - For the Web GUI to access the files, we need to give the permissions to Asterisk. Select all the files in the folder with Ctrl+A. Right click on any file and click Properties. On the permissions tab, change the user to
asterisk
and the group toasterisk
then click OK. This will need to be done to the asterisk folder in/etc
too. - In the File Manager, goto
/usr/share/asterisk
. There should be a folder calledstatic-http
. Delete this folder as this is no longer needed. - Right click in a space in the folder. Goto Create New > then Basic link to file or directory... In the File name:, type
static-http
. In the Enter path to file or directory:, type or find/var/lib/asterisk/static-http/
. - In the File Manager, goto
/var/lib/asterisk/
. Right-click on the folder and change the permissions to asterisk once again. Tick the Apply changes to all sub-folders and their contents. check box and click OK. - Now go back to the Terminal prompt left open. Run
service asterisk restart
to restart Asterisk and enable the Web GUI. Runmake checkconfig
. This will check all your settings you have changed and make sure it is all working. If it says there are any problems, follow what it says to find the problem. - You can now type
make checkconfig
into the terminal window you left open earlier. This will test the configuration and check that the web service is now running.
Using the Web GUI for the first time
- Once it has all been installed and Asterisk restarted, it can be accessed from http://127.0.0.1:8088/static/config/index.html in your web browser. Type in the user name and password you added to
manager.conf
earlier. You should now be presented with Asterisk's status page. - It will need to change some of the configuration files so the Web GUI can configure them. Once this is done, it will log out and you'll have to log in again. This should only happen once.
Troubleshooting
- If after logging in, the browser loops checking Extensions.conf, this means there is a permissions problem somewhere. Double check you have made all the files accessible to the asterisk user and group.
- If after logging in, the browser stops at Checking write permissions for GUI folder, the basic link was not created properly during the installation. Make sure the basic link is created properly and pointing to the right place.