[print_status] On ne crashe pas non plus si l’imprimante est dans les
choux et refuse les connexions.
This commit is contained in:
parent
bebb5a6e3c
commit
6c372a5b44
1 changed files with 10 additions and 3 deletions
|
@ -103,13 +103,20 @@ def sendMail(from_addr, to_addrs, mail_content):
|
|||
http = httplib2.Http()
|
||||
|
||||
# On récupère la liste des tâches. Pour faire la requête, on doit récupérer un cookie de session.
|
||||
headers, _ = http.request("http://" + printer_host + "/twelcome.cgi?CorePGTAG=0&Dummy=" + getMSE())
|
||||
_, content = http.request("http://" + printer_host + "/pprint.csv?Flag=Csv_Data&LogType=0&Dummy=" + getMSE(), 'GET', headers={'Cookie': headers['set-cookie']})
|
||||
try:
|
||||
headers, _ = http.request("http://" + printer_host + "/twelcome.cgi?CorePGTAG=0&Dummy=" + getMSE())
|
||||
_, content = http.request("http://" + printer_host + "/pprint.csv?Flag=Csv_Data&LogType=0&Dummy=" + getMSE(), 'GET', headers={'Cookie': headers['set-cookie']})
|
||||
except:
|
||||
# En cas d’erreur sur l’imprimante, plutôt que de spamer sur roots@crans.org, on note l’échec quelque part à l’attention d’un service de monitoring.
|
||||
error_file = open(error_filename, "w+")
|
||||
error_file.write("L’imprimante semble injoignable.")
|
||||
error_file.close()
|
||||
exit(0)
|
||||
|
||||
task_list = content.split('\n')
|
||||
# On vérifie que ce qu’on a récupéré ressemble à du CSV. Si tout se passe bien, l’imprimante envoie 13 champs par tâche.
|
||||
# On fait le test sur les entêtes, ce qui permet de s’en débarasser au passage.
|
||||
if len(task_list.pop(0).split(',')) != 13:
|
||||
# En cas d’erreur sur l’imprimante, plutôt que de spamer sur roots@crans.org, on note l’échec quelque part à l’attention d’un service de monitoring.
|
||||
error_file = open(error_filename, "w+")
|
||||
error_file.write("La liste des tâches renvoyée par l’imprimante n’a pas le format attendu.")
|
||||
error_file.close()
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue