Calendario (iCal) formato .ics

Tengo un puñado de eventos que quiero ingresar en Calendar. Dado que tengo muchos eventos, me gustaría copiar/pegar en un archivo e importar el archivo, en lugar de ingresarlos manualmente. ¿Alguien sabe el formato para un evento determinado?

Encontré esto en un archivo .ics:

BEGIN:VEVENT
SUMMARY:Girls U14 Div 1A- Newton G Panthers VS Arlington GU14 A Team 
UID:5248
DESCRIPTION;ENCODING=QUOTED-PRINTABLE: There is a game at Valeo Main - Valeo Main
LOCATION:Valeo Main - Valeo Main
DTSTART;TZID=/US/Eastern:20131109T100000
DTEND;TZID=/US/Eastern:20131109T113000
URL:http://www.bays.org/iCal/iCal.php?2339
END:VEVENT

Parece bastante sencillo, aunque no sé qué usar para un UID.

gracias bruce

¿"Tienes un puñado de eventos" en qué formato o aplicación actualmente?
Los "eventos" no están en ningún formato en particular. Recibo un correo electrónico con horas y fechas (a veces varias fechas) y ubicaciones para diferentes eventos, y sería conveniente incluir la información esencial en un archivo .ics (si supiera el formato) e importarlo a Calendario. Gracias por tu interés.
¿Quieres enviar un archivo .ics a otras personas? Si es así, puede exportar un evento o incluso un calendario. Si desea ingresar cosas que la gente le envía a su calendario, la función de "detector de datos" de Mac a veces le permite ingresar un evento y automáticamente obtiene los datos del correo (si pasa el mouse sobre una fecha en un correo electrónico, hay debe ser un pequeño triángulo en el que pueda hacer clic). O echa un vistazo a la fantástica aplicación, tal vez eso es lo que estás buscando.
no, no quiero enviar un archivo .ics. Quiero escribir mi propio archivo .ics e importarlo a mi Calendario. Gracias.
¿Quieres hacer algún tipo de automatización? En caso afirmativo, ofrezca más detalles. Dudo que esté planeando escribir un archivo .ics a mano y luego importarlo. Si es así, ¿por qué no usar el mouse para crear un evento en ical?
Iba a crear un .ics a mano. A veces recibo muchos eventos en un correo electrónico y pensé que sería más fácil pegar los eventos en .emacs, hacer una edición "rápida" y luego importar el archivo .ics. Todavía puedo intentar esto, pero (como usted sugiere) podría ser más simple simplemente crear eventos en ical (o usar Fantastical, como sugirió otra persona). Gracias.

Respuestas (2)

La especificación de iCalendar describe lo que se requiere en un archivo .ics. En resumen, un archivo .ics simple se ve así:

BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//hacksw/handcal//NONSGML v1.0//EN
BEGIN:VEVENT
UID:19970610T172345Z-AF23B2@example.com
DTSTAMP:19970610T172345Z
DTSTART:19970714T170000Z
DTEND:19970715T040000Z
SUMMARY:Bastille Day Party
END:VEVENT
END:VCALENDAR

El UID es un identificador único. Se utiliza principalmente para secuenciar varias solicitudes de iCalendar. La especificación de iCalendar brinda orientación sobre cómo crearlo:

Un buen método para asegurar la unicidad es poner el nombre de dominio o una dirección IP literal de dominio del host en el que se creó el identificador en el lado derecho de una "@", y en el lado izquierdo, poner una combinación de la fecha del calendario actual y la hora del día (es decir, formateada como un valor de FECHA-HORA) junto con algún otro identificador actualmente único (quizás secuencial) disponible en el sistema (por ejemplo, un número de identificación de proceso). El uso de un valor FECHA-HORA en el lado izquierdo y un nombre de dominio o literal de dominio en el lado derecho permite garantizar la unicidad ya que dos hosts no deben usar el mismo nombre de dominio o dirección IP al mismo tiempo. Aunque otros algoritmos funcionarán,

La mayoría de las aplicaciones de calendario son bastante indulgentes con los archivos .ics mal formados. Si sus eventos son bastante simples (sin recurrencia, sin invitaciones, etc.), probablemente no sea demasiado difícil combinar un AppleScript (o cualquier lenguaje de secuencias de comandos que prefiera) para crearlos para usted. Aquí hay un AppleScript de StackOverflow .

Las especificaciones para el componente de eventos iCalendar se pueden encontrar aquí: tools.ietf.org/html/rfc2445#section-4.6.1

Hace unos años escribí una explicación rápida de cómo construir un generador de calendario ics usando MySQL y PHP. Puede que le resulte útil.