1
0
Fork 0
mirror of https://github.com/aclist/dztui.git synced 2024-12-28 05:12:36 +01:00
dztui/helpers/query.py
2023-11-23 13:55:15 +09:00

51 lines
1.1 KiB
Python

import sys
import a2s
import math
import json
from a2s import dayzquery
sys.path.append('a2s')
def get_info(ip, qport):
try:
info = a2s.info((ip, int(qport)))
name = info.server_name
address = ip + ":" + str(info.port)
count = str(info.player_count) + "/" + str(info.max_players)
keywords = info.keywords
ping = (info.ping*1000)
ping = math.floor(ping)
res = {}
res['name'] = name
res['address'] = address
res['count'] = count
res['keywords'] = keywords
res['stat'] = "online"
res['qport'] = qport
res['ping'] = str(ping) + "ms"
j = json.dumps(res)
print(j)
except:
sys.exit(1)
def get_rules(ip, qport):
try:
mods = dayzquery.dayz_rules((ip, int(qport))).mods
for k in mods:
print(k.workshop_id)
except:
sys.exit(1)
ip = sys.argv[1]
qport = sys.argv[2]
mode = sys.argv[3]
match mode:
case "info":
get_info(ip, qport)
case "rules":
get_rules(ip, qport)