itdirr
Online
Модуль online позволяет поддерживать статус "в сети" через SSE-поток.
Держать статус онлайн
client.keep_online()
Запускает фоновый поток который держит SSE-соединение с сервером — сайт видит пользователя онлайн.
Параметры
on_event— колбэк-функция для обработки входящих событий (необязательный)background—True(по умолчанию): запускает в фоновом потоке,False: блокирует текущий поток
Возвращает
threading.Thread если background=True, иначе None
Пример — просто держать онлайн
client.keep_online()
# Дальнейший код выполняется сразу — поток работает в фоне
import time
while True:
time.sleep(1)
Пример — с обработкой событий
def on_event(event_type, data):
if event_type == "like":
print("Новый лайк на пост!")
elif event_type == "comment":
print("Новый комментарий!")
elif event_type == "follow":
print("Новый подписчик!")
else:
print(f"Событие: {event_type}", data)
client.keep_online(on_event=on_event)
Пример — блокирующий режим
# Подходит для простых скриптов где нужно только держать онлайн
client.keep_online(background=False)
Особенности
- При обрыве соединения переподключается автоматически
- При истечении токена (401) — переавторизуется автоматически
- Пинги от сервера игнорируются автоматически