HotKeySet('{Esc}', '_Exit');Esc - выход
$iTimeOut = 5000 ; 5 sec - интервал между проверками
$sMeesage = ''
Dim $aInfo[5][3] = [[4],['game id'],['name'],['status'],['online']]
_Get_Server_Info($aInfo)
$iStart = TimerInit()
While 1
If TimerDiff($iStart) > $iTimeOut Then
$sMessage = _Get_Server_Info($aInfo)
If Not @error Then
If $sMessage Then
Beep(300, 50)
ToolTip('Изменились значения:' & @LF & $sMessage, 0, 0, @HOUR & ':' & @MIN & ':' & @SEC, 1)
EndIf
Else
ToolTip('Ошибка!', 0, 0, @HOUR & ':' & @MIN & ':' & @SEC, 3)
EndIf
$iStart = TimerInit()
EndIf
Sleep(50)
WEnd
Func _Get_Server_Info(ByRef $a_Array)
Local $s_URL = 'http://www.aionlegend.ru/xml/status.xml', $s_Sourse, $s_Message
$s_Sourse = InetRead($s_URL, 17)
If @error Then Return SetError(1)
$s_Sourse = BinaryToString($s_Sourse, 4)
$s_Sourse = StringRegExpReplace($s_Sourse, '.*<servers>(.*?)</servers>.*', '$1')
For $i = 1 To $a_Array[0][0]
$a_Array[$i][2] = StringRegExpReplace($s_Sourse, '.*' & $a_Array[$i][0] & '="(.*?)"\s.*', '$1')
ConsoleWrite($a_Array[$i][0] & @TAB & $a_Array[$i][2] & @TAB & $a_Array[$i][1] & @LF)
If Not $a_Array[$i][2] Then
$a_Array[$i][1] = $a_Array[$i][2]
Else
If $a_Array[$i][1] <> $a_Array[$i][2] Then
$s_Message &= $a_Array[$i][0] & ' Старое: ' & $a_Array[$i][1] & ', Новое: ' & $a_Array[$i][2] & @LF
$a_Array[$i][1] = $a_Array[$i][2]
EndIf
EndIf
Next
Return StringTrimRight($s_Message, 1)
EndFunc ;==>_Get_Server_Info
Func _Exit()
Exit
EndFunc ;==>_Exit