Kiosk HOWTO Gene Wilburn, ITS Dept, Royal Ontario Museum v1.0, ottobre 1999 Questo documento fornisce una guida per configurare un chiosco con interfaccia web usando Linux, X11R6, FVWM2, Netscape Navigator 4.X ed una trackball personalizzata. Descrive a grandi linee i metodi che sono stati utilizzati per creare un chiosco pubblico per la _H_a_n_d_s _O_n _B_i_o_d_i_v_e_r_s_i_t_y _G_a_l_l_e_r_y presso il Royal Ontario Museum di Toronto. Traduzione a cura di Lorenzo Conti lore.conti @ tiscalinet.it, ultima revisione 8 dicembre 2001, revisione a cura di Riccardo Fabris frick @ linux.it. ______________________________________________________________________ Indice Generale 1. Introduzione 1.1 Copyright, licenza e termini di utilizzo 1.2 Ringraziamenti 2. Panoramica 3. Costruire l'ambiente operativo del chiosco 3.1 FVWM2 3.1.1 /etc/X11/fvwm2/system.fvwm2rc 3.2 Netscape Navigator 3.3 Sovrapporre delle maschere a Navigator 3.3.1 Creare le maschere grafiche 3.4 /root/kiosk.xinitrc 3.5 /root/xkiosk 4. Inizializzare il Chiosco 4.1 Modifiche a /etc/inittab 4.2 Script /etc/rc.d/rc.4/S99xkiosk 4.3 Avvio normale dalla console 5. Altre Considerazioni 5.1 Screensaver 5.1.1 /.xscreensaver 5.2 File sonori 5.3 Trackball 5.4 Progettare o modificare pagine HTML per i chioschi 6. Direzioni Future 6.1 Chioschi remoti 6.2 Touchscreen 6.3 Tastiere 6.4 Collaborazioni ______________________________________________________________________ 11.. IInnttrroodduuzziioonnee I chioschi informativi sono utili in librerie, gallerie e musei, istituzioni educative, uffici municipali, stand informativi per visitatori, conferenze, grandi magazzini, aeroporti; in breve ogni luogo dove sia desiderabile un semplice e facile accesso all'informazione. Normalmente i chioschi sono configurati con touchscreen o dispositivi di puntamento tipo trackball, per permettere alla gente di selezionare e scorrere le informazioni, mostrate in modo interessante e aggiornate. Ci sono molti modi per creare chioschi, da soluzioni costose basate su software proprietari a soluzioni open-source basate su HTML. Le tecnologie basate su browser sono particolarmente interessanti perché sono di per sé multimediali, gestiscono testo, grafica, suono e video, inoltre i contenuti sono molto portabili. Linux fornisce una piattaforma flessibile ed interessante per lo sviluppo di chioschi. Linux è economico da configurare ed offre un'ampia gamma di opzioni, dalle postazioni di semplice visualizzazione, senza disco fisso, a quelle totalmente autonome, su cui girano server web e database. A causa della versatilità del sistema operativo sottostante, un chiosco Linux ben progettato può essere posto in un luogo remoto e amministrato tramite telefono o rete. Questo HOWTO esplora un metodo per configurare Linux come chiosco informativo autonomo, usando Netscape Navigator 4.X e FVWM2 su un sistema Red Hat Linux 6.X. Si basa su un chiosco che ho configurato per essere usato nella _H_a_n_d_s_-_o_n _B_i_o_d_i_v_e_r_s_i_t_y _G_a_l_l_e_r_y presso il Royal Ontario Museum ( ) di Toronto, in Canada. Il chiosco descritto in questo HOWTO comprende una trackball piuttosto che un touchscreen, più costoso. Senza dubbio ci sono molti altri modi per creare un chiosco basato su Linux, ma questo ha funzionato in modo affidabile per noi e può fornire un utile punto di inizio per il progetto del vostro chiosco. 11..11.. CCooppyyrriigghhtt,, lliicceennzzaa ee tteerrmmiinnii ddii uuttiilliizzzzoo Copyright Gene Wilburn 1999. All rights reserved. _T_h_e _a_u_t_h_o_r _d_i_s_c_l_a_i_m_s _a_l_l _w_a_r_r_a_n_t_i_e_s _w_i_t_h _r_e_g_a_r_d _t_o _t_h_i_s _d_o_c_u_m_e_n_t_, _i_n_c_l_u_d_i_n_g _a_l_l _i_m_p_l_i_e_d _w_a_r_r_a_n_t_i_e_s _o_f _m_e_r_c_h_a_n_t_a_b_i_l_i_t_y _a_n_d _f_i_t_n_e_s_s _f_o_r _a _c_e_r_t_a_i_n _p_u_r_p_o_s_e_; _i_n _n_o _e_v_e_n_t _s_h_a_l_l _t_h_e _a_u_t_h_o_r _b_e _l_i_a_b_l_e _f_o_r _a_n_y _s_p_e_c_i_a_l_, _i_n_d_i_r_e_c_t _o_r _c_o_n_s_e_q_u_e_n_t_i_a_l _d_a_m_a_g_e_s _o_r _a_n_y _d_a_m_a_g_e_s _w_h_a_t_s_o_e_v_e_r _r_e_s_u_l_t_i_n_g _f_r_o_m _l_o_s_s _o_f _u_s_e_, _d_a_t_a _o_r _p_r_o_f_i_t_s_, _w_h_e_t_h_e_r _i_n _a_n _a_c_t_i_o_n _o_f _c_o_n_t_r_a_c_t_, _n_e_g_l_i_g_e_n_c_e _o_r _o_t_h_e_r _t_o_r_t_u_o_u_s _a_c_t_i_o_n_, _a_r_i_s_i_n_g _o_u_t _o_f _o_r _i_n _c_o_n_n_e_c_t_i_o_n _w_i_t_h _t_h_e _u_s_e _o_f _t_h_i_s _d_o_c_u_m_e_n_t_. This legalese means _u_s_e _a_t _y_o_u_r _o_w_n _r_i_s_k. _L_'_a_u_t_o_r_e _d_e_c_l_i_n_a _o_g_n_i _g_a_r_a_n_z_i_a _n_e_i _c_o_n_f_r_o_n_t_i _d_i _q_u_e_s_t_o _d_o_c_u_m_e_n_t_o_, _i_n_c_l_u_s_e _t_u_t_t_e _l_e _g_a_r_a_n_z_i_e _i_m_p_l_i_c_i_t_e _n_e_l_l_a _p_o_s_s_i_b_i_l_i_t_à _d_i _e_s_s_e_r_e _v_e_n_d_u_t_o _e _n_e_l_l_a _i_d_o_n_e_i_t_à _p_e_r _u_n _c_e_r_t_o _s_c_o_p_o_; _i_n _n_e_s_s_u_n _c_a_s_o _l_'_a_u_t_o_r_e _s_a_r_à _r_e_s_p_o_n_s_a_b_i_l_e _d_i _o_g_n_i _d_a_n_n_o _p_a_r_t_i_c_o_l_a_r_e_, _i_n_d_i_r_e_t_t_o _o _c_o_n_s_e_q_u_e_n_z_i_a_l_e _o _p_e_r _q_u_a_l_u_n_q_u_e _d_a_n_n_o _d_o_v_u_t_o _a _p_e_r_d_i_t_a _d_i _u_t_i_l_i_z_z_o_, _d_i _d_a_t_i _o _d_i _p_r_o_f_i_t_t_i_, _o _i_n _u_n_a _a_z_i_o_n_e _l_e_g_a_l_e _p_e_r _c_o_n_t_r_a_t_t_o_, _n_e_g_l_i_g_e_n_z_a _o _p_e_r _a_l_t_r_a _c_e_r_v_e_l_l_o_t_i_c_a _a_z_i_o_n_e_, _r_i_s_u_l_t_a_n_t_e _d_a _o _i_n _r_e_l_a_z_i_o_n_e _c_o_n _l_'_u_s_o _d_i _q_u_e_s_t_o _d_o_c_u_m_e_n_t_o_. Questo legalese significa _u_t_i_l_i_z_z_a_t_e_l_o _a _v_o_s_t_r_o _p_r_o_p_r_i_o _r_i_s_c_h_i_o. Postilla del traduttore: la traduzione non è ufficiale, in ogni caso si faccia riferimento alla versione originale dell'autore. 11..22.. RRiinnggrraazziiaammeennttii Il nostro chiosco Linux deriva in gran parte dal lavoro fatto dalla Città di Charlotte, in North Carolina, per il sito municipale, _C_h_a_r_l_o_t_t_e_'_s _W_e_b (vedere ). Il progetto del chiosco a interfaccia web di Charlotte, che impiega un touchscreen, è stato realizzato nel 1996 usando una delle prime versioni di Slackware Linux, Netscape Navigator 2.X e FVWM. I webmaster di Charlotte hanno creato un chiosco molto usabile e hanno condiviso la loro intera configurazione tramite il loro sito web. Questo HOWTO, fino ad un certo punto, rappresenta un aggiornamento del loro lavoro. Sono stati modificati i dettagli per funzionare con Red Hat 6.X, Netscape Navigator 4.X, FVWM2 e con una trackball fatta su misura. Ho lavorato con Debra Luneau (debral@rom.on.ca), il webmaster del Royal Ontario Museum, per creare maschere per Netscape. Gli esempi che distribuiamo nel nostro sito ftp sono opera sua e sono quelli che usiamo per il chiosco nella Biodiversity Gallery. La sezione Ontario Biodiversity del sito web del museo è stata progettata da Hopscotch Interactive (www.hopscotch.ca). L'applicazione originale è stata convertita da un sistema a database non strutturato su file singolo ad uno con database MySQL da Gord Howells (gordonh@rom.on.ca), il progettista e programmatore del museo. La versione in linea di questo minisito può essere vista in . 22.. PPaannoorraammiiccaa La configurazione di Linux per l'utilizzo come chiosco a interfaccia web è simile a quella di Linux come stazione di lavoro grafica, con alcune considerazioni aggiuntive. Se la macchina deve essere un'unità autonoma, deve avviarsi immediatamente nella modalità chiosco. Inoltre, l'ambiente del browser deve essere modificato per disabilitare le schermate di dialogo standard ed eliminare le parti del browser che consentirebbero un'interazione indesiderata, come la barra degli indirizzi di Netscape. Essenzialmente il sito web di un chiosco è autonomo. Gli utenti navigano attraverso il sito tramite clic con un dispositivo di puntamento. Il dispositivo di puntamento può essere un touchscreen, una trackball, o un mouse. I mouse sono difficili da tenere al sicuro in un'area pubblica. Un chiosco Linux può essere collegato in remoto, via rete o PPP, ad un sito base cui richiedere le pagine, oppure può essere un sito web autonomo che esegue Apache e ogni corrispondente modulo CGI. 33.. CCoossttrruuiirree ll''aammbbiieennttee ooppeerraattiivvoo ddeell cchhiioossccoo 33..11.. FFVVWWMM22 FVWM2 (FVWM, versione 2, vedi ) è un X Window manager flessibile, affidabile e leggero che fornisce eccellenti possibilità di configurazione per creare l'ambiente operativo del chiosco. Per utilizzarlo con il chiosco si devono cambiare alcune delle impostazioni di default. Si deve modificare il file system.fvwm2rc per rimuovere cose come desktop virtuali, barre dei titoli, controlli di uscita ecc., lasciando un ambiente FVWM relativamente minimalista. Siccome il chiosco è un'unità autonoma, la modifica delle impostazioni per l'intero sistema non è un problema. Inoltre si può approfittare delle proprietà configurabili degli oggetti di FVWM ed usare le bitmap di X Window (i file xpm) per mascherare le parti di Netscape Navigator che non si vuole far accedere agli utenti. Il file di FVWM2 che si deve modificare è /etc/X11/fvwm2/system.fvwm2rc. (Se si una una distribuzione diversa da Red Hat, questo file può essere situato in qualche altro posto.) Si dovrà cercare un po' nel file per trovare le sezioni mostrate qui sotto. 33..11..11.. //eettcc//XX1111//ffvvwwmm22//ssyysstteemm..ffvvwwmm22rrcc In /etc/X11/fvwm2/system.fvwm2rc cambiare DeskTopSize 2X2 in DeskTopSize 1X1 Questo elimina i desktop virtuali. In seguito, nella sezione "Default Styles", cambiare Style "*" BorderWidth 7, HandleWidth 7 in Style "*" BorderWidth 0, HandleWidth 0, notitle, nohandles Questo disabiliterà la maggior parte dei controlli di finestra. Aggiungere le due righe seguenti alla sezione "Default Styles": Style "xdaliclock" StaysOnTop Style "sxpm" StaysOnTop Una volta terminata, la sezione "Default Styles" del file dovrebbe essere simile a questa: # default Styles: #Style "*" BorderWidth 7, HandleWidth 7 Style "*" BorderWidth 0, HandleWidth 0, notitle, nohandles Style "*" Icon unknown1.xpm, Color lightgrey/dimgrey Style "*" MWMFunctions, MWMDecor, HintOverride Style "*" DecorateTransient, NoPPosition Style "*" IconBox 0 -10 -280 -1 Style "*" FocusFollowsMouse Style "*" RandomPlacement, SmartPlacement Style "xdaliclock" StaysOnTop Style "sxpm" StaysOnTop Si possono usare i programmi xdaliclock e sxpm per coprire parti di Netscape Navigator. L'attributo "StaysOnTop" è quanto serve. In seguito, trovare le seguenti quattro righe e commentarle come mostrato: #AddToFunc InitFunction "I" Module FvwmButtons #+ "I" exec xsetroot -mod 2 2 -fg \#554055 -bg \#705070 #AddToFunc RestartFunction "I" Module FvwmButtons #+ "I" exec xsetroot -mod 2 2 -fg \#554055 -bg \#705070 Commentando queste righe si eliminerà da FVWM2 il gradevole "task launcher" , il che è corretto in quanto si cerca di creare un ambiente più semplice possibile. 33..22.. NNeettssccaappee NNaavviiggaattoorr Netscape Navigator è una scelta migliore di Netscape Communicator per configurare un chiosco. Essendo più semplice, ci sono meno oggetti da nascondere. Su Microsoft Windows, Netscape Navigator ha una modalità chiosco che elimina la maggior parte dei controlli del Navigator ma, al momento della presente stesura, non c'è una modalità chiosco integrata nella versione Unix del Navigator. La versione Unix può, nondimeno, essere invocata con un argomento -geometry che permette di avviare Netscape sempre in modalità a pieno schermo. Questa è una parte della nostra strategia per un chiosco basato su Netscape. Si deve prendere una decisione sulla risoluzione dello schermo del chiosco. Usando un monitor da 19 o 20 pollici, è nostra opinione che la 640x480 sia troppo larga, la 1024x768 troppo stretta e la 800x600 praticamente giusta per il pubblico (si può decidere diversamente). Una volta stabilita la risoluzione, si può iniziare ad adattare il Navigator. Per il seguito di questo HOWTO si assume la risoluzione a 800x600. Sarà necessario adeguarsi di conseguenza se si seleziona una risoluzione diversa. _N_o_t_a_: Navigator sarà invocato da root durante il boot, quindi si facciano tutti gli adattamenti sotto l'account di root nella directory /root/.netscape. Si invochi Netscape e si clicchi sulla voce Edit|Preferences. In Appearance si imposti "Show Toolbar as Text Only". In Appearance|Fonts si usino i font, sia a spaziatura fissa che proporzionale, ad almeno 14 punti, altrimenti la visualizzazione sullo schermo sarà troppo piccola per permettere una lettura confortevole. In Preferences|Navigator s'inserisca l'URL dell'home page del vostro chiosco. Se si sta eseguendo una versione locale di Apache o di un altro server web, lo si imposti a http://localhost/ per l'accesso alla home page, o più in profondità nell'albero dei documenti html, se si vuole. Dopo aver salvato queste opzioni, si clicchi View sulla barra dei menù di Navigator, per deselezionare Personal Toolbar e Location Bar. Visto come l'interfaccia è diventata più simile a un chiosco? All'uscita da Navigator queste impostazioni saranno salvate. 33..33.. SSoovvrraappppoorrrree ddeellllee mmaasscchheerree aa NNaavviiggaattoorr Guardando attentamente lo schermo già adattato di Navigator, si noteranno quattro aree che devono essere coperte e protette dai clic del mouse o della trackball: 1. La barra degli strumenti in alto 2. Il tornado sul lato sinistro della barra di navigazione 3. Il resto della barra di navigazione alla destra della Home 4. La chiave di sicurezza nell'angolo in basso a sinistra di Navigator. Ecco uno schema approssimativo delle aree da mascherare: +---------------------------------------+ | # 1 Barra degli strumenti | +--+------------+-----------------------+ |#2| | #3 Barra navigazione | +--+ +-----------------------+ | | | | | | | | | | | | | | | | | | | | +---------+ | |#4 Chiave| | +---------------------------------------+ Per mascherare le aree in alto (#1-3), saranno necessarie tre immagini. Per mascherare la chiave di sicurezza (#4) si utilizzerà xdaliclock. 33..33..11.. CCrreeaarree llee mmaasscchheerree ggrraaffiicchhee Il modo più facile per creare le maschere grafiche per coprire le aree #1-3 è di catturare uno screenshot di Navigator in modalità estesa 800x600 e poi ritagliare le aree che corrispondono a #1-3. Ho usato GIMP per questo. Si può poi ridisegnare la grafica di base, cambiando i colori se si vuole o inserendovi il proprio logo. Salvarli come: 1. topbar.xpm 2. navleft.xpm 3. navright.xpm I formato xpm è quello nativo per le bitmap di X Window. Si utilizzerà il programma X Window _s_x_p_m per posizionarle sullo schermo. Creare le maschere con esattamente il giusto numero di pixel ed esattamente il giusto posizionamento sul monitor richiede un po' di prove. Per convenienza, ho messo a disposizione i file xpm che abbiamo creato insieme ai nostri file di configurazione nel seguente sito web: . Sarà più semplice scaricare le nostre maschere ed usarle come punto di inizio per la propria soluzione. 33..44.. //rroooott//kkiioosskk..xxiinniittrrcc Proprio come se si creasse normalmente un file .xinitrc per uso personale, si deve creare un file di inizializzazione di sessione X Window per l'applicazione chiosco. Lo script seguente implementa un certo numero di caratteristiche: · Inizializzazione dello screensaver (opzionale). · Posizionamento della bitmap sulla barra dei menù di Navigator (topnav.xpm). · Posizionamento della bitmap sul tornado della barra di navigazione (navleft.xpm). · Posizionamento della bitmap sul resto della barra di navigazione (navright.xpm). · Posizionamento di xdaliclock sulla chiave di sicurezza di Navigator (adattata per una risoluzione di 800x600). · Avvio di Netscape, controllo ciclico che Navigator sia in esecuzione, rilanciarlo in caso non lo sia. Questo è il file principale che gestisce il chiosco. ______________________________________________________________________ #!/bin/sh # kiosk.xinitrc -- Script di inizializzazione per la sessione X Window modalità chiosco # Start screensaver /usr/X11R6/bin/xscreensaver-command -exit /usr/X11R6/bin/xscreensaver & # Maschere sovrapposte a Navigator (maschera num.1) sxpm /root/navtop.xpm & # Piccola sovrapposizione grafica sul tornado della Toolbar - lato sinistro (maschera num.2) sxpm -g +0+23 /root/navleft.xpm & # Sovrapposizione grafica più ampia per coprire tutto ciò che si trova # alla destra della Home sulla Toolbar (maschera num.3) sxpm -g +275+23 /root/navright.xpm & # Pone xdaliclock sopra la chiave di sicurezza Netscape, abbassa lhc (maschera num.4) /usr/X11R6/bin/xdaliclock -g 38x20+0+578 -font fixed -noseconds \ -bg gray -fg black & sleep 2 # Lancia fvwm2 fvwm2 & # rilancia netscape in caso si chiuda while true ; do if [ -f /.netscape/lock] ; then rm /.netscape/lock fi /usr/bin/netscape -geometry 800x600 done # non si dovrebbe mai arrivare sin qui ______________________________________________________________________ 33..55.. //rroooott//xxkkiioosskk Adesso si può iniziare a testare la configurazione del chiosco. Dal momento che sarà necessario farlo ripetutamente, a mano ed anche con uno script di inizializzazione, si crei il seguente script di shell, chiamato /root/xkiosk: ______________________________________________________________________ /usr/X11R6/bin/xinit /root/kiosk.xinitrc -- /usr/X11R6/bin/X \ -xf86config /root/kiosk.XF86Config bc ______________________________________________________________________ Siccome si vuole testare spesso e riusarlo più tardi quando l'avvio sarà automatizzato, si crei /root/xkiosk. Ci si assicuri di renderlo eseguibile con chmod ug+x. 44.. IInniizziiaalliizzzzaarree iill CChhiioossccoo In condizioni normali (i.e. chiosco), Linux dovrebbe avviarsi subito nella modalità chiosco. Nel caso di interruzione di corrente e di riavvio del sistema accidentale o programmato, si deve configurare il sistema per farlo. Per il nostro chiosco abbiamo deciso di utilizzare per la modalità chiosco il livello di init 4, che di solito non è usato. Abbiamo apportato i seguenti cambiamenti a /etc/inittab: 44..11.. MMooddiiffiicchhee aa //eettcc//iinniittttaabb ______________________________________________________________________ # Default runlevel. The runlevels used by RHS are: # 0 - halt (Do NOT set initdefault to this) # 1 - Single user mode # 2 - Multiuser, without NFS (The same as 3, if you do not have networking) # 3 - Full multiuser mode # 4 - Kiosk mode # 5 - X11 # 6 - reboot (Do NOT set initdefault to this) # id:4:initdefault: ______________________________________________________________________ 44..22.. SSccrriipptt //eettcc//rrcc..dd//rrcc..44//SS9999xxkkiioosskk Per inizializzare il chiosco dopo tutti gli altri servizi, compresi, nel nostro caso, Apache e MySQL, si crei il file /etc/rc.d/rc.4/S99xkiosk: ______________________________________________________________________ #!/bin/bash # # S99xkiosk Inizializzazione del chiosco per runlevel 4 # # Autore: Gene Wilburn # # Mostra un messaggio in console echo "Avvio del chiosco X Window... " if [ -f /.netscape/lock] ; then rm /.netscape/lock fi # Log dell'attività di X echo %%%%%%%%%%%%%Reboot%%%%%%%%%% >> /var/log/xlog /root/xkiosk # Qui si dovrebbe arrivare solo premendo Ctrl-Backspace /sbin/shutdown -r now # Finito. ______________________________________________________________________ Una volta creato questo file ed adattato inittab per partire al runlevel 4, Linux si avvierà direttamente nella modalità chiosco. Nel nostro chiosco abbiamo disabilitato il telnet e l'ftp e installato ssh, così da mantenere ed amministrare da remoto il chiosco con ssh e scp. 44..33.. AAvvvviioo nnoorrmmaallee ddaallllaa ccoonnssoollee Ci sono momenti in cui, specialmente durante i test, si vuole lavorare dalla console nel normale runlevel 3. Per fare questo, si prema CCttrrll-- BBaacckkssppaaccee per riavviare il sistema. Quando appare LILO: si digiti: LILO: linux init 3 e si faccia login come di consueto. 55.. AAllttrree CCoonnssiiddeerraazziioonnii 55..11.. SSccrreeeennssaavveerr A seconda di dov'è installato il chiosco, si potrebbe volere che non appaiano tutte le immagini dello screensaver di default. Per la nostra _H_a_n_d_s_-_O_n _B_i_o_d_i_v_e_r_s_i_t_y _G_a_l_l_e_r_y volevamo mostrare solo il frattale animato che suggeriva argomenti di scienza della vita. Dopo aver testato vari screensaver, abbiamo deciso di selezionare in modo casuale due possibilità: _c_o_r_a_l e _f_o_r_e_s_t. Per costringere xscreensaver a mostrare solo questi due, abbiamo creato il file .xscreensaver nella directory root ("/") con le seguenti opzioni: 55..11..11.. //..xxssccrreeeennssaavveerr ______________________________________________________________________ programs: \ coral -root \n\ forest -root \n ______________________________________________________________________ 55..22.. FFiillee ssoonnoorrii La nostra macchina per il chiosco contiene una scheda Sound Blaster AWE64 con degli altoparlanti connessi. Abbiamo scelto questa scheda perché funziona bene con i driver audio di Linux. Il database MySQL che fa funzionare il nostro chiosco della Biodiversity Gallery punta ad una collezione di file sonori che un visitatore può ascoltare, incluso un quiz sul verso degli uccelli. Il lato negativo nell'usare Netscape su Linux per un chiosco è che per alcuni aspetti il multimedia è primitivo, comparato con Windows e Macintosh. Per abilitare gli effetti sonori, abbiamo implementato un plugin per Unix Netscape chiamato Xswallow scritto da Caolan McNamara ( ). Tutti i plugin che abbiamo testato creano una pagina web separata mentre il suono è riprodotto (a meno che il file sonoro non sia integrato). Tra i programmi che abbiamo testato, Xswallow è stato il migliore ed ha dato la pagina di visualizzazione più pulita. Sebbene la pagina supplementare costituisca un inconveniente, abbiamo deciso che avere la stabilità di Linux era più importante del clic aggiuntivo richiesto per ritornare alla schermata precedente. Un problema ulteriore è che quando un suono è selezionato, la pagina di Xswallow mostra "Click to Abort Swallow of type audio/basic". Cliccando ritorna solamente una pagina vuota. Ho fatto un piccolo cambiamento al codice sorgente dell'autore in UnixShell.c, modificando char *text2 = "Click to Abort Swallow"; in char *text2 = "Clicca il pulsante BACK per tornare alla schermata principale"; La frase "of type audio/basic" sembra arrivare direttamente da Netscape piuttosto che da Xswallow. Dopo la ricompilazione, ho aggiunto il plugin a Netscape. Un'ultima nota riguardo i file sonori: l'insieme originale di file che abbiamo ricevuto era un misto di file .au e .wav. La nostra esperienza è stata che i file .au in Linux erano più affidabili ed abbiamo convertito tutti i file sonori nel formato .au. 55..33.. TTrraacckkbbaallll Non avendo i fondi per un monitor touchscreen, abbiamo optato per una trackball (e nessuna tastiera) per la navigazione del nostro chiosco. Il nostro collega, Andy Rauer dell'Ontario Science Centre in Toronto, ci ha suggerito di usare componenti per trackball di uso industriale della Happ Conrols Inc. di Elk Grove Village (Illinois) (cercare nella loro sezione Interactives). Una delle cose che dovevamo fare era disabilitare ogni azione equivalente al clic del bottone destro in Netscape Navigator, in quanto gli eventi del bottone destro invocano i dialoghi utente. Costruendo la nostra trackball, siamo stati in grado di assemblarla nel modo che volevamo. Abbiamo collegato due controlli di tipo pulsante, entrambi equivalenti al bottone sinistro del mouse. I bottoni sono stati sistemati su entrambi i lati della trackball, permettendo un facile utilizzo da parte dei visitatori sia destri che mancini. I nostri progettisti della galleria hanno poi preso i pezzi della trackball e li hanno assemblati nella recinzione del chiosco nella galleria. Per il nostro chiosco abbiamo acquistato i seguenti componenti per costruire una trackball robusta progettata per resistere all'uso (e all'abuso) dei visitatori: · Elementi di un Atari Trackball da 2 pollici e 1/4 (l'abbiamo scelta rossa) · Trackball Interface Kit per IBM (compatibile con mouse seriale Microsoft) · Pulsanti illuminati (rossi) Da un rivenditore di elettronica locale, abbiamo acquistato un maneggevole involucro di plastica della Hammond Manufacturing (Cat no. 1591ABK) per ospitare il circuito elettronico per la trackball. In ordine alla possibilità di aggiungere (e di rottura di qualche pezzo), abbiamo ordinato come pezzi di ricambio e test quattro gruppi per ogni pezzo sopracitato. 55..44.. PPrrooggeettttaarree oo mmooddiiffiiccaarree ppaaggiinnee HHTTMMLL ppeerr ii cchhiioosscchhii Nel migliore di tutti i mondi possibili, si avrà la possibilità di progettare le pagine del vostro chiosco da zero. Tenendo presente che usare un chiosco è una esperienza diversa dal sedersi alla scrivania navigando nel web da una workstation individuale, le seguenti linee guida sono utili principi di progettazione: · Mantenere i brani di testo molto corti ed usare font di dimensioni grandi. · Evitare schermate che richiedono lo scorrimento. · Usare su ogni pagina immagini colorate, grandi, attraenti alla vista. · Creare una navigazione integrata se possibile, ad esempio: "ritorna alla pagina precedente", "vai alla pagina successiva", "vai al menù del chiosco" ecc., dovrebbero essere modellate direttamente nelle pagine stesse. · Evitare qualunque cosa che richieda la tastiera. Progettare per i clic. · Se si usano file sonori, mantenere la durata breve. Integrarli nella pagina se possibile. · Concepire tutto in modo chiaro e vivace e progettare per periodi di attenzione brevi e per un traffico di passaggio. Si risparmino le elucubrazioni sfrenate per qualcos'altro. Sfortunatamente qualche volta si erediteranno pagine che erano state create per la navigazione web piuttosto che per la navigazione in un chiosco. In questi casi potrebbe essere troppo dispendioso in termini di tempo o troppo difficile rimodellarle come pagine per un chiosco. Quando si realizzano pagine web standard per una visualizzazione in un chiosco: · Si rimuovano tutti i tag di riferimento verso l'esterno, inclusi i MAILTO. · Si rimuovano dalle pagine tutti i frasari, logo ecc. non necessari. · Si controlli la grandezza dei font e la si aumenti, se necessario. · Si rimuova ogni GIF animata che non si riferisca direttamente alle pagine che sono mostrate. · (In realtà si fa meglio a rimuovere ogni GIF animata). · Si faccia quanto possibile per semplificare il disegno della pagina. · Si verifichi la possibilità di usare codice lato server per aggiungere in automatico alle pagine elementi di navigazione essenziale o una grafica coerente per ottenere collegamenti efficaci tra le pagine. 66.. DDiirreezziioonnii FFuuttuurree I nostri precedenti tentativi nel creare chioschi basati su browser con PC basati su Windows non sono stati soddisfacenti. Le unità erano instabili, si bloccavano frequentemente. L'approccio Linux ci ha permesso di ottenere un chiosco affidabile, adatto ad un luogo pubblico e robusto, che ha resistito perfettamente all'utilizzo dei visitatori. Il nostro successo con questo progetto ci ha portato a considerare altre possibilità di chiosco. 66..11.. CChhiioosscchhii rreemmoottii Uno dei nostri obiettivi futuri è l'implementazione di chioschi remoti nell'area metropolitana di Toronto, dove le persone possano consultare qualche informazione sul nostro sito e, si spera, essere attratte abbastanza da visitare il museo di persona. Queste possono essere distribuite in luoghi come convegni, manifestazioni commerciali, grandi magazzini o esposizioni particolari. Stiamo inoltre pensando in termini di distribuzione dei chioschi in luoghi più distanti, forse nelle librerie pubbliche. Per questo progetto vorremmo verosimilmente implementare delle Linux box basate su modem che possano "chiamare casa" per aggiornare i file in base ad una procedura di routine e possano essere contattate per manutenzioni ed aggiornamenti. 66..22.. TToouucchhssccrreeeenn Quando la tecnologia diventerà più economica, vorremmo sperimentare per i chioschi i monitor touchscreen a schermo piatto. La combinazione di touchscreen a schermo piatto e unità PC molto piccole ci permetterebbe di distribuire chioschi che occupano una superficie assai limitata. 66..33.. TTaassttiieerree Infine potremmo avere bisogno di distribuire chioschi che utilizzano tastiere. Questo presenterà un nuovo insieme di esigenze in termini di bloccare pressioni indesiderate di tasti. Chiunque volesse contribuire con informazioni a riguardo, o su ogni altro aspetto del Kiosk-HOWTO, per cortesia spedisca un'email a genew at rom.on.ca o al mio indirizzo email alternativo njo at interlog.com. 66..44.. CCoollllaabboorraazziioonnii Sarei molto interessato a collaborare con altri costruttori di chioschi per estendere il Kiosk-HOWTO ad altre situazioni. I chioschi sono un po' come il Perl: "C'è più di un modo per farlo".