Aller directement à la fin des métadonnées
Aller au début des métadonnées

Vous regardez une version antérieure (v. /wiki/spaces/PAI/pages/10577117274/Le+service+Telnet+dhsTelnet) de cette page.

afficher les différences afficher l'historique de la page

« Afficher la version précédente Vous regardez la version actuelle de cette page. (v. 3) afficher la version suivante »

Installation et paramétrage du service dhsTelnet

dhsTelnet est un service qui assure l'interface entre un (ou plusieurs) programme(s) Diva et un (ou plusieurs) client(s) Telnet (douchettes, écrans passifs, …). Il attend la connexion des clients et, pour chaque client qui se connecte, lance l'exécution d'un programme Diva. Ce dernier peut alors dialoguer avec le client Telnet via des commandes spécifiques d'entrée-sortie.
Installation
Pour installer le service dhsTelnet, lancez le programme diva InstallTelnet.dhop (qui se trouve dans Divalto/Sys).


Liste des fichiers livrés

dhsTelnet.exe

Service dhsTelnet

dhsTelnet.txt

Fichier paramètres de dhsTelnet

Ytelnet.dhop

Module de traitement

Ttelnet.txt

Définition des touches de base

Tvt220.txt

Définition des touches en émulation vt52/vt100/vt220

TestTelnet.bat

Lancement de l'émulateur Telnet de Windows

DemoTelnet.dhop

Programme de démonstration.


Paramétrage


Au démarrage, le service dhsTelnet charge le fichier paramètres dhsTelnet.txt. Ce fichier doit préciser la liste des connexions Telnet à gérer, à raison d'un type de connexion par ligne.
Une ligne doit respecter la syntaxe suivante :

<port>numéro_de_port_à_écouter<prog>programme_à_lancer<user>code_utilisateur<env>environnement <show>visibilité<paramsytelnet>"<pc8>codage_pc8<timeout>valeur_du_timeout<crlf>crlf <fic>fichier_des_touches<debug>débogueur"<paramsharmony>"paramètre_à_transmettre"

numéro_de_port_à_écouter

Numéro du port TCP/IP utilisé par un client Telnet.

programme_à_lancer

Nom du programme diva à lancer lorsque le client Telnet se connecte sur ce port.

code_utilisateur

Code utilisateur sous lequel le programme diva doit s'exécuter.

environnement

Nom de l'environnement d'exécution du service. Attention : La mise en œuvre des environnements est facultative mais si elle est activée, elle concerne obligatoirement tous les services dhsTelnet d'un même fichier paramètres.

visibilité

1 pour que les caractères en provenance du client Telnet soient affichés à l'écran.

paramsytelnet

Paramètres complémentaires pour le module Ytelnet (à indiquer entre guillemets) :

codage_pc8

1 si le client Telnet utilise des caractères codés en PC8. Si ce paramètre est absent (*), Ytelnet considère que le client Telnet utilise des caractères codés en ANSI.

valeur_du_timeout

Si aucun message n'est envoyé par le client Telnet durant le nombre de minutes indiqué ici, Ytelnet coupera automatiquement la connexion. Si ce paramètre est absent (*) ou si la valeur 0 est indiquée ici, aucun time-out n'est mis en route et il n'y aura pas de déconnexion automatique.

crlf

1 si le client Telnet termine ses transmissions de message par les caractères CR (Entrée ou Return) et LF (passage à la ligne). Si ce paramètre est absent (*), Ytelnet considère que le client Telnet termine ses transmissions de message par le seul caractère CR.

fichier_des_touches

Les terminaux Telnet utilisent en général soit une émulation type « vt220 » soit une émulation « Telnet de base » pour les touches de fonction F1 à F10 et les touches Suppr et Flèches haut/bas/gauche/droite. Si votre terminal utilise une émulation vt52/vt100/vt220, indiquez ici le fichier Tvt220.txt. Si ce paramètre est absent (*), Ytelnet utilisera le fichier de définition des touches Ttelnet.txt, correspondant à l'émulation Telnet de base.

débogueur

1 pour que le module Ytelnet trace les informations dans le fichier Ytelnet.log (*).

paramsharmony

Paramètres complémentaires pour le programme diva (à indiquer entre guillemets) :

paramètre_à_transmettre

Chaîne de caractères libre qui sera transmise au programme dans la variable d'environnement HARMONY_PARAM. Utilisez la fonction diva GetEnv ("HARMONY_PARAM") pour la récupérer (les guillemets ne sont pas transmis). Remarque : cette chaîne peut être au format HMP.

(*) Les valeurs par défaut sont paramétrées dans Divalto.ini, au chapitre [ytelnet].
Voir aussi la rubrique Gestion des licences nommées dans Telnet.

Exemples :

<port>2260<prog>PanneauAffichage.dhop<user>AFF
<port>2247<prog>demoxtelnet.dhop<user>DEMO<env>ERP210
<port>2248<prog>resultatbalance1.dhop<user>RB<paramsytelnet>"<pc8>1<timeout>0<crlf>1"
<port>2350<prog>resultatbalance2.dhop<user>RB<paramsytelnet>"<pc8>1<timeout>0<crlf>1"
<port>2247<prog>demo.dhop<user>DEMO<paramsytelnet>"<timeout>15"<paramsharmony>"<demo>1" 
Remarque : le fichier dhsTelnet.txt livré contient une première ligne de commentaires rappelant la syntaxe d'une ligne de paramètres et une deuxième ligne d'exemple permettant de lancer le programme de démonstration DemoTelnet.dhop :
<port>2247<prog>demotelnet.dhop<user>DEMO


Gestion des licences nommées dans Telnet


Une application Telnet, s'exécutant sur un site pour lequel la gestion des licences nommées est active, doit être adaptée afin de prendre en compte cette nouvelle gestion. En effet, l'utilisateur de l'application Telnet doit s'authentifier avant de pouvoir exécuter l'application. Pour cela, les paramètres suivants doivent être spécifiés dans le fichier Dhstelnet.txt :

Balise <Login>

La valeur 1 indique que l'on souhaite mettre en œuvre l'authentification de l'utilisateur. Dans ce cas, le service Dhstelnet demande à l'utilisateur de s'authentifier en saisissant son compte et son mot de passe Windows. Le service lance alors le programme Diva associé au port en s'impersonnant sous le compte de l'utilisateur. Il vérifie que l'utilisateur est un utilisateur nommé sur le serveur de licences.

Balise <msgconnect>

Cette balise permet de personnaliser le texte d'accueil, dont la valeur par défaut est "Connexion". Elle comporte trois sous-balises :

  • <tiltle> pour le texte

  • <clear> pour éventuellement effacer l'écran

  • <rever> pour éventuellement afficher le texte <title> en vidéo inverse.
    Exemple : <msgconnect>"<clear><rever><title>Connexion Divalto"

Balises <Lang> et <Langimp>

Ces balises permettent de définir les codes langue pour l'affichage et l'impression.
Les textes standard "connexion", "utilisateur" et "mot de passe", ainsi que les messages sont traduits par la fonction Translate dans le dictionnaire Harmony.

Balise <User>

Dans ce contexte, le contenu de la balise <User> est ignoré.

Programme Diva
Le programme Diva associé au port telnet peut récupérer les paramètres suivants :

  • Le mode Login, renvoyé par la fonction GetEnv ("TELNET_LOGIN"). Vaudra 1 si la balise <Login> est active dans le fichier paramètre. Ceci permet de développer des programmes Telnet compatibles avec les deux modes de licences.

  • Le compte de l'utilisateur est renvoyé par la fonction GetUserName. Il s'agit du compte de l'utilisateur Windows qui a effectué la connexion, soit en principe le compte de l'utilisateur Divalto, sauf si un alias est associé à ce compte.

  • La variable System.User contient le code de l'utilisateur Divalto.


Programmation d'un serveur Telnet

Un exemple de programmation de serveur Telnet est livré avec Harmony (DemoTelnet.dhsp dans le sous-projet Xtelnet du projet Exemples).
Vous y trouverez la liste des commandes du module Ytelnet (commentaires en début de source).
Pour exécuter cette démonstration, lancez au préalable le fichier batch TestTelnet.bat, qui fait appel à l'émulateur Telnet de Windows sur le port 2247.
DemoTelnet propose un menu avec les choix suivants (utilisez les touches du clavier a, p, c, l, x, y pour changer les paramètres de fonctionnement de Ytelnet) :
a = codage ANSI ; p = codage PC8
x = vt220 (fichier des touches tvt220.txt) ; y = telnet (fichier des touches dhsTelnet.txt)
c = crlf ; l = cr seul


Remarque : le logiciel d'émulation de terminal utilisé pour la démonstration est livré et installé avec le système Windows mais il diffère suivant les versions (2000 ou XP). Celui de Windows 2000 ne renvoie que CR alors que celui de Windows XP renvoie CR+LF.
Attention : ce programme de démonstration est un exemple « général » qu'il faudra évidemment adapter au(x) client(s) Telnet concerné(s).
Voir aussi la rubrique Gestion des licences nommées dans Telnet.

  • Aucune étiquette