mirror of
https://github.com/SantaSpeen/RoyaltyIT-tg-bot.git
synced 2026-02-16 02:20:42 +00:00
Refactoring
This commit is contained in:
@@ -29,10 +29,12 @@ $ python3 main.py
|
||||
{
|
||||
"bot_token": "BOT_TOKEN",
|
||||
"remote_chat": -123456789,
|
||||
"new_member_message": "Привет, @%(username)-s!\nДобро пожаловать в наше IT - сообщество.\nЧтобы люди могли в будущем найти тебя, напиши вступительное сообщение о себе с хештегом %(<)-s#знакомство%(</)-s. Приятного времяпрепровождения!",
|
||||
"new_member_message": "new_member_message.txt",
|
||||
"start_message": "start message",
|
||||
"standart_start_message": "Привет, @%(username)-s!\nДобро пожаловать в наше IT - сообщество.\nЧтобы люди могли в будущем найти тебя, напиши вступительное сообщение о себе с хештегом %(<)-s#знакомство%(</)-s.\n\nПриятного времяпрепровождения!",
|
||||
"static_message": {
|
||||
"help": "Я бот, ничем не могу помочь, сорян..."
|
||||
"help": "Я бот, ничем не могу помочь, сорян...",
|
||||
"rules": "\uD83D\uDD16Правила чата:\n\n1. Политические и религиозные высказывания запрещены.\n2. Спам и флуд запрещён.\n3. Оскорбления запрещены.\n4. Запрещено скидывать вредоносное ПО и ссылки.\n5. Запрещено скидывать 18+ контент (порно, расчленёнку и т.д.).\n\nОтноситесь уважительно друг к другу. Чат создан для комфортного и уютного общения IT-шников. Здесь люди помогают друг другу, а не ругаются и высказываются по поводу политики. \n\nС уважением, администрация Royalty❤️"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
@@ -23,6 +23,7 @@ class Config:
|
||||
self.static_message: dict = None
|
||||
|
||||
self.__new_member_message: dict = None
|
||||
self.standart_start_message: str = None
|
||||
|
||||
self._read_config()
|
||||
|
||||
@@ -40,16 +41,17 @@ class Config:
|
||||
self.messages_object = self.raw_config.get("messages")
|
||||
self.start_message = self.raw_config.get("start_message")
|
||||
self.static_message = self.raw_config.get("static_message")
|
||||
self.standart_start_message = self.raw_config.get("standart_start_message")
|
||||
|
||||
@property
|
||||
def new_member_message(self) -> str:
|
||||
if not self.__new_member_message:
|
||||
with open(self.raw_config['new_member_message']) as f:
|
||||
with open(self.raw_config['file_start_message']) as f:
|
||||
self.__new_member_message = f.read()
|
||||
return self.__new_member_message
|
||||
|
||||
@new_member_message.setter
|
||||
def new_member_message(self, v):
|
||||
with open(self.raw_config['new_member_message'], "w") as f:
|
||||
with open(self.raw_config['file_start_message'], "w") as f:
|
||||
f.write(v)
|
||||
self.__new_member_message = v
|
||||
18
src/main.py
18
src/main.py
@@ -29,7 +29,15 @@ unmute_perm = types.ChatPermissions(
|
||||
can_send_polls=True,
|
||||
can_send_other_messages=True
|
||||
)
|
||||
standart_hello_message = "Привет, @%(username)-s!\nДобро пожаловать в наше IT - сообщество.\nЧтобы люди могли в будущем найти тебя, напиши вступительное сообщение о себе с хештегом %(<)-s#знакомство%(</)-s.\n\nПриятного времяпрепровождения!"
|
||||
formating = """
|
||||
```
|
||||
new_member_message % {
|
||||
"username": user['username'],
|
||||
"<": "<code>", # Start codeblock
|
||||
"</": "</code>" # Close codeblock
|
||||
}
|
||||
```
|
||||
"""
|
||||
|
||||
|
||||
@dp.message_handler(commands=["start"], chat_type=ChatType.PRIVATE)
|
||||
@@ -174,16 +182,16 @@ async def set_hello_message(msg: types.Message):
|
||||
hello = err = None
|
||||
|
||||
if mode in ("default", "standart"):
|
||||
hello = standart_hello_message
|
||||
hello = config.standart_start_message
|
||||
elif mode == "new":
|
||||
if len(splt) > 2:
|
||||
hello = " ".join(splt[2:])
|
||||
else:
|
||||
err = "`/set new [ hello message ]`"
|
||||
elif mode == "help":
|
||||
err = "Помощь по команде:\n1. `/set new [ hello_message ] `, - Устанавливает приветсвенное сообщене равное `hello_message`\n2. `/set default ` или ` /set standart `, - Установка стандартного сообщения"
|
||||
err = f"Форматировние:{formating}Помощь по команде:\n1. `/set new [ hello_message ] `, - Устанавливает приветсвенное сообщене равное `hello_message`\n2. `/set [ default, standart ] `, - Установка стандартного сообщения\n3. `/set help `, - Вывод этого сообщения"
|
||||
else:
|
||||
err = 'Досупные моды: `[("default", "standart"), "new"]`'
|
||||
err = 'Досупные моды: `["help", ("default", "standart"), "new"]`'
|
||||
|
||||
if hello:
|
||||
config.new_member_message = hello
|
||||
@@ -193,7 +201,7 @@ async def set_hello_message(msg: types.Message):
|
||||
|
||||
else:
|
||||
|
||||
await msg.reply("""Применяемое форматирование:\n```\nnew_member_message % {\n\n\t"username": user['username'],\n\t"<": "<code>", # Start codeblock\n\t"</": "</code>" # Close codeblock\n\n}```\nПример выполнения команды: `/set [mode] [ [message] ]`""", parse_mode=ParseMode.MARKDOWN)
|
||||
await msg.reply("""Пример выполнения команды: `/set [mode] [ [message] ]`""", parse_mode=ParseMode.MARKDOWN)
|
||||
|
||||
|
||||
@dp.message_handler(content_types=['new_chat_members'], chat_type=ChatType.SUPERGROUP)
|
||||
|
||||
@@ -2,4 +2,4 @@
|
||||
Добро пожаловать в наше IT - сообщество.
|
||||
Чтобы люди могли в будущем найти тебя, напиши вступительное сообщение о себе с хештегом %(<)-s#знакомство%(</)-s.
|
||||
|
||||
Приятного времяпрепровождения!
|
||||
Приятного времяпрепровождения!
|
||||
Reference in New Issue
Block a user