Outils de configuration des comptes pour asterisk.
authorProgfou <jean-christophe.andre@auf.org>
Tue, 20 Apr 2010 06:18:55 +0000 (13:18 +0700)
committerProgfou <jean-christophe.andre@auf.org>
Tue, 20 Apr 2010 06:18:55 +0000 (13:18 +0700)
voip/asterisk-comptes.txt [new file with mode: 0644]
voip/asterisk-update.sh [new file with mode: 0755]

diff --git a/voip/asterisk-comptes.txt b/voip/asterisk-comptes.txt
new file mode 100644 (file)
index 0000000..ba395f1
--- /dev/null
@@ -0,0 +1,5 @@
+#EXTEN:FULLNAME:CIDNAME:USERNAME:PASSWORD:VOICEMAILCODE
+# attention : l'affichage ne permet souvent que 16 caractères pour le CIDNAME
+# le mot de passe ne sera utilisé que par le téléphone et peut donc (devrait)
+# être aléatoire, dans tous les cas ne pas utiliser le mot de passe Intranet !
+10:Nguyễn Thị Trà My:NG. THI TRA My:nguyen.thi.tra.my:le-mot-de-passe:1234
diff --git a/voip/asterisk-update.sh b/voip/asterisk-update.sh
new file mode 100755 (executable)
index 0000000..2913fd5
--- /dev/null
@@ -0,0 +1,86 @@
+#!/bin/bash
+# asterisk-update.sh - outil de mise à jour des comptes asterisk
+# Copyright ©2010  Agence universitaire de la Francophonie
+#                  http://www.auf.org/
+# Licence : GNU General Public License, version 3
+# Auteur : Progfou <jean-christophe.andre@auf.org>
+# Création : 2008-01-23
+# Mise à jour : 2010-04-19
+
+WORKDIR="/etc/asterisk/auf"
+
+# cf /usr/share/doc/asterisk-config-auf-connexions/liste-serveurs
+GLOBALPREFIX="008441"
+LOCALPREFIX=""
+
+COMMENTCHAR=";"
+
+cd "$WORKDIR" || exit -1
+umask 0227
+for f in iax.local sip.local extensions.local voicemail.local
+do
+  echo "${COMMENTCHAR} Auto-generated file, don't edit!" > "${f}.auto"
+  chown root:asterisk "${f}.auto"
+  chmod 0440 "${f}.auto"
+done
+
+IFS=":"
+grep -v '^#' comptes.txt |
+while read EXTEN FULLNAME CIDNAME USERNAME SECRET VOICEMAILCODE REST
+do
+  cat >> iax.local.auto << __EOF__
+
+${COMMENTCHAR} ${FULLNAME}
+[${USERNAME}]
+type=friend
+callerid="${CIDNAME}" <${GLOBALPREFIX}${EXTEN}>
+mailbox=${LOCALPREFIX}${EXTEN}@AUF
+user=${USERNAME}
+secret=${SECRET}
+host=dynamic
+context=AUF
+disallow=all
+allow=ulaw
+allow=gsm
+__EOF__
+
+  cat >> sip.local.auto << __EOF__
+
+${COMMENTCHAR} ${FULLNAME}
+[${USERNAME}]
+type=friend
+callerid="${CIDNAME}" <${GLOBALPREFIX}${EXTEN}>
+mailbox=${LOCALPREFIX}${EXTEN}@AUF
+user=${USERNAME}
+secret=${SECRET}
+host=dynamic
+context=AUF
+call-limit=10
+nat=no
+disallow=all
+allow=ulaw
+allow=gsm
+allow=h264
+allow=h263p
+allow=h263
+allow=h261
+__EOF__
+
+  cat >> extensions.local.auto << __EOF__
+${COMMENTCHAR} ${FULLNAME}
+exten => ${EXTEN},1,Macro(AUFDial,${USERNAME})
+exten => ${USERNAME},1,Goto(${EXTEN},1)
+__EOF__
+  if [ -n "${LOCALPREFIX}" ] ; then
+    cat >> extensions.local.auto << __EOF__
+exten => ${LOCALPREFIX}${EXTEN},1,Macro(AUFDial,${USERNAME})
+__EOF__
+  fi
+
+  cat >> voicemail.local.auto << __EOF__
+${COMMENTCHAR} ${FULLNAME}
+${LOCALPREFIX}${EXTEN} => -${VOICEMAILCODE},${CIDNAME},${USERNAME}@auf.org
+__EOF__
+done
+
+rasterisk -x reload