[LUA HC2 – Leçon 3] – Utilisation d’API Net.FHttp

Bonjour,

Vous êtes nombreux a me demander la suite des Leçons LUA pour HC2, ben….. voilà la suite 😉
Aujourd’hui je vais vous parler de l’API Net.Fhttp
Cette API nous permet d’envoyer des commandes via HTTP vers notre HC2 ou d’autre appareils.
Je vais vous expliquer comment cloner la télécommande de la Freebox V6 et commander la télé via HC2.

Free a mis a notre disposition des divers API, on va s’intéresser particulièrement a une pour l’intégrer dans notre HC2
Essayer de taper dans votre navigateur web la ligne suivante:

http://hd1.freebox.fr/pub/remote_control?code=[CODE TELECOMMANDE]&key=power

Le [CODE TELECOMMANDE] se trouve dans le menu Réglages/Télécommande de votre FreeBox

Comme vous pouvez voir cette commande éteint/ allume votre FreeBox.

Donc maintenant il nous reste juste de créer une télécommande virtuel dans notre HC2.
Pour cela nous allons utiliser un Module Virtuel et une variable global.

Etape 1

Créer une nouvelle variable et attribuez lui la valeur de votre [CODE TELECOMMANDE]
Nommez la « CodeTeleFree »

Variable télécommande FreeBox V6

Variable télécommande FreeBox V6

Etape 2

Créer un nouveau module virtuel et nommez le « Télécommande« .
Ajouter exactement le même nombre de boutons que sur votre Télécommande original.

Télécommande virtuel freebox v6

Télécommande virtuel freebox v6

 

Etape 3

Passons a un peu de code maintenant:
Dans chaque bouton il faut saisir le code correspondant aux API Free.
Pour cela il faut traduire notre ligne « http://hd1.freebox.fr/pub/remote_control?code=[CODE TELECOMMANDE]&key=power » en code LUA

1
2
3
4
5
6
7
8
9
-- on déclare une variable local CodeTeleFree et on lui attribue
-- le code de notre télécommande stocké précédemment dans la variable HC2
local CodeTeleFree = fibaro:getGlobal("CodeTeleFree");
 
-- on crée une instance HC2 et on lui attribue l adresse de notre FreeBox
HC2 = Net.FHttp("hd1.freebox.fr");
 
-- on attribue la suite de notre adresse avec le code télécommande
response = HC2:GET("/pub/remote_control?code=" ..CodeTeleFree.. "&key=power")
-- on déclare une variable local CodeTeleFree et on lui attribue
-- le code de notre télécommande stocké précédemment dans la variable HC2
local CodeTeleFree = fibaro:getGlobal("CodeTeleFree");

-- on crée une instance HC2 et on lui attribue l adresse de notre FreeBox
HC2 = Net.FHttp("hd1.freebox.fr");

-- on attribue la suite de notre adresse avec le code télécommande
response = HC2:GET("/pub/remote_control?code=" ..CodeTeleFree.. "&key=power")

Copiez ce code dans chaque touche en remplacent « power » par le code touche correspondant.

Voilà le code de chaque touche de la V6:

power : la touche rouge on/off

0 à 9 : les touches 0 à 9

vol_inc : augmente le volume

vol_dec : diminue le volume

prgm_inc : incrémente de 1 le programme

prgm_dec : décrémente de 1 le programme

ok : touche OK

up, right, down, left : les touches directionnelles (haut, droite, bas, gauche)

mute : la touche de mise en sourdine

home : la touche free

rec : la touche d’enregistrement

bwd : la touche de retour en arrière (<<)

prev : la touche « précédent » (|<<)

play : la touche lecture/pause

fwd : la touche d’avance rapide (>>)

next : la touche « suivant » (>>|)

red : le bouton rouge

green : le bouton vert

yellow : le bouton jaune

blue : le bouton bleu

Pour ceux qui ne veulent pas tous faire soit même voilà le lien pour télécharger le module virtuel:

 

  • Pas de commandes groupées pour le moment.
Télécommande Freebox V6
Télécommande Freebox V6
Télécommande.vfib
Version: 1.0
11.0 KiB
1160 Downloads
Détails