Bonjour,
Je partage une astuce parce que j’ai un peu galéré pour le faire fonctionner.
Le principe :
- Installer et configurer le plugin JeeOrangeTV
- Créer un virtuel, avec 2 infos (ChaineInfo et VolumeInfo) et 2 commandes (Info et Volume). C’est lui qui communiquera avec Google SmartHome.
- Créer 2 scénarios qui envoie les commandes volume et chaine du virtuel vers JeeOrangeTV
En détail …
-
Installer et Configurer le plugin JeeOrangeTV. Je vous renvoie à la documentation du plugin pour ça. Surtout vérifiez qu’il fonctionne correctement avant de continuer.
-
Installer le plugin Google SmartHome. Là encore je suppose que le plugin est déjà fonctionnel.
-
Créer un virtuel : je l’ai appelé « Box », et créer les commandes ci-dessous
-
Très important : Dans chaque commandes et infos que vous venez d’ajouter, allez dans les paramètres avancés (roue cranté), onglet Configuration, et sélectionnez le type générique Chaine ou Volume. Sans ça, le virtuel sera en erreur dans le plugin Google SmartHome.
-
Créer le scénario qui va gérer le volume : Copier le code PHP, et le déclencher par la commande Volume du virtuel « Box ». N’oubliez pas de personnaliser le nom des périphériques dans les variables.
// Initialisation des variables
$cpt = 0; // compteur
$BoxDevice = '[Multimedia][OrangeTV]'; // Nom de la box Orange
$VirtualDevice = '[Multimedia][Box]'; // Nom du virtuel
//$LastBoxVolume = $scenario->getData('LastBoxVolume');
$NewBoxChaine = cmd::byString('#'.$VirtualDevice.'[ChaineInfo]#')->execCmd();
// Nombre de caractères à traiter
$cpt = strlen($NewBoxChaine);
$tab = str_split($NewBoxChaine);
$scenario->setLog('__NewBoxChaine'.' -> '.$NewBoxChaine);
$scenario->setLog('__Compteur'.' -> '.$cpt);
// Changement du volume
for ($i = 0 ; $i < $cpt ; $i++ ) {
$scenario->setLog('#'.$BoxDevice.'['.$tab[$i].']#');
cmd::byString('#'.$BoxDevice.'['.$tab[$i].']#')->execCmd();
}
//$scenario->setData('LastBoxVolume',$NewBoxVolume);
- Créer le scénario qui va gérer les chaines : Copier le code PHP, et le déclencher par la commande Chaine du virtuel « Box ». N’oubliez pas de personnaliser le nom des périphériques dans les variables.
// Initialisation des variables
$cpt = 0; // compteur
$BoxDevice = '[Multimedia][OrangeTV]'; // Nom de la box Orange
$VirtualDevice = '[Multimedia][Box]'; // Nom du virtuel
//$LastBoxVolume = $scenario->getData('LastBoxVolume');
$NewBoxChaine = cmd::byString('#'.$VirtualDevice.'[ChaineInfo]#')->execCmd();
// Nombre de caractères à traiter
$cpt = strlen($NewBoxChaine);
$tab = str_split($NewBoxChaine);
$scenario->setLog('__NewBoxChaine'.' -> '.$NewBoxChaine);
$scenario->setLog('__Compteur'.' -> '.$cpt);
// Changement du volume
for ($i = 0 ; $i < $cpt ; $i++ ) {
$scenario->setLog('#'.$BoxDevice.'['.$tab[$i].']#');
cmd::byString('#'.$BoxDevice.'['.$tab[$i].']#')->execCmd();
}
//$scenario->setData('LastBoxVolume',$NewBoxVolume);
-
Paramétrer le virtuel box dans le plugin Google SmartHome. Bien mettre le type sur TV, sauvegarder et actualiser la page (F5). Le status doit passer sur OK.
-
Testez avec : « Ok Google ! Mets la chaine 27 sur Box » ou « Ok Google ! Augmente le volume de 2 sur Box »
Patrice