Abrir automáticamente archivos ICS en Google Calendar

12

Muchos sitios web tienen una opción para exportar eventos como un archivo ICS que luego puede importarse a un escritorio o calendario basado en la web (por ejemplo, si está invitado a un evento de Facebook, habrá un botón de exportación que le dará un ICS archivo).

De manera predeterminada en Firefox 3.5 en Vista, aquí solo me ofrecen tres opciones: "Abrir con el calendario de Windows", "Abrir con otro" o "Guardar archivo", así que lo que haría es guardar el archivo en mi PC y luego iniciar sesión en Google Calendar e importe ese archivo ICS.

Lo que me gustaría es tener una opción de tipo "Abrir con Google Calendar" o "Importar a Google Calendar" cuando hago clic en el enlace Exportar.

Sé que puede configurar Firefox para enviar mailto:enlaces a GMail , y tengo instalada la extensión Operator que detectará las entradas de microformato hCalendar incrustadas en el texto y ofrecerá importarlas a Google Calendar, pero no puedo resolver cómo configurar cualquiera de estos para hacer lo que necesito.

Preferiblemente haría esto sin instalar ningún software adicional, y de una manera que funcione con una cuenta de Google Apps (pero si alguien puede apuntar hacia una solución para el Calendario de Google normal, sería un buen comienzo).

GAThrawn
fuente
Estoy interesado en esto también. has buscado userscripts.org? lifehacker.com?
Capi Etheriel 01 de

Respuestas:

3

¡Encontré una solución final para esto! Lo basé en el código para agregar Gmail como mailto: handler, y lo adapté usando la información tomada del archivo de preferencias de Google Chrome:

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

Para usarlo, simplemente vaya a Google Calendar, abra la consola web de Firefox (Ctrl + Shift + K) y péguelo en el cuadro de código.

F-Lambda
fuente
¡Brillante, justo lo que esperaba, parece hacer todo lo que debería hacer y es muy simple!
GAThrawn
44
Recibo el siguiente error cuando ejecuto el comando. Permission denied to add https://www.google.com/calendar/render?cid=%s as a content or protocol handler
tatsuhirosatou
No funciona en FF 30 en Ubuntu ya que es un archivo VCS / ICS.
Gaurav Kumar
@tatsuhirosatou lo ejecuta desde google.com
Good Person
2
Esto todavía funciona, e incluso persiste en su perfil de usuario, pero la URL ha cambiado. Ahora necesitas ingresar javascript:window.navigator.registerProtocolHandler("webcal","https://calendar.google.com/calendar/render?cid=%s","Google Calendar");. Como Good Person dijo anteriormente, esto solo funcionará si se ejecuta desde una pestaña que tiene calendar.google.com cargado.
Artfunkel
1

He creado una pequeña aplicación .NET para hacer precisamente eso. Si asocia la extensión .ics a esta aplicación, cada vez que haga doble clic en un archivo .ics o haga clic en un enlace a uno, esta aplicación lo importará al calendario de Google que configure, y funciona con dominios alojados en Google.

Sé que prefiere una solución "sin software", pero tal vez esto podría serle útil.

Está disponible en: http://gcalicsimporter.codeplex.com/ .

Alejandro Mezcua
fuente
1
¡Gracias! Pero no uso .NET y no sé suficiente .NET para comprender rápidamente el enfoque básico aquí. ¿Estás abriendo una URL del calendario de Google, utilizando algún tipo de API? ¿Puede señalar la API de Google Calendar relevante que está utilizando o lo que sea para que podamos implementarlo en otras plataformas?
nealmcb
Chrome no permitirá que ese archivo se descargue ya que es "peligroso". Hace ya una década que esta pregunta ha estado ahí afuera y es francamente tonto, no hay una manera directa de hacer doble clic en un archivo ics que se agrega automáticamente al calendario de Google.
James Bowery
1

iCalendar no es un microformato, así que me temo que Operator no te va a ayudar aquí. Por lo tanto, necesitará una extensión de Firefox o una aplicación auxiliar para hacer esto. No sé si existe uno y Google no me ayudó cuando busqué. Suena como una buena oportunidad de desarrollo.

Solución alternativa: guarde el archivo .ics en el disco y luego cree un borrador de correo electrónico en Gmail. Titúlelo como sea, adjunte el archivo .ics. Guárdelo y vaya a la vista Borradores. Ahora debería ver un ícono de calendario a la derecha del borrador del correo electrónico que creó. Haga clic para agregar el evento a Google Calendar. Simple, ¿eh?

Actualización: me gustaría ir con la solución .NET de Alejandro si tienes esa opción.

dschwarz
fuente
2
Su solución en realidad suena más complicada que el archivo ICS de guardado normal en el disco, ¡luego haga clic en el botón Importar calendario en Google Calendar! ¡Es extraño, pensarías que esto es algo que molestaría a mucha gente! ¿Me pregunto si se podría hacer con un script de Greasemonky?
GAThrawn