Changes for doc/modele.md: 26 added lines, 1 removed line.
Original line number
Diff line number
Diff line
@@ -21,7 +21,7 @@ A noter que les 5 états précédents servent dans des constantes. Une sécurit
Les types d'événements permettent de décrire des actions a traiter par événement. Pour chaque action automatique, il faut définir un événement type avec :
- son code : identifiant textuel unique
- son libelle et une description
- des parametres éventuels : par exemple { "mail-to" } signifiera que l'événement de type test attendrons éventuellement un paramétre de destinataire de mail.
- des parametres éventuels : par exemple { "mail-to" : "adresse@destinataire.fr" } signifiera que l'événement de type test attendrons éventuellement un paramétre de destinataire de mail.
- Récursion : non réimplémenté pour le moment
Pour chaque nouveau type d'événement, il est important de définir un Handler pour implémenter le traitement des événements de ce type. (cf [configuration.md](configuration.md) > Handlers)
@@ -40,6 +40,31 @@ Chaque événement se caractérise par :
- un parent éventuelle (pour les collections d'événements)
- une liste de mots clefs (pour de la recherche)
## Gestions des paramétres
Les parmétres sont considéré comme un champ texte libre que l'on peut utiliser comme on le souhaite.
Cependant, afin de facilité leurs usages, ils peuvent être définie en temps qu'objet JSON.
Coté EvenementType, il faut les considérer comme un modéle de couple <"clé","Exempledevaleurattendu">
Coté Evenement, <"clé","valeur">
Un ensemble de fonctions sont pré-définis pour les manipulés en temps qu'objet JSON.
```
public function hasParametre(string $key): bool;
public function getParametre(string $key): string|array|null;
public function setParametre(string $key, string|array|null $value): static;
public function addParametre(string $key, string|array $value): static;
public function removeParametre(string $key): static;
```
Si un événement (ou un type) est instancié avec des paramètres non convertibles en JSON, ces fonctions ne modifie pas les données et/ou retourne false/null.
Il faut alors utiliser les accesseurs classique pour lire/écrire et interprété les paramètres.
!!! dans les méthodes POST et PATCH des événements, il n'y a pas de contôle sur le fait que les événements sont aux formats JSON.
(amélioration futur).
_Note : si théoriquement, les valeurs peuvent être des tableaux, cette option n'as pas encore été testé_
## Gestions des logs
Chaque instance d'événements dispose d'un champs $logs.