[Allegro] Internet-Verfügbarkeit bei aiaqs-Aktionen

Heinrich Allers allers at t-online.de
Mi Mär 3 00:39:57 CET 2010


Meiner Lieblingsthemen eins ist das der automatischen Aktualisierung entfernter Allegro-Installationen via 
internetvermittelten Abgleichs. Früher habe ich es mit 'wget' gemacht, aber seit Allegro selbst mit 'aiaqs' 
vergleichbare Werkzeuge bereitstellt, wuchs meine Lust, es mit "Bordmitteln" zu machen.

Das entscheidende Problem liegt darin, daß die aiaqs-Befehle wie z.B. 'get I<url>' nur dann funktionieren, 
wenn ein Internet-Zugang vorhanden ist, und daß - schlimmer noch - diese Situation eines nicht 
vorhandenen Zugangs zum Internet auf der Ebene der FLEX-Programmierung nicht abgefangen werden 
kann, da an der fraglichen Stelle die Abarbeitung der FLEX-Datei schlicht abgebrochen (oder nicht 
fortgesetzt) wird.

Ich habe mir folgende Lösung einfallen lassen, die _vor_ Ausführung kritischer aiaqs-Befehle nachschaut, 
ob ein Internet-Zugang vorhanden ist und in Abhängigkeit von dem Ergebnis dieser Prüfung so verzweigt, 
daß kein undefinierter Zustand sich einstellt:

  
delete internet.txt
z=0    // Schleifenzähler wird auf 0 gesetzt
get env comspec\ins #uwC 
var #uwC " /c ftp www.h-allers.de >internet.txt"
CAll
:schleife
sleep 3000    // 3 Sek. Schlaf
fsize internet.txt
if no z=z+1;if z<11 jump schleife   // Maximal 30 (=10 x 3) Sek. warten
fsize internet.txt\if no jump keininternet 
open internet.txt\get
if "Verbindung mit " close;jump internet
close
:keininternet
var "Die Internet-Verbindung ist entweder nicht vorhanden" n
var +"oder sie ist nur sehr schlecht:" n n
var +"Deswegen erfolgt dieses Mal keine automatische Programmaktualisierung!"
mes
jump keininternet
:internet
...
...
...
jump weiter
:keininternet
...
...
...
:weiter


(Was mich überraschte und mir in meiner Situation sehr half, war, daß in

var #uwC " /c ftp www.h-allers.de >internet.txt"

der Umleitungsbefehl der Ausgabe in eine Datei -'>internet.txt' - in eine Datei funktioniert).

Aber der eigentliche Gegenstand meiner Frage ist, ob es innerhalb einer FLEX-Datei eine elegantere 
Möglichkeit zur Feststellung der Internet-Verfügbarkeit gibt.


Mit besten Grüßen von

Heinrich Allers

allers at t-online.de * http://www.h-allers.de
Netztagebuch: http://heinrich-erlo-ger.blogspot.com/
Bitácora: http://heinrich-erlo-spa.blogspot.com/



Mehr Informationen über die Mailingliste Allegro