Application programmée
V@riO
-
V@riO -
V@riO -
Bonjour à tous,
Je fais parti d'une association qui met à disposition des familles à revenu modeste, ordinateur et initiation à l'informatique et internet pour 20euros d'adhésion par an. Le soucis est que beaucoup de personnes ne renouvellent pas leur cotisation et gardent les ordinateurs. Nous souhaitons juste lancer un bash au bout de 12 mois qui se répéterait à chaque démarrage comme:
#!/bin/bash
zenity --info --text="Attention vous n'êtes plus à jour de votre cotisation à Défis, veuillez nous contacter afin de la régulariser" .
J'ai essayé de l'automatiser avec crontab mais rien de concluant. Je pense qu'il faut un script qui se lance au bout de 12 mois, il mettrait notre bash avec zenity en démarrage automatique.
Merci pour vos lumières.
Cordialement, V@riO
Édit : Adresse URL effacée !
Je fais parti d'une association qui met à disposition des familles à revenu modeste, ordinateur et initiation à l'informatique et internet pour 20euros d'adhésion par an. Le soucis est que beaucoup de personnes ne renouvellent pas leur cotisation et gardent les ordinateurs. Nous souhaitons juste lancer un bash au bout de 12 mois qui se répéterait à chaque démarrage comme:
#!/bin/bash
zenity --info --text="Attention vous n'êtes plus à jour de votre cotisation à Défis, veuillez nous contacter afin de la régulariser" .
J'ai essayé de l'automatiser avec crontab mais rien de concluant. Je pense qu'il faut un script qui se lance au bout de 12 mois, il mettrait notre bash avec zenity en démarrage automatique.
Merci pour vos lumières.
Cordialement, V@riO
Édit : Adresse URL effacée !
A voir également:
- Application programmée
- Nommez une application d'appel vidéo ou de visioconférence - Guide
- Desinstaller application windows - Guide
- Windows application démarrage - Guide
- Comment supprimer une application préinstallée sur android - Guide
- Application word et excel gratuit - Guide
7 réponses
Bonjour,
Cette date dépend d'une date de mise en service ou bien une date fixe au calendrier?
Regarde aussi du côté de la commande at. Et, selon la distro, tu pourrais envisager un script qui se lance tous les mois et le mettre dans /etc/cron.monthly.
Autre piste, si les postes clients sont connectés à internet, tu peux faire un script qui va consulter le statut du client sur un site web de manière cachée. En cas de dépassement de l'abonnement, tu peux déclancher toute une série de choses.
Pseudo code qui s'exécute une fois par jour:
Mettre se script dans /etc/cron.daily ou par crontab.
Cette date dépend d'une date de mise en service ou bien une date fixe au calendrier?
Regarde aussi du côté de la commande at. Et, selon la distro, tu pourrais envisager un script qui se lance tous les mois et le mettre dans /etc/cron.monthly.
Autre piste, si les postes clients sont connectés à internet, tu peux faire un script qui va consulter le statut du client sur un site web de manière cachée. En cas de dépassement de l'abonnement, tu peux déclancher toute une série de choses.
Pseudo code qui s'exécute une fois par jour:
STATUT=$(curl (ou wget) "http://ton.site/statut.php?client=12345"")
if [ $STATUT == 1];then
zenity ....
fi
Mettre se script dans /etc/cron.daily ou par crontab.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour,
met à disposition des familles à revenu modeste, ordinateur et initiation à l'informatique
ce sont des ordinateurs avec comme système d'exploitation Linux ?
met à disposition des familles à revenu modeste, ordinateur et initiation à l'informatique
ce sont des ordinateurs avec comme système d'exploitation Linux ?
Juste pour développer le pseudo code plus haut. Tu mets sur ton site un fichier contenant, par exemple, le numéro de client et la date de fin d'abonnement:
fichier clients.txt
Sur chaque machine, installer ce petit script:
Tu mets l'exécution de ce script en cron (affichage toutes les deux heures par exemple).
fichier clients.txt
123456;2009 02 04 234567;2009 03 23 345678;2010 07 27
Sur chaque machine, installer ce petit script:
#!/bin/sh
#
# Alarme abonnement
#
CLINUM="123456"
URL="http://ton-site.fr/clients.txt"
DTE=$(date +%s)
# récup de la date de fin d'abonnement
DTE_FIN_ABON=$(wget -q -O - $URL | awk -F";" -v clinum="$CLINUM" '$1==clinum{print mktime($2 " 00 00 00")'})
# Test et affichage avertissement
if [ $DTE_FIN_ABON -lt $DTE ] && [ $DTE_FIN_ABON -gt 0 ];then
zenity --info --text="Attention vous n'êtes plus à jour de votre cotisation à Défis, veuillez nous contacter afin de la régulariser"
fi
Tu mets l'exécution de ce script en cron (affichage toutes les deux heures par exemple).
Merci ripat_ c'est moin évident que ce que je pensais, merci beaucoup c'est ce que je cherchais, et oui bob des pc sous linux xubuntu et Ubuntu. Merci à tous.
Ça ne fait jamais qu'une petite dizaine de lignes et est assez simple à mettre en place. Cette solution me semble un minimum si tu veux pouvoir gérer ça à distance. A moins que tu ne disposes d'un accès ssh sur chacune des machines. Cette manière de faire ne demande qu'un fichier plat sur un site que tu contrôles. Evidemment si tu as plusieurs milliers d'utilisateurs, il vaudra peut-être mieux alors passer sur une base de données. Et encore...
Comme il s'agit d'un noble projet non commercial, je te filerai un coup de main si tu veux. Tu peux me contacter par MP.
Comme il s'agit d'un noble projet non commercial, je te filerai un coup de main si tu veux. Tu peux me contacter par MP.
Oui je suis daccord avec toi et je t'en remerci cela fonctionne très bien, mais je vais mettre l'url en localhost, :) tous les adgèrents n'ont pas le net et nous gérons un Parc de 300 à présent :) rééditer le fichier texte à chaque nouveau pc sorti serait vraiment difficile, le même script copié avec le même id client suffira, nous possédons GLPI qui lui nous donnes le préavis des fin d'adhésion. Merci encor et bonne continuation à tous