contrib-munin/plugins/minecraft/minecraft-users

37 lines
804 B
Ruby
Executable File

#!/usr/bin/env ruby
# Config:
# [minecraft_users]
# env.host awesomeserver.com
# env.port 25566
#
require 'socket'
if ARGV[0] == 'config'
puts "graph_title Connected players"
puts "graph_vlabel players"
puts "players.label players"
puts "graph_info Number of players connected to Minecraft"
puts "graph_category games"
exit
end
host = ENV['host']
host = 'localhost' unless host
port = ENV['port']
port = '25566' unless port
socket = TCPSocket.new(host, port)
socket.puts "QUERY"
response = socket.read
response = response.split("\n")
server_port = response[0].split(" ", 2)[1].to_i
player_count = response[1].split(" ", 2)[1].to_i
max_players = response[2].split(" ", 2)[1].to_i
player_list = response[3].split(" ", 2)[1].chomp[1..-2]
puts "players.value #{player_count}"