2017-10-02 5 views
0

Nous envisageons de créer un SSH Web pour l'enseignement de Linux pour les débutants. Cependant, nous voulons être en mesure de lire l'entrée avant qu'elle ne soit exécutée sur le terminal backend, et lire la sortie avant qu'elle ne soit affichée sur le navigateur afin de prendre des décisions dans l'application web en fonction de celles-ci. J'ai regardé dans xterm.js, mais je ne sais pas comment activer ce type de contrôle, avec l'un des émulateurs de terminaux basés sur le Web open source actuels.Émulateur de terminal Web avec contrôle d'entrée/sortie

Une idée de comment commencer?

Répondre

3

Ce que vous avez à faire est de créer un add-on xterm.js similaire au attach addon, mais un peu plus interventionnel.

En quelques points, vous devrez:

  1. Connect xterm.js et votre back-end via un WebSocket
  2. Écoutez les xterm.js data événement et après le traitement, envoyez-le données sur la prise
  3. écouter l'événement WebSocket message et traiter le message, avant de l'écrire à la borne, en utilisant #write

Un coup d'oeil rapide à la attach addon source code pourrait également être éclairant