Как работают события чата?#
Для правильного написания программ с использованием FunPayAPI необходимо понимать как именно обнаруживаются изменения в чатах. Из-за того что FunPay не имеет официального API, этот процесс в некоторых моментах работает контринтуитивно.
Первый запрос#
Метод слушателя событий FunPayAPI.updater.runner.Runner.listen()
при первом запуске сканирует всех существующие
чаты на аккаунте (не более 50) со страницы https://funpay.com/chat/ и генерирует события
FunPayAPI.updater.events.InitialChatEvent
для каждого чата.
Сохраняются текст и дата отправки последнего сообщения каждого чата в словарь FunPayAPI.updater.runner.Runner.last_messages
в следующем формате:
{
ID чата (int): [текст последнего сообщения (str) (не более 250 символов), время отправки последнего сообщения (str)],
ID чата (int): [текст последнего сообщения (str) (не более 250 символов), время отправки последнего сообщения (str)],
ID чата (int): [текст последнего сообщения (str) (не более 250 символов), время отправки последнего сообщения (str)],
...
}
А так же в отдельный словарь FunPayAPI.updater.runner.Runner.init_messages
сохраняются текста последних сообщений
каждого чата:
{
ID чата (int): текст последнего сообщения (str) (не более 250 символов)
ID чата (int): текст последнего сообщения (str) (не более 250 символов)
ID чата (int): текст последнего сообщения (str) (не более 250 символов)
...
}
Позже вы поймете для чего используется отдельный словарь с текстами последних сообщений.
# todo добавить фото