Train Director 3 - Server

 English   -    Italiano


Amtrak Pacific Surfliner in Santa Barbara

 

Pagina Principale
Lista Scenari
Lista icone
Altre risorse
Domande Frequenti
Manuale Utente
Creazione Tracciati
Esempi
Creazione File Orario
Scritti
Localizzazioni
Uso come Server
Area Files
Istruzioni per
Compilare
Architettura del
Programma
Gruppo Discussione

 

 

La versione 3.7 di Train Director introduce la funzionalita' di server, con la quale altri programmi possono comunicare con il simulatore. Questa funzionalita' e' utile per interfacciare dispositivi esterni o per comunicare con programmi ausiliari per rendere ancora piu' realistica la simulazione. La funzione di server semplicemente invia tutte le linee testo ricevute al gestore dei comandi. Tale gestore e' lo stesso che e' gia' usato per i pedali e per la funzione "do" degli script. Percio' molte delle azioni che possono essere eseguite tramite i pedali e gli script ora possono anche essere eseguite tramite l'interfaccia server.

In aggiunta alla ricezione comandi, Train Director invia messaggi al programma remoto connesso ogni volta che l'utente opera sul programma, per esempio quando gira uno scambio o quando abilita un segnale.

Percio' il programma remoto puo' prendere decisioni in base a tali eventi. Con questa nuova funzione sono possibili nuovi scenari, come:
  • controllare Train Director da un banco ACEI fisico. Infatti questa e' stata la ragione principale per cui ho implementato questa funzione, dato che alcuni utenti avevano espresso interesse nel costruirsi il proprio banco di controllo (chiaramente in versione casereccia).
  • collegare 2 o piu' simulatori per controllare uno scenario in piu' di una persona. Sebbene questo richieda l'uso di un programma aggiuntivo per far rimbalzare i vari eventi ai vari programmi collegati, almeno adesso e' possibile fare cio senza dover cambiare i sorgenti di Train Director.
  • potrebbe diventare possibile automatizzare una simulazione semplicemente registrando tutti gli eventi man mano che il giocatore procede nella simulazione e quindi inviarli nuovamente a Train Director tramite l'interfaccia server.
  • diventa possibile usare diversi linguaggi di programmazione per interagire con Train Director, come per esempio python, perl, Visual Basic o C#. Non c'e' piu' bisogno di imparare il C o il C++ e di conoscere i meandri dei sorgenti di Train Director (parte dei quali sono stati scritti piu' di 10 anni fa).

Come usare l'interfaccia server

Quando Train Director parte, apre una connessione alla porta 8900. Un programma esterno puo' connettersi a questa porta e comunicare con Train Director mandando semplici comandi al simulatore.

Su Windows si puo' usare il comando DOS telnet o l'emulatore di terminale PuTTY (gratis) e usare la seguente configurazione per connettersi a Train Director:

Su Linux e MacOS X si puo' usare telnet per connettersi al server:

  $   telnet localhost 8900
In ogni caso, una volta che la connessione e' stabilita, si possono mandare comandi al simulatore:

La lista dei comandi e' indicata nella pagina degli script.

Se il giocatore manipola il simulatore tramite l'interfaccia grafica, per esempio cliccando su uno scambio, un evento verra' inviato al programma connesso con il tempo simulato al momento dell'esecuzione dell'evento, seguito dal comando corrispondente all'evento:

Questo e' quanto per ora. E' possibile che in futuro vengano aggiunti altri messaggi e comandi per coprire casi nuovi, ma cio' sara' fatto in modo da mantenere la compatibilita' con le vecchie versioni.


Questa pagina e' mantenuta da g_caprino@gmail.com
(Togliere il _ prima di inviare la mail.)
Data di creazione: 11 Maggio 2010