Passer au contenu principal
Utilitaires de streaming robustes pour le SDK X API. Ce module gère les connexions de streaming avec reconnexion automatique, backoff exponentiel et gestion complète des erreurs. Les clients peuvent consommer des points de terminaison de streaming sans avoir à se soucier de la gestion des connexions : le SDK s’occupe automatiquement de toute la reprise.

class xdk.streaming.StreamConfig

Configuration des connexions de streaming avec logique de nouvelle tentative.

Paramètres

path.max_retries
int
défaut:"10"
path.initial_backoff
float
défaut:"1.0"
path.max_backoff
float
défaut:"64.0"
path.backoff_multiplier
float
défaut:"2.0"
path.jitter
bool
défaut:"True"
path.timeout
float or None
défaut:"None"
path.chunk_size
int
défaut:"1024"
path.on_connect
Callable[[], None] or None
défaut:"None"
path.on_disconnect
Callable[[Exception or None], None] or None
défaut:"None"
path.on_reconnect
Callable[[int, float], None] or None
défaut:"None"
path.on_error
Callable[[[StreamError

__init__

Paramètres

path.max_retries
int
défaut:"10"
path.initial_backoff
float
défaut:"1.0"
path.max_backoff
float
défaut:"64.0"
path.backoff_multiplier
float
défaut:"2.0"
path.jitter
bool
défaut:"True"
path.timeout
float or None
défaut:"None"
path.chunk_size
int
défaut:"1024"
path.on_connect
Callable[[], None] or None
défaut:"None"
path.on_disconnect
Callable[[Exception or None], None] or None
défaut:"None"
path.on_reconnect
Callable[[int, float], None] or None
défaut:"None"
path.on_error
Callable[[[StreamError

on_error : Callable[[[StreamError]

exception xdk.streaming.StreamError

Exception levée pour des erreurs de streaming accompagnées d’une classification.

Paramètres

path.message
str
path.error_type
StreamErrorType

__init__

Paramètres

path.message
str
path.error_type
StreamErrorType

class xdk.streaming.StreamErrorType

Classification des erreurs de streaming pour les décisions de réessai.

Paramètres

path.value
Any

class xdk.streaming.StreamState

État interne d’une connexion de streaming.

Paramètres

path.retry_count
int
défaut:"0"
path.current_backoff
float
défaut:"1.0"
path.is_connected
bool
défaut:"False"
path.total_items_received
int
défaut:"0"
path.last_error
StreamError

__init__

Paramètres

path.retry_count
int
défaut:"0"
path.current_backoff
float
défaut:"1.0"
path.is_connected
bool
défaut:"False"
path.total_items_received
int
défaut:"0"
path.last_error
StreamError

last_error : [StreamError]

xdk.streaming.stream_with_retry

Diffuser des données à partir d’un endpoint avec reconnexion automatique et backoff exponentiel. Cette fonction prend entièrement en charge la gestion de la connexion, y compris :
  • Reconnexion automatique en cas de déconnexion
  • Backoff exponentiel avec jitter pour les délais entre les nouvelles tentatives
  • Classification des errors comme réessayables ou fatales
  • Callbacks de cycle de vie pour surveiller l’état de la connexion

Paramètres

path.session
Session
La session requests à utiliser pour les appels HTTP.
path.method
str
Méthode HTTP (généralement « GET »).
path.url
str
L’URL complète depuis laquelle diffuser le flux.
path.config
StreamConfig
StreamConfig avec les paramètres de réessai et de callback.