From 87f262f0eaf0a785e5bbe090ca788f8c498b2f31 Mon Sep 17 00:00:00 2001 From: NicolasCantu Date: Tue, 19 Mar 2024 18:23:04 +0100 Subject: [PATCH] Add treatments desc (doc) --- doc/PRD-PCD-Specs.md | 44 ++++++++++++++++++++++++++++---------------- 1 file changed, 28 insertions(+), 16 deletions(-) diff --git a/doc/PRD-PCD-Specs.md b/doc/PRD-PCD-Specs.md index 270721a..9b6a454 100644 --- a/doc/PRD-PCD-Specs.md +++ b/doc/PRD-PCD-Specs.md @@ -104,17 +104,18 @@ Selon le type de `RequestPrd`, les demandes peuvent s'adresser à tous les membr * Réponse à un `RequestPrdList` : envoyée à l'émetteur du `RequestPrdList`. * Réponse à un `RequestPrdUpdate` : envoyée à tous les membres et à l'émetteur du `RequestPrdUpdate`. -Les traitements des `RequestPrd` varient selon leur type, principalement autour des aspects suivants : +Les traitements pour l'envoi des `RequestPrd` varient selon leur type, principalement autour des aspects suivants : -* **Notification utilisateur** : Nécessité de notifier l'utilisateur courant, ou non. +* **`request_type`**: Est un attribut des `RequestPrd` et des `RequestPcd` permettant de connaître le type de requête. +* **Notification user** : Nécessité de notifier l'utilisateur courant, ou non. * **`transaction SP` + `RequestPrdMessage`** : Envoi d'une `transaction SP` dans un `RequestPrdMessage`, ou non. -* **`RequestPcd` à envoyer** : Envoi d'un `RequestPcd` en complément du `RequestPrd`. -* **`request_type` envoyé à** : Membres qui recevront les `transaction SP` et les `RequestPrdMessage` correspondants, avec les clés de déchiffrement pour les champs confidentiels. -* **Attente d'une réponse `RequestPcd`** : Attente d'un `RequestPcd` en retour, ou non. -* **Attente d'une réponse `RequestPrdResponse`** : Attente d'un ou de plusieurs `RequestPrdResponse` en retour, ou non. -* **Attente d'une réponse `RequestPrdConfirm`** : Attente d'un `RequestPrdConfirm` en retour, ou non. +* **`RequestPcd` to send** : Envoi d'un `RequestPcd` en complément du `RequestPrd`. +* **`request_type` send to** : Membres qui recevront les `transaction SP` et les `RequestPrdMessage` correspondants, avec les clés de déchiffrement pour les champs confidentiels. +* **`RequestPcd` reply waiting** : Attente d'un `RequestPcd` en retour, ou non. +* **`RequestPrdResponse` reply waiting** : Attente d'un ou de plusieurs `RequestPrdResponse` en retour, ou non. +* **`RequestPrdConfirm` reply waiting** : Attente d'un `RequestPrdConfirm` en retour, ou non. -Ce qui est résumé ici : +Ce qui est résumé pour l'envoi : | `request_type` | Notification user | `transaction SP` + `RequestPrdMessage` | `RequestPcd` to send | `request_type` send to | `RequestPcd` reply waiting | `RequestPrdResponse` reply waiting | `RequestPrdConfirm` reply waiting | |----------------------|-----------------------------------------------------------------------------------|----------------------------------------|----------------------|-----------------------------------------------------------------|----------------------------|------------------------------------|-----------------------------------| @@ -124,6 +125,25 @@ Ce qui est résumé ici : | `RequestPrdResponse` | waiting `sig_value` | Yes | No | See Received | No | No | Yes | | `RequestPrdConfirm` | (option) Waiting `code_confirm_enc_by_shared_secret` | Yes | No | See Received | No | No | No | +Les traitements pour la réception des `RequestPrd` varient selon leur type, principalement autour des aspects suivants : + +* **Notification user** : Nécessité de notifier l'utilisateur courant, ou non. +* **`RequestPrdConfirm` to send**: Envoi d'une confirmaiton, ou non +* **`RequestPrdResponse` to send**: Envoi d'un `RequestPrdResponse` ou non. +* **`RequestPrdResponse` reply waiting**: Attente d'un `RequestPrdResponse` en retour ou non. +* **`RequestPrdConfirm` reply waiting (from `RequestPrdResponse` send )**: Attente d'un `RequestPrdConfirm` en retour ou non. + +Ce qui est résumé Pour la réception : + +| `request_type` | Notification user | `RequestPrdConfirm` to send | `RequestPcd` to send | `RequestPrdResponse` to send | `RequestPrdResponse` reply waiting | `RequestPrdConfirm` reply waiting (from `RequestPrdResponse` send ) | +|----------------------|-----------------------------------|------------------------------|----------------------|-----------------------------------------------------------------|------------------------------------|---------------------------------------------------------------------| +| `RequestPrdList` | No | Yes | Yes | all the members of the `item_name` `Role` into to `ItemProcess` | No | Yes | +| `RequestPrdUpdate` | Info | Yes | No | all the members of all `Role` into to `ItemProcess` | Yes (other members) | Yes | +| `RequestPrdMessage` | Waiting `RequestPrdMessage` reply | if no `raw_transaction_list` | No | No | No | No | +| `RequestPrdResponse` | Info | Yes | No | No | No | No | +| `RequestPrdConfirm` | Info | No | No | No | No | No | + + ## 6. Encryption Schema : @@ -271,14 +291,6 @@ La réception d'un `RequestPcd` suit plusieurs étapes : 10. Validation des conditions définies dans le `ItemProcess` pour cet `Item`, avec le `Role` correspondant dans le `ItemProcess`, et dans ces rôles, les conditions pour ce type de `RequestPrd` (dans l'attribut `request_prd_type`) telles que définies dans [Specs-Process-Roles-Specs.md](Specs-Process-Roles-Specs.md). 11. Traitements spécifiques au type de `RequestPrd`. -| `request_type` | Notification user | `RequestPrdConfirm` to send | `RequestPcd` to send | `RequestPrdResponse` to send | `RequestPrdResponse` reply waiting | `RequestPrdConfirm` reply waiting (from `RequestPrdResponse` send ) | -|----------------------|-----------------------------------|------------------------------|----------------------|-----------------------------------------------------------------|------------------------------------|---------------------------------------------------------------------| -| `RequestPrdList` | No | Yes | Yes | all the members of the `item_name` `Role` into to `ItemProcess` | No | Yes | -| `RequestPrdUpdate` | Info | Yes | No | all the members of all `Role` into to `ItemProcess` | Yes (other members) | Yes | -| `RequestPrdMessage` | Waiting `RequestPrdMessage` reply | if no `raw_transaction_list` | No | No | No | No | -| `RequestPrdResponse` | Info | Yes | No | No | No | No | -| `RequestPrdConfirm` | Info | No | No | No | No | No | - ## 9. RequestPrdList - Demande de Listes ( RequestPcd) Utile pour les utilisateurs souhaitant consulter ou explorer des listes de contrats, de membres, ou d'autres items dans le réseau. Chaque `RequestPcd` liste des `Item` d'un même type, tels que les `ItemProcess`, les `ItemMember`, les `ItemPeer`, les `ItemPayment`, etc.