Raspberry Pi 3 : Switch de page html au bouton

Raspberry Pi 3 : Switch de page html au bouton - Electronique, domotique, DIY

Marsh Posté le 10-10-2016 à 18:16:20    

Bonjour,
 
je sais déjà (comme beaucoup oui :))
- lancer une page web au démarrage
- en plein écran (iceweasel et kiosk)
- désactiver la souris
- désactiver le plein écran
 
Indépendamment de cela, je sais aussi
- écouter un port GPIO
- lancer le navigateur (mais pas en plein écran) sur le GPIO 23 et avec un bouton power récupéré sur un ordi
 
Mon objectif, switcher entre deux pages web que j'ai créé au clic du bouton.
 
Comment faire svp?
 
J’espère avoir été clair et que vous pourrez m'aider
 
Merci!


---------------
Ventes: http://forum.hardware.fr/hfr/Achat [...] 9901_1.htm Feed: http://forum.hardware.fr/hfr/Achat [...] 9734_1.htm
Reply

Marsh Posté le 10-10-2016 à 18:16:20   

Reply

Marsh Posté le 13-10-2016 à 15:25:53    

Reply

Marsh Posté le 18-10-2016 à 10:04:50    

Personne ne sait faire cela les amis?


---------------
Ventes: http://forum.hardware.fr/hfr/Achat [...] 9901_1.htm Feed: http://forum.hardware.fr/hfr/Achat [...] 9734_1.htm
Reply

Marsh Posté le 26-10-2016 à 18:34:43    

Bon, je ne pensais pas que ce serait si compliqué lol :)


---------------
Ventes: http://forum.hardware.fr/hfr/Achat [...] 9901_1.htm Feed: http://forum.hardware.fr/hfr/Achat [...] 9734_1.htm
Reply

Marsh Posté le 27-10-2016 à 03:42:54    

à défaut de mieux: Ouvrir les deux pages dans deux onglets, surveiller le bouton/GPIO avec un script et en cas d'appui envoyer un message au Firefox (ou Iceweasel) pour changer d'onglet. Par envoyer un message je veux dire utiliser l'API de Linux pour faire croire au Firefox que quelqu'un a appuyé Ctrl+Page Up ou Down (avec seulement deux onglets ça ne change rien l'un ou l'autre). C'est possible sous Windows (sendmessage() de mémoire), je suis sûr que c'est possible sous Linux aussi. Si les pages ne sont pas statiques rajouter Ctrl+F5 pour recharger.

Reply

Marsh Posté le 27-10-2016 à 19:13:32    

Pour l'envoi des messages, ceci devrait faire l'affaire: http://www.semicomplete.com/projects/xdotool/

Reply

Marsh Posté le 21-12-2017 à 15:22:38    

Bonjour,  :hello:  :hello:  
 
J'ai la solution  :pt1cable:  
 
- Installer raspbian (Stretch Lite)
- Faire un raspi-config et modifier le Boot Options /Desktop/cli et sélectionner B2 Console Autologin  
- Installer chromium-browser (apt-get install chromium-browser)
- Créer un fichier startkiosk.sh
 
#!/bin/bash
 
# disable DPMS (Energy Star) features.
xset -dpms
 
# disable screen saver
xset s off
 
# don't blank the video device
xset s noblank
 
# disable mouse pointer
unclutter &
 
# run window manager
matchbox-window-manager -use_cursor no -use_titlebar no  &
 
# run browser
while true; do
chromium-browser --app=http://1er page web
chromium-browser --app=http://2nd page Web
done

 
- Editer le fichier  .baschrc et ajouter les lignes suivantes à la fin :  
 
if [ -z "${SSH_TTY}" ]; then
  xinit ~/startkiosk.sh
  fi

 
-Ensuite nous allons nous attaquer au problème pour switcher d’une page à l’autre.
Créer le fichier killnswitch.py
 
##!/usr/bin/env python2.7
#-------------------------------------------------------------------------------
# Name:         kill  and switch
#
# Purpose:      Kill un process et lance le suivant
#
# Author:      Boo57
#
# Created:     19-12-20175
# Copyright:   (c) Boo57
#
#-------------------------------------------------------------------------------
 
import RPi.GPIO as GPIO
import subprocess
import time
 
GPIO.setmode(GPIO.BCM)
GPIO.setwarnings(False)
 
INT = 21    # Connecter le bouton sur broche 21 du GPIO et Ground pour killer le process
 
GPIO.setup(INT, GPIO.IN, pull_up_down=GPIO.PUD_UP)
 
def main():
 
    while True:
        GPIO.wait_for_edge(INT, GPIO.FALLING)
        time.sleep(0)
        if( GPIO.input(INT) == 0 ) :
            subprocess.call(['killall -9 chromium-browser'], shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
 
if __name__ == '__main__':
    main()

 
Faire un crontab -e et ajouter à la fin la ligne ci-dessous
 
@reboot sudo python /home/pi/killnswitch.py
 
 :bounce:  :bounce:  
 
 
 
 
 
 
 

Reply

Marsh Posté le 14-02-2018 à 15:42:02    

Bonjour,
J'avais testé ce code il me semble, sans succès car fonctionnement trop aléatoire...
Merci


---------------
Ventes: http://forum.hardware.fr/hfr/Achat [...] 9901_1.htm Feed: http://forum.hardware.fr/hfr/Achat [...] 9734_1.htm
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed