first commit

This commit is contained in:
2025-11-05 18:29:49 +03:00
commit a80c03a27d
41 changed files with 7713 additions and 0 deletions

163
RPL/main.py Normal file
View File

@@ -0,0 +1,163 @@
import socket
import requests
def send_data(value):
url = "http://127.0.0.1:8088/API/"
par = "SetText"
if 'проверка' in value:
input = 34
else:
input = 35
if "-" in value:
params = {
"Function": par,
"Input": input,
"SelectedName": "СТрока1.Text",
"Value": value.split("-")[0].strip(),
}
requests.get(url, params=params)
params = {
"Function": par,
"Input": input,
"SelectedName": "Строка2.Text",
"Value": value.split("-")[1].strip(),
}
requests.get(url, params=params)
VOR = "VOR3"
list_code = {
"101": "Приветствие",
"102": "Инфо",
"103": "Игра проходит без системы определения офсайдных линий",
"104": "Игра проходит без системы VAR",
"105": "Проверка",
"106": "проверка - Офсайд",
"107": "проверка - Возможно, офсайд",
"108": "проверка - Игра рукой",
"109": "проверка - Фол в атаке",
"110": "проверка - Симуляция",
"111": "Игра проходит с системой VAR",
"112": "Игра проходит с ограниченными техническими возможностями",
"113": "Объявление решения",
"114": "Неисправность системы объявления решений судьи",
"115": "Не используется система объявления решений судьи",
"116": "Решение подтверждено - офсайд",
"117": "Нет офсайда",
"118": "Возможно игра рукой в атаке",
"119": "проверка - Игра рукой в атаке",
"201": "проверка - Гол",
"202": "Решение подтверждено - гол",
"203": "Решение подтверждено - гол, нет офсайда",
"204": "Решение подтверждено - гол, нет фола",
"205": "Решение подтверждено - гол, нет игры рукой",
"206": "Решение подтверждено - гол, мяч в игре",
"207": "Решение подтверждено - гол, симуляция",
"208": "Решение подтверждено - гол, мяч пересек линию ворот",
"209": "Решение изменено - нет гола, офсайд",
"210": "Решение изменено - нет гола, фол",
"211": "Решение изменено - нет гола, игра рукой",
"212": "Решение изменено - нет гола, мяч не в игре",
"213": "Решение изменено - нет гола, мяч не пересек линию ворот",
"301": "проверка - Возможно, гол",
"302": "Решение подтверждено - нет гола",
"303": "Решение подтверждено - нет гола, офсайд",
"304": "Решение подтверждено - нет гола, фол",
"305": "Решение подтверждено - нет гола, игра рукой",
"306": "Решение подтверждено - нет гола, мяч не в игре",
"307": "Решение подтверждено - нет гола, мяч не пересек линию ворот",
"308": "Решение изменено - гол",
"309": "Решение изменено - гол, нет офсайда",
"310": "Решение изменено - гол, нет фола",
"311": "Решение изменено - гол, нет игры рукой",
"312": "Решение изменено - гол, мяч в игре",
"313": "Решение изменено - гол, симуляция",
"314": "Решение изменено - гол, мяч пересек линию ворот",
"401": "проверка - Пенальти",
"402": "Решение подтверждено - пенальти",
"403": "Решение подтверждено - пенальти, фол",
"404": "Решение подтверждено - пенальти, игра рукой",
"405": "Решение подтверждено - пенальти, фол в штрафной",
"406": "Решение подтверждено - пенальти, игра рукой в штрафной",
"407": "Решение изменено - нет пенальти, нет фола",
"408": "Решение изменено - нет пенальти, нет игры рукой",
"409": "Решение изменено - нет пенальти, фол за штрафной",
"410": "Решение изменено - нет пенальти, офсайд",
"411": "Решение изменено - нет пенальти, фол в атаке",
"412": "Решение изменено - нет пенальти, игра рукой в атаке",
"413": "Решение изменено - нет пенальти, мяч не в игре",
"414": "Решение изменено - нет пенальти, симуляция",
"501": "проверка - Возможно, пенальти",
"502": "Решение подтверждено - нет пенальти",
"503": "Решение подтверждено - нет пенальти, нет фола",
"504": "Решение подтверждено - нет пенальти, нет игры рукой",
"505": "Решение подтверждено - нет пенальти, фол за штрафной",
"506": "Решение подтверждено - нет пенальти, офсайд",
"507": "Решение подтверждено - нет пенальти, фол в атаке",
"508": "Решение подтверждено - нет пенальти, игра рукой в атаке",
"509": "Решение подтверждено - нет пенальти, мяч не в игре",
"510": "Решение подтверждено - нет пенальти, симуляция",
"511": "Решение изменено - пенальти",
"512": "Решение изменено - пенальти, фол",
"513": "Решение изменено - пенальти, игра рукой",
"514": "Решение изменено - пенальти, фол в штрафной",
"515": "Решение изменено - пенальти, игра рукой в штрафной",
"516": "Решение изменено пенальти, нет симуляции",
"601": "проверка - Красная карточка",
"602": "Решение подтверждено - красная карточка",
"603": "Решение изменено - жёлтая карточка",
"604": "Решение изменено - нет карточки",
"701": "проверка - Возможно, красная карточка",
"702": "Решение подтверждено - нет красной карточки",
"703": "Решение изменено - красная карточка",
"704": "Решение изменено - жёлтая карточка",
"801": "проверка - Идентификация игрока",
"802": "Ошибочная идентификация игрока",
}
HOST = '127.0.0.1' # Принимаем соединения со всех интерфейсов
PORT = 60000 # Порт, который будем слушать
def start_tcp_server():
with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as server_socket:
server_socket.bind((HOST, PORT))
server_socket.listen(5)
print(f"Сервер запущен на {HOST}:{PORT}")
while True:
client_socket, addr = server_socket.accept()
with client_socket:
print(f"Клиент подключился: {addr}")
while True:
data = client_socket.recv(1024)
if not data:
break
try:
decoded = data.decode('utf-8')
print(f"Получено: {decoded}")
send_data(list_code[decoded.split("/")[2]])
# parts = decoded.split(", ")
# if len(parts) != 2:
# print("Неверный формат сообщения")
# continue
# sender, code = parts
# if sender == VOR and code in list_code:
# send_data(list_code[code])
# else:
# print("Неверный код или отправитель")
except Exception as e:
print(f"Ошибка обработки данных: {e}")
print(f"Отключение клиента: {addr}")
if __name__ == "__main__":
start_tcp_server()