Page 1 sur 3

[Tuto] Fond écran Freebox & Domoticz

Publié : 09 déc. 2015, 12:06
par jec_44
Bonjour à tous.
Je souhaitais partager avec vous une de mes dernières réalisations : Un fond d'écran pour Freebox Revolution ! mais pas seulement car il donne en plus des infos provenant de Domoticz ! Ça vous intéresse ? :o

Image

Les composants matériels :
- Une Freebox :D
- Un raspberry ou NAS avec Domoticz

Les composants logiciels :
- un serveur web (sur Syno ou Rasp)
- la bibliothèque python Webkit2png (permettant de prendre une copie d'écran d'un site web)

Le principe :
On planifie toutes les heures (ou 1/2 heure ou 2 heures) l’exécution d'un script python basé sur Webkit2png qui prends une copie d'écran d'une page PHP sur mesure et qui la copie sur le Freebox à l'emplacement des fonds d'écran.
A chaque retour sur l'écran d'accueil de la Freebox, les infos apparaissent !

Le tuto c'est par ici -> https://sites.google.com/site/au66bis/freebox/dashboard

Re: Fond écran Freebox & Domoticz

Publié : 09 déc. 2015, 12:25
par deennoo
P...... c'est exactement ce que je voulais faire !!!!!!!! mais je n'avais pas trouver comment !!

tuto bien fait et rapide a mettre en oeuvre (du moins pour la parti script et installation), j'ai eu l erreur unable to reach xserver avec google mais pas avec une page php que j'heberge sur mon nas.

encore un apres midi sur l'ecran en vu ! merci

Je voulais envoyer des notif sur le player comme on peut le faire avec kodi.

merci de la source !

Re: Fond écran Freebox & Domoticz

Publié : 09 déc. 2015, 12:31
par jec_44
On se demande pourquoi FREE n'y a pas pensé avant :lol: Peut être dans la V7 !!!

Re: Fond écran Freebox & Domoticz

Publié : 09 déc. 2015, 13:52
par deennoo
Je viens de rendre mon player mini 4k, cela ne fonctionne pas bien en wifi (c'est ma seul option de connection dans une chambre), en echange j'ai mis un pi avec openelec, le bon theme, les extensions de replay qui vont bien, le plugin hdmicec, l'iptv de free le tout en wifi et depuis aucun probleme madame est contente.

Fond écran Freebox & Domoticz

Publié : 09 déc. 2015, 23:58
par deennoo
Vraiment pas mal cette astuce

Image

Encore quelque réglage de mise en page, taille et choix de police et ce sera nickel !

Reste a faire afficher un icône météo dans la case demain en ce servant des prévision meteo et de l'info JSON ForcastStrg qui est entre "...

PS : étant en galère de PC j'ai tout fait de ma tablette avec esexplorer...

Re: [Tuto] Fond écran Freebox & Domoticz

Publié : 12 déc. 2015, 10:06
par Kippei
Bonjour!

Ce petit tuto m’intéresse fortement, malheureusement, chez moi, le lien vers ce dernier semble HS :(
Est-ce uniquement chez moi?

Re: [Tuto] Fond écran Freebox & Domoticz

Publié : 12 déc. 2015, 11:17
par deennoo
Moi aussi avec windows alerte virus par avast : WordPress gzip

Re: [Tuto] Fond écran Freebox & Domoticz

Publié : 14 déc. 2015, 08:48
par jec_44
Bonjour, désolé, un problème avec Wordpress et un foutu trojan.... :evil: le dispo est de nouveau accessible !
Bonne journée

Re: [Tuto] Fond écran Freebox & Domoticz

Publié : 14 déc. 2015, 11:05
par deennoo
Peux tu m'apporter un peu d'aide ?

Je voudrais parser une info meteo qui est un texte et le transformer en image.

J'ai un device meteo qui me donne la tendance meteo (ensolleilé, nuageux etc etc), j'arrive a afficher cette info sur la page index.php

Maintenant je souhaite que ce text ce transforme en icone, j'ai placer un repertoire icone, et j'arrive a faire afficher un icone meteo a l'emplacement que je veux, mais sans la variable.

J'ai essayer des regle if else directement apres le parsage de cette info, mais il 'affiche que l'icone la derniere ligne a chaque fois.

Je dois louper quelque chose genre un new string ou quelque chose comme cela.

En exemple je me sert de ceci "volé" de la front page de vil1driver, mais c'est un js je ne sais pas le transformer en php html

Code : Tout sélectionner

// replace forecast (text) with an image (THIS IS THE DAY part)
												if (vdata === 'Sunny' && IsNight === 'No') {
                                                        vdata= String(vdata).replace( "Sunny",['<img src=icons/meteo/day-sun.png width=155 height=155 onclick="lightbox_open(\'meteo',lastseen,'\', 25400)">'].join(''));
                                                }
                                                if (vdata === 'Partly Cloudy' && IsNight === 'No') {
                                                        vdata= String(vdata).replace( "Partly Cloudy",['<img src=icons/meteo/day-partlycloudy.png width=155 height=155 onclick="lightbox_open(\'meteo',lastseen,'\', 25400)">'].join(''));
                                                }
                                                if (vdata === 'Cloudy' && IsNight === 'No') {
                                                        vdata= String(vdata).replace( "Cloudy",['<img src=icons/meteo/day-cloudy.png width=155 height=155 onclick="lightbox_open(\'meteo',lastseen,'\', 25400)">'].join(''));
                                                }
                                                if (vdata === 'Clear' && IsNight === 'No') {
                                                        vdata= String(vdata).replace( "Clear",['<img src=icons/meteo/day-sun.png width=155 height=155 onclick="lightbox_open(\'meteo',lastseen,'\', 25400)">'].join(''));
                                                }
                                                if (vdata === 'Rain' && IsNight === 'No') {
                                                        vdata= String(vdata).replace( "Rain",['<img src=icons/meteo/day-rain.png width=155 height=155 onclick="lightbox_open(\'meteo',lastseen,'\', 25400)">'].join(''));
                                                }
                                                if (vdata === 'Snow' && IsNight === 'No') {
                                                        vdata= String(vdata).replace( "Snow",['<img src=icons/meteo/day-snow.png width=155 height=155 onclick="lightbox_open(\'meteo',lastseen,'\', 25400)">'].join(''));
                                                }
                                                if (vdata === 'Fog' && IsNight === 'No') {
                                                        vdata= String(vdata).replace( "Fog",['<img src=icons/meteo/day-fog.png width=155 height=155 onclick="lightbox_open(\'meteo',lastseen,'\', 25400)">'].join(''));
                                                }
                                                if (vdata === 'Hail' && IsNight === 'No') {
                                                        vdata= String(vdata).replace( "Hail",['<img src=icons/meteo/day-hail.png width=155 height=155 onclick="lightbox_open(\'meteo',lastseen,'\', 25400)">'].join(''));
                                                }
                                                if (vdata === 'Thunderstom' && IsNight === 'No') {
                                                        vdata= String(vdata).replace( "Thunderstorm",['<img src=icons/meteo/day-thunder.png width=155 height=155 onclick="lightbox_open(\'meteo',lastseen,'\', 25400)">'].join(''));
                                                }
                                                if (vdata === 'Sleet' && IsNight === 'No')  {
                                                        vdata= String(vdata).replace( "Sleet",['<img src=icons/meteo/day-sleet.png width=155 height=155 onclick="lightbox_open(\'meteo',lastseen,'\', 25400)">'].join(''));  
                                                }

Re: [Tuto] Fond écran Freebox & Domoticz

Publié : 16 déc. 2015, 11:50
par jec_44
D'après ce que j'ai pu lire et comprendre dans l'aide de Webkit2png, le printscreen est plus rapide que le chargement du JS. Il y a un paramètre que je n'ai pas tester qui permet de temporiser le printscreen le temps que JS se charge.
https://github.com/paulhammond/webkit2p ... webkit2png

"--delay", type="float", default=0,
help="delay between page load finishing and screenshot")
group.add_option(
"--js", type="string", default=None,
help="JavaScript to execute when the window finishes loading"
"(example: --js='document.bgColor=\"red\";'). "
"If you need to wait for asynchronous code to finish before "
"capturing the screenshot, call webkit2png.stop() before the "
"async code runs, then webkit2png.start() to capture the image.")