#!/usr/bin/python
#-*- coding: utf-8 -*-  

# import des librairies nécessaire
import os
import urllib
import time

# déclaration des variables
hostname "192.168.XXX.XXX" # adresse à vérifier pour le ping ou www.google.com
0  # on initialise notre compteur à 0
flag # notre flag par défaut il vaut 1

# déclaration des variables à passer en argument à la fonction 'free()'
var1 "perdue"
var2 "retrouvée"
var3 "bien perdue, bouge toi le cul"

# Fonction free (envoi sms) , l'argument ajouté sera mis dans la variable 'var'
def free(var):
    # remplacer XXXXX et YYYYY par vos login et mdp de l'option free,  on récupère l'argument on met la variable dans l'url  "%s"  % var
    url = ("https://smsapi.free-mobile.fr/sendmsg?user=XXXXX&pass=YYYYY&msg=Alerte !!! Connexion %s !!!" %  var
    envoi urllib.FancyURLopener({})
    alerte envoi.open(url)
    alerte.read()

print "début du test"

# notre boucle, pour tester 3 ping de plus si échec du premier,  espacés d'une minute chacun :
while 3:                                                                        # tant que i  est plus petit que 3
    ping os.system("ping -c 1 " hostname)           # lance le ping
    if ping == 0:                                                                    # si le ping réussi
        if flag == 1:                                                                       # et si  le flag est toujours à  1
            print "com ok"                                                                  # écrit com ok
            break                                                                                   # sort de la boucle while
        else:                                                                                    # si  le flag est  à 0 ,  c'est que le précédent ping avait échoué
            free(var2)                                                                          # lance la fonction free avec l'argument "retrouvée"
            print "com retrouvée"                                                  # écrit com retrouvée
            break                                                                               # sort de la boucle while
    else:                                                                                  # si le ping échoue
        if flag == 1:                                                                       # et si  le flag est toujours à  1
            free(var1)                                                                          # lance la fonction free avec l'argument "perdue"
            print "com perdu"                                                       # écrit com perdue
            flag 0                                                                            # passe le flag à 0                                                                                            
        else:                                                                                    # et si  le flag n'est plus à 1
            1                                                                                # incrémente juste le compteur
    time.sleep(60)                                                               # attend 1 minute
    if == 3:                                                                            # si le compteur vaut 3                 
        print "com bien perdu"                                              # écrit com bien perdue
        free(var3)                                                                        # lance la fonction free avec l'argument "bien perdue, bouge toi le cul"
        
print "fin du test"