modLogic.py 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. """Содержит всю логику работы с ботами"""
  2. from typing import Any
  3. import json
  4. import requests
  5. class Logic():
  6. """Логика монитора"""
  7. def __init__(self, app: Any) -> None:
  8. self.app = app
  9. self.port = "18061" # Для прода -- 18060
  10. if app.is_prod:
  11. self.port = "18060"
  12. def set_dev(self):
  13. """Устанавливает порт для сервера дева"""
  14. self.port = "18061"
  15. def set_prod(self):
  16. """Устанавливает порт для сервера прода"""
  17. self.port = "18060"
  18. def add_new_bot(self, login: str, _pass: str) -> None:
  19. """Добавляет нового бота на бото ферму"""
  20. data: dict[str, str] = {
  21. "login": login,
  22. "pass": _pass,
  23. "is_auto": "true",
  24. }
  25. res = requests.post("http://localhost:"+self.port +
  26. "/list_bot/add", data=data, timeout=2.0)
  27. print(f"Logic.add_new_bot(): result={res}")
  28. self.app.gui.winMain.update_list_bot()
  29. def get_list_bot(self):
  30. """Возвращает список ботов"""
  31. res = requests.get("http://localhost:"+self.port+"/list_bot/get",
  32. timeout=2.0)
  33. print(f"Logic.add_new_bot(): result={res.text}")
  34. content = json.loads(res.content)
  35. return content
  36. def get_stat_bot(self, name: str):
  37. """Возвращает статистику бота"""
  38. data = {
  39. "name": name,
  40. }
  41. res = requests.post("http://localhost:" +
  42. self.port+"/bot/stat", data=data, timeout=2.0)
  43. print(f"Logic.get_stat_bot(): result={res.text}")
  44. content = json.loads(res.content)
  45. return content