NFSU:Мониторинг через PHP

Материал из WikiServia
Версия от 17:53, 14 февраля 2010; HarpyWar (обсуждение | вклад)

(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к: навигация, поиск

Алгоритм прост. При соединении с сервером NFSU на порт 10980 выдается строка вида:

usercount|roomcount|timeonlineinseconds|platform|version|servername~~~A.LAN|0|[]B.LAN|0|[]C.LAN|0|[]D.LAN|0|[HarpyWar|]E.LAN|1|[|]F.LAN|0|[]G.LAN|0|[]H.LAN|0|[]


Где A.LAN|0|[]B.LAN|0| ... - названия комнат, и кол-ва народу в каждой, а в скобках [] ники игроков, разделяемые символом |

Собственно, надо эту строку разложить на переменные, и получим нужный результат.


Простейший пример вывода на PHP:

<?php 
error_reporting (E_ALL); 

$service_port = 10980; 
$address = gethostbyname (|’ip|’); 

$socket = socket_create (AF_INET, SOCK_STREAM, 0); 

$result = socket_connect ($socket, $address, $service_port); 

while ($out = socket_read($socket, 6048)) { 
echo $out; 
} 

socket_close ($socket); 
?>


Скачать готовый скрипт на PHP #1

Скачать готовый скрипт на PHP #2