Abrir arquivos ICS automaticamente no Google Agenda


12

Muitos sites têm a opção de exportar eventos como um arquivo ICS que pode ser importado para um calendário da área de trabalho ou baseado na Web (por exemplo, se você for convidado para um evento no Facebook, haverá um botão de exportação que fornece um ICS Arquivo).

Por padrão, no Firefox 3.5 no Vista, são oferecidas apenas três opções aqui: "Abrir com o Calendário do Windows", "Abrir com outros" ou "Salvar arquivo"; portanto, o que eu faria é salvar o arquivo no meu PC e, em seguida, registrar no Google Agenda e importe esse arquivo ICS.

O que eu gostaria é de ter uma opção do tipo "Abrir com o Google Agenda" ou "Importar para o Google Agenda" quando clicar no link Exportar.

Eu sei que você pode configurar o Firefox para enviar mailto:links para o GMail , e eu tenho a extensão Operator instalada que detectará as entradas de microformato hCalendar incorporadas no texto e oferecerá a importação para o Google Calendar, mas não consigo descobrir como configurar qualquer um deles para fazer o que eu preciso.

De preferência, eu faria isso sem instalar nenhum software adicional e de uma maneira que funcione com uma conta do Google Apps (mas se alguém puder apontar para uma solução para o Google Agenda normal, seria um bom começo).


Também estou interessado nisso. você pesquisou userscripts.org? lifehacker.com?
Capi Etheriel 01/12/2009

Respostas:


3

Encontrei uma solução final para isso! Baseei-o no código para adicionar o Gmail como um manipulador mailto: e adaptado usando as informações extraídas do arquivo de preferências do Google Chrome:

javascript:window.navigator.registerProtocolHandler("webcal","https://www.google.com/calendar/render?cid=%s","Google Calendar");

Para usá-lo, basta ir ao Google Agenda, abrir o console da Web do Firefox (Ctrl + Shift + K) e colá-lo na caixa de código.


Brilhante, exatamente o que eu esperava, parece fazer tudo o que deveria fazer e tão simples!
precisa

4
Eu recebo o seguinte erro quando executo o comando. Permission denied to add https://www.google.com/calendar/render?cid=%s as a content or protocol handler
Tatsuhirosatou 11/10/12

Não funciona no FF 30 no Ubuntu, pois é um arquivo VCS / ICS.
Gaurav Kumar

@tatsuhirosatou executá-lo em google.com
Good Person

2
Isso ainda funciona e ainda persiste no seu perfil de usuário, mas o URL foi alterado. Agora você precisa entrar javascript:window.navigator.registerProtocolHandler("webcal","https://calendar.google.com/calendar/render?cid=%s","Google Calendar");. Como o Good Person disse acima, isso só funcionará se for executado em uma guia que tenha calendar.google.com carregada!
Artfunkel 06/12/19

1

Eu criei um pequeno aplicativo .NET para fazer exatamente isso. Se você associar a extensão .ics a este aplicativo, sempre que você clicar duas vezes em um arquivo .ics ou clicar em um link para um, esse aplicativo importará para o calendat do Google que você configurou e funcionará com os domínios hospedados pelo Google.

Sei que você prefere uma solução "sem software", mas talvez isso possa ser útil para você.

Está disponível em: http://gcalicsimporter.codeplex.com/ .


1
Obrigado! Mas eu não uso .NET e não conheço .NET suficiente para entender rapidamente a abordagem básica aqui. Você está abrindo um URL do Google Agenda, usando algum tipo de API? Você pode apontar para a API do Google Agenda relevante que você está usando ou o que for, para que possamos implementá-la em outras plataformas?
Nealmcb

O Chrome não permitirá que o arquivo seja baixado por ser "perigoso". Já faz uma década que essa pergunta já existe e é absolutamente bobo que não haja uma maneira direta de fazer com que o clique duplo em um arquivo ics seja adicionado automaticamente ao calendário do Google.
James Bowery

1

O iCalendar não é um microformato, portanto, receio que o Operador não o ajude aqui. Então, você precisará de uma extensão separada do Firefox ou de um aplicativo auxiliar para fazer isso. Não sei se existe e o Google não ajudou em nada quando procurei. Parece uma boa oportunidade de desenvolvimento.

Solução alternativa: salve o arquivo .ics em disco e crie um rascunho de email no Gmail. Seja qual for o título, anexe o arquivo .ics. Salve-o e vá para a exibição Rascunhos. Agora você deve ver um ícone de calendário à direita do rascunho de email criado. Clique nele para adicionar o evento ao Google Agenda. Simples, né?

Atualização: Eu usaria a solução .NET de Alejandro, se você tiver essa opção.


2
Sua solução alternativa realmente parece mais complicada do que o arquivo ICS de salvamento normal em disco e clique no botão Importar calendário no Google Agenda! É estranho, você pensaria que isso era algo pelo qual muitas pessoas ficariam irritadas! Gostaria de saber se isso poderia ser feito com um script Greasemonky?
GAThrawn
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.