Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente Prochaine révision Les deux révisions suivantes | ||
asterisk [Le 08/02/2018, 15:27] 193.251.22.124 [Configuration du Dialplan] |
asterisk [Le 15/11/2018, 17:00] 151.127.47.49 [Installation] |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | {{tag>réseau téléphonie sip voip}} | + | {{tag>Bionic réseau téléphonie sip voip}} |
Ligne 18: | Ligne 18: | ||
<note>Pour utiliser Asterisk sur un serveur virtuel, cf. [[AsteriskNow]]</note> | <note>Pour utiliser Asterisk sur un serveur virtuel, cf. [[AsteriskNow]]</note> | ||
- | ===== Présentation ===== | ||
- | |||
- | |||
- | <note>Testé sous Ubuntu 12.10 Server (autre méthode)</note> | ||
===== Installation ===== | ===== Installation ===== | ||
Tout d'abord, veillez à avoir une distribution à jour : | Tout d'abord, veillez à avoir une distribution à jour : | ||
- | <code>sudo apt-get update | + | <code>sudo apt update |
- | sudo apt-get upgrade </code> | + | sudo apt upgrade </code> |
Nous procédons ensuite à l'[[:tutoriel:comment_installer_un_paquet|installation]] des dépendances : | Nous procédons ensuite à l'[[:tutoriel:comment_installer_un_paquet|installation]] des dépendances : | ||
- | <code>sudo apt-get install build-essential libxml2-dev libncurses5-dev linux-headers-`uname -r` libsqlite3-dev libssl-dev</code> | + | <code>sudo apt install build-essential libxml2-dev libncurses5-dev linux-headers-`uname -r` libsqlite3-dev libssl-dev libedit-dev uuid-dev libjansson-dev</code> |
On télécharge la dernière version d’Asterisk et on l’installe : | On télécharge la dernière version d’Asterisk et on l’installe : | ||
<code>mkdir /usr/src/asterisk | <code>mkdir /usr/src/asterisk | ||
cd /usr/src/asterisk | cd /usr/src/asterisk | ||
- | wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-11-current.tar.gz | + | wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-16-current.tar.gz |
- | tar -xvzf asterisk-11-current.tar.gz | + | tar -xvzf asterisk-16-current.tar.gz |
- | cd asterisk-11.4.0 # <--- Modifiez cette ligne en fonction de la version d'Asterisk | + | cd asterisk-16.0.1 # <--- Modifiez cette ligne en fonction de la version d'Asterisk |
- | ./configure | + | ./configure --with-jansson-bundled |
make menuselect</code> | make menuselect</code> | ||
+ | |||
+ | Lorsque vous faites le ./configure, il est possible qu'il manque des paquets; dans ce cas, installez la version dev de ce paquet (par exemple, s'il manque le paquet libedit, exécutez la commande sudo apt-get install libedit-dev) puis relancez le ./configure. | ||
Dans le menu qui s'affiche, allez dans **Core Sound Package** et cochez à l'aide de la touche Espace **CORE-SOUNDS-FR-ULAW**. Quittez en pressant la touche Echap. | Dans le menu qui s'affiche, allez dans **Core Sound Package** et cochez à l'aide de la touche Espace **CORE-SOUNDS-FR-ULAW**. Quittez en pressant la touche Echap. | ||
Ligne 61: | Ligne 59: | ||
Lancez la console Asterisk avec la commande suivante : | Lancez la console Asterisk avec la commande suivante : | ||
- | <code>asterisk -rvvvv</code> | + | <code>sudo asterisk -rvvvv</code> |
+ | |||
+ | Si vous avez l'erreur "Unable to connect to remote asterisk (does /var/run/asterisk.ctl exist?)", assurez-vous que vous avez bien démarré la console Asterisk en root. | ||
==== Autre méthode ==== | ==== Autre méthode ==== | ||
Ligne 163: | Ligne 163: | ||
secret=secret ; Mot de passe | secret=secret ; Mot de passe | ||
</code> | </code> | ||
- | slt | + | ==== Configuration du Dialplan ==== |
+ | [[:tutoriel:comment_modifier_un_fichier|Modifier le fichier]] **''/etc/asterisk/extensions.conf''** et ajoutez le code suivant (avec les modifications nécessaires) : | ||
+ | |||
+ | <code>[work] ; Nom du contexte | ||
+ | exten => _6XXX,1,Dial(SIP/${EXTEN},20) | ||
+ | exten => _6XXX,2,Hangup()</code> | ||
+ | |||
+ | Dans ces trois lignes nous allons voir deux choses, les contextes et les extensions. | ||
+ | **[work]** est le contexte c’est une sorte de conteneur dans lequel les utilisateurs faisant partis de ce contexte pourrons communiquer entre eux. | ||
+ | Lors de la création de nos deux utilisateurs nous avons spécifié le contexte work. | ||
+ | |||
+ | * exten => : déclare l’extension (on peut aussi simplement dire numéros) | ||
+ | * _6XXX : Prend les extensions (ou numéros) de 6000 a 6999 le « _ » permet d’utiliser des regex | ||
+ | * 1 : Ordre de l’extension | ||
+ | * Dial : application qui va être utilisé | ||
+ | * SIP: Protocol qui va être utilisé | ||
+ | * ${EXTEN} : variable de l’extension composé, si on appelle le 6001 la variable ${EXTEN} prendra comme valeur 6001 | ||
+ | * 20: temps d’attente avant de passer a l’étape suivante. | ||
+ | |||
+ | Donc la ligne ''exten => _6XXX,1,Dial(SIP/${EXTEN},20)'' se traduit par: | ||
+ | Quand on compose le numéro (par exemple) 6001, on appelle le numéro 6001 et si au bout de 20 secondes il n’y a pas de réponses on passe à la ligne du dessous. | ||
+ | |||
+ | La seconde ligne : ''exten => _6XXX,2,Hangup()'' permet de raccrocher si il n’y a pas de réponses au bout des 20 secondes. | ||
$==== Configuration des clients ==== | $==== Configuration des clients ==== | ||