TUTO Zipabox : Activer /désactiver le wifi de la livebox depuis la Zipa

Salut à tous !

Aujourd’hui, je vous propose un nouveau Tuto qui va vous permettre d’activer ou désactiver votre Wifi depuis la ZipaBox.

En effet tous les appareils de ma maison étant reliés en filaire j’utilise le Wifi uniquement  pour me connecter à Internet depuis mon téléphone ou l’ordi portable. Par mesure de précaution, et aussi pour m’amuser un peu je souhaitais pouvoir allumer ou éteindre le Wifi depuis la Zipa.

Pour cela il nous faut :

  • Un serveur capable d’exécuter des commandes Linux et qu’il soit situé sur votre réseau local. (Vous l’aurez compris, l’idéal est d’avoir un Raspberry sous la main. Petit rappel : héberger les scripts PHP sur son Raspberry)
  • une Livebox 2 Sagem

Pour ceux qui utilise d’autres box, j’ai trouvé d’autre script, mais j’attend que quelqu’un les tests avant de les diffuser, n’hésitez pas à me demander les liens via les commentaires.

1. Récupération des informations

Avant de commencer nous a besoin de récupérer quelques informations. Pour cela, connectez vous à votre Livebox en tapant l’adresse suivante dans un navigateur: http://192.168.1.1

Capture d’écran 2013-06-23 à 20.23.10

Connectez vous. Puis allez dans l’onglet « Configuration », ensuite dans la section paramètre Wifi

Capture d’écran 2013-06-23 à 20.28.12

 

Relevez dans un coin le nom du réseau, alias SSID, puis copiez votre Clef de sécurité, nous allons en avoir bientôt besoin.

2. Création des scripts.

Avant de commencer, je tenais à remercier Fabrice, qui a écris pas mal de script Linux permettant de commander la Livebox, et qui a gentiment accepté que je publie son script sur MDG. Son site ICI

Si vous utilisez le Raspberry, (j’en parle, car c’est mon cas, mais c’est valable pour tous les autres serveurs tournant sous linux) connectez vous à ce dernier en SSH et si ça n’a pas déjà était fait par le passé, faites une commande :

apt-get install curl

Celle ci permettra d’installer l’application Curl utilisée par le script.

Maintenant, nous allons passer à l’écriture du script.

Comme nous allons l’exécuter depuis une commande HTTP généré par la Zipa, il faut que le script soit accessible depuis l’extérieur. Pour cela le mieux est d’avoir au préalablement installé un Serveur web sur votre Raspberry, petit rappel sur le tuto : Tuto : héberger les scripts sur son Raspberry

Ensuite nous allons passer à l’écriture du script, faite un :

sudo nano /var/www/wifi_sagem

puis collez y le script suivant :

#!/bin/bash

# Script de modification du wifi sur une livebox 2 Sagem, le 20 juin 2013.
# Argument 0 ou 1 
# exemple pour activer le wifi:
# /bin/mes_scripts/wifi_sagem. 1

data=`curl -s -d "authlogin=admin&authpasswd=admin&authaction=login" http://192.168.1.1 | grep 'legal_info_home&sessionid=' | awk -F "=" '{ print $4}' | awk -F "'" '{print $1}'`
# echo $data
urla='http://192.168.1.1/index.cgi?page=wireless&sessionid='$data
#echo $urla
run=`curl --silent -d "wifistatus=$1&ssid=Space&broadcast=1&mode=3&key=123456789fudard&securitymode=7&action=submit" $urla`

echo "fin du script"

Avant d’enregistrer, allez dans la ligne suivante :

$1&ssid=Space&broadcast=1&mode=3&key=123456789faard&securitymode=7&action=submit » $urla`

Remplacez « Space » par le nom de votre livebox (celui noté plus haut), et remplacez le « 123456789faard » par votre clef de sécurité, (également noté plus haut).

Enregistrez, et ensuite faites une commande :

chmod +x  /var/www/wifi_sagem

Afin d’autoriser le script à s’exécuter.

Bon maintenant, nous avons notre script qui est en faite une commande linux. Celle ci permet de couper/allumer le wifi, c’est bien, mais le problème est que la Zipa est uniquement capable d’envoyer des requêtes HTTP. Il va donc nous falloir une passerelle qui permettra de passer de la requête http à l’exécution du script Linux.

Il nous faut donc passer par un script PHP !!!

Pour ça faite un :

sudo nano /var/www/wifi_on.php

ensuite collez y le script suivant :

#!/usr/bin/php5

<!--?php
$wifi=shell_exec('/var/www/wifi_sagem 1');
echo $wifi;
?-->

Ensuite nous allons créer un deuxième script qui nous permettra de désactiver le wifi :

sudo nano /var/www/wifi_off.php

puis

#!/usr/bin/php5

<!--?php
$wifi=shell_exec('/var/www/wifi_sagem 0');
echo $wifi;
?-->

Et voilà! le tour est joué, il ne nous reste plus qu’à utiliser tous ça avec la zipa !!

3. Utilisation dans la Zipa

Maintenant créez un module virtuel de type switch :

Capture d’écran 2013-06-23 à 21.12.16

et allez dans le créateur de règle. et créez 2 nouvelles règles tel que :

Capture d’écran 2013-06-24 à 19.39.17 Capture d’écran 2013-06-24 à 19.39.39

N’oubliez pas de remplacer l’adresse IP, par celle de votre serveur !!!

Et voilà! désormais vous pourrais allumer ou éteindre votre wifi depuis votre téléphone ! Mais surtout, la fonction qui est à mes yeux la plus intéressante, est de pouvoir programmer l’allumage ou l’extinction, en fonction de la présence (allumage si détection d’une présence), ou en fonction de vos horaires de présences via le scheduler.

Bonne journée à tous !

 

Vincent

Dessinateur /projeteur dans le milieu industriel, issue d’une formation technique, mon parcours professionnel m’a fait naviguer dans plusieurs milieux, techniques. Ayant étudié l’automatisme durant mes études, puis délaissé le sujet plus tard, aujourd’hui je souhaitais m’y replonger en me mettant à la domotique. En effet l’automatisation de la maison me semble aujourd’hui incontournable, notamment pour la gestion d’énergie.

Vous aimerez aussi...

16 réponses

  1. Thierry dit :

    Bonjour,
    As-tu des scripts pour BBox Bouygues ?
    Je suis preneur.

    D’autres exemples de commande à distance de Freebox et Box SFR Evolution, mais directement via les API des box :
    http://www.planete-domotique.com/blog/2013/06/03/piloter-sa-freebox-revolution-avec-sa-box-domotique/
    http://www.touteladomotique.com/forum/viewtopic.php?f=42&t=8088

  2. Concernant cette box, ça l’air beaucoup plus simple, j’ai trouvé ça :

    http://bbox-news.com/forums/topic5717-desactiver-le-wifi-par-script.html

  3. Thierry dit :

    Je n’avais pas trouvé cette page lors de mes recherches.
    Ca fonctionne parfaitement avec ma BBOX !
    Merci.

  4. jerome dit :

    Hello, merci pour ce tuto et pour la SFR BOX ?

  5. Cyril dit :

    Salut Vincent!!
    J’ai essayer les scripts pour la freebox mais sa ne fonctionne pas. Es que tu en aurai pour la freebox? Merci par avance

  6. Cyril dit :

    Es que le problème peut provenir du serveur Web. Car quand je veut accéder au serveur web par firefox, j’ai une erreur 500?

  7. Cyril dit :

    Merci c’est nickel sa fonctionne!!!!!

  8. psytgc dit :

    bonsoir

    ca ne fonctionne pas chez moi j envoie la requete depuis la zibase elle bien recu et executer mais derriere rien
    j ai remis admin comme mot de passe mais c est pareil
    j ai l impression qu il manque le valider dans le script apres l arret du wifi
    si je met la commande dans une page web il me demande de telecharger le php

    merci d avance pour vos lumieres

    • Bonjour,
      Sur quel serveur est executé votre script?
      avez vous bien exécutée la fonction :
      apt-get install curl
      ?
      Le script a été testé chez plusieurs personnes et fonctionne normalement chez toutes.

  9. paqueuc dit :

    Bonjour Vincent,

    Et pour la Livebox 3 (la noire), c’est le même script ?

    Merci

  1. 25 juin 2013

    […] Salut à tous !Aujourd’hui, je vous propose un nouveau Tuto qui va vous permettre d’activer ou désactiver votre Wifi depuis la ZipaBox.En effet tous les appareils de ma maison étant reliés en filaire j’utilise le Wifi uniquement pour me connecter à Internet depuis mon téléphone ou l’ordi portable. Par mesure de précaution, et aussi pour m’amuser un peu je souhaitais pouvoir allumer ou éteindre le Wifi depuis la Zipa.Pour cela il nous faut :Un serveur capable d’exécuter des commandes Linux et qu’il soit situé sur votre réseau local. (Vous l’aurez compris, l’idéal est d’avoir un Raspberry sous la main. Petit rappel : héberger les scripts PHP sur son Raspberry)une Livebox 2 SagemPour ceux qui utilise d’autres box, j’ai trouvé d’autre script, mais j’attend que quelqu’un les tests avant de les diffuser, n’hésitez pas à me demander les liens via les commentaires.  […]

  2. 26 juin 2013

    […] Salut à tous ! Aujourd’hui, je vous propose un nouveau Tuto qui va vous permettre d’activer ou désactiver votre Wifi depuis la ZipaBox. En effet tous les appareils de ma maison étant reliés en filaire j’utilise le Wifi uniquement pour me connecter à Internet depuis mon téléphone ou l’ordi portable. Par mesure de précaution, et aussi pour m’amuser un peu je souhaitais pouvoir allumer ou éteindre le Wifi depuis la Zipa. Pour cela il nous faut :Un serveur capable d’exécuter des commandes Linux et qu’il soit situé sur votre réseau local. (Vous l’aurez compris, l’idéal est d’avoir un Raspberry sous la main. Petit rappel : héberger les scripts PHP sur son Raspberry)une Livebox 2 SagemPour ceux qui utilise d’autres box, j’ai trouvé d’autre script, mais j’attend que quelqu’un les tests avant de les diffuser, n’hésitez pas à me demander les liens via les commentaires.  […]

  3. 17 septembre 2013

    […] Salut à tous !Aujourd’hui, je vous propose un nouveau Tuto qui va vous permettre d’activer ou désactiver votre Wifi depuis la ZipaBox.En effet tous les appareils de ma maison étant reliés en filaire j’utilise le Wifi uniquement pour me connecter à Internet depuis mon téléphone ou l’ordi portable. Par mesure de précaution, et aussi pour m’amuser un peu je souhaitais pouvoir allumer ou éteindre le Wifi depuis la Zipa.Pour cela il nous faut :Un serveur capable d’exécuter des commandes Linux et qu’il soit situé sur votre réseau local. (Vous l’aurez compris, l’idéal est d’avoir un Raspberry sous la main. Petit rappel : héberger les scripts PHP sur son Raspberry)une Livebox 2 SagemPour ceux qui utilise d’autres box, j’ai trouvé d’autre script, mais j’attend que quelqu’un les tests avant de les diffuser, n’hésitez pas à me demander les liens via les commentaires.  […]

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

J’accepte les conditions et la politique de confidentialité

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.