#!/bin/bash
echo "#######################################################################################"
echo "# Yoann QUERET - yoann@queret.net                                                     #"
echo "# http://www.queret.net/blog/index.php/2008/01/10/108-asterisk-freepbx-on-debian-etch #"
echo "#                                                                                     #"
echo "# Si vous modifiez ce script, merci d'en faire profiter la communauté                 #"
echo "#######################################################################################"
echo ""
echo "##################################################################"
echo "#              Installation automatiser d'Asterisk               #"
echo "#                                                                #"
echo "#     Asterisk 1.4.18                                            #"
echo "#     Zaptel 1.4.8                                               #"
echo "#     Libpri 1.4.3                                               #"
echo "#     Addons 1.4.5                                               #"
echo "#                                                                #"
echo "#               Appuyer sur <Enter> pour continuer               #"
echo "##################################################################"
echo " Appuyer sur <Entrer> pour continuer"
read


echo "+----------------------------------------------------------------+"
echo "| Telechargement des sources dans /tmp/asterisk/                 |"
echo "+----------------------------------------------------------------+"
echo " Appuyer sur <Entrer> pour continuer"
read
mkdir /tmp/asterisk/
wget http://downloads.digium.com/pub/asterisk/releases/asterisk-1.4.18.tar.gz -O /tmp/asterisk/asterisk-1.4.18.tar.gz
wget http://downloads.digium.com/pub/zaptel/releases/zaptel-1.4.8.tar.gz -O /tmp/asterisk/zaptel-1.4.8.tar.gz
wget http://downloads.digium.com/pub/libpri/releases/libpri-1.4.3.tar.gz -O /tmp/asterisk/libpri-1.4.3.tar.gz
wget http://downloads.digium.com/pub/asterisk/releases/asterisk-addons-1.4.5.tar.gz -O /tmp/asterisk/asterisk-addons-1.4.5.tar.gz

echo "+----------------------------------------------------------------+"
echo "| Construction de l'environment de compilation                   |"
echo "+----------------------------------------------------------------+"
echo " Appuyer sur <Entrer> pour continuer"
read

apt-get -y install linux-source-2.6.18 kernel-package g++ libncurses5-dev linux-kernel-headers sqlite libnewt-dev libusb-dev zlib1g-dev libmysqlclient15-dev libsqlite0-dev

echo "+----------------------------------------------------------------+"
echo "| Configuration des sources du kernel                            |"
echo "+----------------------------------------------------------------+"
echo " Appuyer sur <Entrer> pour continuer"
read
cd /usr/src/
tar xvjf linux-source-2.6.18.tar.bz2
ln -s /usr/src/linux-source-2.6.18 /usr/src/linux
cd /usr/src/linux/
make oldconfig
make prepare
make prepare scripts

echo "+----------------------------------------------------------------+"
echo "| Decompresion des sources dans /usr/src/                        |"
echo "+----------------------------------------------------------------+"
echo " Appuyer sur <Entrer> pour continuer"
read
cd /usr/src/
tar zxvf /tmp/asterisk/asterisk-1.4.18.tar.gz
tar zxvf /tmp/asterisk/asterisk-addons-1.4.5.tar.gz
tar zxvf /tmp/asterisk/libpri-1.4.3.tar.gz 
tar zxvf /tmp/asterisk/zaptel-1.4.8.tar.gz

echo "+----------------------------------------------------------------+"
echo "| Compilation de Zaptel                                          |"
echo "+----------------------------------------------------------------+"
echo " Appuyer sur <Entrer> pour continuer"
read
cd /usr/src/zaptel-1.4.8
./configure
read -n 1 -p "Voulez-vous selectionner les modules à installer (make menuconfig) ? [y/N]" key
if [ $key == "y" ]; then
	make menuconfig
fi
make install
make config

echo "+----------------------------------------------------------------+"
echo "| Compilation de libpri                                          |"
echo "+----------------------------------------------------------------+"
echo " Appuyer sur <Entrer> pour continuer"
read
cd /usr/src/libpri-1.4.3
make install

echo "+----------------------------------------------------------------+"
echo "| Compilation de Asterisk                                        |"
echo "+----------------------------------------------------------------+"
echo " Appuyer sur <Entrer> pour continuer"
read
cd /usr/src/asterisk-1.4.18
./configure
read -n 1 -p "Voulez-vous selectionner les modules à installer (make menuconfig) ? [y/N]" key

if [ $key == "y" ]; then
	make menuconfig
fi
make install
make samples

echo "+----------------------------------------------------------------+"
echo "| Compilation des Addons Asterisk                                |"
echo "+----------------------------------------------------------------+"
echo " Appuyer sur <Entrer> pour continuer"
read
cd /usr/src/asterisk-addons-1.4.5
./configure
read -n 1 -p "Voulez-vous selectionner les modules à installer (make menuconfig) ? [y/N]" key

if [ $key == "y" ]; then
	make menuconfig
fi
make install


echo "+----------------------------------------------------------------+"
echo "| Liens Symboliques (Modules)                                    |"
echo "+----------------------------------------------------------------+"
echo " Appuyer sur <Entrer> pour continuer"
read
ln -s /lib/modules/2.6.18/ /lib/modules/`uname -r`/asterisk
depmod

echo "+----------------------------------------------------------------+"
echo "| Lancement de ztdummy au démarrage                              |"
echo "+----------------------------------------------------------------+"
echo " Appuyer sur <Entrer> pour continuer"
read
echo ztdummy >> /etc/modules



