예제 #1
0
import logging
import argparse
import configparser
import threading
from log.server_log_config import *
from log.decorators import Log
from server_database import ServerStorage
from server_gui import MainWindow, gui_create_model, HistoryWindow, create_stat_model, ConfigWindow
from utils import get_message, send_message
from PyQt5.QtWidgets import *
from PyQt5.QtCore import *
from PyQt5.QtGui import QPixmap

# Инициализация логирования сервера.
logger = logging.getLogger('server')
log = Log(logger)

# Флаг, что был подключён новый пользователь, нужен чтобы к БД не было запросов на обновление
new_connection = False
conflag_lock = threading.Lock()


# Парсер аргументов командной строки
@log
def arg_parser(default_port, default_address):
    parser = argparse.ArgumentParser()
    parser.add_argument('-p', default=default_port, type=int, nargs='?')
    parser.add_argument('-a', default=default_address, nargs='?')
    namespace = parser.parse_args(sys.argv[1:])
    listen_address = namespace.a
    listen_port = namespace.p
예제 #2
0
from datetime import datetime
import time
from socket import socket, AF_INET, SOCK_STREAM
from errors import *
from jim.config import *
from jim.utils import send_message, get_message
import logging
import log.log_configs.client_log_config
from log.decorators import Log
from multiprocessing import Process
from threading import Thread
import argparse
import select

client_logger = logging.getLogger('client_logger')
log_client = Log(client_logger)

server_logger = logging.getLogger('server_logger')
log_server = Log(server_logger)


class BaseClient:
    @staticmethod
    def __get_time():
        """
        Метод возвращает текущее время
        :return: str (HH:MM:SS)
        """
        return datetime.now().strftime("%H:%M:%S")

    @log_client