L'interface RetentionPolicyInterface répond aux exigences de conservation des données. Elle permet d'automatiser le nettoyage des anciennes conversations pour respecter vos engagements de confidentialité ou le RGPD.
| Méthode | Rôle |
|---|---|
shouldDeleteConversation(...) |
Décide si une conversation doit être purgée maintenant. |
getMaxRetentionDays() |
Temps de conservation par défaut pour les rapports. |
=== "StandardRetentionPolicy.php"
```php
namespace App\Synapse\Security;
use ArnaudMoncondhuy\SynapseCore\Contract\RetentionPolicyInterface;
class StandardRetentionPolicy implements RetentionPolicyInterface
{
public function shouldDeleteConversation($conversation): bool
{
$updatedAt = $conversation->getUpdatedAt();
$diff = $updatedAt->diff(new \DateTime());
return $diff->days > 30;
}
public function getMaxRetentionDays(): int { return 30; }
}
```
[!TIP] Action Différée : Synapse Core fournit une commande console
synapse:purgequi utilise cette interface. Vous pouvez planifier cette commande via un CRON pour un nettoyage quotidien.
How can I help you explore Laravel packages today?