Guida di installazione completa per Windows
Installazione completata con successo!
Il server Studio Ippocrate Γ¨ giΓ operativo su questo PC. Le sezioni 2β7 della guida sono giΓ state completate. Conserva questo documento come riferimento per i comandi di manutenzione e gli indirizzi da distribuire ai dispositivi dello studio.
Il server deve girare sul PC fisso della Segreteria (o su qualsiasi PC sempre acceso). Tutti gli altri dispositivi β tablet check-in, PC dei medici, monitor sala β accedono via browser sulla stessa rete WiFi, senza installare nulla.
Verifica che il computer della Segreteria soddisfi questi requisiti:
Vai su https://nodejs.org e clicca sul pulsante verde "LTS β Recommended For Most Users" (versione 20.x o superiore). Scarica il file .msi.
Apri il file scaricato e segui la procedura guidata. Lascia tutte le opzioni di default selezionate. Quando richiesto, spunta "Automatically install the necessary tools" se disponibile.
Apri il Prompt dei Comandi (premi Windows + R, digita cmd, premi Invio) e digita:
node --version # Deve rispondere qualcosa come: v20.11.0 npm --version # Deve rispondere qualcosa come: 10.2.4
Se vedi i numeri di versione, Node.js Γ¨ installato correttamente. β
Se il prompt dice "node non riconosciuto come comando", chiudi e riapri il Prompt dei Comandi dopo l'installazione. Se il problema persiste, riavvia il PC.
Crea una cartella dedicata per il progetto. Ti consigliamo:
C:\StudioIppocrate\
All'interno, la struttura dei file deve essere esattamente questa:
La cartella data\ verrΓ creata automaticamente dal server al primo avvio. Contiene il file di salvataggio automatico dello stato giornaliero.
Assicurati che il file package.json contenga esattamente questo:
{
"name": "studio-ippocrate",
"version": "2.0.0",
"main": "server.js",
"scripts": {
"start": "node server.js"
},
"dependencies": {
"express": "^4.18.2",
"socket.io": "^4.6.1"
}
}
Apri Esplora File, naviga in C:\StudioIppocrate, poi clicca sulla barra dell'indirizzo in alto, digita cmd e premi Invio. Si aprirΓ il prompt giΓ nella cartella giusta.
npm install # Attendi il completamento (30β60 secondi) # VerrΓ creata automaticamente la cartella node_modules\
PM2 Γ¨ il gestore di processi che mantiene il server attivo anche se si chiude il prompt o si riavvia il PC:
npm install -g pm2 npm install -g pm2-windows-startup # Il secondo pacchetto serve per l'avvio automatico con Windows
Avvia il server con PM2 nella cartella del progetto:
# Assicurati di essere in C:\StudioIppocrate\ pm2 start server.js --name "Ippocrate"
Se tutto Γ¨ corretto, il prompt mostrerΓ :
Apri Chrome o Edge sul PC della segreteria e vai su http://localhost:3000/admin. Se vedi il pannello segreteria, il server funziona. β
Premi Ctrl + C per fermare il server di test. Adesso configuriamo PM2.
Con PM2 il server rimane attivo in background, si riavvia automaticamente in caso di errore, e continua a funzionare anche dopo la chiusura del prompt.
# Sempre da C:\StudioIppocrate\ pm2 start server.js --name "Ippocrate"
pm2 list
pm2 save # Output atteso: [PM2] Saving current process list... [PM2] Successfully saved in C:\Users\user\.pm2\dump.pm2
# Ver stato pm2 list # Riavvia il server (es. dopo aggiornamento file) pm2 restart Ippocrate # Ferma il server pm2 stop Ippocrate # Riprendi il server fermato pm2 start Ippocrate # Leggi i log in tempo reale (utile per debug) pm2 logs Ippocrate # Cancella i log pm2 flush
L'avvio automatico Γ¨ giΓ stato configurato con successo su questo PC. Il messaggio ricevuto Γ¨ stato:
Questo significa che ad ogni avvio del PC, Windows rilancerΓ automaticamente PM2 con il processo Ippocrate giΓ salvato. Non Γ¨ necessario fare nulla di piΓΉ.
Per confermare che tutto funzioni dopo un riavvio:
http://localhost:3000/adminSe dopo un riavvio il server non parte, esegui nuovamente (come Amministratore):
pm2 save pm2-startup install
IP del server confermato: 192.168.0.1
Questo Γ¨ l'indirizzo da usare su tutti i dispositivi dello studio. Rilevato con ipconfig sulla scheda "Connessione alla rete locale (LAN)".
| Dispositivo | URL da aprire nel browser | Note |
|---|---|---|
| π₯οΈ PC Segreteria (locale) | http://localhost:3000/admin.html |
Solo sul PC server |
| π± Tablet check-in | http://192.168.0.1:3000/ |
Pagina principale check-in pazienti |
| π©Ί PC dei medici | http://192.168.0.1:3000/medico.html |
Ogni medico sceglie il proprio nome |
| πΊ Monitor sala d'attesa | http://192.168.0.1:3000/monitor.html |
Premi F11 per schermo intero |
| π‘οΈ Segreteria (da altro PC) | http://192.168.0.1:3000/admin.html |
Pannello completo di gestione |
Importante: L'IP 192.168.0.1 potrebbe cambiare se il PC si riavvia o il router si resetta. Per renderlo permanente, vai su Pannello di controllo β Centro connessioni di rete β Ethernet β ProprietΓ β Protocollo Internet versione 4 (TCP/IPv4) e imposta manualmente IP statico 192.168.0.1, subnet mask 255.255.255.0, gateway 192.168.0.7.
Se gli altri dispositivi non riescono a connettersi al server, Γ¨ necessario aprire la porta 3000 nel Firewall di Windows:
Premi Windows, cerca "Windows Defender Firewall" e apri la versione "con sicurezza avanzata".
Nel pannello sinistro, clicca su "Regole connessioni in entrata" β "Nuova regola..." nel pannello destro.
3000Studio Ippocratenetsh advfirewall firewall add rule name="Studio Ippocrate" ^
dir=in action=allow protocol=TCP localport=3000
Errore: "EADDRINUSE" o "porta 3000 giΓ in uso"
Un'altra istanza del server Γ¨ giΓ in esecuzione. Esegui:
pm2 delete Ippocrate pm2 start server.js --name "Ippocrate"
Gli altri dispositivi non si connettono
Verifica: (1) tutti sulla stessa rete WiFi, (2) hai aperto la porta 3000 nel Firewall (vedi sezione 9), (3) stai usando l'IP corretto. Riesegui ipconfig per verificare l'IP attuale.
Errore: "Cannot find module 'express'"
Le dipendenze non sono installate. Rientra nella cartella del progetto ed esegui:
cd C:\StudioIppocrate npm install
Il server si ferma dopo la chiusura del prompt
Assicurati di aver avviato il server tramite PM2 (pm2 start server.js --name "Ippocrate") e non con node server.js.
Il server non si avvia dopo il riavvio del PC
Riconfigurazione avvio automatico:
pm2 save pm2-startup install
Controllo rapido che tutto funzioni
pm2 list β deve mostrare "Ippocrate online" pm2 logs Ippocrate --lines 20 β ultimi 20 log
Aggiornare i file
Per aggiornare i file HTML (index, medico, monitor, admin) basta sostituire i file nella cartella public\ e ricaricare il browser sui dispositivi. Non serve riavviare il server.
Per aggiornare server.js, invece, esegui: pm2 restart Ippocrate