Installieren deutschen Sprachansagen für Asterisk

To install the sounds, you must connect to the Asterisk server via a SSH client as root.

Once inside the server, create the destination directory for audio files.

mkdir /var/lib/asterisk/sounds/de

Download the core package and extra

cd /var/lib/asterisk/sounds/de
wget -O core.zip https://www.asterisksounds.org/de/download/asterisk-sounds-core-de-sln16.zip
wget -O extra.zip https://www.asterisksounds.org/de/download/asterisk-sounds-extra-de-sln16.zip
unzip core.zip
unzip extra.zip
chown -R asterisk.asterisk /var/lib/asterisk/sounds/de
find /var/lib/asterisk/sounds/de -type d -exec chmod 0775 {} \;

Now, you need to set the new language in the desired internal or in the general context of the protocol (SIP, IAX2...) where you want to use the new sounds.

Convert audio files to other formats

cd /var/lib/asterisk/sounds/es
vi convert
#!/bin/bash
for a in $(find . -name '*.sln16'); do
  sox -t raw -e signed-integer -b 16 -c 1 -r 16k $a -t gsm -r 8k `echo $a|sed "s/.sln16/.gsm/"`;\
  sox -t raw -e signed-integer -b 16 -c 1 -r 16k $a -t raw -r 8k -e a-law `echo $a|sed "s/.sln16/.alaw/"`;\
  sox -t raw -e signed-integer -b 16 -c 1 -r 16k $a -t raw -r 8k -e mu-law `echo $a|sed "s/.sln16/.ulaw/"`;\
done
chmod +x convert
./convert

FreePBX configuration

To use the sounds using FreePBX, just modify the language variable parameter in Asterisk SIP Settings.

Wie Asterisk Suchbegriffe für Sound-Eingabeaufforderungen Basierend auf Kanal Sprache

Jeder Kanal in Asterisk eine Sprache, die von der Kanaltreiber zugeordnet werden. Sprachcode des Kanals ist gespalten, Stück für Stück (getrennt durch Unterstriche), und verwendet werden, um Wege zu bauen, um für die Klangeingabeaufforderungen zu suchen. Asterisk verwendet dann die erste Datei, die gefunden wird.

Dies bedeutet, dass, wenn wir setzen die Sprache in de_DE_weiblich_BT zB Asterisk würde nach Dateien zu suchen in:

.../sounds/de_DE_weiblich_BT
.../sounds/de_DE_weiblich
.../sounds/de_DE
.../sounds/de
.../sounds

Diese Regelung macht es einfach, neue Sound-Eingabeaufforderungen für verschiedene Sprachvarianten hinzuzufügen, während zurück zu einer allgemeinen Aufforderung fallen, wenn es keine Eingabeaufforderung im spezielleren Variante aufgezeichnet.