This commit is contained in:
Евгений Храмов 2023-05-29 23:02:56 +03:00
parent 9faa706f12
commit 9de6bde5a5

45
hlna.py

@ -872,32 +872,33 @@ def rcon(g, m, c):
def rcon_local(g, m="", c=""): def rcon_local(g, m="", c=""):
try: if g == "ark":
rcon_ports = [] try:
dict_mapname = {} rcon_ports = []
dict_adminpwd = {} dict_mapname = {}
for i in list_config: dict_adminpwd = {}
data = read_yaml(i, g="ark") for i in list_config:
dict_mapname[data['RCONPort']] = data['SessionName'] data = read_yaml(i, g="ark")
dict_adminpwd[data['RCONPort']] = data['ServerAdminPassword'] dict_mapname[data['RCONPort']] = data['SessionName']
if m == "all": dict_adminpwd[data['RCONPort']] = data['ServerAdminPassword']
print_line(m, flag="CYAN") # if m == "all":
for rcon_p in dict_mapname: # print_line(m, flag="CYAN")
rcon_ports.append(rcon_p) # for rcon_p in dict_mapname:
else: # rcon_ports.append(rcon_p)
# else:
for rcon_p, name_map in dict_mapname.items(): for rcon_p, name_map in dict_mapname.items():
if name_map in m: if name_map in m:
rcon_ports.append(rcon_p) rcon_ports.append(rcon_p)
for port in rcon_ports: for port in rcon_ports:
passwd = dict_adminpwd[port] passwd = dict_adminpwd[port]
with Client('127.0.0.1', port, passwd=str(passwd)) as client: with Client('127.0.0.1', port, passwd=str(passwd)) as client:
response = client.run(c) response = client.run(c)
print_line(f"Rcon выполнен {response} {dict_mapname[port]}", flag="GREEN") print_line(f"Rcon выполнен {response} {dict_mapname[port]}", flag="GREEN")
else: else:
pass pass
except: except:
print_line(f"Ошибка отправки команды {c} в {m}", flag="RED") print_line(f"Ошибка отправки команды {c} в {m}", flag="RED")
def zero(x=""): def zero(x=""):