Arborescence des pages

Comparaison des versions

Légende

  • Ces lignes ont été ajoutées. Ce mot a été ajouté.
  • Ces lignes ont été supprimées. Ce mot a été supprimé.
  • La mise en forme a été modifiée.

...

Environnement

Pré-requis

  • Java 1.811 ou supérieur
  • Maven

Logiciel

  • L'application est prévue pour tourner avec java 8openjdk 11 ou supérieur

Materiel

  • un lecteur de carte USB compatible PC/SC (ex: Indentive Cloud 4700f, OMNIKEY CardMan 5x21-CL...)

...

  • Switcher entre plusieurs applications (~ champs à récupérer depuis esup-nfc-tag après badgegage pour saisi par émulation clavier) : numeroIds peut contenir plusieurs valeurs séparées par des virgules.
    • numeroIds permet une émulation clavier pour que soit saisi un identifiant de carte, d'utilisateur ou un email, ces numeroIds sont à définir dans le paramétrage à faire dans esup-nfc-tag-server (cf ci-dessous le paramétrage côté esup-nfc-tag-server)
    • ; ces identifiants étant en effet récupérés par esup-nfc-tag
  • forceCsn à true permet de proposer à l'utilisateur une saisie émulée directe du csn (ou csn renversé ; swap-pair) sans passer par esup-nfc-tag
  • Avec emulateKeyboard à true, l'émulation clavier est effective, dans le cadre de l'usage de redirect à true (cf ci-dessous), ce paramètre peut être mis à false.Émulation clavier
  • Redirection dans un navigateur web vers une url construite avec l'identifiant retourné : mettre redirect = true et renseigner redirectUrlTemplate
  • Possibilité de saisie d'un retour chariot (touche Entrée) après la saisie de l'identifiant (cas d'usage : 'valider' un formulaire ou passer à la ligne dans un fichier texte) : lineFeed
  • Possibilté d'ajouté ajouter un préfixe et/ou un suffixe à ce qui est saisi : prefix et suffix
  • port définit le numéro de port local que l'application va utiliser pour 'écouter' : c'est ce système qui permet d'éviter que l'application puisse se lancer 2 fois sur une même machine.
  • esupNfcTagServerUrl : url du serveur esup-nfc-tag-server
  • noResponseMessage : message à afficher si la carte n'est pas trouvée/valide pour le serveur esup-nfc-tag
  • timeBetweenSameCard, cardReadSleepTime, onErrorSleepTime, beforeNextCardSleepTime : paramètres permettant d'indiquer le nombre de millisecondes pendant lesquels l'application se "met en pause" 
    → plus on baisse ces paramètres et plus l'application pourra être réactive lors du badgeage 
    → ces "pauses" permettent cependant d'éviter une consommation excessive de cpu, permettent de laisser du temps d'exécution au contrôle de la partie graphique dans la barre de tâche, d'éviter de trop solliciter le lecteur NFC ...

Il est possible de modifier le fichier src/main/resources/esupnfctagkeyboard.properties pour spécifier les paramètres par défaut :

Bloc de code
languagetextjava
themeRDark
port = 33333
esupNfcTagServerUrl = https://esup-nfc-tag.univ-ville.fr
noResponseMessage = -
numeroIds = keyboard-secondary-id, keyboard-csn, keyboard-eppn, keyboard-email
emulateKeyboard = true
forceCsn = false
lineFeed = true
redirect = false
redirectUrlTemplate = https://esup-sgc.univ-rouenville.fr/manager/{0}
prefix =
suffix  =
timeBetweenSameCard = 3000
cardReadSleepTime = 1000
onErrorSleepTime = 3000
beforeNextCardSleepTime = 1500

Compilation esup-nfc-tag-keyboard

Modifier le fichier esupnfctagkeyboard.properties pour y insérer l'adresse de l'instance esup-nfc-tag-server et le numéro de périphérique par défaut

Dans de répertoire des sources lancer la commande :

...

Il est possible de déclarer les propriétés systèmes suivantes, au lancement du jar, pour surcharger les propriétés définies dans esupnfctagkeyboard.properties (afin d'évité de recompiler l'application):

Bloc de code
languagetext
themeRDark
-DesupNfcTagKeyboard.urlesupNfcTagServerUrl=https://esup-nfc-tag.univ-ville.fr
-DesupNfcTagKeyboard.noResponseMessage="Carte non active ou non valide"
-DesupNfcTagKeyboard.numeroIds=<liste des numemeroIds séparés par des virgules>
-DesupNfcTagKeyboard.emulateKeyboard=true
-DesupNfcTagKeyboard.forceCsn=false
-DesupNfcTagKeyboard.lineFeed=true
-DesupNfcTagKeyboard.redirect=false
-DesupNfcTagKeyboard.redirectUrlTemplate = https://esup-sgc.univ-rouen.fr/manager/{0}
-DesupNfcTagKeyboard.prefix=
-DesupNfcTagKeyboard.suffix=
-DesupNfcTagKeyboard.timeBetweenSameCard = 500
-DesupNfcTagKeyboard.cardReadSleepTime = 200
-DesupNfcTagKeyboard.onErrorSleepTime = 500
-DesupNfcTagKeyboard.beforeNextCardSleepTime = 200

pour lancer l'application:

Bloc de code
languagebash
themeRDark
java -jar esupnfctagkeyboard-1.0-SNAPSHOT-jar-with-dependencies.jar

Sous windows, le plus simple est de créer un fichier bat comme suit (ici un exemple avec l'ajouter un prefix) :

Bloc de code
languagebash
themeRDark
@ECHO OFF
start javaw -jar -DesupNfcTagKeyboard.prefix=TEST -jar c:\<path_to_jar>\esupsgckeybemu-1.0-SNAPSHOT-jar-with-dependencies.jar
exit

...

Info

Il est possible de créer plusieurs applications en ajoutant d'autres AppliExtRestWs dans le fichier applicationContext-custom.xml puis en créant les nouvelles applications et les périphériques qui correspondent dans esup-nfc-tag-server.

L'application permet de switcher d'une application à une autre via le "tray icon"

Par exemple pour une émulation de l'eppn :


Bloc de code
languagexml
themeRDark
<bean id="esupEppnExtApi" class="org.esupportail.nfctag.service.api.impl.AppliExtRestWs">

	<property name="isTagableUrl" value="https://esup-sgc.univ-ville.fr/wsrest/nfc/isTagable"/>
    <property name="validateTagUrl" value="https://esup-sgc.univ-ville.fr/wsrest/nfc/validateTag"/>
    <property name="getLocationsUrl" value="https://esup-sgc.univ-ville.fr/wsrest/nfc/locationsSecondaryId"/>
    <property name="displayUrl" value="https://esup-sgc.univ-ville.fr/wsrest/nfc/secondaryId?idName=eppn"/>
    <property name="description" value="Web Service SecondaryId"/>
</bean> 

Usage

Pour contôler que l'application est bien lancée, un "tray icon" doit apparaitre dans la barre des taches. Celui-ci représente le logo esupnfctag et permet :

...