minestat 2.2.2 → 2.2.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/minestat.rb +22 -8
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6cf1517b7163565471c4785bb7cb8ba6242a8b5a0df07ec6a0de7bf477c37cde
|
4
|
+
data.tar.gz: d76096e4980f85df61ea6dc20a7c0959d0fc16696c2acafc01cda72579a30e20
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 853bbf09e649df0b24262bf55fe55be477d7ce263031ceb6ce06df7f48c133a80062b71f7c49acea3caa118d24cc075d310c4181b313b9c39a86178d3ec8cb1a
|
7
|
+
data.tar.gz: b205181e5e10ebf49fa784a9f324f8b8d262807a42fad444838a62bad84d77b620f65e4527a1ec547250059ccf42d2b2aac542ccb484b2597c52df735311a1cb
|
data/lib/minestat.rb
CHANGED
@@ -25,7 +25,7 @@ require 'timeout'
|
|
25
25
|
# Provides a ruby interface for polling Minecraft server status.
|
26
26
|
class MineStat
|
27
27
|
# MineStat version
|
28
|
-
VERSION = "2.2.
|
28
|
+
VERSION = "2.2.4"
|
29
29
|
# Number of values expected from server
|
30
30
|
NUM_FIELDS = 6
|
31
31
|
# Number of values expected from a 1.8b/1.3 server
|
@@ -135,12 +135,11 @@ class MineStat
|
|
135
135
|
retval = json_request()
|
136
136
|
end
|
137
137
|
# Bedrock/Pocket Edition
|
138
|
-
unless
|
138
|
+
unless @online || retval == Retval::SUCCESS
|
139
139
|
retval = bedrock_request()
|
140
140
|
end
|
141
141
|
end
|
142
|
-
set_connection_status(retval)
|
143
|
-
@online = false unless retval == Retval::SUCCESS
|
142
|
+
set_connection_status(retval) unless @online
|
144
143
|
end
|
145
144
|
|
146
145
|
# Sets connection status
|
@@ -286,7 +285,6 @@ class MineStat
|
|
286
285
|
retval = connect()
|
287
286
|
return retval unless retval == Retval::SUCCESS
|
288
287
|
# Perform handshake and acquire data
|
289
|
-
@request_type = "SLP 1.8b/1.3 (beta)"
|
290
288
|
@server.write("\xFE")
|
291
289
|
retval = parse_data("\u00A7", true) # section symbol
|
292
290
|
end
|
@@ -296,6 +294,10 @@ class MineStat
|
|
296
294
|
$stderr.puts exception
|
297
295
|
return Retval::UNKNOWN
|
298
296
|
end
|
297
|
+
if retval == Retval::SUCCESS
|
298
|
+
@request_type = "SLP 1.8b/1.3 (beta)"
|
299
|
+
set_connection_status(retval)
|
300
|
+
end
|
299
301
|
return retval
|
300
302
|
end
|
301
303
|
|
@@ -325,7 +327,6 @@ class MineStat
|
|
325
327
|
retval = connect()
|
326
328
|
return retval unless retval == Retval::SUCCESS
|
327
329
|
# Perform handshake and acquire data
|
328
|
-
@request_type = "SLP 1.4/1.5 (legacy)"
|
329
330
|
@server.write("\xFE\x01")
|
330
331
|
retval = parse_data("\x00") # null
|
331
332
|
end
|
@@ -335,6 +336,10 @@ class MineStat
|
|
335
336
|
$stderr.puts exception
|
336
337
|
return Retval::UNKNOWN
|
337
338
|
end
|
339
|
+
if retval == Retval::SUCCESS
|
340
|
+
@request_type = "SLP 1.4/1.5 (legacy)"
|
341
|
+
set_connection_status(retval)
|
342
|
+
end
|
338
343
|
return retval
|
339
344
|
end
|
340
345
|
|
@@ -372,7 +377,6 @@ class MineStat
|
|
372
377
|
retval = connect()
|
373
378
|
return retval unless retval == Retval::SUCCESS
|
374
379
|
# Perform handshake and acquire data
|
375
|
-
@request_type = "SLP 1.6 (extended legacy)"
|
376
380
|
@server.write("\xFE\x01\xFA")
|
377
381
|
@server.write("\x00\x0B") # 11 (length of "MC|PingHost")
|
378
382
|
@server.write('MC|PingHost'.encode('UTF-16BE').force_encoding('ASCII-8BIT'))
|
@@ -389,6 +393,10 @@ class MineStat
|
|
389
393
|
$stderr.puts exception
|
390
394
|
return Retval::UNKNOWN
|
391
395
|
end
|
396
|
+
if retval == Retval::SUCCESS
|
397
|
+
@request_type = "SLP 1.6 (extended legacy)"
|
398
|
+
set_connection_status(retval)
|
399
|
+
end
|
392
400
|
return retval
|
393
401
|
end
|
394
402
|
|
@@ -415,7 +423,6 @@ class MineStat
|
|
415
423
|
retval = connect()
|
416
424
|
return retval unless retval == Retval::SUCCESS
|
417
425
|
# Perform handshake
|
418
|
-
@request_type = "SLP 1.7 (JSON)"
|
419
426
|
payload = "\x00\x00"
|
420
427
|
payload += [@address.length].pack('c') << @address
|
421
428
|
payload += [@port].pack('n')
|
@@ -460,6 +467,10 @@ class MineStat
|
|
460
467
|
$stderr.puts exception
|
461
468
|
return Retval::UNKNOWN
|
462
469
|
end
|
470
|
+
if retval == Retval::SUCCESS
|
471
|
+
@request_type = "SLP 1.7 (JSON)"
|
472
|
+
set_connection_status(retval)
|
473
|
+
end
|
463
474
|
return retval
|
464
475
|
end
|
465
476
|
|
@@ -544,6 +555,9 @@ class MineStat
|
|
544
555
|
$stderr.puts exception
|
545
556
|
return Retval::UNKNOWN
|
546
557
|
end
|
558
|
+
if retval == Retval::SUCCESS
|
559
|
+
set_connection_status(retval)
|
560
|
+
end
|
547
561
|
return retval
|
548
562
|
end
|
549
563
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: minestat
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.2.
|
4
|
+
version: 2.2.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Lloyd Dilley
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-
|
11
|
+
date: 2022-12-02 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: MineStat polls Minecraft server data such as version, motd, current players,
|
14
14
|
and max players.
|