SyncThemCalendars

Ferramenta gratuita

Gerador de RRULE

Regras de recorrência sem dores de cabeça com sintaxe. Aponte e clique no seu padrão, veja as próximas ocorrências serem atualizadas em tempo real e copie uma RRULE correta para qualquer aplicativo de calendário ou API.

Seu padrão de recorrência

semana(s)

Nos dias

Termina

Sua regra

RRULE

Como aparece em um arquivo .ics

Próximas ocorrências

    A visualização mostra até 8 datas futuras, calculadas a partir da data da primeira ocorrência.

    Regras de recorrência comuns

    Quase todos os eventos recorrentes se resumem a um punhado de padrões: todos os dias, todos os dias úteis, a cada duas semanas, na primeira segunda-feira do mês, uma vez por ano. Aqui está cada um deles em inglês simples ao lado da RRULE que ele produz. Clique em um padrão para carregá-lo no gerador acima e ajustá-lo a partir daí.

    Clique em um padrão para carregá-lo no gerador.
    O que você deseja RRULE
    RRULE:FREQ=DAILY
    RRULE:FREQ=WEEKLY;BYDAY=MO,TU,WE,TH,FR
    RRULE:FREQ=WEEKLY;INTERVAL=2;BYDAY=TU
    RRULE:FREQ=MONTHLY;BYDAY=1MO
    RRULE:FREQ=MONTHLY;BYDAY=-1FR
    RRULE:FREQ=YEARLY;BYMONTH=1;BYMONTHDAY=1
    RRULE:FREQ=DAILY;COUNT=10
    RRULE:FREQ=WEEKLY;BYDAY=WE;UNTIL=20271231

    UNTIL precisa usar o mesmo tipo de valor que o seu DTSTART. Um evento de dia inteiro (DTSTART;VALUE=DATE:20270105) usa uma data simples, UNTIL=20271231, enquanto um evento com horário usa uma data e hora UTC, UNTIL=20271231T000000Z. Misturar as duas formas é um motivo comum para uma regra ser rejeitada.

    Eventos recorrentes são onde a sincronização de calendários falha

    Fusos horários, exceções, ocorrências movidas: eventos recorrentes são a coisa mais difícil de manter consistente entre calendários. O SyncThemCalendars lida com tudo isso automaticamente entre Google, Outlook e Apple iCloud.

    Começar a sincronizar gratuitamente

    Perguntas frequentes

    O que é uma RRULE?

    RRULE é a propriedade iCalendar (RFC 5545) que descreve como um evento se repete: "toda segunda terça-feira", "dias úteis até junho", "a última sexta-feira de cada mês". É a linguagem de recorrência usada pelo Google Calendar, Outlook, Apple Calendar e pelas APIs de calendário por trás deles.

    Onde uso a regra gerada?

    Cole-a em um arquivo .ics na linha após DTSTART, ou passe-a para uma API de calendário. O events.insert do Google Calendar a utiliza no array de recorrência, e servidores CalDAV a aceitam dentro dos dados iCalendar do evento. O Microsoft Graph é a exceção: ele usa um objeto de recorrência estruturado (padrão + intervalo) em vez de strings RRULE, portanto a regra precisa ser traduzida. Em .ics, ela deve estar dentro de um VEVENT junto com um DTSTART.

    Qual é a diferença entre UNTIL e COUNT?

    COUNT para após um número fixo de ocorrências; UNTIL para em uma data. Dois pontos de atenção clássicos: UNTIL é inclusivo (uma ocorrência exatamente no instante do UNTIL ainda acontece), e para eventos com horário definido, a especificação exige o UNTIL em UTC. Formatos incompatíveis são uma fonte comum de erros de contagem.

    Por que aplicativos de calendário às vezes discordam sobre a mesma regra?

    As implementações diferem nos detalhes: qual dia da semana inicia a semana (WKST é importante para regras quinzenais), como um dia 31 ausente é tratado em meses curtos e o suporte a partes exóticas como BYSETPOS. Manter-se nos padrões comuns que este gerador produz garante que você permaneça em um território que todos os principais aplicativos lidam de forma idêntica.