Hi fellow wiki editors!

To help newly registered users get more familiar with the wiki (and maybe older users too) there is now a {{Welcome to the wiki}} template. Have a look at it and feel free to add it to new users discussion pages (and perhaps your own).

I have tried to keep the template short, but meaningful. /Johan G

Difference between revisions of "Howto:Set up a FGCom server"

From FlightGear wiki
Jump to: navigation, search
m (extensions.conf)
m (Formel URL didn't work anymore.)
 
(35 intermediate revisions by 9 users not shown)
Line 1: Line 1:
__TOC__
+
This page is for installing a '''FGCom Server'''. If you want to have voice communications within [[FlightGear]], you are probably wanting to install the [[FGCom|client]].
  
= Install Asterisk =
+
This document is to assist in setting up hot spares as potential failover for the new server and for replacing that server if/when that becomes necessary. It is not expected that this will be a widely used document, nonetheless, the information contained is no less valuable for that.
You need an instance of Asterisk on the server, you can either install it via a package manager or via the source code if you do not have one already. For easiness (and because I can) I chose to do it via the package manager.
+
 
We used CentOS (this works for RedHat too) and the instructions for installing it are as follows:
+
== Install Asterisk ==
 +
You need an instance of Asterisk on the server, you can either install Asterisk via a package manager (if you're using CentOS/RHEL) or via the source code if you're on a different distro. For easiness (and because I can) I chose to do it via the package manager.
 +
We used CentOS (this works for RedHat too) and the instructions for installing it on CentOS/RHEL are as follows:
 +
 
 +
=== CentOS/RHEL ===
 +
 
 +
==== Setting up the Package Manager ====
  
 
In the ''''/etc/yum.repos.d'''' folder create the following files:
 
In the ''''/etc/yum.repos.d'''' folder create the following files:
Line 37: Line 43:
 
  #gpgkey=http://packages.digium.com/RPM-GPG-KEY-Digium
 
  #gpgkey=http://packages.digium.com/RPM-GPG-KEY-Digium
  
Once this has been done run the following command:
+
==== Installing the Packages ====
 +
 
 
  [root@localhost~]# yum install asterisk16 asterisk16-configs asterisk16-voicemail dahdi-linux dahdi-tools libpri
 
  [root@localhost~]# yum install asterisk16 asterisk16-configs asterisk16-voicemail dahdi-linux dahdi-tools libpri
  
Line 73: Line 80:
 
  Is this ok [y/N]:
 
  Is this ok [y/N]:
  
Press ''''y'''' and press ''''Enter''''
+
Press {{Key press|Y}} and then {{Key press|Enter}}
  
 
  Downloading Packages:
 
  Downloading Packages:
Line 101: Line 108:
 
  Is this ok [y/N]:
 
  Is this ok [y/N]:
  
Press ''''y'''' and ''''Enter'''' again
+
Press {{Key press|Y}} and then {{Key press|Enter}} again
  
 
  Running rpm_check_debug
 
  Running rpm_check_debug
Line 133: Line 140:
 
When you are met with the screen above with the words ''''Complete!'''' on it then you are ready to move on to Part 2: Configuration Files
 
When you are met with the screen above with the words ''''Complete!'''' on it then you are ready to move on to Part 2: Configuration Files
  
= Configuration Files =
+
=== Debian/Ubuntu ===
 +
This about covers it:
  
Regardless of what OS you are running Asterisk on and regardless of what method of installation you used to install it, there are 3 main configuration files that we need to work with and one file we need to generate and include:
+
apt-get install asterisk
 +
 
 +
=== Install from Source ===
 +
==== Downloading the Source ====
 +
Downloading necessary packages: LIBPRI, DAHDI, AND Asterisk
 +
 
 +
cd /usr/src
 +
wget http://www.asterisk.org/downloads/asterisk/releases/asterisk-1.6.2-current.tar.gz
 +
wget http://downloads.asterisk.org/pub/telephony/libpri/releases/libpri-1.4.11.3.tar.gz
 +
wget http://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/releases/dahdi-linux-complete-2.3.0.1+2.3.0.tar.gz
 +
 
 +
==== Installing Libpri ====
 +
 
 +
tar -xvzf libpri-1.4.11.3.tar.gz
 +
cd libpri-1.4.11.3
 +
make
 +
make install
 +
 
 +
==== Installing DAHDI ====
 +
 
 +
cd /usr/src
 +
tar -xvzf dahdi-linux-complete-2.3.0.1+2.3.0.tar.gz
 +
cd dahdi-linux-complete-2.3.0.1+2.3.0
 +
make
 +
make install
 +
make config
 +
 
 +
==== Installing Asterisk ====
 +
 
 +
cd /usr/src
 +
tar -xvzf asterisk-1.6.2-current.tar.gz
 +
cd asterisk-1.6.2.11/
 +
make clean
 +
./configure
 +
make
 +
make install
 +
make samples
 +
make config
 +
 
 +
== Configuration Files ==
 +
 
 +
Regardless of what OS you are running Asterisk on and regardless of what method of installation you used to install it, there are 2 main configuration files that we need to work with and one file we need to generate and include:
  
 
=== extensions.conf ===
 
=== extensions.conf ===
 
If you are using an existing Asterisk server then add the following lines to the [default] context:
 
If you are using an existing Asterisk server then add the following lines to the [default] context:
 +
#include "fgcom.inc"
 +
include => fgcom
 +
Or if you are using a new Asterisk install remove everything from ''''extensions.conf'''' and put in:
 +
[general]
 +
static=yes
 +
writeprotect=yes
 +
;
 +
[default]
 
  #include "fgcom.inc"
 
  #include "fgcom.inc"
 
  include => fgcom
 
  include => fgcom
  
 
=== iax.conf ===
 
=== iax.conf ===
 
+
[general]
=== sip.conf ===
+
bandwidth=low
 +
disallow=lpc10
 +
jitterbuffer=yes
 +
forcejitterbuffer=no
 +
tos=lowdelay
 +
autokill=30000
 +
codecpriority=host
 +
disallow=all
 +
allow=gsm
 +
allow=ilbc
 +
allow=g726
 +
language=en
 +
maxauthreq=30
 +
context=fgcom
 +
minregexpire=30
 +
maxregexpire=10800
 +
maxexpirey=10800
 +
defaultexpirey=10800
 +
;
 +
[guest]
 +
type=user
 +
username=guest
 +
secret=guest
 +
context=fgcom
 +
qualify=yes
 +
callerid=Guest IAX User
 +
host=dynamic
 +
requirecalltoken=no
 +
;
  
 
=== fgcom.inc ===
 
=== fgcom.inc ===
 +
This is a special file generated using a script. It should be placed in the Asterisk config directory (/etc/asterisk/ normally).
 +
 +
You need the gen_phonebook.pl script (https://sourceforge.net/p/flightgear/fgcom/ci/master/tree/server/gen_phonebook.pl?format=raw) and nav.dat.gz and apt.dat.gz from the git repository.
 +
 +
Put them all in the same folder and run the script.
 +
 +
[[Category:Multiplayer]]
 +
[[Category:FGCom]]

Latest revision as of 06:08, 27 July 2015

This page is for installing a FGCom Server. If you want to have voice communications within FlightGear, you are probably wanting to install the client.

This document is to assist in setting up hot spares as potential failover for the new server and for replacing that server if/when that becomes necessary. It is not expected that this will be a widely used document, nonetheless, the information contained is no less valuable for that.

Install Asterisk

You need an instance of Asterisk on the server, you can either install Asterisk via a package manager (if you're using CentOS/RHEL) or via the source code if you're on a different distro. For easiness (and because I can) I chose to do it via the package manager. We used CentOS (this works for RedHat too) and the instructions for installing it on CentOS/RHEL are as follows:

CentOS/RHEL

Setting up the Package Manager

In the '/etc/yum.repos.d' folder create the following files:

centos-asterisk.repo:

[asterisk-tested]
name=CentOS-$releasever - Asterisk - Tested
baseurl=http://packages.asterisk.org/centos/$releasever/tested/$basearch/
enabled=0
gpgcheck=0
#gpgkey=http://packages.asterisk.org/RPM-GPG-KEY-Digium

[asterisk-current] 
name=CentOS-$releasever - Asterisk - Current
baseurl=http://packages.asterisk.org/centos/$releasever/current/$basearch/
enabled=1
gpgcheck=0
#gpgkey=http://packages.asterisk.org/RPM-GPG-KEY-Digium

centos-digium.repo:

[digium-tested]
name=CentOS-$releasever - Digium - Tested
baseurl=http://packages.digium.com/centos/$releasever/tested/$basearch/
enabled=0
gpgcheck=0
#gpgkey=http://packages.digium.com/RPM-GPG-KEY-Digium

[digium-current]
name=CentOS-$releasever - Digium - Current
baseurl=http://packages.digium.com/centos/$releasever/current/$basearch/
enabled=1
gpgcheck=0
#gpgkey=http://packages.digium.com/RPM-GPG-KEY-Digium

Installing the Packages

[root@localhost~]# yum install asterisk16 asterisk16-configs asterisk16-voicemail dahdi-linux dahdi-tools libpri

You will then see something like this:

=========================================================================================
 Package                            Arch       Version                              Size
=========================================================================================
Installing:
 asterisk16                         i386       1.6.0.15-1_centos5                  4.0 k
Installing for dependencies:
 asterisk-sounds-core-en-gsm        noarch     1.4.15-1_centos5                    1.7 M
 asterisk16-core                    i386       1.6.0.15-1_centos5                   11 M
 asterisk16-dahdi                   i386       1.6.0.15-1_centos5                  837 k
 asterisk16-doc                     i386       1.6.0.15-1_centos5                   10 k
 asterisk16-voicemail               i386       1.6.0.15-1_centos5                  264 k
 dahdi-firmware                     noarch     2.0.1-1_centos5                     1.9 k
 dahdi-firmware-oct6114-064         noarch     1.05.01-1_centos5                   165 k
 dahdi-firmware-oct6114-128         noarch     1.05.01-1_centos5                   166 k
 dahdi-firmware-tc400m              noarch     MR6.12-1_centos5                    1.7 M
 dahdi-linux                        i386       2.2.0.2-1_centos5                   3.3 k
 kernel                             i686       2.6.18-164.el5                       16 M
 kmod-dahdi-linux                   i686       2.2.0.2-1_centos5.2.6.18_164.el5    3.4 M
 kmod-dahdi-linux-fwload-vpmadt032  i686       2.2.0.2-1_centos5.2.6.18_164.el5    124 k
 libpri                             i386       1.4.10.1-1_centos5                  103 k
 libss7                             i386       1.0.2-1_centos5                      63 k
 yum-kmod                           noarch     1.1.16-13.el5.centos                 17 k

Transaction Summary
========================================================================================
Install     17 Package(s)         
Update       0 Package(s)         
Remove       0 Package(s) 

Total download size: 35 M
Is this ok [y/N]:

Press Y and then Enter

Downloading Packages:
(1/17): dahdi-firmware-2.0.1-1_centos5.noarch.rpm                                     | 1.9 kB     00:00
(2/17): dahdi-linux-2.2.0.2-1_centos5.i386.rpm                                        | 3.3 kB     00:00
(3/17): asterisk16-1.6.0.15-1_centos5.i386.rpm                                        | 4.0 kB     00:00
(4/17): asterisk16-doc-1.6.0.15-1_centos5.i386.rpm                                    |  10 kB     00:00
(5/17): yum-kmod-1.1.16-13.el5.centos.noarch.rpm                                      |  17 kB     00:00
(6/17): libss7-1.0.2-1_centos5.i386.rpm                                               |  63 kB     00:00
(7/17): libpri-1.4.10.1-1_centos5.i386.rpm                                            | 103 kB     00:00
(8/17): kmod-dahdi-linux-fwload-vpmadt032-2.2.0.2-1_centos5.2.6.18_164.el5.i686.rpm   | 124 kB     00:00
(9/17): dahdi-firmware-oct6114-064-1.05.01-1_centos5.noarch.rpm                       | 165 kB     00:00
(10/17): dahdi-firmware-oct6114-128-1.05.01-1_centos5.noarch.rpm                      | 166 kB     00:00
(11/17): asterisk16-voicemail-1.6.0.15-1_centos5.i386.rpm                             | 264 kB     00:01
(12/17): asterisk16-dahdi-1.6.0.15-1_centos5.i386.rpm                                 | 837 kB     00:04
(13/17): dahdi-firmware-tc400m-MR6.12-1_centos5.noarch.rpm                            | 1.7 MB     00:08
(14/17): asterisk-sounds-core-en-gsm-1.4.15-1_centos5.noarch.rpm                      | 1.7 MB     00:08
(15/17): kmod-dahdi-linux-2.2.0.2-1_centos5.2.6.18_164.el5.i686.rpm                   | 3.4 MB     00:17
(16/17): asterisk16-core-1.6.0.15-1_centos5.i386.rpm                                  |  11 MB     00:57
(17/17): kernel-2.6.18-164.el5.i686.rpm                                               |  16 MB     00:23
-------------------------------------------------------------------------------------
Total                                                                        283 kB/s |  35 MB
     02:06     
warning: rpmts_HdrFromFdno: Header V3 DSA signature: NOKEY, key ID e8562897
Importing GPG key 0xE8562897 "CentOS-5 Key (CentOS 5 Official Signing Key) " from 
/etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
Is this ok [y/N]:

Press Y and then Enter again

Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing     : kernel                                          [ 1/17] 
  Installing     : asterisk16-core                                 [ 2/17] 
  Installing     : kmod-dahdi-linux                                [ 3/17] 
  Installing     : asterisk16-doc                                  [ 4/17] 
  Installing     : kmod-dahdi-linux-fwload-vpmadt032               [ 5/17] 
  Installing     : asterisk-sounds-core-en-gsm                     [ 6/17] 
  Installing     : dahdi-firmware-oct6114-064                      [ 7/17] 
  Installing     : yum-kmod                                        [ 8/17] 
  Installing     : dahdi-firmware-tc400m                           [ 9/17] 
  Installing     : dahdi-firmware-oct6114-128                      [10/17] 
  Installing     : asterisk16-voicemail                            [11/17] 
  Installing     : libss7                                          [12/17] 
  Installing     : libpri                                          [13/17] 
  Installing     : dahdi-firmware                                  [14/17] 
  Installing     : dahdi-linux                                     [15/17] 
  Installing     : asterisk16-dahdi                                [16/17] 
  Installing     : asterisk16                                      [17/17] 

Installed: asterisk16.i386 0:1.6.0.15-1_centos5
Dependency Installed: asterisk16-core.i386 0:1.6.0.15-1_centos5 ...
Complete!
[root@localhost yum.repos.d]# 

When you are met with the screen above with the words 'Complete!' on it then you are ready to move on to Part 2: Configuration Files

Debian/Ubuntu

This about covers it:

apt-get install asterisk

Install from Source

Downloading the Source

Downloading necessary packages: LIBPRI, DAHDI, AND Asterisk

cd /usr/src
wget http://www.asterisk.org/downloads/asterisk/releases/asterisk-1.6.2-current.tar.gz
wget http://downloads.asterisk.org/pub/telephony/libpri/releases/libpri-1.4.11.3.tar.gz
wget http://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/releases/dahdi-linux-complete-2.3.0.1+2.3.0.tar.gz

Installing Libpri

tar -xvzf libpri-1.4.11.3.tar.gz
cd libpri-1.4.11.3
make
make install

Installing DAHDI

cd /usr/src
tar -xvzf dahdi-linux-complete-2.3.0.1+2.3.0.tar.gz
cd dahdi-linux-complete-2.3.0.1+2.3.0
make
make install
make config

Installing Asterisk

cd /usr/src
tar -xvzf asterisk-1.6.2-current.tar.gz
cd asterisk-1.6.2.11/
make clean
./configure
make
make install
make samples
make config

Configuration Files

Regardless of what OS you are running Asterisk on and regardless of what method of installation you used to install it, there are 2 main configuration files that we need to work with and one file we need to generate and include:

extensions.conf

If you are using an existing Asterisk server then add the following lines to the [default] context:

#include "fgcom.inc"
include => fgcom

Or if you are using a new Asterisk install remove everything from 'extensions.conf' and put in:

[general]
static=yes
writeprotect=yes
;
[default]
#include "fgcom.inc"
include => fgcom

iax.conf

[general]
bandwidth=low
disallow=lpc10
jitterbuffer=yes
forcejitterbuffer=no
tos=lowdelay
autokill=30000
codecpriority=host
disallow=all
allow=gsm
allow=ilbc
allow=g726
language=en
maxauthreq=30
context=fgcom
minregexpire=30
maxregexpire=10800
maxexpirey=10800
defaultexpirey=10800
;
[guest]
type=user
username=guest
secret=guest
context=fgcom
qualify=yes
callerid=Guest IAX User
host=dynamic
requirecalltoken=no
;

fgcom.inc

This is a special file generated using a script. It should be placed in the Asterisk config directory (/etc/asterisk/ normally).

You need the gen_phonebook.pl script (https://sourceforge.net/p/flightgear/fgcom/ci/master/tree/server/gen_phonebook.pl?format=raw) and nav.dat.gz and apt.dat.gz from the git repository.

Put them all in the same folder and run the script.