alias checkserver { if (%servstatus == 0) { topicchange 1 set %servstatus 1 echo online timer.offline off sockclose seven .timerchecking 1 30 sockopen seven %server.server 3724 } else { unset %servstatus topicchange 0 timer.online off echo offline set %server.status Offline sockclose seven .timerchecking 1 30 sockopen seven %server.server 3724 } } alias topicchange { if (%server.topic != yes) { halt } set %topic1 $chan(%server.chan).topic set %sev1 Server Online set %sev2 Server Offline if ($1 == 1 && %topic1 != %sev1) { topic %server.chan %sev1 } if ($1 == 0 && %topic1 != %sev2) { topic %server.chan %sev2 } } on *:LOAD: { set %server.server $?="Server IP" ; set %server.topic $?="Change Topic? (Yes/No)" ; if (%server.topic == Yes) { set %server.chan $?="IRC Channel (WITH #)" ; } } on *:START: { sockopen seven %server.server 3724 } on *:sockopen:seven: { if ($sockerr) { unset %servstatus topicchange 0 set %server.status Offline } .timerchecking2 1 30 checkserver sockwrite seven 32 test set %server.status Online } on *:sockwrite:seven: { set %servstatus $sock(seven).wserr .timerkeepalive 0 60 sockwrite seven 32 test } on *:sockclose:seven: { unset %servstatus timerkeepalive off topicchange 0 set %server.status Offline timerchecking off timerchecking2 off .timerchecking 1 30 sockopen %server.server 3724 }