You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Все версии самые последние
Код(вставил только то что имеет отношение к проблеме т.к. файл на 2000 строк, если чего-то не дописал то сорян):
class CreateLongPoll(VkLongPoll):
def listen(self):
while True:
try:
for event in self.check():
yield event
except Exception as e:
if str(e)[1] != '<':
print(e, end=" FROM MAIN.PY->MyLongPoll->listen\n")
class VkBot:
def __init__(self):
self.vk_session = vk_api.VkApi(token=vk_token)
self.longpoll = CreateLongPoll(self.vk_session)
self.vk = self.vk_session.get_api()
self.event = None
self.db = None
def run(self):
while True:
for self.event in self.longpoll.listen():
if self.event.type == VkEventType.MESSAGE_NEW and self.event.to_me and self.event.text:
try:
self.db = utils.getOrCreateUserById(self.event.user_id)
link = self.vk.utils.getShortLink(url=f"{cfg.linkongroup}?ref={self.db.vk_id}")
print(link['url'], link['short_url'])
print(self.event.ref, self.event.ref_source)
except:
traceback.print_exc()
if __name__ == "__main__":
VkBot().run()
The text was updated successfully, but these errors were encountered:
Разобрался. Нужно было искать атрибуты в ответе messages.getById(message_ids=[self.event.message_id])
У меня это выглядело следующим образом: self.vk.messages.getById(message_ids=[self.event.message_id], extended=1)['items'][0]['ref'])
Все версии самые последние
Код(вставил только то что имеет отношение к проблеме т.к. файл на 2000 строк, если чего-то не дописал то сорян):
The text was updated successfully, but these errors were encountered: