first download rebol view. install it and close it, so that it registers its filenames.
open a text file and paste this in it:
in this code, there are some site names. simply put your own in there, one per line.
save this file as 'checkservers.r'
NOT .txt
.r
ok, have fun.
open a text file and paste this in it:
Code:
REBOL [
Title: "GISMo - Graphical Internet Server Monitor"
File: %checkservers.r
Version: 1.1.1
Author: "Carl Sassenrath"
Needs: [view 1.3.1]
]
time-out: 120 ; Seconds to wait for the connection (adjust it!)
poll-time: 0:10:00
system/schemes/default/timeout: time-out
system/schemes/http/timeout: time-out
sites: [
; List of URLs (http or tcp are allowed)
http://www.actinic.co.uk
http://www.actinic.com
http://community.actinic.com
]
foreach site sites [
; Convert any http to tcp on port 80
if find/match site http:// [
insert remove/part site 7 tcp://
append site ":80"
]
]
img: make image! [300x40 0.0.0.255]
draw img [
pen coal
fill-pen linear 0x0 0 44 89 1 1 silver gray coal silver
box 8.0 0x0 299x39
]
out: [backeffect [gradient 0x1 black coal]]
foreach site sites [
port: make port! site
append out compose/deep [
image img (form port/host) [check-site face] [browse face/data]
with [data: (site)]
]
]
append out [
pad 50x0
btn water 100 "Refresh" rate poll-time feel [
engage: func [f a e] [if find [time down] a [check-sites]]
]
]
color-face: func [face color] [
face/effect: reduce ['colorize color]
show face
]
check-site: func [face] [
color-face face gray
color-face face either attempt [close open face/data true][green][red]
]
check-sites: does [
foreach face out/pane [
if face/style = 'image [check-site face]
]
]
out: layout out
view/new out
check-sites
do-events
save this file as 'checkservers.r'
NOT .txt
.r
ok, have fun.