Supposons que vous rentriez des fichiers musicaux régulièrement, vous aurez donc surement a mettre à jour votre bases de mp3 tout aussi régulièrement. Ce que je vous propose ici est d'automatiser cette tâche.
Activer l'option de mise à jour "en 1 clic" :
Lancer la mise à jour des fichiers mp3 en clic n'a rien de bien compliqué car l'auteur de KPlaylist à prévu cette possibilité. Nous allons commencer par régler cette option.
Dans les réglages de KPlaylist vous trouvez la ligne : $cfg['autoupdate'] = 0; il suffit de remplacer le 0 par un 1, pour activer cette option. Faites-le.
A la ligne suivante j'ai du remplacer l'adresse 127.0.0.1 par l'adresse de mon serveur sur mon réseau local : 192.168.1.x (ajustez pour vous).
La ligne suivante reste inchangée. Vous devriez maintenant avoir un script a peu près comme ça :
// For use of automatic search engine update via lynx / cron. Turn to 1 to enable. Check
// www.kplaylist.net for information how to run this update automatically.
$cfg['autoupdate'] = 1;
$cfg['autoupdatehost'] = '192.168.1.x';
$cfg['autoupdateuser'] = 'autooperate';
Ok, vous avez maintenant la possibilité de lancer le job de mise à jour en pointant un simple navigateur à l'adresse :
http://www.mondomaine.tld/mp3/index.php?update=5000&user=autooperate.
Allez hop, on fait une petite pause : je suis sûr que vous vous demandez a quoi correspondent les paramètres 'update=5000' et 'user=autooperate' !
Commençons par le dernier, c'est le plus simple. En fait il s'agit juste du paramètre que vous avez renseigné dans le script php($cfg['autoupdateuser']). Si les deux ne collent pas, la mise à jour sera abandonnée pour raison de sécurité.
Pour le second paramètre, le '5000' est le nombre de microsecondes (donc 1/200 de seconde) de pause que le script marque après avoir lu un mp3 et avant de lire le suivant. Ce paramètre est présent parce que le script de mise à jour peut consommer beaucoup de ressources sur votre serveur. Pour désactiver cela et augmenter la vitesse de l'opération mettez la valeur 0.
Automatiser la mise à jour :
Bon c'est bien ce truc, mais nous n'allons pas nous coltiner la 'responsabilité' de penser a pointer notre navigateur tout les x jours sur cette adresse. Non, c'est la SME qui va se charger du boulot.
Et nous allons mettre en place un Cron pour cela.
Sur la SME les Cron sont 'templatisés'.
Allez dans le répertoire "/etc/e-smith/templates/etc/crontab", créez un fichier et nommez le (par exemple) "25kplaylist_update".
# Mise a jour quotidienne (a 01h00 du matin) de la base de mp3 de KPlaylist
00 01 * * * root lynx -dump "http://mp3.mondomaine.tld/index.php?update=5000&user=autooperate"
Conservez les lignes vides !
Nous allons maintenant injecter ce fichier dans le template, faites la commande :
expand-template /etc/crontab
Allez voir dans le résultat dans le fichier /etc/crontab et vérifiez que votre bout de code s'y retrouve.
Hop, on refait une petite pause ! Juste histoire de savoir ce que fait ce script.
Je passe sur la première ligne : c'est un commentaire.
Dans la seconde ligne vous retrouvez l'adresse web qui permet de lancer la mise à jour de votre base de mp3.
Voilà, maintenant toutes les nuits à 01h00 cron lancera le navigateur web lynx (navigateur en ligne de commande) sur le script de mise à jour de KPlaylist.
Plus d'informations à ce sujet sur Contribs.org, et un manuel d'utilisation de Cron.
Bon, là on a des mails a fond les ballons .... A suivre.
Les liens :
Le site officiel : http://www.kplaylist.net
Plus d'infos sur les templates de la SME : SME Server:Documentation:Developers Manual.