Pular para o conteúdo principal

Lembretes

O recurso Lembretes permite definir lembretes agendados que disparam como notificações toast no seu navegador. Agende um lembrete e a plataforma notificará quando o horário chegar.

Criando um Lembrete

Use o comando /remind em qualquer chat:

/remind 30m verificar o status do build

A plataforma analisa o horário e mensagem, agenda o lembrete e confirma no chat:

Lembrete definido para 30m: verificar o status do build

Sintaxe do Comando

/remind [tempo] [mensagem]

As palavras "me" e "in" são opcionais e serão ignoradas:

/remind me in 30 minutes to check the build
/remind 2h review the PR
/remind 1d deploy to production

Formatos de Tempo

FormatoUnidadeExemplo
30s, 30sec, 30secondsSegundos/remind 30s check the timer
5m, 5min, 5minutesMinutos/remind 5m take a break
2h, 2hrs, 2hoursHoras/remind 2h review PR
1d, 1day, 1daysDias/remind 1d follow up on email

O valor de tempo deve ser um número seguido por uma unidade. Apenas tempos relativos ("em X minutos/horas") são suportados.

dica

Você pode usar a palavra "to" entre o tempo e mensagem para fraseado natural: /remind 1h to check the deployment

Como Lembretes Funcionam

  1. Quando você cria um lembrete, ele é armazenado no IndexedDB sob a chave ais-reminders
  2. Um setTimeout JavaScript é agendado para a duração especificada
  3. Quando o timer dispara, uma notificação toast aparece com sua mensagem
  4. O lembrete é automaticamente removido do armazenamento após disparar

Verificação de Visibilidade de Página

Lembretes também verificam itens vencidos sempre que sua aba do navegador se torna visível (usando a API de Visibilidade de Página). Isso lida com o caso onde seu computador estava dormindo ou a aba estava em segundo plano quando o lembrete venceu.

aviso

Lembretes requerem que a aba do navegador esteja aberta. Eles não são notificações push do lado do servidor. Se você fechar a aba ou o navegador, lembretes dispararão na próxima vez que você abrir o aplicativo (se estiverem vencidos), mas não acordarão seu dispositivo.

Visualizando Lembretes Ativos

Lembretes ativos (ainda não disparados) são armazenados no IndexedDB. Atualmente, você pode vê-los via mensagem de confirmação no chat. Uma UI dedicada de gerenciamento de lembretes está planejada para uma versão futura.

Cancelando Lembretes

Lembretes disparam uma vez e são automaticamente removidos. Atualmente não há comando para cancelar um lembrete pendente antes de disparar. Para evitar um lembrete indesejado, você pode limpar o chat ou recarregar a página (lembretes são reagendados do armazenamento no carregamento, então isso por si só não os cancelará).

Persistência

Lembretes sobrevivem a recarregamentos de página. Quando o aplicativo inicializa:

  1. Todos os lembretes salvos são carregados do IndexedDB
  2. O timeout de cada lembrete é reagendado baseado em seu horário vencido armazenado
  3. Se um lembrete já está vencido, dispara imediatamente

Limitações

LimitaçãoDetalhe
Aba do navegador necessáriaLembretes são apenas do lado do cliente -- eles precisam que a aba esteja aberta
Apenas tempo relativoSem "às 15h" ou "amanhã às 9h" -- apenas "em X minutos/horas/dias"
Sem lembretes recorrentesCada lembrete dispara uma vez
Dispositivo únicoLembretes são armazenados no navegador e não sincronizam entre dispositivos
Timeout máximoJavaScript setTimeout tem um máximo de ~24.8 dias (2^31 ms). Lembretes além disso podem não disparar com precisão
informação

Lembretes são associados a um bot específico. O lembrete é armazenado com o ID do bot, então está vinculado à conversa onde você o criou.