Bulegoko hainbat pantailatan monitorizazioa duen panel bat bistaratu behar nuen. Hainbat Raspberry Pi B+ eredu zahar eta baliabide ia mugagabeko hipervisor bat dauzkagu.
Antza denez, Raspberry Pi B+ ereduak ez du ausazko nahikoa nabigatzailea etengabe martxan mantentzeko eta bertan grafiko kopuru handia errendatzeko, horregatik gertatzen da orria partzialki akatsa dela eta askotan huts egiten duela.
Nahiko irtenbide sinple eta dotore bat aurkitu dut, zurekin partekatu nahi dudana.
Dakizuenez, Raspberries guztiek bideo-prozesadore nahiko indartsua dute, hardware bideoa deskodetzeko bikaina dena. Beraz, beste nonbait aginte-panel batekin arakatzaile bat abiarazteko eta errendatutako irudi batekin prest egindako korronte bat mugurdira transferitzea sortu zen.
Gainera, horrek kudeaketa sinplifikatu beharko luke, kasu honetan konfigurazio guztia makina birtual batean egingo bailitzateke, eta hori errazagoa izango litzateke eguneratzea eta babeskopia egitea.
Esan baino lehenago egin.
Zerbitzariaren zatia
Prest erabiliko dugu
Makina birtual berri bat zabaltzen dugu eta, lehenik eta behin, bertan instalatzen dugu
apt-get update
apt-get install -y xserver-xorg nodm fluxbox
sed -i 's/^NODM_USER=.*/NODM_USER=ubuntu/' /etc/default/nodm
Xorg-erako konfigurazioa ere erabiliko dugu, mesedez
cat > /etc/X11/xorg.conf <<EOT
Section "Device"
Identifier "device"
Driver "vesa"
EndSection
Section "Screen"
Identifier "screen"
Device "device"
Monitor "monitor"
DefaultDepth 16
SubSection "Display"
Modes "1920x1080" "1280x1024" "1024x768" "800x600"
EndSubSection
EndSection
Section "Monitor"
Identifier "monitor"
HorizSync 20.0 - 50.0
VertRefresh 40.0 - 80.0
Option "DPMS"
EndSection
Section "ServerLayout"
Identifier "layout"
Screen "screen"
EndSection
EOT
systemctl restart nodm
Orain Firefox instalatuko dugu, sistema-zerbitzu gisa exekutatu egingo dugu, beraz, idatz diezaiogun unitate-fitxategi bat bakarrean:
apt-get install -y firefox xdotool
cat > /etc/systemd/system/firefox.service <<EOT
[Unit]
Description=Firefox
After=network.target
[Service]
Restart=always
User=ubuntu
Environment="DISPLAY=:0"
Environment="XAUTHORITY=/home/ubuntu/.Xauthority"
ExecStart=/usr/bin/firefox -url 'http://example.org/mydashboard'
ExecStartPost=/usr/bin/xdotool search --sync --onlyvisible --class "Firefox" windowactivate key F11
[Install]
WantedBy=graphical.target
EOT
systemctl enable firefox
systemctl start firefox
Xdotool behar dugu Firefox pantaila osoko moduan berehala abiarazteko.
Parametroa erabiliz -url
Edozein orrialde zehaztu dezakezu arakatzailea abiarazten denean automatikoki ireki dadin.
Fase honetan, gure kioskoa prest dago, baina orain sarearen bidez irudia esportatu behar dugu beste monitore eta gailu batzuetara. Horretarako aukerak aprobetxatuko ditugu
Horretarako bi gauza behar ditugu:
apt-get install -y make gcc ffmpeg
cd /tmp/
wget https://github.com/ccrisan/streameye/archive/master.tar.gz
tar xvf master.tar.gz
cd streameye-master/
make
make install
cat > /etc/systemd/system/streameye.service <<EOT
[Unit]
Description=streamEye
After=network.target
[Service]
Restart=always
User=ubuntu
Environment="DISPLAY=:0"
Environment="XAUTHORITY=/home/ubuntu/.Xauthority"
ExecStart=/bin/sh -c 'ffmpeg -f x11grab -s 1920x1080 -i :0 -r 1 -f mjpeg -q:v 5 - 2>/dev/null | streameye'
[Install]
WantedBy=graphical.target
EOT
systemctl enable streameye
systemctl start streameye
Gure irudiak eguneratze azkarra behar ez duenez, freskatze-tasa zehaztu dut: 1 fotograma segundoko (parametroa -r 1
) eta konpresioaren kalitatea: 5 (parametroa -q:v 5
)
Orain saia gaitezen bertara joaten
Bezeroaren aldean
Hemen dena are sinpleagoa da, lehen esan dudan bezala, Raspberry Pi Model B+ erabiliko dugu.
Lehenik eta behin, instala gaitezen
Gure bideo txiparentzat ere memoria gehiago esleitu beharko dugu, horretarako editatuko dugu /boot/config.txt
gpu_mem=128
Abiarazi dezagun gure sistema berria eta, pacman giltza-giltza abiarazteaz gogoratuz, instalatu
pacman -Sy omxplayer
Aipagarria da OMXPlayer-ek X-rik gabe funtziona dezakeela, beraz, horretarako unitate-fitxategi bat idatzi eta exekutatu behar dugu:
cat > /etc/systemd/system/omxplayer.service <<EOT
[Unit]
Description=OMXPlayer
Wants=network-online.target
After=network-online.target
[Service]
Type=simple
Restart=always
ExecStart=/usr/bin/omxplayer -r --live -b http://your-vm:8080/ --aspect-mode full
[Install]
WantedBy=multi-user.target
EOT
systemctl enable omxplayer
systemctl start omxplayer
Parametro gisa -b http://your-vm:8080/
URLa pasatzen ari gara gure zerbitzaritik.
Hori dena, gure zerbitzariaren argazki bat berehala agertu beharko litzateke konektatutako pantailan. Arazoren bat sortzen bada, korrontea automatikoki berrabiaraziko da eta bezeroak berriro konektatuko dira.
Hobari gisa, lortutako irudia pantaila-babesle gisa instala dezakezu bulegoko ordenagailu guztietan. Horretarako beharko duzu
mode: one
selected: 0
programs:
"Monitoring Screen" mpv --really-quiet --no-audio --fs
--loop=inf --no-stop-screensaver
--wid=$XSCREENSAVER_WINDOW
http://your-vm:8080/ n
maze -root n
electricsheep --root 1 n
Orain zure lankideak oso pozik egongo dira :)
Iturria: www.habr.com