Liste des configurations

Dans ce tutoriel, je vais expliquer, d'après mon expérience personnelle, comment optimiser, améliorer et personnaliser ASL3.

Voici la liste de ce que j'ai configuré pour personnaliser mon ASL3 :

Configurer un message personnalisé comme balise sur votre ASL3

1- Créez votre fichier audio

Utilisez un Générateur de Voix Off :

- Parmi les sites gratuits pour créer des fichiers audio sur internet, vous pouvez utiliser des plateformes comme voicegenerator.io.

- Pour plus de détails, consultez ce document PDF, chapitres 1 et 2, qui explique la procédure pour générer votre propre fichier audio.

2- Télécharger le fichier audio

- Il ne faut pasoublier que la structure des dossiers et fichiers sur ASL3 a légèrement changé. Si vous allez dans le dossier /var/lib/asterisk/sounds, car c'était le dossier par défaut pour les fichiers audios des anciennes versions d'Allstarlink, vous le trouverez vide.

- Le nouvel emplacement des fichiers audios dans ASL3 est désormais /usr/share/asterisk/sounds.

- Pour éviter tout conflit, nous allons télécharger notre fichier audio dans le dossier /usr/share/asterisk/sounds/custom.

3- Configurer ASL3

Comme exemple, j'ai créé un fichier audio que j'ai nommé "CN8VX.gsm".

- Éditez le fichier rpt.conf et ajoutez idrecording = /usr/share/asterisk/sounds/custom/CN8VX dans la section Configure your nodes here, sans ajouter l'extension après le nom.

- Ajoutez beaconing = 1 pour activer l’envoi de l'identifiant du répéteur. Attention!! l'activation de cette fonctionnalité est probablement illégale aux États-Unis.

message_rpt

idrecording

- Enfin, redémarrez Asterisk. Vous entendrez alors votre fichier audio.

Installer la synthèse vocale en langue française

Pour avoir la synthèse vocale en langue française sur votre répéteur ASL3.

1- Télécharger et copier le dossier pour la synthèse vocale française :

- Connectez-vous en SSH sur votre répéteur ASL3.

- Installer git :

sudo apt install git -y

- Accédez au dossier sounds :

cd /usr/share/asterisk/sounds

- Télécharger les fichiers audios depuis GitHub :

sudo git clone https://github.com/CN8VX/Sond_Asl_fr.git fr

- Changez le propriétaire de ces fichiers :

sudo chown -R asterisk:asterisk /usr/share/asterisk/sounds/fr

2- Activer la synthèse vocale française dans le répéteur :

- Éditez le fichier asterisk.conf qui se trouve dans le dossier /etc/asterisk/ avec la commande suivante :

sudo nano /etc/asterisk/asterisk.conf

- Effectuez vos modifications sous la section [options], lignes 33 et 82.

N’oubliez pas d’enlever le point-virgule ; devant "languageprefix" et "defaultlanguage" pour les activer :

[options]
languageprefix = yes
defaultlanguage = fr

- Après avoir effectué vos modifications, enregistrez et quittez.

- Puis éditez le fichier chan_dahdi.conf :

sudo nano /etc/asterisk/chan_dahdi.conf

- Allez à la section [channels], enlevez le point-virgule ; devant "language", puis écrivez "fr"

[channels]
;
; Default language
;
language=fr
;

- Après avoir effectué vos modifications, enregistrez et quittez.

- Enfin, redémarrez Asterisk avec la commande :

sudo astres.sh

3- Tester la synthèse vocale française

Après le redémarrage d’Asterisk, envoyez le code DTMF *712 et vous entendrez l'heure en français.

Installer l’interface graphique Supermon

Supermon est une application web basée sur des pages PHP.
Cependant, sur AllStarLink 3 (ASL3), PHP n’est pas installé par défaut, ce qui empêche son fonctionnement sans installation supplémentaire.

Pour cela, il faut l’installer avec cette commande via SSH:

sudo apt install php -y

Une fois PHP installé, vous pouvez procéder à l'installation de Supermon en suivant les étapes ci-dessous.

1- Installation de Supermon

Accédez au répertoire /usr/local/sbin :

cd  /usr/local/sbin

Puis copiez et collez cette commande en une seule ligne :

Accédez au répertoire /usr/local/sbin :

sudo wget  "http://2577.asnode.org:43856/supermonASL_fresh_install"   -O  supermonASL_fresh_install

Puis exécutez :

Accédez au répertoire /usr/local/sbin :

sudo chmod  +x  supermonASL_fresh_install
hash
sudo supermonASL_fresh_install

2- Configuration du mot de passe pour activer le panneau de configuration :

Accédez au répertoire /var/www/html/supermon :

cd /var/www/html/supermon

Puis tapez la commande suivante :

sudo htpasswd -cB .htpasswd admin

Tapez votre mot de passe suivis par Enter.

Important :

- N'utilisez pas de point d'exclamation "!" et point d'interrogation "?" dans le mot de passe.

New password:

Retapez votre mot de passe suivis par Enter.

Re-type new password:

Enfin, tapez la commande suivante :

sudo chmod 777 astdb.php

À l'aide de votre navigateur Web, accédez à l'adresse IP de votre nœud :
http://IP_du_serveur/supermon ou http://nom_de_hôte/supermon

Voici le résultat que vous allez obtenir :

Supermon_ASL3

l'interface web de Supermon par default

3- Configuration et personnalisation de l'interface web de Supermon

Dans l'exemple ci-dessus l'interface web et par default, il n'y a pas d'indicatif ni de numéro de nœud...

Pour configurer et personnaliser l'interface web, il faut faire des modifications sur deux fichier : global.inc et allmon.ini

Configuration du premier fichier global.inc :

Il y a deux méthodes pour faire les modifications.

1 Première méthode, c'est directement depuis l'interface web:

- Il suffit d'appuyer sur le bouton Configuration Editor puis sélectionner Supermon - global.inc et d'appuyer sur le bouton Edit file.

- Vous aurez une page où il y a des lignes à modifier.

- Après avoir effectué vos modifications, appuyez sur le bouton " WRITE you Edit" puis sur le bouton " Return to Index".

2 Deuxième méthode, c'est via les lignes de commande, pour cela il faut que vous vous connectez en SSH.

Puis tapez la commande suivante :

sudo nano /var/www/html/supermon/global.inc
<?php
// Set the values to your parameters
// ONLY change text between quotes
//
// Your callsign Only:
$CALL = "Your callsign";
//
// Your name:
$NAME = "Your name";
//
// Your location:
$LOCATION = "Anywhere, USA";
//
// Second line header title:
$TITLE2 = "12345 Cloud Server";
//
// Third line header title:
$TITLE3 = "AllStarLink/IRLP/EchoLink/Digital - Bridging Control Center";
//
// Background image - specify path if not /var/www/html/supermon
// Leaving BACKGROUND null "" results in BACKGROUND_COLOR:
$BACKGROUND = "background.jpg";
//
// Background color if no image:
$BACKGROUND_COLOR = "blue";
//
// Height of background - matches image height:
$BACKGROUND_HEIGHT = "124px";
//
//
// Enable [Database] button – For quick review of entire AllStar internal database:
$DATABASE_TXT = "/tmp/database.txt";
//
// Node number(s) to display, if Streaming Audio:
//$STREAMING_NODE = "12345";
//
// Node number(s) to display, if Archiving Audio:
//$ARCHIVING_NODE = "12345";
//
// Archive Web address, if Archiving Audio locally or remotely:
$ARCHIVE_URL="/supermon/custom/archive/";
//
// Enable custom server name for Supermon browser tab:
$SMSERVERNAME = "12345 Cloud";
//
// Supermon screen REFRESH delay time in seconds
// Default is 21600 seconds, six hours:
$REFRESH_DELAY = "2700";
//
// Supermon program loop delay (polling) setting.
// Higher delay can significantly reduce your Supermon web server network bandwidth usage on large open systems.
// Default is 500000 (0.50 secs).
// Minimum setting is 300000 (0.30 seconds), maximum is 30000000, (30.0 seconds):
//$SMLOOPDELAY = "700000";
//
// Show number of core dump files that may exist, IF any
$SHOW_COREDUMPS = "yes";
//
// Show weather conditions and temperature for Zip code area:
//$LOCALZIP = "33917";
//
// Set/show personal or club logo tile-picture in Supermon header:
//$MY_TILE = "tile_name.jpg";
//
// Set/show a second additional personal or club logo tile-picture in Supermon header:
//$MY_TILE2 = "usflag.jpg";
//
// Enable a NEW Supermon button to launch any other Dashboard like DVSwitch or Pi-Star:
$DVM_URL_NAME = "Digital Dashboard";
$DVM_URL = "http://Pi-Star";
//$DVM_URL = "http://your_url.com";
//
// Enable a Maintainer email address link in your Supermon page footer:
//$MAINTAINER = "<a href=\"MailTo:WXYZ@whereever.com\">Name, WXYZ</a>";
//
// This needs further testing on RPi-ASL systems ...
// When your RPi2-4 system is running on a LAN network with a router/firewall,you do NOT need this variable set!
// If your RPi2-4 system is directly connected to the internet without a firewall/router,
// Supermon can hang trying to get both the WAN and LAN addresses.
// Set this variable to "yes" to disable checking for a LAN address and report only the WAN address.
// This will eliminate the hanging of Supermon in this case:
//$WANONLY = "yes";
//
?>

CALL = "Votre indicatif"

NAME = "Votre nom"

LOCATION = "Ville, Pays"

TITLE2 = "(12345=numéro de votre Node) Cloud Server"

TITLE3 = "AllStarLink/IRLP/EchoLink/Digital - Bridging Control Center"

SMSERVERNAME = "(12345=numéro de votre Node) Cloud"

LOCALZIP = "Pour le moment on la désactive car le serveur ne fonctionne plus"

Configuration du deuxième fichier allmon.ini :

1Depuis l'interface web : appuyer sur le bouton Configuration Editor puis sélectionner Supermon - allmon.ini et d'appuyer sur le bouton Edit file.

- Après avoir effectué vos modifications, appuyez sur le bouton WRITE you Edit puis sur le bouton Return to Index

2Ou en ligne de commande, ce connectez en SSH

Tapez la commande suivante:

sudo nano /var/www/html/supermon/allmon.ini
[All Nodes]
system=Nodes
nodes=1998,1999
menu=yes

[1998]
system=Nodes
host=127.0.0.1:5038
user=admin
passwd=secret
hideNodeURL=no
menu=yes

[1999]
system=Nodes
host=127.0.0.1:5038
user=admin
passwd=secret
hideNodeURL=no
menu=no ; Pour ne pas être visible dans le menu

[LsNodes]
url="/cgi-bin/lsnodes_web?node=1998"
menu=yes

[DVSwitch]
url="http://DVSwitch.org/"
menu=yes

;[D-Star]
;url="http://www.DStarinfo.com/reflectors.aspx"
;menu=yes

[Pi-Star]
url="http://PiStar.uk/"
menu=yes

[QRZ]
url="http://QRZ.com/db/CN8VX"
menu=yes

1 Dans la section [All Nodes], remplacez, le ou les numéros de nœud "nodes=1998,1999" par votre numéro de nœud

2 Remplacez le numéro '1998' [1998] par votre numéro de nœud.

- Si vous avais un deuxième numéro de nœud il faut remplacez le numéro '1999' [1999] par votre deuxième numéro de nœud.

- Si nom vous pouvez mètre un point-virgule ";" devant les ligne que vous voulez le bloquer, comme je l'ai fait pour [1999] et [D-Star].

3 host=127.0.0.1:5038, laisser par default.

- Sauf si le serveur et à distance alors il faut entre l'IP du serveur EX: host= l'IP du serveur distance:5038 ou host=192.168.xxx.xxx:5038.

4 passwd=votre mot de passe

- Remarque : c'est le mot de passe par défaut que vous avais mis selon la configuration initiale du nœud.

- Si vous vous avais des doutes ou vous ne l'avais pas configuré, regardez 'secret = xxxxx' dans /etc/asterisk/manager.conf.

- Pour voir le contenu du fichier "manager.conf", tapez la commande suivante :

sudo nano /etc/asterisk/manager.conf

5 hideNodeURL=no

6 menu=yes

7 Dans la section [QRZ] sur "url=http://QRZ.com/db/metez votre indicatif" ,ou mètre un lien ver un site.

Après avoir effectué vos modifications, appuyez sur CTRL + X puis tapez Y suivi d'Enter.

Supermon-finale

Le résultat après la modification des deux fichiers: "allmon.ini" et "global.inc"

Installer le thème Supermon

Installer le thème Supermon pour centrer les tableaux et changer la couleur.

Maintenant qu'on a installé et configuré Supermon, nous allons le moderniser en ajoutant des couleurs et en centrant le contenu de la page.

J'ai créé un fichier CSS que l'on peut télécharger depuis GitHub et l'ajouter dans le dossier de Supermon pour effectuer ces modifications.

Pour cela, il faut suivre les instructions qui se trouvent dans CSS-theme-for-supermon.

Après avoir rafraichir la page web de Supermon, vous aurais un résultat similaire à l’image ci-dessous :

theme_Supermon_asl3

L’interface web de Supermon après l’ajout du thème

Activer le journal des connexions et des déconnexions pour Supermon

Avec Supermon, il est possible de consulter le journal des connexions et des déconnexions. Cependant, dans ASL3, cette fonctionnalité est désactivée par défaut.

Pour l'activer, il est nécessaire d'éditer le fichier rpt.conf et d'ajouter les deux lignes suivantes dans la section configure your nodes here :

connpgm=/usr/local/sbin/supermon/smlogger 1
discpgm=/usr/local/sbin/supermon/smlogger 0

Après avoir effectué vos modifications, enregistrez et quittez. Redémarrez Asterisk.

Ensuite, effectuez un test en vous connectant puis en vous déconnectant d'un nœud. Vous constaterez que dans la fenêtre "Connection Log" apparaîtront les lignes des connexions et des déconnexions.

Il est important de noter qu'en activant le journal des connexions et des déconnexions, la taille du fichier connectlog augmentera progressivement au fur et à mesure des connexions et des déconnexions. À terme, ce fichier peut devenir très volumineux et saturer l'espace disque, en particulier si vous utilisez une carte SD de faible capacité (8 ou 16 Go). Il est donc essentiel de mettre en place une rotation des fichiers journaux.

Activer la rotation des fichiers de journaux

Pour activer la rotation des fichiers, nous allons configurer une rotation spécifique pour les fichiers connectlog :

Attention !

Pour ceux qui ont effectué une installation à partir de Debian.

- Il faut vérifier si logrotate est installé.

Pour cela, tapez dans le terminal :

sudo logrotate --version

Si le terminal vous dit commande introuvable, vous devez l’installer avec les commandes suivantes :

sudo apt update && sudo apt install logrotate

Si une version s'affiche (par exemple, logrotate 3.18.0), alors il est bien installé.

Ensuite, vérifiez si "logrotate" est programmé pour s’exécuter automatiquement :

ls -l /etc/cron.daily/logrotate

Si vous voyez un fichier ou un script appelé logrotate, cela signifie qu'il est automatiquement exécuté chaque jour.

Exemple de sortie :

-rwxr-xr-x 1 root root 1500 avril 1 10:00 /etc/cron.daily/logrotate

- Créez un fichier nommé "asterisklog" :

sudo nano /etc/logrotate.d/asterisklog

- Ajoutez les lignes suivantes :

- Créez un fichier nommé "asterisklog" :

/var/log/asterisk/connectlog /var/log/asterisk/messages.log {
    missingok
    rotate 5
    weekly
    copytruncate
    create 0640 asterisk asterisk
    postrotate
        /usr/sbin/asterisk -rx 'logger reload' > /dev/null 2> /dev/null
    endscript
}
                

- Enregistrez, quittez et redémarrez Asterisk.

En suivant ces étapes, vous garantirez une gestion optimale des journaux de connexion et de déconnexion, évitant ainsi la saturation de votre espace disque et assurant une performance stable de votre système ASL3.

Thème CSS pour Allmon3

Pour améliorer l'apparence d'Allmon3, vous pouvez appliquer un thème CSS personnalisé. Ce thème modifie les couleurs et le style de l'interface utilisateur pour une expérience visuelle plus agréable.

Pour installer ce thème, suivez les instructions disponibles sur le dépôt GitHub CSS-theme-for-Allmon3

Une fois l’installation terminée, rafraîchissez la page web d’Allmon3, vous aurais un résultat similaire aux images ci-dessous :

theme_Allmon3_asl3

L’interface web d'Allmon3 après l’ajout du thème

theme_Allmon3_asl3-2

L’interface web d'Allmon3 après l’ajout du thème (Multi Node)

Activer le journal des connexions et des déconnexions pour Allmon3

Avec Supermon, il était possible de visualiser les connexions effectuées depuis un nœud AllStar ou EchoLink.

Cependant, un problème récurrent concernait la taille du fichier connectlog, qui augmentait progressivement au fil des connexions et déconnexions.

Ce problème pouvait être résolu en mettant en place une rotation des fichiers journaux, et même complété par une application dédiée à la gestion et à l’affichage des journaux, offrant une excellente lisibilité et une interface utilisateur agréable.

En revanche, Allmon3 ne génère pas nativement de fichiers de journalisation pour les connexions et déconnexions, que ce soit pour AllStar ou EchoLink.

Pour répondre à ce besoin, j’ai développé un paquet nommé Logfils-asl3, disponible en téléchargement sur mon GitHub.

Son installation est simple et entièrement automatisée. Il génère des fichiers de journalisation portant les mêmes noms que ceux utilisés par Supermon, à la différence près que les chemins des fichiers sont modifiés.

Ce choix a été fait volontairement afin de faciliter la transition pour les utilisateurs disposant déjà d’applications de gestion des logs compatibles avec Supermon.

Pour passer à Allmon3, il leur suffit simplement d’adapter les chemins des fichiers, sans modifier le fonctionnement de leurs outils existants.

Application de gestion des logs pour Allmon3 et Supermon.

ConnectLogs est une application web qui permet de gérer et visualiser les fichiers de journalisation des connexions Allmon3 et Supermon.

Elle est compatible avec Allmon3 et Supermon, et offre une interface moderne et intuitive pour consulter l’historique des connexions.

Lorsque AllStarLink 3 est installé sans Supermon, il est nécessaire d’activer la journalisation des connexions et déconnexions pour Allmon3 en installant Logfils for ASL3.

Si Supermon est installé, il suffit d’activer la journalisation des connexions et déconnexions et de configurer la rotation des fichiers de logs afin d’assurer une gestion optimale des journaux.

L’application ConnectLogs affiche les logs sous forme de tableaux clairs et lisibles, et propose un rafraîchissement automatique des données pour un suivi en temps réel des connexions.

Vous pouvez télécharger et installer l’application depuis mon dépôt GitHub : ConnectLogs-for-Allmon3-and-Supermon.

connectlog

L’interface graphique ConnectLogs

Installer l’interface graphique AllScan

AllScan est une application Web gratuite et open source qui fournit des fonctionnalités de gestion des favoris, l'intégration des statistiques AllStarLink et des fonctions de surveillance et de contrôle des connexions.

AllScan est entièrement compatible avec HamVOIP et les versions antérieures d'ASL. Cependant, ASL3 est fortement recommandé en raison de ses nombreuses améliorations significatives et de sa prise en charge des plateformes x64 (comme les mini-PC Dell Wyse 3040 ou Beelink T5, qui sont plus performants et plus économiques que les Raspberry Pi).

- Pré-Installation

Pour installer AllScan avec ASL3, assurez-vous que Allmon, ou Supermon s'il est installé, soit correctement configuré et pleinement opérationnel.

Si Supermon est installé, AllScan vous proposera d'utiliser le fichier favorites.ini du répertoire Supermon.

Si vous utilisez Supermon2 au lieu de Supermon ou si vous souhaitez placer votre fichier favorites.ini dans un autre dossier, vous pouvez définir l'emplacement de recherche de ce fichier sur la page Cfgs d'AllScan.

- Installation d'AllScan

Pour installer AllScan, suivez simplement les instructions dans la section Install / Update du GitHub officiel. Cela rend le processus facile et sans complications.

Après l'installation et la création de votre compte administrateur, vous serez dirigé vers l'interface graphique d'AllScan, comme illustré ci-dessous.

AllScan

L’interface graphique d'AllScan

En espérant que ce tutoriel vous ait été utile pour configurer et optimiser votre système ASL3. Merci de l'avoir suivi, et bon succès dans vos projets