Scripts d'exemple 



OZNow.hsc

Ce script permet d'effectuer l'ensemble des tâches courantes pour le courrier et les news.
Une version planifiée avec connexion automatique est disponible ici.

Il utilise certaines fonctions des modules suivants, présents sur cette page ou dans la distribution de Hamster-Fr :

Il utilise également Fai.ini qui est le fichier de configuration.
Fai.ini vous permet de changer le paramétrage de vos fournisseurs d'accès et de vos serveurs sans avoir à modifier une seule ligne du script ou des modules.

Grâce à ce script vous pourrez :

  • Formater les articles sortants ;
  • Vous connecter à un fournisseur d'accès selon une liste pré-établie ;
  • Etre averti par message d'erreur en cas de problème de connexion ;
  • Envoyer et recevoir les articles de tous vos serveurs de news ;
  • Envoyer votre courrier en utilisant le bon serveur ;
  • Recevoir le courrier de toutes vos boites aux lettres ;
  • Vous déconnecter automatiquement quand toutes les tâches sont effectuées (sauf si la connexion était déjà établie avant le lancement du script).

Pratiquement toutes les lignes de ce script sont commentées, ce qui facilite la compréhension mais pas la lecture.
Une version moins commentée est disponible ici.


			
################################################################
# Script : OZNow.hsc
# Description : 
#        Envoi et réception immédiats du courrier et des news.
#        La sélection Des FAIs se fait d'après une 
#        liste préférientielle.
# Configuration :
#        Les FAIs et les serveurs SMTP ET POP3
#        sont indiqués dans le fichier Fai.ini.
# Ne pas oublier de configurer aussi Hamster !
# Nécessite :
#    - Fai.ini
#    - Fai.hsm
#    - News.hsm 
#     (BStrings.hsm, BMsgHeader.hsm, BFichierTexte.hsm)
#     - Mail.hsm
#
# Auteur : Olivier Zolli <ozolli@online.fr>
# Version : 03/02/01
################################################################


#!hs2
			
# Chargement des modules nécessaires.
!load Fai.hsm
!load News.hsm
!load Mail.hsm
			
# Remise à zéro des compteurs et de l'écran log
HamMessage( 2,0 )

# Écrit un message dans l'écran log
print( "SCRIPT EN COURS DE TRAITEMENT" )

# Déclaration et initialisation des variables
VarSet( $CxHamster, True )
VarSet( $Re, 0 )

# Préparation des articles
#  News Jobs
EnteteNews
HamNewsJobsClear
HamNewsJobsPostDef
HamNewsJobsPullDef
HamWaitIdle

# Teste si un FAI est déja connecté
If(  RasIsConnected  )

   $CxHamster = False
   Print( "Déja connecté à "  + RasGetConnection )

# Sinon
Else

   # Répète les instructions qui suivent (jusqu'à until)
   Repeat

     # Connexion au 1er FAI de la liste (Fai.ini) qui répond
     cxmulti

     # Si connexion établie
     If( RasIsConnected )
        Print( "Connecté à " + RasGetConnection )

     # Sinon
     Else

        # Ouverture boite de dialogue avec attente de réponse ($Re)
        $Re = MsgBox( "Le script OZNow n'a pas pu se connecter" , _
        "Hamster-Fr", 0x10|0x5 )

     # Fin de condition Si connexion établie
     EndIf

     # Si réponse = Annuler alors arrêt du script
     If( $Re = 2 )
        Quit
     EndIf
			
   # Jusqu'à ce que réponse ne soit pas Réessayer ( ! = différent de )
   Until( $Re != 4 )

# Fin de condition Si un FAI est déja connecté
EndIf

# Connexion au(x) serveur(s) de news.
HamNewsJobsStart

# Envoi du courrier en instance.
EnvoieCourrier

# Réception du courrier.
RecoitCourrier

# Déconnexion du FAI si c'est OZNow qui s'est connecté
If ( $CxHamster )

   # Attente de fin des tâches en cours puis déconnexion
   HamWaitIdle
   HamRasHangup
	 
EndIf
			
HamWaitIdle
			
Print( "Traitement du courrier et des news effectué." )
			
# Fin du script
Quit

 Sommaire 

© 2000-2001 Olivier Zolli

Dernière mise à jour le 22/02/2001