Projet

Général

Profil

EoleNotification » Historique » Version 4

Fabrice Barconnière, 20/06/2017 15:45

1 1 Klaas TJEBBES
h1. EoleNotification
2 1 Klaas TJEBBES
3 1 Klaas TJEBBES
h2. Description
4 1 Klaas TJEBBES
5 1 Klaas TJEBBES
Application permettant d'envoyer des messages à :
6 1 Klaas TJEBBES
* des utilisateurs
7 1 Klaas TJEBBES
* des groupes d'utilisateurs
8 1 Klaas TJEBBES
* des machines (Ex. tous les postes de la salle informatique)
9 1 Klaas TJEBBES
10 1 Klaas TJEBBES
La diffusion du message peut se faire :
11 1 Klaas TJEBBES
* sur les postes clients
12 1 Klaas TJEBBES
* par email
13 1 Klaas TJEBBES
* par SMS
14 1 Klaas TJEBBES
15 1 Klaas TJEBBES
Les messages peuvent être envoyé :
16 1 Klaas TJEBBES
* périodiquement (tous les lundi à 15h00, toutes les heures => bref "crontab")
17 1 Klaas TJEBBES
* à date/heure précise (lundi 32 juillet à 25h64)
18 1 Klaas TJEBBES
* dans X minutes/heures/jours
19 1 Klaas TJEBBES
* à la prochaine ouverture de session
20 1 Klaas TJEBBES
* à chaque ouverture de session
21 1 Klaas TJEBBES
22 1 Klaas TJEBBES
h2. Interface
23 1 Klaas TJEBBES
24 1 Klaas TJEBBES
L'utilisateur choisit s'il veut envoyer des messages à des utilisateurs/groupes ou à des machines.
25 1 Klaas TJEBBES
26 1 Klaas TJEBBES
*1.* S'il sélectionne utilisateurs/groupes, il peut ensuite choisir entre :
27 1 Klaas TJEBBES
* machine poste client sur le réseau connecté au serveur
28 1 Klaas TJEBBES
* SMS
29 1 Klaas TJEBBES
* E-mail
30 1 Klaas TJEBBES
31 1 Klaas TJEBBES
Envoie de message à un utilisateur sur le poste de travail :
32 1 Klaas TJEBBES
* l'utilisateur est connecté et reçoit le message
33 1 Klaas TJEBBES
* l'utilisateur n'est pas connecté :
34 1 Klaas TJEBBES
** on remonte l'erreur (peut-être gênant dans le cas d'un message envoyé périodiquement)
35 1 Klaas TJEBBES
** on ne remonte rien
36 1 Klaas TJEBBES
** on attend la prochaine fois que l'utilisateur se connecte pour lui afficher le message (gênant si msg toutes les heures et que l'utilisateur revient au bout de 2 mois...)
37 1 Klaas TJEBBES
38 1 Klaas TJEBBES
*2.* S'il sélectionne "poste client", on passe directement à la rédaction du message.
39 1 Klaas TJEBBES
40 1 Klaas TJEBBES
Sur un annuaire contenant beaucoup d'utilisateurs et de groupes il faut la possibilité de les afficher avec un filtre (ne pas les afficher tous sinon "ça rame"/"y'en a trop on n'trouve rien"):
41 1 Klaas TJEBBES
* utilisateurs du groupe X (on sélectionne un par un les utilisateurs à notifier)
42 1 Klaas TJEBBES
* utilisateurs dont le nom, le login, le prénom, etc. commence par la lettre X
43 1 Klaas TJEBBES
* groupes dont le nom commence par la lettre X (on sélectionne les groupes, tous les membres sont notifiés)
44 1 Klaas TJEBBES
* machines dont le nom commence par la lettre X
45 1 Klaas TJEBBES
46 1 Klaas TJEBBES
h2. Technique
47 1 Klaas TJEBBES
48 1 Klaas TJEBBES
h3. Clients Windows
49 1 Klaas TJEBBES
50 1 Klaas TJEBBES
Sous windows, pour afficher un message, on peut utiliser msg.exe :
51 1 Klaas TJEBBES
 echo "mon message" | msg.exe admin
52 1 Klaas TJEBBES
53 1 Klaas TJEBBES
Il n'est pas possible d'exécuter des commandes distantes depuis le serveur Seth sur les postes clients, il faut un utilitaire/service windows pour ça, comme "winexe" ou le client Scribe/Eole par exemple.
54 1 Klaas TJEBBES
55 1 Klaas TJEBBES
h3. Clients Linux
56 1 Klaas TJEBBES
57 3 Fabrice Barconnière
* libnotify : lib python disponible. Exemple sur Ubuntu Xenial
58 3 Fabrice Barconnière
<pre>
59 3 Fabrice Barconnière
sudo apt install python-notify
60 3 Fabrice Barconnière
python
61 3 Fabrice Barconnière
>>> import pynotify
62 3 Fabrice Barconnière
>>> if pynotify.init("My Application Name"):
63 3 Fabrice Barconnière
...  n = pynotify.Notification("Title", "message")
64 3 Fabrice Barconnière
...  n.set_urgency(pynotify.URGENCY_CRITICAL)
65 3 Fabrice Barconnière
...  n.show()
66 3 Fabrice Barconnière
... 
67 3 Fabrice Barconnière
True
68 3 Fabrice Barconnière
>>> 
69 3 Fabrice Barconnière
</pre>
70 2 Fabrice Barconnière
71 1 Klaas TJEBBES
TODO
72 1 Klaas TJEBBES
73 1 Klaas TJEBBES
h3. SMS
74 1 Klaas TJEBBES
75 4 Fabrice Barconnière
https://pypi.python.org/pypi/behaving
76 4 Fabrice Barconnière
77 1 Klaas TJEBBES
TODO
78 1 Klaas TJEBBES
79 1 Klaas TJEBBES
h3. email
80 1 Klaas TJEBBES
81 1 Klaas TJEBBES
  echo message | mail #où qqchose du genre