Modèle de flux dictionnaire =========================== Modes de règle -------------- ==== ================================ Code Signification ==== ================================ send transfert en mode envoi (*push*) recv transfert en mode réception (*pull*) ==== ================================ Types de tâches --------------- Log et Trace ~~~~~~~~~~~~ ==== ================================ Code Description ==== ================================ LOG inscrit les logs dans le fichiers spécifiés en path SNMP envoie une trap SNMP ==== ================================ Action sur la location fichier ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ============= ================================ Code Description ============= ================================ COPY Copie le fichier dans le dossier spécifié COPYRENAME Copie et renomme le fichier àla location spécifiée MOVE Change la location du fichier pour le dossier spécifié MOVERENAME Change et renomme la location du fichier pour le dossier spécifié LINKRENAME Crée un lien vers le fichier à l'emplacement spécifié RENAME Renomme le fichier DELETE Supprime le fichier VALIDFILEPATH Teste si le fichier est dans l'une des locations spécifiées ============= ================================ Action sur le fichier ~~~~~~~~~~~~~~~~~~~~~ ========= ======================== Code Description ========= ======================== TRANSCODE Effectue une opération de transcodage TAR Crée une archive ``TAR`` ZIP Crée une archive ``ZIP`` UNZEROED Ajoute un octet vide si le fichier est vide (taille = 0) CHKFILE Vérifie certaines propriétés du fichier CHMOD Modifie le mode d'accès du fichier ========= ======================== =========== ======================== Code Description =========== ======================== EXEC Execute une commande externe EXECMOVE Execute une commande externe EXECOUTPUT Execute une commande externe EXECJAVA Execute une classe Java externe RESTART Redémarre le server R66 =========== ======================== Action pour transférer le fichier ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ========== ======================== Code Description ========== ======================== TRANSFER Crée un nouveau transfert basé sur les informations données dans ``path`` RESCHEDULE Reprogramme la tâche de transfert d'un temps donné en millisecondes FTP Transfert synchrone utilisant le protocol FTP ========== ======================== Constantes ---------- ========= =========== ================================ Code Type Signification ========= =========== ================================ flow_name String Nom du flux types PartnerType Constantes correspondant aux types de partenaires existants. Trois valeurs sont possibles: ``types.R66``, ``types.GWFTP`` et ``types.FTP`` true Bool Valeur ``vrai`` false Bool Valeur ``faux`` default Bool Alias de ``true`` ========= =========== ================================ Les types de partenaires (types de données ``PartnerType``) définis sont les suivants: ======== ================================ Type Description ======== ================================ GW Partenaires Waarp Gateway TRANSFER Partenaires Waarp Transfer FTP Partenaires FTP SFTP Partenaires SFTP HTTP Partenaires HTTP R66 Partenaires Waarp R66 (déprécié) GWFTP Partenaires Waarp Gateway FTP (déprécié) GWSFTP Partenaires Waarp Gateway SFTP (déprécié) ======== ================================ Variables concernant les transferts ----------------------------------- Ces données correspondent aux propriétés d'un transfert. Elles sont directement accessible pour le transfert en cours de définition (ex: ``origin_id``). Pour les données de type ``Transfert`` listées ci-dessous, elles sont accessibles en tant que propriété de l'objet (ex: ``next.origin_id``). =================== =========== ============================================ Nom Type Description =================== =========== ============================================ origin_id Int L'id interne de l'instance d'origine du transfert origin Instance Les informations sur l'instance d'origine du transfert origin_dir String Le chemin vers le dossier dans lequel se trouvent les fichiers sur le partenaire d'origine destination_id Int L'id interne de l'instance de destination du transfert destination Instance Les informations sur l'instance de destination du transfert destination_dir String Le chemin vers le dossier dans lequel se trouvent les fichiers sur le partenaire de destination next Transfert Données concernant le (les) transfert(s) suivants dans le flux. Quand cette variable est utilisée (en test ou en substitution), la règle est évaluée pour chaque transfert suivant (**Seulement disponible pour les tâches**) final_destinations []Int La liste d'identifiants des partenaires de destination du flux route_index Int Index du transfert dans la route courante last_index Int Index du dernier transfert pour la route courante flow_index Int Index du transfert courant dans le flux flow_name String Le nom du flux name String Le nom de la règle connection Int Le sens de la connection entre le site d'origine et le site de destination (``0``: les deux sens, ``1``: envoi, ``2``: réception) params FlowParams Les paramètres additionels de flux types PartnerType Les types de partenaires =================== =========== ============================================ Les paramètres de flux (type ``FlowParams``) sont accessibles avec la variable ``params``. Ils correspondent aux paramètres définis dans l':ref:`écran de définition des paramètres de flux`. Ils sont accessibles en séparant le nom du paramètre voulu séparé de l'objet par un point (``.``). Par exemple, pour un paramètre nommé ``codepage_in``, le paramètre peut-être utilisé avec ``{{params.codepage_in}}``. Variables concernant les instances (``Instance``) -------------------------------------------------- Les Instances representent un agent de transfert qui est à l'origine ou en destination d'un transfert. Les données du type ``Instance`` listées ci-dessus ont les propriétés suivantes. Elles sont accessibles en les séparant de l'objet par un point (``.``). Exemple: ``destination.Name`` =================== =========== ============================================ Nom Type Description =================== =========== ============================================ Name String Identifiant R66 d'un partenaire Partner Partner Les informations sur le partenaire de l'instance Interface Interface Les informations sur l'interface de l'instance IsClient Bool ``true`` si le partenaire a un client actif IsServer Bool ``true`` si le partenaire a un serveur actif =================== =========== ============================================ Variables concernant les partenaires (``Partner``) -------------------------------------------------- Les données du type ``Partner`` listées ci-dessus ont les propriétés suivantes. Elles sont accessibles en les séparant de l'objet par un point (``.``). Exemple: ``destination.Name`` =================== =========== ============================================ Nom Type Description =================== =========== ============================================ ID Int L'identifiant interne du partenaire Name String Identifiant R66 d'un partenaire SiteId Int L'identifiant du site auquel le partenaire est rattaché Type PartnerType Le type du partenaire IsClient Bool ``true`` si le partenaire a un client actif IsServer Bool ``true`` si le partenaire a un serveur actif Description String La descriptions données au partenaire Data PartnerData Liste des données additionnelles associées aux partenaires Autosync Bool ``true`` si le partenaire est mis à jour via un référentiel externe, ``false`` sinon IsExternal Bool ``true`` si le partenaire est un partenaire externe Gateway Int L'identifiant interne du partenaire à laquelle le partenaire est rattaché (pour les partenaires FTP, SFTP et HTTP) =================== =========== ============================================ Les données additionnelles associées aux partenaires (type ``PartnerData``) sont accessibles en les séparant de l'objet par un point (``.``). Les variables disponibles sont les suivantes : ======== ======= ============================================ Nom Type Description ======== ======= ============================================ env String L'environnement du partenaire appName String Le nom de l'application correspondant au partenaire idApp String L'identifiant de l'application correspondant au partenaire hostName String L'identifiant du serveur sur lequel est installé le partenaire ======== ======= ============================================ Variables concernant les interfaces (``Interface``) --------------------------------------------------- Les données du type ``Interface`` listées ci-dessus ont les propriétés suivantes. Elles sont accessibles en les séparant de l'objet par un point (``.``). Exemple: ``destination.Interface.Name`` =================== ============= ============================================ Nom Type Description =================== ============= ============================================ ID Int L'identifiant interne du partenaire Name String Identifiant R66 d'un partenaire Protocol String Le protocole de l'interface IsClient Bool ``true`` si le partenaire a un client actif IsServer Bool ``true`` si le partenaire a un serveur actif Autosync Bool ``true`` si le partenaire est mis à jour via un référentiel externe, ``false`` sinon Address String L'adresse IP ou le nom d'hôte pour joindre le serveur du partenaire Port Int Le port pour joindre le serveur du partenaire Data InterfaceData Liste des données additionnelles associées aux partenaires =================== ============= ============================================ Les données additionnelles associées aux interfaces (type ``InterfaceData``) sont accessibles en les séparant de l'objet par un point (``.``). Les variables disponibles dépendent du protocole de l'interface. Pour le protocole R66 : =================== ============= ============================================ Nom Type Description =================== ============= ============================================ serverLogin String Le nom d'utilisateur de l'interface quand elle est serveur serverPassword String Le mot de passe de l'interface quand elle est serveur clientLogin String Le nom d'utilisateur de l'interface quand elle est cliente clientPassword String Le mot de passe de l'interface quand elle est cliente =================== ============= ============================================ Pour le protocole R66-TLS : =================== ============= ============================================ Nom Type Description =================== ============= ============================================ serverLogin String Le nom d'utilisateur de l'interface quand elle est serveur serverPassword String Le mot de passe de l'interface quand elle est serveur serverPrivateKey String La clé privée de l'interface quand elle est serveur serverCertificate String Le certificat de l'interface quand elle est serveur clientLogin String Le nom d'utilisateur de l'interface quand elle est cliente authentMode String Le mode d'authentification pour l'interface ("password" ou "password-certificate") clientPassword String Le mot de passe de l'interface quand elle est cliente clientPrivateKey String La clé privée de l'interface quand elle est cliente et que le mode d'authentification est "password-certificate" clientCertificate String Le certificat de l'interface quand elle est cliente et que le mode d'authentification est "password-certificate" =================== ============= ============================================ Pour le protocole SFTP : =================== ============= ============================================ Nom Type Description =================== ============= ============================================ serverPrivateKey String La clé privée de l'interface quand elle est serveur serverCertificate String Le certificat de l'interface quand elle est serveur clientLogin String Le nom d'utilisateur de l'interface quand elle est cliente authentMode String Le mode d'authentification pour l'interface ("password", "publicKey" ou "password-publicKey") clientPassword String Le mot de passe de l'interface quand elle est cliente clientPrivateKey String La clé privée de l'interface quand elle est cliente et que le mode d'authentification utilise une clef publique clientPublicKey String La clef publique de l'interface quand elle est cliente et que le mode d'authentification utilise une clef publique =================== ============= ============================================ Pour le protocole HTTP : =================== ============= ============================================ Nom Type Description =================== ============= ============================================ clientLogin String Le nom d'utilisateur de l'interface quand elle est cliente clientPassword String Le mot de passe de l'interface quand elle est cliente =================== ============= ============================================ Pour le protocole HTTPS : =================== ============= ============================================ Nom Type Description =================== ============= ============================================ serverPrivateKey String La clé privée de l'interface quand elle est serveur serverCertificate String Le certificat de l'interface quand elle est serveur clientLogin String Le nom d'utilisateur de l'interface quand elle est cliente authentMode String Le mode d'authentification pour l'interface ("basic", "certificate" ou "basic-certificate") clientPassword String Le mot de passe de l'interface quand elle est cliente et que le mode d'authentification utilise un mot de passe clientPrivateKey String La clé privée de l'interface quand elle est cliente et que le mode d'authentification utilise un certificat clientPublicKey String La clef publique de l'interface quand elle est cliente et que le mode d'authentification utilise un certificat =================== ============= ============================================ Pour le protocole FTP : =================== ============= ============================================ Nom Type Description =================== ============= ============================================ clientLogin String Le nom d'utilisateur de l'interface quand elle est cliente clientPassword String Le mot de passe de l'interface quand elle est cliente serverMode String Le mode de transfert de données pour l'interface quand elle est serveur ("passive" ou "active") passiveMinPort Int Le port passif minimum utilisé par l'interface et que le mode du serveur est "passive" passiveMaxPort Int Le port passif maximum utilisé par l'interface et que le mode du serveur est "passive" activeMinPort Int Le port actif minimum utilisé par l'interface quand elle est cliente et que le mode du serveur est "active" activeMaxPort Int Le port actif maximum utilisé par l'interface quand elle est cliente et que le mode du serveur est "active" =================== ============= ============================================ Pour le protocole HTTPS : =================== ============= ============================================ Nom Type Description =================== ============= ============================================ serverCertificate String Le certificat de l'interface quand elle est serveur secureMode String Le mode de connexion TLS pour l'interface ("implicit" ou "explicit") clientLogin String Le nom d'utilisateur de l'interface quand elle est cliente clientPassword String Le mot de passe de l'interface quand elle est cliente serverMode String Le mode de transfert de données pour l'interface quand elle est serveur ("passive" ou "active") passiveMinPort Int Le port passif minimum utilisé par l'interface et que le mode du serveur est "passive" passiveMaxPort Int Le port passif maximum utilisé par l'interface et que le mode du serveur est "passive" activeMinPort Int Le port actif minimum utilisé par l'interface quand elle est cliente et que le mode du serveur est "active" activeMaxPort Int Le port actif maximum utilisé par l'interface quand elle est cliente et que le mode du serveur est "active" =================== ============= ============================================ Variables de transfert R66 -------------------------- Les variables interprétées par Waarp R66, Waarp Transfer et Waarp Gateway sont les suivantes: ================== ============================================ Nom Description ================== ============================================ #TRUEFULLPATH# Location complète du fichier #TRUEFILENAME# Current FILENAME (basename) (change in retrieval part) #ORIGINALFULLPATH# Original full path FILENAME (before changing in retrieval part) #ORIGINALFILENAME# Original FILENAME (basename) (before changing in retrieval part) #FILESIZE# Taille du fichier #INPATH# Location du dossier de réception #OUTPATH# Location du dossier d'envoie #WORKPATH# Location du dossier de travail (dossier des fichiers en cours de transfert) #ARCHPATH# Location du dossier d'archive #HOMEPATH# Home path (to enable for instance relative path commands) #RULE# Règle utilisée #DATE# La date actuelle au format yyyyMMdd #HOUR# L'heure actuelle au format HHmmss #REMOTEHOST# Remote host id (if not the initiator of the call) #REMOTEHOSTIP# Remote host IP (if not the initiator of the call) #LOCALHOST# Id du localhost #LOCALHOSTIP# IP du localhost #TRANSFERID# L'ID du transfert #REQUESTERHOST# Requester host Id #REQUESTEDHOST# Requested host Id #FULLTRANSFERID# Full Transfer Id as TRANSFERID_REQUESTERHOST_REQUESTEDHOST #RANKTRANSFER# Current or final RANK of block #BLOCKSIZE# La taille de bloc utilisée. #ERRORMSG# Le message d'erreur actuel ou NoError si aucune erreur ne s'est produite avant cet appel #ERRORCODE# Le code d'erreur actuel ou ``-`` (Unknow) si aucune erreur ne s'est produite avant cet appel #ERRORSTRCODE# Le message du code d'erreur actuel ou "Unknow" si aucune erreur ne s'est produite avant cet appel #NOWAIT# Used by Exec type task to specify that the command will be executed in asynchronous mode, without waiting any result from it #LOCALEXEC# Used by Exec type task to specify that the command will be executed not locally (within the JVM) but outside using a LocalExec ================== ============================================