Deseo crear un calendario en mi aplicación que puedan ver los usuarios externos.Creación de un servicio CalDAV con .Net
El formato CalDAV (básicamente WebDAV + iCalendar) parece ser relativamente compatible, aunque si algo inusual para algunos clientes (Outlook, por ejemplo). Completamente nuevo para mí sin embargo.
Quiero publicar eventos externamente, no necesito que los usuarios puedan actualizarlos.
El formato de texto de eventos en los archivos .ics parece relativamente simple:
BEGIN:VCALENDAR
VERSION:2.0
CALSCALE:GREGORIAN
BEGIN:VEVENT
DTSTART:20091130T000000Z
DTEND:20091201T000000Z
SUMMARY:Test event for calendar format
LOCATION:Company site
DESCRIPTION:Test event.\nMore text on a new line
END:VEVENT
END:VCALENDAR
Sin embargo, yo realmente no quieren escribir mi propio constructor archivo ICS. Los nombres clave que comienzan en cada línea no parecen ser muy consistentes entre los archivos ics.
¿Existe una implementación de .Net por ahí? Idealmente, no quiero configurar una implementación completa de WebDAV, solo la capacidad de recuperar un calendario de solo lectura.
Principalmente quiero que esté en una url que los usuarios puedan sincronizar desde teléfonos iPhone, Android y Blackberry. Sé que pueden manejar los servicios de CalDAV de algunos proveedores pero no de otros (por ejemplo, mi iPhone puede sincronizarse desde el calendario de Google pero falla con los eventos de FaceBook). ¿Alguien tiene alguna idea de por qué?
Creo eventos también pueden contener archivos adjuntos MIME - ¿Es esto lo suficientemente compatibles para ser vale la pena analizar también?
actualización
más investigación sobre esto ha identificado algunas inconsistencias extraños en la mayoría de las implementaciones. Ninguno de los principales SO del cliente móvil (iPhone, Blackberry, Android) puede manejar archivos .ics.
Sin embargo, los iPhones pueden abrir un .ics desde una URL (optar por suscribirse a un calendario) y esto también funciona con FaceBook. Blackberry y Android no pueden sin embargo. Creo que Blackberry puede manejar la opción completa de CalDAV (en lugar de solo el archivo .ics) pero no sabe mucho sobre programación para ello.
¿Hay una manera consistente de hacer esto?
Tengo curiosidad, ¿terminaste haciendo algo con esto? – balexandre