44 lines
1.7 KiB
Python
44 lines
1.7 KiB
Python
from api import send_message, delete_message, get_chat_administrators
|
||
from storage import Profile, storage
|
||
from handlers.send_button import show_request_msg
|
||
|
||
|
||
async def handle_default(msg):
|
||
print("default handler for all messages")
|
||
chat_id = str(msg["chat"]["id"])
|
||
from_id = str(msg["from"]["id"])
|
||
sender = Profile.get(from_id, msg)
|
||
|
||
if msg["text"].startswith("/my"):
|
||
# команда в групповом чате
|
||
print("remove some messages in group chat")
|
||
|
||
# удалить сообщение с командой /my
|
||
r = await delete_message(chat_id, msg["message_id"])
|
||
print(r)
|
||
|
||
# показать новое сообщение с кнопкой
|
||
# для дополнительного поручения
|
||
show_request_msg(msg)
|
||
else:
|
||
# любое другое сообщение
|
||
if len(sender["parents"]) == 0:
|
||
# владелец чата автоматически ручается
|
||
print(f"setting owner as parent for {from_id}")
|
||
r = await get_chat_administrators(chat_id)
|
||
print(r)
|
||
owner_id = ""
|
||
for admin in r["result"]:
|
||
if admin["status"] == "creator":
|
||
owner_id = admin["user"]["id"]
|
||
break
|
||
if owner_id:
|
||
sender["parents"].append(str(owner_id))
|
||
# обновляем профиль владельца
|
||
owner = Profile.get(owner_id)
|
||
owner["children"].append(str(from_id))
|
||
Profile.save(owner)
|
||
|
||
# сохранить профиль отправителя
|
||
Profile.save(sender)
|