вкрутил телетон, но есть одно но

он терь не грузит сообщения и крашится
This commit is contained in:
kldk-lab 2025-01-27 22:43:22 +03:00 committed by GitHub
parent 9f7aafafd8
commit 82c9d12a9b
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -25,12 +25,16 @@ class Chat(Widget):
classes=classes, classes=classes,
disabled=disabled disabled=disabled
) )
global personid
personid = 0
self.notify = notify_func self.notify = notify_func
def _on_click(self): def _on_click(self):
global personid
self.msg = str(self.peer_id) self.msg = str(self.peer_id)
self.notify("нажат чат") personid = int(self.peer_id)
self.app.notify("нажат чат")
def compose(self): def compose(self):
with Horizontal(): with Horizontal():
@ -43,16 +47,27 @@ class Dialog(Widget):
"""Класс окна диалога""" """Класс окна диалога"""
def __init__(self, id=None, classes=None, disabled=False, telegram_client: TelegramClient | None = None): def __init__(self, id=None, classes=None, disabled=False, telegram_client: TelegramClient | None = None):
global personid
super().__init__(id=id, classes=classes, disabled=disabled) super().__init__(id=id, classes=classes, disabled=disabled)
self.telegram_client = telegram_client self.telegram_client = telegram_client
self.personid = personid
async def load_messages(self):
self.messages = []
for messages1 in self.telegram_client.iter_dialogs(self.personid, limit=5):
messages.append(messages1.text)
def compose(self): def compose(self):
messages = self.messages
with Vertical(): with Vertical():
with VerticalScroll(id="dialog"): with VerticalScroll(id="dialog"):
yield Message(message="привет, я ыплыжлп", is_me=True) yield Message(message=messages[0], is_me=True)
yield Message(message="о, дщытрапшщцрущ", is_me=False) yield Message(message=messages[1], is_me=False)
yield Message(message="ДАТОУШЩАРШЩУРЩША!!!!", is_me=False) yield Message(message=messages[2], is_me=False)
yield Message(message=messages[3], is_me=True)
yield Message(message=messages[4], is_me=False)
# должно быть примерно # должно быть примерно
# is_me = message.from_id == client.get_peer_id("me") # is_me = message.from_id == client.get_peer_id("me")
@ -67,10 +82,10 @@ class Dialog(Widget):
yield Input(placeholder="Сообщение", id="msg_input") yield Input(placeholder="Сообщение", id="msg_input")
yield Button(label="", id="send", variant="primary") yield Button(label="", id="send", variant="primary")
def on_button_pressed(self, event): # self добавил async def on_button_pressed(self, event): # self добавил
self.app.notify("Нажато отправить") self.app.notify("Нажато отправить")
self.message_text = self.query_one("#msg_input").value self.message_text = self.query_one("#msg_input").value
self.telegram_client.send_message("ultimate_fish", self.message_text) await self.telegram_client.send_message(personid, str(self.message_text))