Image E pour Pi 2/3 et 4

Contenu de l’image E créée le 15/12/2019 :

Ajout de l’IPBX Asterisk pour permettre un filtrage des appels téléphoniques et diminuer les appels intempestifs de télévendeurs. (voir l’article spécifique sur Asterisk) Ajout des sauvegardes des fichiers de configuration d’Asterisk dans sauv.sh. 

Modification du process d’init : Création d’un nouveau fichier de variables pour les scripts shell.

L’objectif de réutilisation des scripts d’un domoticz à l’autre demande un niveau de paramétrage très élevé pour que chacun puisse adapter sa configuration à ses besoins et à ses envies. Pour les scripts lua, les variables sont naturellement dans les variables utilisateurs de domoticz mais pour les scripts shell, soit les valeurs sont directement dans les shells, soit elles sont dans les paramètres d’init de la machine. Aucune de ces solutions n’est satisfaisante car in fine pour modifier les valeurs, il faut modifier un shell ou refaire un init 🙁

Donc mon idée, c’est de créer un fichier de variables pour les scripts shell qui sera modifiable simplement (c’est un fichier .txt comme le fichier qui contient les variables d’init) et qui sera pris en compte à chaque lancement d’un shell.

Exemple de fichier de variables pour les scripts shell (var_scripts_Exemple.txt) :

Exemple de script shell utilisant le fichier de variables (perf_internet.sh) :

On obtient ainsi un script shell totalement paramétrable et donc réutilisable dans toutes les installations.

Le fichier var_scripts_NOM.txt est à mettre dans le répertoire /init, il sera recopié dans /divers sous le nom générique var_scripts.txt. Ensuite à chacun de modifier directement var_scripts.txt et de reporter les modifications dans son var_scripts_NOM.txt pour une prise en compte lors du prochain init.

Les 3 dernières variables du fichier de paramètres pour l’init disparaissent puisqu’elles sont transférées dans les variables de scripts shell. 

Messagerie : Remplacement du logiciel ssmtp (devenu obsolète) par msmtp pour l’envoi des mails. Une conséquence est la modification de la gestion de la crontab (ajout d’une ligne de paramétrage de l’adresse mail et plus d’utilisation de sudo pour les mises à jour de la crontab). Le shell d’init a été modifié pour prendre en compte cette évolution. Attention, lorsque vous allez restaurer votre ancienne crontab dans le processus de migration, elle ne permettra pas l’envoi de mail. Il faudra la modifier après la restauration en rajoutant la ligne ad hoc (voir dans le fichier crontab_Exemple et ci-dessous) et en remplacant domotype par votre mail.

incron est un nouveau logiciel installé sur l’image, il permet de surveiller des événements (éléments surveillés) et d’exécuter des actions. C’est un peu comme la crontab pour les événements cycliques, d’ailleurs la syntaxe pour modifier la incrontab est : incrontab -e

Voici le contenu de la mienne (j’ai réduit les noms des fichiers pour une meilleur lisibilité) :

Il faut comprendre : si le fichier Master.csv est modifié alors exécuter le shell envoi_mail.sh. Ci-dessous, le shell envoi_mail.sh et un mail reçu.

Décodage : d’abord, le contenu du corps du texte du mail (echo ‘Le fichier Log a été modifié’), puis un pipe « | » pour enchaîner les commandes, la commande mutt avec les options -s pour indiquer l’objet du mail (-s ‘[Asterisk] Modification des Logs’), puis -a pour indiquer le fichier à mettre en pièce jointe (-a /var/log/asterisk/cdr-csv/Master.csv) et enfin l’adresse mail du destinataire.

Pour réaliser ce suivi de logs, j’ai rajouté à l’image E, le logiciel mutt

Les logiciels ajoutés dans cette image (Asterisk, incron et mutt) ne sont pas encore personnalisables via le processus d’init car je n’ai pas assez de recul, ni sur leur mise au point, ni sur le degré et la facilité de paramétrage. Si vous souhaitez les utiliser, vous devrez les adapter à votre configuration, pour incron et mutt, c’est facile; pour Asterisk on verra ensemble 😉 .

Depuis la sortie du Pi 4 avec beaucoup plus de mémoire (jusqu’à 4Go), il n’est plus pertinent d’utiliser l’interface graphique sur les anciens raspberry. A partir de cette image E, les logiciels avec interface graphique seront supprimés, ce qui permettra la diminution de la taille de l’image. En parallèle,  une nouvelle série d’images adaptées au Pi 4 (version bureautique) va apparaître avec l’interface graphique Pixel.

Nouvelle version de modules.lua : très très enrichie cette version facilite l’écriture des scripts lua, voir ce lien (Merci à vil1driver et papoo) et la bibliothèque de fonctions modules.lua (à télécharger).

WordPress : Mise à jour en version 5.3 et actualisation des plugins en fonction de cet article.

Changement de la version de Raspbian : passage à Raspbian Buster à la place de Stretch.

  • Version maintenant installée : Linux Modele 4.19.86-v7+ #1283 SMP Fri Nov 29 18:32:25 GMT 2019 armv7l
Lien vers l’image E (environ 3.5Go)

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *