Skip to main content

Package for simplifying control of Freebox Revolution with Domoticz

Project description

FRDomoticz

Le package pour simplifier le contrôle de la Freebox Révolution avec Domoticz

Exemples - Reporter un bug

TABLE DES MATIÈRES
  1. A propos du projet
  2. Commencer
  3. Utilisation
  4. Contribuer
  5. Licence
  6. Contact

A propos du projet

Tout d'abord, mon souhait était de faire de domoticz une télécommande personnalisée pour mon freebox player. J'avais envie d'appuyer sur un seul bouton pour lancer ma station radio préférée, ma série en replay, etc...

Après s'être rendu compte que la tâche de programmation était rébarbative, mais que le résultat était à la hauteur de mes attentes. J'ai décidé de simplifier mon code afin de faire une "librairie".

C'est ainsi que de fil en aiguille, j'ai créé ce package qui, pourquoi pas, pourrait intéresser l'un d'entre vous.

Ce projet est en constante évolution, n'hésitez pas à me faire part de vos remarques afin d'améliorer le code.

Commencer

L'installation du package est très simple, il suffit de bien suivre les instructions ci-dessous. Si vous rencontrer un problème, n'hésitez pas à créer un ticket.

Prérequis

Afin d'installer le package, il est nécessaire de vérifier que Python et PIP soit bien installé.

  • Python > 3.0
    python --version
    
  • PIP
    pip --version
    
  • Package "time"
  • Package "requests"

Installation

Une fois les prérequis respectés, il suffit de lancer la commande suivante :

pip install frdomoticz

Utilisation

Afin d'utiliser au mieux le package, merci de suivre les instructions ci-dessous. Si vous le souhaitez, vous pouvez également utiliser les exemples du repo.

Code télécommande

Afin d'obtenir le code télécommande nécessaire dans le script, il faut suivre les étapes ci-dessous :

  1. Avec la télécommande de votre Freebox révolution, allez dans "Réglages" puis "Système" puis "Informations Freebox Player et Server" et pour terminer "Player"

  2. Récupérez le code télécommande réseau qui se trouve dans les lignes de droite. Ce dernier sera à intégrer dans vos futurs scripts.

Préparation du script shell

  1. Dans le dossier ci-dessous, créez un nouveau script shell "exec.sh".

    /domoticz/scripts/exec.sh
    

    Ce dernier permettra de lancer nos divers scripts python sans interrompre domoticz.

  2. Dans ce fichier, placez les lignes de code suivantes :

     #! /bin/sh
     /usr/bin/python /home/pi/domoticz/scripts/$1.py $2 $3 > /dev/null 2>&1 &
    

Script python

  1. Toujours dans le dossier "script" de domoticz, créez un nouveau script python.
    /domoticz/scripts/nom_du_script.py
    
  2. Ensuite, importez la librairie dans votre script avec la ligne suivante :
     from frdomoticz import lib
    
  3. Puis, renseignez le code de votre télécommande :
      code = 123456789 
    
  4. Pour terminer, insérez les différentes ligne de code correspondantes à votre demande :
      lib.init(code) # Initialise le player sur la page d'accueil
      lib.radio(code) # Sélectionne le menu Radio du player
      lib.down(code)  # Simule un appui sur la touche bas de la télécommande.
    

Domoticz

  1. Dans l'onglet "Configuration" puis dans "Matériel", créer un nouveau matériel de type "Dummy" ayant le nom que vous souhaitez (par ex. "Télécommande freebox")

  2. Ensuite, créer cliquer sur "Créer un capteur virtuel" et vous sélectionnerez le type "Interrupteur".

  3. Retrouvez l'interrupteur que vous venez de créer dans l'onglet "Interrupteurs" puis sélectionnez "Modifier".

  4. Configurez le type de l'interrupteur en "Push On Button" puis dans "Action On" renseignez le nom de votre script python :

      script://exec.sh nom_du_script.py
    
  5. Domoticz est maintenant configuré pour éxécuter le script python à chaque fois que vous appuyerez sur l'interrupteur.

Contribuer

Les contributions sont ce qui fait de la communauté open source un endroit incroyable pour apprendre, inspirer et créer. Toutes les contributions que vous apportez sont très appréciées.

  1. "Forker" le projet
  2. Créer une nouvelle "Branch" (git checkout -b feature/AmazingFeature)
  3. Validez vos modifications (git commit -m 'Add some AmazingFeature')
  4. "Push" la nouvelle "Branch" (git push origin feature/AmazingFeature)
  5. Ouvrir une "Pull Request"

Licence

Distribué sous la licence "GNU General Public License v3 (GPLv3)". Voir Licence pour plus d'informations.

Contact

MatthieuF44 - mattdevue[at]gmail.com

Lien du projet : https://github.com/MatthieuF44/frdomoticz/

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

frdomoticz-0.0.3.tar.gz (17.6 kB view details)

Uploaded Source

Built Distribution

frdomoticz-0.0.3-py3-none-any.whl (17.6 kB view details)

Uploaded Python 3

File details

Details for the file frdomoticz-0.0.3.tar.gz.

File metadata

  • Download URL: frdomoticz-0.0.3.tar.gz
  • Upload date:
  • Size: 17.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.22.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.10

File hashes

Hashes for frdomoticz-0.0.3.tar.gz
Algorithm Hash digest
SHA256 39fc1704cde1f3064338f20ce506e2684bf84985fbd5b7030a93c4fb5a0df3dd
MD5 5ea5b2d342920ce013d8e44312a613e9
BLAKE2b-256 27c1c480bc7471cfffbd761960e36ecbdeb7e97b2687eaf04b680605b4bcef68

See more details on using hashes here.

File details

Details for the file frdomoticz-0.0.3-py3-none-any.whl.

File metadata

  • Download URL: frdomoticz-0.0.3-py3-none-any.whl
  • Upload date:
  • Size: 17.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.22.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.10

File hashes

Hashes for frdomoticz-0.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 e8f9ad16c865de5465f13f9904dbdaf37f0322e3b6457ed73ea7e7350b6b87ce
MD5 9cfad89e789ddfa8fbb3bfeef30556cd
BLAKE2b-256 44c9d32ea07f191dd52f12c73d9c39c7ab6683ff9bd1d6304707ec20f80f3177

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page