Onerani chophimba kuzipangizo zingapo pa intaneti

Onerani chophimba kuzipangizo zingapo pa intaneti

Ndinafunika kuwonetsa dashboard yokhala ndi zowunikira pazithunzi zingapo muofesi. Pali Raspberry Pi Model B + ingapo yakale komanso hypervisor yokhala ndi zinthu zopanda malire.

Zikuoneka kuti Raspberry Pi Model B + ilibe mwachisawawa chokwanira kuti msakatuli azithamanga nthawi zonse ndikupereka zithunzi zambiri mmenemo, chifukwa chake zimachitika kuti tsambalo ndi losavuta ndipo nthawi zambiri limawonongeka.

Panali njira yosavuta komanso yokongola, yomwe ndikufuna kugawana nanu.

Monga mukudziwa, ma Raspberries onse ali ndi purosesa yamphamvu kwambiri yamakanema, yomwe ndi yabwino kwambiri pakujambula makanema. Kotero lingaliro linabwera kuti mutsegule msakatuli wokhala ndi dashboard kwinakwake, ndi kusamutsa mtsinje wokonzeka ndi chithunzi chojambulidwa ku rasipiberi.

Kuphatikiza apo, izi ziyenera kukhala zowongolera kasamalidwe, popeza pakadali pano masinthidwe onse azichitika pamakina amodzi, omwe ndi osavuta kusintha ndikusunga.

Zosavuta kuzinena koma zovuta kuchita.

Gawo la seva

Timagwiritsa ntchito okonzeka Cloud Image kwa Ubuntu. Osafuna kuyika, ili ndi zonse zomwe mungafune kuti mutumize makina owonera mwachangu, ndi Thandizo la CloudIt imathandizira kukhazikitsa maukonde nthawi yomweyo, kuwonjezera makiyi a ssh ndikuyiyika mwachangu.

Timatumiza makina atsopano ndipo choyamba timayiyikapo Xorg, nodm ΠΈ bokosi la flux:

apt-get update
apt-get install -y xserver-xorg nodm fluxbox
sed -i 's/^NODM_USER=.*/NODM_USER=ubuntu/' /etc/default/nodm

Tidzagwiritsanso ntchito config kwa Xorg, mokoma mtima kupatsidwa ife Diego Ongaro, ndikungowonjezera chisankho chatsopano 1920 Γ— 1080, popeza oyang'anira athu onse adzagwiritsa ntchito:

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

Tsopano tikhazikitsa Firefox, tidzayiyendetsa ngati ntchito yamakina, chifukwa chake tidzalemba fayilo ya unit:

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

Tikufuna Xdotool kuti tithe kuyendetsa firefox nthawi yomweyo pamawonekedwe athunthu.
Kugwiritsa ntchito parameter -url mutha kufotokozera tsamba lililonse kuti lizitsegukira pomwe msakatuli ayamba.

Pakadali pano, kiosk yathu yakonzeka, koma tsopano tikufunika kutumiza chithunzicho pamaneti kwa oyang'anira ndi zida zina. Kuti tichite izi, tidzagwiritsa ntchito zomwe zingatheke Zoyenda JPEG, mtundu womwe umagwiritsidwa ntchito kwambiri kutsitsa makanema kuchokera kumakamera ambiri.

Kuti tichite izi, tikufuna zinthu ziwiri: FFmpeg ndi module x11 pa, pojambula zithunzi kuchokera ku x ndi streamEye, yomwe idzagawanitse makasitomala athu:

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

Popeza chithunzi chathu sichifuna kusinthidwa mwachangu, ndidatchulanso kuchuluka kwa zotsitsimutsa: 1 chimango pamphindikati (parameter -r 1) ndi khalidwe la psinjika: 5 (parameter -q:v 5)

Tsopano tiyeni tiyese kupita http://your-vm:8080/, poyankha mudzawona chithunzi chosinthidwa cha desktop. Zabwino! - zomwe zinkafunika.

Mbali ya kasitomala

Zimakhala zosavuta pano, monga ndidanenera, tidzagwiritsa ntchito Raspberry Pi Model B +.

Choyamba, tiyeni tiyike ArchLinux ARM, chifukwa cha ichi tikutsatira malangizo patsamba lovomerezeka.

Tidzafunikanso kugawa zokumbukira zambiri za chip yathu ya kanema, chifukwa cha izi tidzasintha /boot/config.txt

gpu_mem=128

Tiyeni tiyambitse dongosolo lathu latsopano ndipo musaiwale kuyambitsa pacman keyring, kukhazikitsa OMXPlayer:

pacman -Sy omxplayer

Chodabwitsa, OMXPlayer ikhoza kugwira ntchito popanda x, kotero zomwe timafunikira ndikulemba fayilo ya unit ndikuyendetsa:

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

Monga parameter -b http://your-vm:8080/ tikudutsa ulalo kuchokera pa seva yathu.

Ndizo zonse, chithunzi chochokera ku seva yathu chikuyenera kuwonekera nthawi yomweyo pazenera lolumikizidwa. Pakakhala zovuta zilizonse, mtsinjewo uyambiranso ndipo makasitomala adzalumikizananso nawo.

Monga bonasi, mutha kukhazikitsa chithunzi chotsatira ngati chowonera pamakompyuta onse muofesi. Kwa ichi mudzafunika MPV ΠΈ XScreenSaver:

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

Tsopano anzanu adzakhala okondwa kwambiri πŸ™‚

Source: www.habr.com

Kuwonjezera ndemanga