iCal (iCalendar)
iCal é a abreviação de iCalendar, o formato padrão aberto (RFC 5545) que os apps de calendário usam para trocar eventos. Um arquivo iCal é um arquivo de texto com extensão .ics, e um link iCal é uma URL que aponta para um desses arquivos: Google Agenda, Outlook, Calendário da Apple e quase qualquer outro calendário conseguem importar os eventos uma vez ou assinar o link para que eles se atualizem sozinhos. iCal também era o nome do app de calendário da Apple no Mac até 2012, quando passou a se chamar Calendário, por isso a palavra tem os dois sentidos.
Entendendo iCal (iCalendar)
O padrão iCalendar foi publicado em 1998 e tornou-se o idioma universal dos dados de calendário. Um arquivo .ics (ou feed iCal) contém texto estruturado que descreve eventos do calendário, incluindo título, horários de início e término, regras de repetição, participantes, local e descrição. Qualquer aplicativo de calendário que suporte iCalendar pode ler, importar e assinar esses arquivos, independentemente da plataforma que os criou.
O padrão suporta dois principais casos de uso. Primeiro, exportação/importação estática de arquivos .ics: você baixa um arquivo de um calendário e importa em outro. Segundo, assinaturas de calendários ao vivo: seu aplicativo de calendário assina uma URL que retorna um arquivo .ics atualizado, que é renovado periodicamente para que mudanças feitas na origem se propaguem para os assinantes.
Para produtividade pessoal, o iCal é o mecanismo que possibilita o compartilhamento de calendários entre diferentes plataformas. Adicionar uma programação de conferência, jogos de um time de esportes ou um calendário de feriados ao seu calendário pessoal quase sempre utiliza uma URL de assinatura iCal. Para desenvolvedores, o formato iCalendar é essencial para criar, ler ou sincronizar eventos de calendário entre plataformas.
Campos comuns do iCalendar incluem DTSTART e DTEND para horários de eventos, RRULE para padrões de recorrência (por exemplo, 'toda segunda-feira às 9h'), ATTENDEE para endereços de e-mail de participantes e ORGANIZER para o criador do evento. Os componentes VTIMEZONE lidam com conversões de fuso horário, que frequentemente causam problemas em integrações de calendário.
O que tem dentro de um arquivo .ics: é texto simples, que abre em qualquer editor. Ele começa com BEGIN:VCALENDAR, seguido de VERSION:2.0 e de uma linha PRODID com o nome do app que o gerou. Cada evento fica em um bloco próprio, de BEGIN:VEVENT a END:VEVENT, com UID (um identificador fixo, para que uma atualização substitua o evento certo), DTSTAMP, DTSTART, DTEND e SUMMARY, além de LOCATION, DESCRIPTION, RRULE e ATTENDEE opcionais. END:VCALENDAR fecha o arquivo. Cada propriedade é uma linha NOME:valor, e linhas com mais de 75 octetos continuam na linha seguinte, que começa com um espaço. Um horário terminado em Z está em UTC; qualquer outro leva um parâmetro TZID que aponta para um bloco VTIMEZONE.
Como usar iCal no Google Agenda, no Outlook e no Calendário da Apple: no Google Agenda você adiciona um feed em Outras agendas, pela opção de URL, e carrega um arquivo em Importar e exportar, nas configurações. O Outlook chama um feed assinado de calendário da Internet, e os convites de reunião que ele envia e recebe são anexos .ics: é isso que o Outlook chama de arquivo iCalendar. No Mac, o app Calendário assina pelo menu Arquivo, Nova Assinatura de Calendário. Um link webcal:// é o mesmo feed servido por HTTP; o prefixo webcal só avisa o dispositivo para abri-lo no app de calendário.
Conexão iCal ou conexão por API: ferramentas de agendamento, gerenciadores de projetos e portais escolares costumam oferecer uma conexão iCal, que é uma URL privada de feed lida pelo seu calendário. Ela funciona em um só sentido e é somente leitura. O app de calendário decide de quanto em quanto tempo busca o feed de novo, então mudanças podem levar horas para aparecer, você não consegue editar nem responder a esses eventos, e qualquer pessoa com a URL consegue ler o feed, então trate-a como uma senha. Uma conexão por API (direta) faz login no provedor do calendário com OAuth, por exemplo a API do Google Agenda ou o Microsoft Graph no caso do Outlook. Ela funciona nos dois sentidos: o app pode criar, mover e excluir eventos, e as mudanças aparecem em minutos. Use um feed iCal para publicar ou acompanhar uma agenda; use uma conexão por API quando uma ferramenta precisar gerenciar seu calendário.
iCal não é CalDAV: iCalendar é o formato dos dados, enquanto CalDAV (RFC 4791) é o protocolo que servidores como iCloud e Fastmail usam para sincronizar calendários nos dois sentidos, levando dados iCalendar por baixo. O antigo produto iCal Server, da Apple, era um servidor CalDAV, não outro formato de arquivo.
Como GAIA usa iCal (iCalendar)
O GAIA usa conexões diretas por API, não feeds iCal. Conecte o Google Agenda ou o Outlook e o GAIA consegue ler, criar, mover e excluir eventos nesses calendários. Um feed que você assinou dentro do Google Agenda (feriados, a tabela de jogos do seu time, uma agenda compartilhada da equipe) é uma das suas agendas lá, então o GAIA também vê esses eventos e os considera ao planejar seu dia ou apontar um conflito. O GAIA não importa arquivos .ics nem assina URLs iCal por conta própria: adicione o feed ao seu app de calendário primeiro.
Conceitos relacionados
Gestão de Agenda com IA
O gerenciamento de calendário com IA é o uso de inteligência artificial para agendar, organizar e otimizar seu calendário, encontrando horários ideais para reuniões, protegendo blocos de foco, preparando resumos de reuniões e coordenando eventos com suas tarefas e comunicações.
Automação de Calendário
A automação de calendário utiliza IA para gerenciar sua agenda de forma inteligente, encontrando horários ideais para reuniões, preparando resumos, bloqueando tempo para foco e coordenando eventos do calendário com suas tarefas e comunicações.
Agendamento de reuniões
Agendar reuniões é escolher hora, duração e lugar de uma reunião que sirva a cada convidado requerido, incluindo mandar o convite e lidar com mudanças.
Bloqueio de tempo
Bloqueio de tempo é um método de agendamento no qual você divide o seu dia em blocos dedicados, cada um destinado a uma tarefa ou tipo de trabalho, transformando sua agenda em um plano concreto para o dia.
Agendamento inteligente
O agendamento inteligente escolhe sozinho o horário de reunião segundo disponibilidade, fusos, prioridades e ritmos de trabalho, sem idas e vindas por e-mail.
