Message¶
- class Message(content: RecordDict, dst_node_id: int, message_type: str, *, ttl: float | None = None, group_id: str | None = None, dst_task_id: int | None = None)[source]¶
- class Message(content: RecordDict, *, reply_to: Message, ttl: float | None = None)
- class Message(error: Error, *, reply_to: Message, ttl: float | None = None)
Bases :
InflatableObjectReprésente un message échangé entre ClientApp et ServerApp.
Cette classe encapsule le payload et les métadonnées nécessaires à la communication entre une Application ClientApp et une Application ServeurServerApp.
- Paramètres:
content (Optional[RecordDict] (default: None)) – Retient des enregistrements soit envoyés par une autre entité (par exemple, envoyés par la logique côté serveur vers un client, ou vice-versa) ou qui seront envoyés à elle.
error (Optional[Error] (default: None)) – Une classe de données qui capture les informations sur l’erreur qui s’est produite lors du traitement d’un autre message.
dst_node_id (Optional[int] (default: None)) – Un identifiant pour le nœud recevant ce message.
message_type (Optional[str] (default: None)) – Une chaîne qui encode l’action à exécuter sur la fin réceptrice.
ttl (Optional[float] (default: None)) – Durée de vie (TTL) pour ce message en secondes. Si None (par défaut), la durée de vie est fixée à 43 200 secondes (12 heures).
group_id (Optional[str] (default: None)) – Un identifiant pour regrouper les messages. Dans certains contextes, cela est utilisé comme le tour FL.
dst_task_id (Optional[int] (default: None)) – Expérimental. Un identifiant pour la tâche de destination recevant ce message.
reply_to (Optional[Message] (default: None)) – Le message d’instruction auquel ce message est une réponse. Ce message ne conserve pas le contenu original mais dérive ses métadonnées à partir de lui.
Methods
create_error_reply(error[, ttl])Construire un message de réponse indiquant qu'une erreur s'est produite.
create_reply(content[, ttl])Créer une réponse à ce message avec du contenu spécifié et TTL.
deflate()Défléter le message.
Renvoyer True si le message a du contenu, sinon False.
Renvoyer True si le message a une erreur, sinon False.
inflate(object_content[, children])Infléitez un Message à partir de bytes.
Attributes
Retournez un dictionnaire d'un seul RecordDict avec ses IDs d'objet en tant que clé.
Le contenu de ce message.
Erreur capturée par ce message.
Vérifier si l'objet est sale après la dernière déflation.
Un dataclass incluant des informations sur le message à exécuter.
Récupérez l'ID d'objet.
- property children: dict[str, InflatableObject] | None¶
Retournez un dictionnaire d’un seul RecordDict avec ses IDs d’objet en tant que clé.
- property content: RecordDict¶
Le contenu de ce message.
- create_error_reply(error: Error, ttl: float | None = None) Message[source]¶
Construire un message de réponse indiquant qu’une erreur s’est produite.
- Paramètres:
error (Error) – L’erreur qui a été rencontrée.
ttl (Optional[float] (default: None)) – Durée de vie pour ce message en secondes. Si non défini, il sera déterminé en fonction du temps restant avant l’expiration du message reçu. Cela suit l’équation : ttl = msg.meta.ttl - (reply.meta.created_at - msg.meta.created_at)
- Renvoie:
message – Un Message contenant uniquement l’erreur et les métadonnées pertinentes.
- Type renvoyé:
- create_reply(content: RecordDict, ttl: float | None = None) Message[source]¶
Créer une réponse à ce message avec du contenu spécifié et TTL.
La méthode génère un nouveau Message en tant que réponse à ce message. Il hérite de “run_id”, “src_node_id”, “dst_node_id”, et “message_type” de ce message et définit “reply_to_message_id” à l’ID de ce message.
- Paramètres:
content (RecordDict) – Le contenu pour le message de réponse.
ttl (Optional[float] (default: None)) – Durée de vie pour ce message en secondes. Si non défini, il sera déterminé en fonction du temps restant avant l’expiration du message reçu. Cela suit l’équation : ttl = msg.meta.ttl - (reply.meta.created_at - msg.meta.created_at)
- Renvoie:
Un nouveau Message instance représentant la réponse.
- Type renvoyé:
- classmethod inflate(object_content: bytes, children: dict[str, InflatableObject] | None = None) Message[source]¶
Infléitez un Message à partir de bytes.
- Paramètres:
object_content (bytes) – Le contenu défléi de l’objet du Message.
children (Optional[dict[str, InflatableObject]] (default: None)) – Dictionnaire des enfants InflatableObjects mappés à leurs IDs d’objet. Ces enfants permettent l’inflation complète du Message.
- Renvoie:
Le Message gonflé.
- Type renvoyé:
- property is_dirty: bool¶
Vérifier si l’objet est sale après la dernière déflation.
Un objet est considéré comme sale si son contenu a changé depuis le dernier calcul de son ID d’objet.
- property object_id: str¶
Récupérez l’ID d’objet.