Rappels
La fonctionnalité Rappels vous permet de définir des rappels minutés qui se déclenchent comme des notifications toast dans votre navigateur. Planifiez un rappel et la plateforme vous notifiera quand l'heure arrive.
Créer un Rappel
Utilisez la commande /remind dans n'importe quel chat :
/remind 30m vérifier le statut du build
La plateforme analyse le temps et le message, programme le rappel, et le confirme dans le chat :
Rappel programmé pour 30m : vérifier le statut du build
Syntaxe de la Commande
/remind [temps] [message]
Les mots "me" et "in" sont optionnels et seront ignorés :
/remind me in 30 minutes de vérifier le build
/remind 2h revoir la PR
/remind 1d déployer en production
Formats de Temps
| Format | Unité | Exemple |
|---|---|---|
30s, 30sec, 30seconds | Secondes | /remind 30s vérifier le minuteur |
5m, 5min, 5minutes | Minutes | /remind 5m faire une pause |
2h, 2hrs, 2hours | Heures | /remind 2h revoir la PR |
1d, 1day, 1days | Jours | /remind 1d suivre l'email |
La valeur de temps doit être un nombre suivi d'une unité. Seuls les temps relatifs ("dans X minutes/heures") sont supportés.
Vous pouvez utiliser le mot "de" entre le temps et le message pour un phrasé naturel :
/remind 1h de vérifier le déploiement
Comment Fonctionnent les Rappels
- Quand vous créez un rappel, il est stocké dans IndexedDB sous la clé
ais-reminders - Un
setTimeoutJavaScript est programmé pour la durée spécifiée - Quand le minuteur se déclenche, une notification toast apparaît avec votre message
- Le rappel est automatiquement retiré du stockage après déclenchement
Vérification de Visibilité de Page
Les rappels vérifient également les éléments en retard chaque fois que votre onglet de navigateur devient visible (en utilisant l'API Page Visibility). Cela gère le cas où votre ordinateur était en veille ou l'onglet était en arrière-plan quand le rappel était dû.
Les rappels nécessitent que l'onglet du navigateur soit ouvert. Ce ne sont pas des notifications push côté serveur. Si vous fermez l'onglet ou le navigateur, les rappels se déclencheront la prochaine fois que vous ouvrirez l'application (s'ils sont en retard), mais ils ne réveilleront pas votre appareil.
Voir les Rappels Actifs
Les rappels actifs (pas encore déclenchés) sont stockés dans IndexedDB. Actuellement, vous pouvez les voir via le message de confirmation dans le chat. Une interface dédiée de gestion des rappels est prévue pour une version future.
Annuler des Rappels
Les rappels se déclenchent une fois et sont automatiquement supprimés. Il n'y a actuellement pas de commande pour annuler un rappel en attente avant son déclenchement. Pour éviter un rappel indésirable, vous pouvez effacer le chat ou recharger la page (les rappels sont re-programmés depuis le stockage au chargement, donc cela seul ne les annulera pas).
Persistance
Les rappels survivent aux rechargements de page. Quand l'application s'initialise :
- Tous les rappels sauvegardés sont chargés depuis IndexedDB
- Le timeout de chaque rappel est re-programmé en fonction de son heure d'échéance stockée
- Si un rappel est déjà en retard, il se déclenche immédiatement
Limitations
| Limitation | Détail |
|---|---|
| Onglet navigateur requis | Les rappels sont côté client uniquement -- ils ont besoin que l'onglet soit ouvert |
| Temps relatif uniquement | Pas de "à 15h" ou "demain à 9h" -- uniquement "dans X minutes/heures/jours" |
| Pas de rappels récurrents | Chaque rappel se déclenche une fois |
| Appareil unique | Les rappels sont stockés dans le navigateur et ne se synchronisent pas entre appareils |
| Timeout maximum | Le setTimeout JavaScript a un max de ~24,8 jours (2^31 ms). Les rappels au-delà peuvent ne pas se déclencher avec précision |
Les rappels sont associés à un bot spécifique. Le rappel est stocké avec l'ID du bot, donc il est lié à la conversation où vous l'avez créé.