добавлена функция проверки статуса серверов
This commit is contained in:
parent
935c268d74
commit
ca1623fa75
67
hlna_bot.py
67
hlna_bot.py
@ -1,16 +1,18 @@
|
||||
#!/usr/bin/env python3
|
||||
import errno
|
||||
import time
|
||||
import sys
|
||||
import os
|
||||
import telebot
|
||||
from telebot import types
|
||||
import subprocess
|
||||
import yaml
|
||||
import colorama
|
||||
|
||||
import hlna
|
||||
|
||||
list_config = hlna.list_config
|
||||
hlna.print_line(list_config)
|
||||
|
||||
|
||||
def start():
|
||||
if not os.path.exists(f"{hlna.home_dir}/.config/hlna/bot/hlna_bot"):
|
||||
@ -35,6 +37,18 @@ def start():
|
||||
start()
|
||||
|
||||
|
||||
def check_status(m):
|
||||
for i in list_config:
|
||||
data = hlna.read_yaml(i)
|
||||
hlna.print_line(data)
|
||||
x = os.system(f"lsof -w -i :{data['Port']}")
|
||||
n_srv = data['SessionName']
|
||||
if x != 0:
|
||||
hlna_bot.send_message(m.chat.id, text=f"Сервер {n_srv} не работает 🛑")
|
||||
elif x == 0:
|
||||
hlna_bot.send_message(m.chat.id, text=f"Сервер {n_srv} запустился 🟢")
|
||||
|
||||
|
||||
def read_config():
|
||||
with open(f"{hlna.home_dir}/.config/hlna/bot/hlna_bot", "r") as yamlfile:
|
||||
data = yaml.load(yamlfile, Loader=yaml.FullLoader)
|
||||
@ -53,9 +67,11 @@ def create_config(key_api):
|
||||
print(colorama.Fore.GREEN + "Конфиг бота создан" + colorama.Style.RESET_ALL)
|
||||
return k_api
|
||||
|
||||
start()
|
||||
data = read_config()
|
||||
|
||||
start()
|
||||
|
||||
|
||||
data = read_config()
|
||||
k_api = data['key_api']
|
||||
hlna_bot = telebot.TeleBot(f"{k_api}", parse_mode=None)
|
||||
|
||||
@ -102,20 +118,8 @@ def m_chose(m):
|
||||
menu_start.add(k_back)
|
||||
hlna_bot.send_message(m.chat.id, text="{0.first_name}, выбери карту".format(m.from_user), reply_markup=menu_start)
|
||||
elif (m.text.strip() == '🧾 Статус'):
|
||||
for i in list_config:
|
||||
data = hlna.read_yaml(i)
|
||||
x = os.system(f"lsof -w -i :{data['Port']}")
|
||||
n_srv = data['SessionName']
|
||||
if x != 0:
|
||||
hlna_bot.send_message(m.chat.id, text=f"Сервер {n_srv} не работает 🛑")
|
||||
while x != 0:
|
||||
time.sleep(5)
|
||||
x = os.system("lsof -w -i :7778")
|
||||
hlna_bot.send_message(m.chat.id, text="Сервер запустился 🟢".format(
|
||||
m.from_user))
|
||||
# elif x == 0:
|
||||
# time.sleep(30)
|
||||
# pass
|
||||
check_status(m)
|
||||
|
||||
elif m.text.strip() == 'Назад':
|
||||
m_start(m)
|
||||
elif m.text.strip() == 'TheIsland':
|
||||
@ -127,12 +131,9 @@ def m_install(m):
|
||||
hlna_bot.send_message(m.chat.id, subprocess.check_output(hlna.config(), shell=True))
|
||||
|
||||
|
||||
print("Bot started")
|
||||
print("Бот запущен")
|
||||
hlna_bot.polling(none_stop=True, interval=0, timeout=999)
|
||||
|
||||
# print("Start")
|
||||
#
|
||||
|
||||
# subprocess.run(["arkmanager", "start", "--alwaysrestart", "@all"])
|
||||
# elif m.text.strip() == '🦇 Выключить':
|
||||
# subprocess.run(["arkmanager", "stop", "@all"])
|
||||
@ -158,27 +159,3 @@ hlna_bot.polling(none_stop=True, interval=0, timeout=999)
|
||||
# id = m.text.strip()
|
||||
# subprocess.run(["arkmanager", "installmods", id, "@all"])
|
||||
# subprocess.run(["arkmanager", "enablemod", id, "@all"])
|
||||
# def check(m):
|
||||
#
|
||||
# while True:
|
||||
# x = os.system("lsof -w -i :7777")
|
||||
# if x!=0:
|
||||
# bot.send_message(m.chat.id, text="Сервер не работает 🛑".format(
|
||||
# m.from_user))
|
||||
# bot.send_message(-1001585320535,text="Сервер не работает 🛑".format(
|
||||
# m.from_user),reply_markup=types.ReplyKeyboardRemove())
|
||||
#
|
||||
# while x!=0:
|
||||
# time.sleep(5)
|
||||
# x = os.system("lsof -w -i :7778")
|
||||
# bot.send_message(m.chat.id, text="Сервер запустился 🟢".format(
|
||||
# m.from_user))
|
||||
# bot.send_message(-1001585320535,text="Сервер запустился 🟢".format(
|
||||
# m.from_user))
|
||||
#
|
||||
# elif x == 0:
|
||||
# time.sleep(30)
|
||||
# pass
|
||||
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user