Home / Domotique / WansView W3,Q3S et Jeedom

WansView W3,Q3S et Jeedom

J’ai mis un peu de temps à me décider mais j’ai fini par mettre en place une caméra de surveillance, principalement pour la piscine mais aussi en cas d’absence.

Je dois dire que ce choix s’est basé sur le prix mais également sur sa compatibilité avec Jeedom pour laquelle je n’étais pas sûr à 100% lors de l’achat.

Et bien, après avoir suivi les instructions d’installation du fabriquant, la caméra est intégrée sur le réseau et le flux fonctionne.

L’étape suivante est donc l’intégration dans Jeedom. Cela passe donc d’abord par l’achat du plugin Caméra et son activation. Ensuite, l’ajout de la caméra, en suivant les informations trouvées sur le forum, est fait comme ci-dessous:

Et comme par magie, les images sont bien visibles dans Jeedom ainsi que dans le design.

Voulant avoir un contrôle complet via Jeedom, j’ai donc aussi fait quelques petites recherches afin de me passer de l’application Wansview afin de:

  • Faire l’activation ou désactivation de la vision de nuit
  • Prendre une photo et me l’envoyer quand un mouvement est détecté par un autre équipement z-wave.

Les différentes commandes

J’ai récupéré des informations également trouvées sur le forum Jeedom où un membre a créé un script (disponible ci-dessous) permettant d’exécuter les requêtes nécessaires.

<?php

$ip_cam = $argv[1];
$act_cam = $argv[2];

$username = 'username';
$password = 'password';

switch ($act_cam) {
  case "up":
  case "down":
  case "left":
  case "right":
  case "hscan":
  case "vscan":
  case "stop":
    $url = 'http://'.$ip_cam.'/hy-cgi/ptz.cgi?cmd=ptzctrl&act='.$act_cam;
    break;
  case 1:
  case 2:
  case 3:
  case 4:
  case 5:
  case 6:
  case 7:
  case 8:
    $url = 'http://'.$ip_cam.'/hy-cgi/ptz.cgi?cmd=preset&act=goto&number='.$act_cam;
    break;
  case "tour":
    $url = 'http://'.$ip_cam.'/hy-cgi/ptz.cgi?cmd=preset&act='.$act_cam;
    break;
  case "zoomin":
  case "zoomout":
    $url = 'http://'.$ip_cam.'/hy-cgi/ptz.cgi?cmd=zoomctrl&act='.$act_cam;
    break;
  case "alarmon":
    $url = 'http://'.$ip_cam.'/hy-cgi/alarm.cgi?cmd=setmdattr&enable=1&sensitivity=30&left=0&top=0&right=1920&bottom=1080&index=0&name=MD0';
    break;
  case "alarmoff":
    $url = 'http://'.$ip_cam.'/hy-cgi/alarm.cgi?cmd=setmdattr&enable=0&sensitivity=30&left=0&top=0&right=1920&bottom=1080&index=0&name=MD0';
    break;
  case "iron":
    $url = 'http://'.$ip_cam.'/hy-cgi/irctrl.cgi?cmd=setinfrared&infraredstatus=open';
    break;    
  case "iroff":
    $url = 'http://'.$ip_cam.'/hy-cgi/irctrl.cgi?cmd=setinfrared&infraredstatus=close';
    break;
  case "irauto":
    $url = 'http://'.$ip_cam.'/hy-cgi/irctrl.cgi?cmd=setinfrared&infraredstatus=auto';
    break;
  case "ioflag":
    $url = 'http://'.$ip_cam.'/hy-cgi/alarm.cgi?cmd=setioattr&io_enable=1&io_flag=0';
    break;

}

exec(" curl --digest -u $username:$password -X GET '$url' > /dev/null"); 

switch ($act_cam) {
  case "up":
  case "down":
  case "left":
  case "right":
    usleep(1000000);
    $url = 'http://'.$ip_cam.'/hy-cgi/ptz.cgi?cmd=ptzctrl&act=stop';
    exec(" curl --digest -u $username:$password -X GET '$url' > /dev/null");
    break;
  case "alarmon":
    $url = 'http://'.$ip_cam.'/hy-cgi/alarm.cgi?cmd=setaudioalarmattr&aa_enable=1&aa_value=3';
    exec(" curl --digest -u $username:$password -X GET '$url' > /dev/null");
    break;
  case "alarmoff":
    $url = 'http://'.$ip_cam.'/hy-cgi/alarm.cgi?cmd=setaudioalarmattr&aa_enable=0&aa_value=3';
    exec(" curl --digest -u $username:$password -X GET '$url' > /dev/null");
    break;
  case "ioflag":
    sleep(10);
    $url = 'http://'.$ip_cam.'/hy-cgi/alarm.cgi?cmd=setioattr&io_enable=0&io_flag=1';
    exec(" curl --digest -u $username:$password -X GET '$url' > /dev/null");
    break;
}
?>

Il suffit donc d’utiliser le plugin script, créer le script php avec le nom que vous désirez, copier le code récupéré et modifier les lignes username et password avec le login et mot de passe défini lors de l’installation de la caméra.

Ensuite, dans la commande créée, il faut appeler le script avec deux arguments, l’IP de la caméra ainsi que la commande voulue

/var/www/html/core/php/../../plugins/script/core/ressources/Controle_Camera.php XXX.XXX.XXX.XXX commande

Voici ce que cela donne:

J’ai caché l’adresse IP dans mon exemple. Il suffira de la remplacer par la votre.

Capture d’une image en cas de mouvements

Ce point est assez simple car il suffit de créer un scénario provoqué par la détection de mouvement d’un équipement et dans le scenario, tester la status du détecteur et exécuter l’action prendre une photo de l’équipement.

Pour ma part, j’utilise Surveillance Station de Synology qui envoi une requête pour informer qu’un mouvement a été détecté.

La source de cet article se trouve ici.

Étiquetté :

Répondre

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

Production photovoltaïque

Prévision du jour: Aucune commande correspondant à l'ID : 1783 W/h
Aujourd'hui: Aucune commande correspondant à l'ID : 2635 W/h
Depuis le 20/05/2022: 11394 kW/h
Instantanée: 1615 W/h
Autonomie: Aucune commande correspondant à l'ID : 7668 %
T° extérieure: 30.9 °C

RSS Feeds

  1. Cours d’été
    Source: Sport Montpellier Publié le 22-06-2025
  2. Passage de grade et compétition
    Source: Sport Montpellier Publié le 20-05-2025
  3. Championnats de France 2025
    Source: Sport Montpellier Publié le 05-05-2025
  4. DRLSCM v2.3.0 is available!
    Source: DRLSCM Publié le 13-04-2025
  5. Coming soon!
    Source: DRLSCM Publié le 09-03-2025
  6. DRLSCM v2.1.0 is available!
    Source: DRLSCM Publié le 09-03-2025
  7. Evolution du logo Jeedom
    Source: Blog de Jeedom Publié le 03-02-2025
  8. Jeedom fête ses 10 ans
    Source: Blog de Jeedom Publié le 06-11-2024
  9. Jeedom Smart Debian 11 Bullseye
    Source: Blog de Jeedom Publié le 18-09-2024