root / plugins / minecraft / minecraft-users @ b0b39b01
Historique | Voir | Annoter | Télécharger (792 octets)
| 1 |
#!/usr/bin/env ruby |
|---|---|
| 2 |
# Config: |
| 3 |
# [minecraft_users] |
| 4 |
# env.host awesomeserver.com |
| 5 |
# env.port 25566 |
| 6 |
# |
| 7 |
|
| 8 |
require 'socket' |
| 9 |
|
| 10 |
if ARGV[0] == 'config' |
| 11 |
puts "graph_title Connected players" |
| 12 |
puts "graph_vlabel players" |
| 13 |
puts "players.label players" |
| 14 |
puts "graph_info Number of players connected to Minecraft" |
| 15 |
puts "graph_category games" |
| 16 |
exit |
| 17 |
end |
| 18 |
|
| 19 |
host = ENV['host'] |
| 20 |
host = 'localhost' unless host |
| 21 |
|
| 22 |
port = ENV['port'] |
| 23 |
port = '25566' unless port |
| 24 |
|
| 25 |
socket = TCPSocket.new(host, port) |
| 26 |
socket.puts "QUERY" |
| 27 |
|
| 28 |
response = socket.read |
| 29 |
response = response.split("\n")
|
| 30 |
|
| 31 |
server_port = response[0].split(" ", 2)[1].to_i
|
| 32 |
player_count = response[1].split(" ", 2)[1].to_i
|
| 33 |
max_players = response[2].split(" ", 2)[1].to_i
|
| 34 |
player_list = response[3].split(" ", 2)[1].chomp[1..-2]
|
| 35 |
|
| 36 |
puts "players.value #{player_count}"
|
