Commit | Line | Data |
---|---|---|
0afa8158 TN |
1 | #!/bin/sh |
2 | ||
3 | IAX=iax.global | |
4 | EXTEN=extensions.global | |
5 | ||
6 | cat << EOF > $IAX | |
7 | ; /etc/asterisk/auf/$IAX | |
8 | ; Liaisons IAX inter implantations à inclure à la fin de iax.conf | |
9 | ; avec : #include "$IAX" | |
10 | ; (Note: le fichier iax.conf fourni par le paquet asterisk-config-auf | |
11 | ; effectue déjà cette inclusion) | |
12 | ; | |
13 | ; ATTENTION : NE PAS TOUCHER A CE FICHIER. IL FAIT PARTIE DU | |
14 | ; PAQUET asterisk-config-auf-connexions ET SERA MIS A JOUR | |
15 | ; LORS DE L'AJOUT DE NOUVEAUX SITES VOIP AUF | |
16 | ; | |
17 | ; Authentification RSA : il faut disposer de la clé publique de chaque user : | |
18 | ; /var/lib/asterisk/keys/inkeys.pub (voir sur http://tech.auf/wiki/AsteriskRSA) | |
19 | ; Note : pour l'AUF les clés sont fournies par le paquet | |
20 | ; asterisk-config-auf-connexions | |
21 | ; | |
22 | ||
23 | EOF | |
24 | ||
25 | cat << EOF > $EXTEN | |
26 | ; /etc/asterisk/auf/$EXTEN | |
27 | ; Fichier à inclure dans le contexte [AUF] de extensions.conf | |
28 | ; avec : "#include $EXTEN" | |
29 | ; (Note: le fichier extensions.conf fourni par le paquet asterisk-config-auf | |
30 | ; effectue déjà cette inclusion) | |
31 | ; | |
32 | ; ATTENTION : NE PAS TOUCHER A CE FICHIER. IL FAIT PARTIE DU | |
33 | ; PAQUET asterisk-config-auf-connexions ET SERA MIS A JOUR | |
34 | ; LORS DE L'AJOUT DE NOUVEAUX SITES VOIP AUF | |
35 | ; | |
36 | ||
37 | EOF | |
38 | ||
39 | echo " || '''Nom''' || '''préfixe''' ||" > pourwiki.txt | |
40 | ||
41 | grep -ve "^ *#" liste-serveurs | grep ":" | while read L | |
42 | do | |
43 | L=`echo $L | tr -dc []a-zA-Z0-9:_.-` | |
44 | username=`echo $L | cut -f1 -d:` | |
45 | prefix=`echo $L | cut -f2 -d:` | |
46 | server=`echo $L | cut -f3 -d:` | |
47 | ||
48 | prefixlen=`echo $L | cut -f4 -d:` | |
49 | if [ x${prefixlen} = x ]; then | |
50 | prefixlen=`echo -n $prefix | wc -c` | |
51 | fi | |
52 | ||
53 | echo "$username" | |
54 | echo " prefix=$prefix ($prefixlen chiffres)" | |
55 | echo " server=$server" | |
56 | echo " pubkey=keys/$username.pub" | |
57 | echo "" | |
58 | ||
59 | pourwiki=`echo $username | sed 's/^auf-//'` | |
60 | echo " || $pourwiki || $prefix ||" >> pourwiki.txt | |
61 | #echo "" >> pourwiki.txt | |
62 | #echo " $pourwiki::" >> pourwiki.txt | |
63 | #echo " . serveur : $server" >> pourwiki.txt | |
64 | #echo " . username : $username" >> pourwiki.txt | |
65 | #echo " . extension : $prefix" >> pourwiki.txt | |
66 | #echo " {{{" >> pourwiki.txt | |
67 | #cat keys/$username.pub >> pourwiki.txt | |
68 | #echo "}}}" >> pourwiki.txt | |
69 | ||
70 | if [ ! -f keys/$username.pub ]; then | |
71 | echo "ERREUR : il manque la clé keys/$username.pub" | |
72 | echo "" | |
73 | exit 1 | |
74 | fi | |
75 | ||
76 | cat << EOF >> $IAX | |
77 | [$username] | |
78 | type=user | |
79 | auth=rsa | |
80 | inkeys=$username | |
81 | host=dynamic | |
82 | context=AUF | |
83 | ||
84 | EOF | |
85 | ||
86 | cat << EOF >> $EXTEN | |
87 | ; Liaison vers $username | |
88 | ; prefix=$prefix serveur=$server | |
89 | exten => _\${AUFPREFIX}$prefix.,1,Dial(IAX2/\${AUFAUTH}@$server/\${EXTEN:\$[\${AUFPREFIXLEN} + $prefixlen]}@AUF,90,rtThH) | |
90 | ||
91 | EOF | |
92 | ||
93 | done |