INHOUDSOPGAWE:

N Digitale tekenbediener op 'n Framboos Pi: 8 stappe
N Digitale tekenbediener op 'n Framboos Pi: 8 stappe

Video: N Digitale tekenbediener op 'n Framboos Pi: 8 stappe

Video: N Digitale tekenbediener op 'n Framboos Pi: 8 stappe
Video: CS50 2014 – 2-я неделя 2024, Junie
Anonim
'N Digitale tekenbediener op 'n Framboos Pi
'N Digitale tekenbediener op 'n Framboos Pi

'N Absolute beginnersgids vir Korsika op 'n framboos -PI

Digitale tekens is oral. U sien dit op lughawens, winkelsentrums, afdelingswinkels en selfs straathoeke. U het nie baie duur persoonlike hardeware nodig om u eie digitale tekensisteem te bou nie. Hierdie instruksies wys hoe u 'n digitale bordserver kan bou wat tientalle skerms kan bestuur. Elke skerm kan so eenvoudig wees soos 'n monitor en 'n Framboos -PI.

Danksy die Node Ninjas by Mozilla kan u selfs die bediener op 'n Raspberry Pi met Corsica bestuur.

Corsica is 'n uitbreidbare oplossing vir digitale tekens wat op die meeste POSIX -stelsels geïmplementeer kan word. Dit bestaan uit 'n bediener en vertoonkliënte. Kliëntmasjiene benodig geen spesiale sagteware nie en gebruik eenvoudig 'n moderne webblaaier, hoewel almal in die Corsica -span Firefox sterk aanbeveel. Die bediener verbruik baie min hulpbronne en werk gelukkig op 'n Raspberry Pi of 'n ander klein masjien. 'N Corsica -bediener wat op 'n Raspberry Pi 3+ gebruik word, kan maklik meer as 100 kliëntskerms ondersteun. Hierdie instruksies is spesifiek geskryf vir 'n Raspberry Pi wat die Raspian -bedryfstelsel bestuur ('n Debian -afgeleide). Hierdie instruksies neem ook aan dat u die Firefox -blaaier gebruik. Die meeste ander moderne blaaiers behoort ook te werk.

Stap 1: Die Raspian -opdragreël

Hierdie instruksies sal u wys hoe u Corsica via die opdragreël kan instel. As u Raspian met die grafiese gebruikerskoppelvlak (GUI) gebruik, kom u via die terminale toepassing na die opdragreël. As u Raspian-lite gebruik, kan u 'n sleutelbord en monitor koppel en die opdragreël direk gebruik, of u kan via die netwerk via SSH verbind. Raadpleeg die Raspian SSH -dokumentasie vir meer inligting oor hoe om SSH te aktiveer en te gebruik. U moet die DNS -naam of die IP -adres van u Raspberry Pi ken. Die standaardnaam op die meeste LAN's is raspberrypi.local. As dit nie werk nie, is daar instruksies in die Raspian -dokumentasie wat u sal help om die regte naam en IP -adres te ontdek.

Stap 2: sagteware -installasie

Korsika gebruik node en npm. Met Node kan u Javascript aan die bediener laat loop, en npm is die noduspakketbestuurder.

Om hierdie op 'n Raspberry Pi te installeer, kyk eers na die weergawe van die verwerker in u stelsel:

naamloos -m

As die resultaat met armv6 begin, sien hierdie blogpos. Vir Raspberry Pi 3 -stelsels en ander met armv7 en later verwerkers:

curl -sL https://deb.nodesource.com/setup_9.x | sudo -E bash -

sudo apt installeer nodejs

As u nie vertroud is met Node nie, kan u meer leer op nodesource.com.

Installeer vervolgens die Corsica Command Line Tools:

sudo npm installeer -g corsica -cli

Tik die beskikbare opdragte

korsika -hulp

Met hierdie skryfwerk is die beskikbare opdragte:

setup-- om 'n Corsica-bediener op te stel begin [opsies]-om die Corsica-bediener herbegin [opsies] te begin-om 'n lopende Corsica-bedienerstop weer te begin-om 'n lopende Corsica-bediener-inprop [naam] te stop-om 'n inprop te verwyder, inprop [naam]-om 'n geïnstalleerde inproplys-inproppe te verwyder-om die geïnstalleerde inprop-opdatering te lys-om beide Corsica en sy inproppe op te dateer

Nou kan u die gereedskap gebruik om die Corsica-sagteware op te stel:

opstelling van korsika

Corsica -opstelling sal vra waar u korsika wil installeer en die standaardlokasie wys:

Waar om Corsica te installeer: (/home/pi/corsica-server)

U kan eenvoudig op Return druk.

U sal 'n paar npm -waarskuwingsboodskappe sien. Dit is veilig om te ignoreer.

As die opstel sê "Klaar!", Het u Corsica geïnstalleer.

U kan Corsica in u terminale sessie begin met:

korsika begin

En stop dit met beheer-C.

Maar as u dit so begin, sal dit slegs duur solank u terminale sessie werk. As u u terminale sessie sluit, sal corsica stop.

As u Corsica op die agtergrond begin, werk dit selfs nadat u u terminale sessie ontkoppel het. U kan dit doen met

korsika begin -agtergrond

Om 'n Corsica -instansie op die agtergrond te laat voorkom, tik:

korsika stop

Stap 3: Konfigurasie

U opstelling benodig waarskynlik aanpassing. Daar is twee soorte aanpassings in Corsica: konfigurasie en instellings. Konfigurasie is meestal staties en word deur die kern gebruik. Instellings is dinamies en word meestal deur inproppe gebruik. Meer oor instellings later.

Konfigurasie kom uit die omgewing en is vir baie statiese dinge, soos die poort om na te luister of die inproppe te laai. Daar is vier bronne vir config:

1. lib/config.json - Dit is waar die standaardinstellings gestoor word, en 'n goeie plek om te sien wat van die programme kan opgestel word. U moet nie waardes hier verander nie.

2. config.js - Instellings wat in hierdie lêer gevind word, word gelaai asof dit uit die omgewing kom. Die sintaksis is een opset per reël, bv. `PORT = 8080`. As die waardes hier geldig JSON is, word dit as sodanig ontleed. Instellings hier sal die standaard in `lib/config.json` oorskryf. Die config.js -lêer spesifiseer aanvanklik die poortnommer waarop Corsica luister, en die inproppe wat deur die stelsel gebruik word.

3..env - As die verborge lêer met die naam.env in die Corsica -gids is, word die instellings daarvan gelaai asof dit uit die omgewing kom. Die sintaksis is dieselfde as in config.js. Hierdie lêer bestaan nie in die standaardkonfigurasie nie.

4. Omgewingsveranderlikes - U kan konfigurasie -inligting in stelselomgewingsveranderlikes plaas as u dit verkies. As u nie vertroud is met omgewingsveranderlikes nie, is dit veilig om hierdie opsie te ignoreer.

Stap 4: Koppel skermskerms aan

Sodra u Corsica begin het, word 'n webbediener op poort 8080 van u masjien uitgevoer, tensy u die poortnommer in die.env -lêer verander het. U moet die gasheernaam of die IP -adres van u Pi ken. Die standaardnaam vir 'n nuwe Raspberry Pi -installasie is raspberrypi. As u dit nie verander het nie, kan u net 'n blaaier op u skermkliëntmasjien oopmaak en na:

raspberrypi.lokaal: 8080

U moet die geel en swart Corsica -logo sien. 'N Borrel verskyn met die Corsica -naam van u kliënt. U kan (en moet) die naam van u kliënt verander na iets wat die ligging van hierdie spesifieke skerm aandui. Die maklikste manier om dit te doen is om Potch se corsica-repl te gebruik. (Potch is 'n hoofontwikkelaar van Corsica, en hy beloof om binnekort repl in die kern van Corsica te plaas).

Maak 'n blaaieroortjie oop en blaai na:

potch.github.io/corsica-repl?server=https://raspberrypi.local:8080/

(Dit veronderstel dat raspberrypi.local die naam van u Corsica Server is).

Vir die res van hierdie tutoriaal gebruik ons 'TestClient' as die naam van die kliëntskerm. Gaan na die aftreklys in die regter onderste hoek van die skerm en vind die kliëntnaam wat verskyn het. Tik dan in die opdragreël links onder op die skerm:

admin tipe = hernoem naam = TestClient

Laat die oortjie corsica-repl oop en skakel oor na die blaaier-oortjie met die Corsica-logo en verfris die bladsy. U sal die nuwe naam in die opspringborrel sien. As dit te vinnig verdwyn, hou u muis in die regter onderste hoek en die "Volskerm" -knoppie verskyn met die nuwe naam aan die linkerkant.

Stap 5: Voeg inhoud by

Voeg inhoud by
Voeg inhoud by

Na die vertoning van die Corsica -logo, sal die kliënt 'n paar tekenprentdiere op 'n blou agtergrond vertoon.

Die standaardmerker in die state.json -lêer bevat 'n lys met webbladadresse. U kan enige webwerf op hierdie manier aanbied, hoewel die uitleg van sommige bladsye dit minder geskik maak vir gebruik met Corsica.

'N Korsika -kliënt vertoon inhoud van een of meer etikette waarop hy inteken. Nuwe kliënte het reeds ingeteken op 'n etiket met die naam 'standaard'.

Tekenfilmdiere is oulik, maar kom ons voeg 'n paar nuttige inhoud by die skermrotasie van ons toetskliënt.

Keer terug na die oortjie corsica-repl en in die opdragreël links onder:

admin tipe = subscribe tag = weer

Gaan terug na die oortjie van die skermkliënt en verfris die bladsy.

'N Weervoorspelling vir San Jose, Kalifornië, sal bygevoeg word tot die lys van URL's wat vertoon word.

Ons voorbeeld -state.json -lêer bevat drie etikette met die naam "default", "weather" en "images". Die tag "images" bevat skakels na meer tekenprentdiere (.png) lêers. Kom ons voeg dit by deur terug te skakel na die blad corsica-repl en te tik:

admin tipe = subscribe tag = images

Keer weer na die oortjie van die skermkliënt en verfris die bladsy. U sal 'n paar nuwe diere by die rotasie sien. Maar let op dat die nuwe diere aan die linkerkant van die bladsy met 'n wit agtergrond verskyn. Dit is omdat die tekenprente met die blou agtergrond in state.json gelys word as URL's wat verwys na 'n behoorlike webblad wat in html geskryf is. Die nuwe tekenprente met die wit agtergronde word in state.json gelys as URL's wat net wys op die-p.webp

Ons kan die manier waarop hierdie grafika deur Corsica vertoon word, verbeter, maar om dit te kan doen, moet ons Corsica self "uitbrei".

Stap 6: Uitbreiding van Corsica

Uitbreiding van Korsika
Uitbreiding van Korsika

Meer as 'n dosyn npm Corsica -inproppe is beskikbaar op die npm -webwerf. Volg die skakel en tik 'corsica' in die soekkassie bo -aan die bladsy om 'n lys daarvan te sien. Ons sal een van die npm -inproppe gebruik om u nuwe diere te wys. Dit is ook handig om enige beeld wat u op die internet vind, te vertoon sonder om afleidende grafika rondom die beeld te vertoon.

Gaan na die Corsica-opdragreël, stop Corsica en installeer die plug-in vir corsica-image:

corsica-invoegtoepassing corsica-image

Herbegin dan Korsika:

korsika begin

Maak die oortjie van die korsika -vertoonkliënt in u blaaier oop en verfris die bladsy. Die nuwe diere moet op die skerm met 'n donkerblou agtergrond verskyn.

Stap 7: Aanpassing van inhoud

Kom ons kyk na die verskil tussen wat die URL's in die standaardmerker doen en dié in die afbeeldingsmerk. Kyk na state.json deur na die opdragreël van Corsica te gaan en te tik:

kat ~/corsica-server/state.json

In die 'standaard' -afdeling van die lêer vind u 'n reël wat soos volg lyk:

"https://ramilewski.github.io/corsica-support/show.html?image=kitty.png", Hierdie url is 'n skakel na 'n webblad met 'n tekenprent van 'n katjie. Die webbladsy vertoon 'n prentjie, maar dit bied ook 'n agtergrond wat 'n helling is wat aan die bokant van die bladsy as 'n blou kleur begin en aan die onderkant van die bladsy wit word. Die agtergrond word geskep deur die CSS en HTML van die webblad. Dit is nie deel van die grafika self nie.

Die afdeling "beelde" van die bladsy bevat 'n reël wat soos volg lyk:

"https://ramilewski.github.io/corsica-support/bunny.png bg =#2244BB", Dit is 'n url wat 'n skakel na die-p.webp

'#2244BB' is 'n heksadesimale notasie vir 'n donkerblou kleur. Raadpleeg die MDN -kleurkieser vir 'n hulpmiddel om u te help om enige kleur in heksnotasie te spesifiseer.

By die vertoon van hierdie reël het Corsica die plug-in vir corsica-beeld gebruik om die skerm weer te gee. Dit beteken dat as u 'n prentjie vind wat u op u Corsica -kliëntskerms wil vertoon, u 'n reël in state.json kan skep wat net die prentjie sal vertoon, maar nie enige ander afleidende inhoud van die omliggende bladsy nie. Om die url van 'n prent in Firefox te vind, klik met die rechtermuisknop op die prentjie en kies 'Kopieer prentplek' in die konteksmenu wat verskyn.

Die 'weer' -afdeling van state.json het slegs een url. Dit haal 'n weervoorspelling af op https://forecast.io. Maar tensy u in San Jose woon, is die voorspelling nie baie nuttig nie. Om 'n voorspelling vir u ligging te kry, moet u weet wat die lengte- en breedtegraad in desimale grade is. As u dit nie doen nie, is daar 'n webgebaseerde hulpmiddel waarmee u dit kan vind.

Op die oomblik lyk die url in die reël in state.json wat die weervoorspelling spesifiseer:

"https://forecast.io/embed/#lat=37.3352&lon=-121.8871&name=San%20Jose%20CA&color=#4466bb zoom = 300"

Om die voorspelling vir u ligging te kry, verander die lat en lon -inskrywings in die reël en verander die naam na u ligging. Gebruik %20 in plaas van spasies in die pleknaam. Die kleurparameter spesifiseer die kleur van die balke tussen die hoë en lae temperature. Die zoomparameter word gebruik om die grootte van die voorspelling aan te pas om op die skerm te pas.

As u u eie state.json -lêer skep, moet u onthou dat as u 'n 'standaard' -etiket het, enige inhoud wat in die etiket gespesifiseer is, verskyn in enige blaaier wat sonder verdere konfigurasie met die bediener verbind word.

Vertoon tydsberekening

Bo -aan state.json is daar 'n paar instellings wat bepaal hoe lank elke prent op die skerm vertoon word.

"settings:: timer": {

"resetTime": 30000, "jitter": 5000, Al die tye word gemeet in millisekondes (duisendste van 'n sekonde). Die resetTime is die maksimum tyd wat elke prent op die skerm is voordat die volgende skerm vertoon word. Jitter word vermenigvuldig met 'n ewekansige getal tussen -1 en 1 en die resultaat word by resetTime gevoeg. Dit bied 'n paar uiteenlopende vertoningstye. U kan jitter op 0 stel as u wil. Die getoonde instellings sal tot gevolg hê dat elke bladsy tussen 25 en 35 sekondes lank verskyn.

U kan ook verskillende tye vir elke vertoonkliënt instel:

"settings:: timer": {

"resetTime": 30000, "jitter": 5000, "resetOnConnect": true, "screens": {"TestClient": {"resetTime": 10000, "jitter": 1000}}}, Hier het ons die vertoontyd vir ons TestClient tussen 9 en 11 sekondes gestel.

Stap 8: Gevolgtrekking

Ons het getoon hoe u 'n Corsica -bediener op 'n Raspberry Pi kan installeer en konfigureer. Met wat u hier geleer het, kan u 'n veelsydige, baie goedkoop digitale bordstelsel bou. U kan Raspberry Pis nie net as die bediener in u stelsel gebruik nie, maar ook om kliëntskerms te bestuur.

Daar is baie meer inproppe op die npm -webwerf wat u kan gebruik om ander funksies by u Corsica -installasie te voeg, insluitend die vertoon van:

  • Beelde van Flickr
  • Tweets
  • Gesprekke in 'n IRC -kanaal
  • Videolêers
  • YouTube -video's
  • Skyfies in Google -aanbiedings
  • XKCD -tekenprente
  • Inhoud van 'n RSS -feed

Krediete

Korsika is die skepping van derdegraadse swartbelt-node-ninja's uit Mozilla onder leiding van potch, lonnen en mythmon.

Hierdie instruksies vir Corsica oor framboospis is deur Richard saamgewerk.

U kan gewoonlik vind dat almal op die #corsica -kanaal op irc.mozilla.org loer.

Aanbeveel: