Volver a las guías

Añade un evento de calendario a una etiqueta NFC: el registro vCalendar

Una etiqueta NFC puede hacer que el teléfono añada un evento de calendario con solo un toque, usando el mismo formato iCalendar que tu teléfono ya lee. Esto es lo que contiene el registro, cómo escribirlo con una app de consumo y las peculiaridades de cada plataforma.

Publicado

Respuesta rápida

Sí: una etiqueta NFC puede guardar un evento de calendario, y al tocarla puede pedirle al teléfono que añada ese evento al instante. El truco es un payload vCalendar (técnicamente iCalendar) escrito en la etiqueta como un registro, de la misma forma en que un registro NDEF personalizado puede llevar una URL, texto plano o una tarjeta de contacto en lugar de un enlace web. Título, hora, ubicación: todo viaja con la etiqueta. Sin servidor, sin código QR, sin teclear nada.

Esto es lo que realmente contiene ese registro, cómo escribir uno sin tocar una sola línea de código, y en qué punto el truco falla según qué teléfono sea el que toca.

Paso a paso: cómo escribir el registro vCalendar

Qué contiene realmente el registro

Un evento de calendario en una etiqueta es un bloque VEVENT, la misma estructura que usa cualquier archivo .ics. Como mínimo necesita un SUMMARY (el título), un DTSTART y un DTEND. LOCATION y DESCRIPTION son opcionales, pero vale la pena añadirlos si hay espacio. El propio iCalendar está definido por RFC 5545, que reemplazó al antiguo formato vCalendar (.vcs) en 2009 — por eso la gente sigue llamando a esto un "registro vCalendar" aunque los bytes de una etiqueta moderna sean iCalendar.

No existe un tipo de registro dedicado del NFC Forum para eventos de calendario. En su lugar, el payload viaja como un registro de tipo MIME genérico: text/calendar como tipo, el texto .ics sin procesar como payload. Es exactamente el mismo mecanismo que usa una etiqueta de tarjeta de presentación vCard, solo que con un tipo MIME distinto y otro texto dentro.

Cómo escribirlo con una app de consumo

No hace falta construir nada de esto a mano. Apps como NFC Tools (iOS y Android) incluyen un tipo de registro de evento de calendario justo junto a los de texto, URL y contacto. Rellena un título, una fecha y hora, una ubicación — la app arma el bloque VEVENT y lo escribe por ti.

Una nota práctica sobre el tamaño de la etiqueta: un evento básico (título, inicio/fin, sin descripción) suele caber sin problema en una NTAG213. Si añades una descripción o una ubicación más larga, vas a necesitar el espacio extra de una NTAG215 o NTAG216.

Problemas comunes y cómo solucionarlos

El toque no hace nada. Normalmente no es una etiqueta defectuosa, sino un controlador que falta. Cuando un teléfono toca un registro de tipo MIME, el sistema operativo busca una app registrada para abrir archivos text/calendar y le entrega el contenido. Si nada en el teléfono reclama ese tipo MIME, no pasa nada visible. NFC en sí no promete ningún aviso de "abrir en Calendario".

El evento se abre con la hora equivocada. Si escribes DTSTART/DTEND sin el sufijo UTC "Z" o un TZID, el calendario receptor interpreta los dígitos como hora local. Bien si todos comparten zona horaria. Mal en cuanto alguien no la comparta.

iOS y Android se comportan de forma distinta. Es una diferencia real de plataforma, no algo que se arregle en la etiqueta. Algunas apps de Calendario predeterminadas importan sin problema un registro text/calendar tocado; otras lo descartan en silencio. ¿Buscas algo más predecible en iPhone? Un disparador NFC de Atajos de iOS que abra un enlace de calendario es más fiable que depender del registro MIME sin más.

Cómo hacerlo con NFCore

El escritor de NFCore incluye un tipo de registro de evento de calendario en el mismo menú de escritura que sus otros registros estructurados, así que no construyes el bloque VEVENT a mano: introduces los datos del evento una vez y escribes la etiqueta.

Es la misma idea que escribir una tarjeta de presentación NFC vCard: un payload basado en estándares que viaja en un registro MIME, generado desde un formulario en lugar de bytes escritos a mano. ¿Vas a preparar un lote de estas etiquetas para un evento o una sala de reuniones recurrente? Vale la pena echarle un vistazo a NFCore.

Preguntas frecuentes

¿Cuál es la diferencia entre vCalendar e iCalendar?

vCalendar (.vcs) fue el formato original de los años 90; iCalendar (.ics, RFC 5545) lo reemplazó y es lo que las apps de calendario modernas realmente leen y escriben hoy. "Registro vCalendar" sigue siendo el nombre común de una etiqueta NFC de evento de calendario, pero los bytes escritos en la etiqueta son iCalendar.

¿Al tocar la etiqueta se añade automáticamente el evento a mi calendario?

No siempre. El teléfono necesita una app registrada para manejar un registro MIME text/calendar. La mayoría de las apps de Calendario predeterminadas en Android e iOS ofrecerán importarlo, pero un teléfono sin ningún controlador coincidente instalado no hará nada visible al tocarlo.

¿Necesito programar algo para escribir un evento de calendario en una etiqueta?

No. Apps de consumo como NFC Tools incluyen un tipo de registro de evento de calendario en su menú de escritura: rellenas el título, la fecha, la hora y la ubicación, y la app construye el registro subyacente por ti.

¿Cuánta memoria de la etiqueta necesita un evento de calendario?

Un evento mínimo — título, hora de inicio/fin, ubicación — suele caber en unos pocos cientos de bytes como texto plano. Eso funciona bien en una NTAG213 para un evento corto, pero una descripción más larga te empuja hacia una NTAG215 o NTAG216 para tener espacio de sobra.

Conclusión

Una etiqueta NFC de evento de calendario es solo un payload iCalendar que viaja en un registro MIME: fácil de escribir con una app de consumo, y solo tan fiable como el controlador instalado en el teléfono que la toca. Combina una con un lugar físico donde un recordatorio de un solo toque realmente evite que alguien se pierda algo — una mesa de conferencias, la puerta de una sala de reuniones recurrente, un tablón de horarios de clase.