# Sincronización iCal - Importación y exportación iCal

En está sección de la documentación, usted encontrará información sobre el menú **Sincronización iCal - Importación y exportación iCal**.

![ical-menu-item.png](./attachments/ical-menu-item.png)

HBook permite **importar**, **exportar** y **sincronizar los calendarios** gracias a los flujos y ficheros iCal. Por defecto, HBook inicia la sincronización con los calendarios externos todas las horas. Se puede modificad hasta cada 5 minutos.

> [!INFO]
> Se recomienda utilizar HBook como **calendario principal** y ajustar la sincronización entre HBook y sus calendarios externos **de ambos sentidos**. No se debe sincronizar dos calendarios externos juntos si ya están sincronizados con HBook.

* * *

<a id="qué-es-la-sincronización-ical"></a>

## ¿Qué es la sincronización iCal?

iCal es un formato de ficheros muy útil para intercambiar calendarios. Este formato está utilizado para:

- aplicaciones de tipo Agenda/Calendario: iCal, Google Calendar, Outlook Calendar...
- plataformas de reservas y OTA: AirBnb, booking.com, TripAdvisor, Expedia, VRBO, HomeAway, etc...

Lo que llamamos sincronización es en realidad un import de un flujo de datos iCal que se efectúa a intervales regulares por cada calendario/plataforma/OTA de manera independiente. Esto es lo se pasa:

- Cada hora (o la frecuencia indicada en **HBook > Sincronización iCal > Ajustes de la sincronización iCal**), HBook comprueba los flujos iCal de todos los calendarios añadidos en **HBook > Sincronización iCal > Calendarios sincronizados**. Usted puede actualizar sus calendarios manualmente (= iniciar manualmente la sincronización) haciendo clic sobre el botón "Actualizar calendarios". Cualquier nueva reserva sera importada en HBook y aparecerá en la lista de las reservas. 
- A su propia frecuencia, los calendarios externos (AirBnb, TripAdvisor, booking.com, HomeAway, Expedia, VRBO, etc...) procedan de la misma manera y verifican los flujos iCal de HBook para actualizar los calendarios. Es necesario añadir el enlace de los calendarios HBook en cada plataforma/calendario externo. El evento/reserva será importada (Google o iCal o cualquier aplicación de calendarios) o las fechas serán bloqueadas (AirBnb, TripAdvisor, booking.com, HomeAway o cualquier OTA/plataforma de reserva). Los datos mostrados en relación con estas reservas/fechas no disponibles importadas dependen de cada plataforma. Algunas aplicaciones/plataformas de reservas tienen un botón/enlace para actualizar los calendarios (= iniciar la sincronización manualmente).

> [!INFO]
> Se puede consultar [este artículo](https://maestrel.atlassian.net/wiki/spaces/ESKB/pages/65930522/Puedo+sincronizar+HBook+con+AirBnb+Expedia+VRBO+booking.com+TripAdvisor+Agoda+etc.) de nuestra base de conocimientos para ver una lista no exhaustiva de las diferentes aplicaciones, plataformas de reservas, OTA, calendarios... que proponen la sincronización iCal.

* * *

<a id="presentación-de-la-tabla-de-sincronización-ical"></a>

## Presentación de la tabla de sincronización iCal

> [!INFO]
> Si tiene un plugin de tipo "Coming soon/Mantenimiento", tendrá que desactivarlo para que la sincronización sea operacional. Si no, los calendarios iCal no son accesibles (por que la página de "Mantenimiento" está devuelto en vez del calendario iCal del alojamiento).

![sync-table.png](./attachments/sync-table.png)

<a id="actualización-manual-última-actualización"></a>

### Actualización manual - Última actualización

1. Puede lanzar la actualización de forma manual de los calendarios HBook con sus calendarios externos, con un clic en “Actualizar calendarios”.
2. Aquí está apuntada la fecha y hora de la última actualizacíon de sus calendarios HBook.

<a id="exportar-calendarios"></a>

### Exportar calendarios

3. **Descargar el fichero .ics** del calendario HBook de un alojamiento.
4. Hacer clic sobre **"Obtener URL de exportación"** para obtener el enlace del calendario. Se puede copiar y pegar este enlace de un calendario HBook en sus calendarios externos.

> [!INFO]
> Si necesita obtener una URL que contenga **todas las reservas de un mismo calendario**, puede hacer clic en “Obtener URL del calendario que contiene todos los calendarios HBook en un solo calendario”. Este enlace se encuentra debajo de la tabla de sincronización de iCal.

<a id="parámetros-query-añadidos-a-la-url"></a>

#### Parámetros query añadidos a la URL

La URL de exportación a iCal de HBook está estructurada con los parámetros `accom_id` y `accom_num`.

De forma predeterminada, en las nuevas instalaciones de HBook, activamos automáticamente una **clave aleatoria** que también se añade a la URL de exportación. Verá un parámetro llamado `key` cuando obtenga la URL de exportación. Esto se hace para proteger el acceso a sus fuentes iCal de HBook, que de otro modo serían fácilmente accesibles.

> [!INFO]
> En las versiones anteriores, verá una opción llamada “Añadir una clave aleatoria a la URL de iCal HBook” en la sección [Ajustes de exportación](#ical-ajustes-exportacion) de **HBook > Sincronización iCal**.

<a id="parámetros-query-adicionales-disponibles"></a>

#### Parámetros query adicionales disponibles

HBook proporciona diferentes parámetros que se pueden añadir al final de la URL de exportación. Esto puede resultar útil en los siguientes casos:

- Cuando necesite un formato diferente para una exportación específica: por defecto, HBook exporta las reservas como fechas, pero es posible que necesite exportarlas con fecha y hora. Esto suele ocurrir cuando se exporta a una agenda (Google Calendar, etc.).
- Cuando desee anular el comportamiento predeterminado establecido en **HBook > Sincronización iCal > Ajustes de exportación**.

Puedes añadir hasta 4 parámetros query a la URL.

- **agenda**: por defecto, tiene el valor "no". Deberá pasarlo a "yes" para las agendas (Google Calendars, etc.). Con este parámetro ajustado a "yes", la fecha se formatea con una información horaria adicional (por defecto, a las 15h para la hora de entrada y a las 11h para la hora de salida). Esto es útil para las agendas, ya que permite ver la reserva a lo largo de los días. Puede modificar los valores por defecto para la hora de entrada y para la hora de salida, utilizando los [filtros HBook](../documentacion-hbook/personalizacion-del-plugin.md#filtros-ical).
- **future\_only**: Deberá pasarlo a "no" si desea que se incluyan en la exportación todas las reservas/fechas bloqueadas pasadas (por defecto, hasta 2 años en el pasado). Puede modificar el valor por defecto para el número de años de historial a incluir, utilizando los [filtros HBook](../documentacion-hbook/personalizacion-del-plugin.md#filtros-ical).
- **reservations\_only**: por defecto, tiene el valor "no". Lo pasará a "yes" si ha establecido que desea incluir las fechas bloqueadas en la exportación (en **HBook > Sync iCal > Ajustes de exportación**) pero desea anular la configuración para un calendario en el que desea exportar solo las reservas.
- **website\_only**: por defecto, está configurado en “no”. Lo cambiará a “yes” si ha configurado que desea incluir todas las reservas (no solo las reservas del sitio web) en la exportación (en **HBook > Sincronización iCal** **\> Ajustes de exportación**), pero desea anular la configuración de un calendario en el que solo desea exportar las reservas del sitio web.

> [!NOTE]
> **Ejemplos de URL de exportación iCal con paramétros adicionales**
> - https://web-dom.com/?feed=hbook-calendar.ics&accom\_id=102&accom\_num=1&agenda=yes
> - https://web-dom.com/?feed=hbook-calendar.ics&accom\_id=102&accom\_num=1&agenda=yes&reservations\_only=yes
> - https://web-dom.com/?feed=hbook-calendar.ics&accom\_id=102&accom\_num=1&website\_only=yes
> - https://website.com/?feed=hbook-all-calendars.ics&future\_only=no
> - https://website.com/?feed=hbook-all-calendars.ics&&key=KBDEHAOEY25RPNO&agenda=yes

<a id="importar-calendarios"></a>

### Importar calendarios

5. Haga clic sobre **Importar un fichero .ics**
6. Indica el **nombre** que quiere dar al calendario. Se mostrará en el detalle de las reservas importadas.
7. Selecciona el fichero .ics que debe ser importado. Cualquier evento futuro de este calendario será tratado. Un mensaje de notificación será mostrado para indicar el resultado de la importación.

<a id="sincronizar-un-calendario-hbook-con-otro-calendario-ical"></a>

### Sincronizar un calendario HBook con otro calendario iCal

8. Haga clic sobre **Sincronizar con un nuevo calendario**
9. Indica el **Nombre** que quiere dar al calendario que quiere sincronizar. Se mostrará en el detalle de las reservas importadas.
10. Indica **el url** de este calendario
11. Haga clic sobre **Añadir**

Cualquier evento futuro de este calendario será tratado. Un mensaje de notificación le indicará el resultado de la importación.

**Calendarios sincronizacos**

La **lista de los calendarios que están sincronizados con HBook** se mostraran en la última columna:

12. Haga clic sobre **Modificar** para cambiar el nombre o el url del calendario
13. Haga clic sobre **Eliminar** para eliminar la sincronización de HBook con este calendario. Esto no borrará las reservas ya importadas.

> [!INFO]
> La sincronización iCal es para **sincronizar los calendarios solamente**. Esto no incluye los datos en relación con el precio, los pagos, los datos del cliente, el número de adultos/niños, las opciones elegidas, etc. Se pueden añadir esos datos directamente en la lista de reservas.

* * *

<a id="presentación-de-los-ajustes-de-sincronización-ical"></a>

## Presentación de los ajustes de sincronización iCal

Para adaptarse a la diversidad de los calendarios externos que proponen la sincronización iCal y para ofrecerle opciones de sincronización, usted encontrará los ajustes siguientes:

<a id="ajustes-de-notificación"></a>

### Ajustes de notificación

Cuando un error occure durante la sincronización, HBook puede conservar y mostrar información sobre esos errores de synchronisación. Son lo que llamamos [notificaciones](#ical-notificaciones) iCal y se mostrarán en la página de aministración **HBook > Reservas**.

![settings-ical-notif.png](./attachments/settings-ical-notif.png)

1. Indica si desea que HBook **guarde registros** de las notificaciones. Recomendamos activar las notificaciones a lo menos durante la configuración de la sincronización para poder vigilar cualquier error y facilitar el debug.
2. Indica si quiere **mostrar** las notificaciones que aparecerán arriba de la página **Reservas**.

<a id="ajustes-de-precios"></a>

### Ajustes de precios

Al editar una reserva en la [lista de reservas](../documentacion-hbook/reservas/lista-de-reservas.md), HBook actualiza automáticamente el precio de la reserva. En esta sección encontrará ajustes para ajustar la actualización de precios de las reservas importadas desde un calendario iCal.

![settings-ical-prices.png](./attachments/settings-ical-prices.png)

1. Puede **desactivar** la actualización de precios para las reservas importadas desde un calendario externo.
2. Si ha activado la actualización de precios, puede seleccionar las **tasas/impuestos** que se incluirán en el cálculo del precio.

<a id="ajustes-de-importación"></a>

### Ajustes de importación

![settings-ical-import.png](./attachments/settings-ical-import.png)

1. Indica la **frecuencia** de sincronización. Por favor, tenga en cuenta que solo afecta la frecuencia a la cual HBook actualiza los calendarios en su web, importando desde sus calendarios extenos cualquiera nueva reserva o cambio en una reserva importada previamente.  
Esto no tiene ningún impacto sobre la frecuencia de la actualización de los calendarios externos (AirBnb, booking.com, Expedia...), cuáles hacen la actualización con sus propias frecuencias, independientemente de HBook.
2. Si las **fechas** de una reserva han sido **modificadas** en el calendario externo, elige si desea que HBook **actualiza automáticamente** las fechas de la reserva correspondiente en HBook. Esta opción tendrá que ser desactivada si uno de sus calendarios externos no sigue los estándares iCal (por ejemplo si el UID no está permanente).
3. Si una **reserva** han sido **cancelada** en el calendario externo, elige si desea que HBook **cambia automáticamente** el estatus de la reserva correspondiente en HBook, para cancelarla y librar las fechas en HBook. Esta opción tendrá que ser desactivada si uno de sus calendarios externos no sigue los estándares iCal (por ejemplo si el UID no está permanente).
4. Por defecto, HBook no importa las **fechas bloqueadas** proveniente de sus calendarios externos. Aquó se puede modificar el ajuste, si desea que HBook importa las fechas bloquedas también. En esté caso, le recomendamos usar los ajustes adicionales.

> [!INFO]
> Para que la sincronización iCal funcione correctamente, le rogamos que usa **HBook** como su **calendario principal**. Sincroniza cada calendario HBook con el calendario externo correspondiente, ambos sentidos. No sincroniza sus calendarios externos juntos.
> Si hay fechas que quiere bloquear, debería configurar estas fechas no disponibles usando **Reservas > Bloquear alojamiento** y no agregarlas manualmente en los calendarios externos. Con la sincronización, estas fechas serán automáticamente marcadas como "no disponible" en los otros calendarios.

<a id="ajustes-adicionales-para-la-ventana-de-importación-ical"></a>

#### **Ajustes adicionales para la ventana de importación iCal**

Por defecto, descartamos las fechas bloqueadas y importamos solamente las reservas. Si quiere que HBook importá las fechas bloqueadas, le aconsejamos ajustar los parametros siguientes, para definir una ventana de importación.  
  
En ciertos casos, las plataformas incluyen en el contenido de su export toda fecha que no está abierta a la reserva. Por ejemplo, se puede que ningún tarifa sea indicada para un periodo lejano o para una fecha especifica, ciertos días pueden ser bloqueados debido a un ajuste de una ventana de reserva o de plazo (para evitar las reservas de última hora). Esto creará reservas "falsas" o "fantasmas" que serán importadas en su lista de reservas.

Por eso, se debe utilizar los ajustes siguientes para configurar la ventana de importación de las reservas via iCal:

![settings-ical-import-2.png](./attachments/settings-ical-import-2.png)

9. Indica el **número de meses** máximo de importación a partir de hoy como **fecha máxima**.
10. Indica el **número de días** a partir de la fecha del día para determinar la **fecha mínima de importación**.
11. Si no acepta las reservas de una noche **en ningunos de sus calendarios externos**, puede indicarlo aquí. HBook ignorará cualquier evento de una sola noche durante la importación iCal.

<a id="ajustes-de-exportación"></a>

### Ajustes de exportación

![settings-ical-export.png](./attachments/settings-ical-export.png)

1. HBook permite **añadir una clave aleatoría** al URL de exportación.
2. Se puede elegir incluir o no las **fechas bloqueadas** añadidas desde **Reservas > Bloquear alojamientos**.. Son las fechas
3. Aquí se puede elegir **incluir o no las fechas bloqueadas** automaticamente si ha definido un **“Tiempo de preparación”**.
4. Aquí se puede elegir incluir en la exportación **únicamente** las reservas con **el estatus "Confirmada"**.
5. Aquí se puede elegir incluir en la exportación **únicamente** las reservas recibida **en su web**. Son las reservas recibida en el front-end o añadida desde **HBook > Reservas > Añadir una reserva**. Las reservas importadas gracias a la sync iCal no estarán incluidas.
6. El **Resumen (SUMMARY)** es una línea corta de una descripción de la reserva.
7. La **Descripción (DESCRIPTION)** es un campo más detallado que permite comunicar informaciones de la reserva.
8. Las **variables** disponibles son mostradas aquí. Se pueden utilizar [las variables listadas](../documentacion-hbook/lista-de-variables.md) para personalizar el Resumen y la Descripción. Algunos calendarios externos pueden mostrar o procesar está información, pero no siempre es el caso.

> [!INFO]
> HBook está programado de una manera a optimizar la integralidad de la sincronización iCal con varias aplicaciones/calendarios posibles, a fin de autorizar lo más posible las actualizaciones(fechas, reservas canceladas) así que optimizar los datos transmitidos. Sin embargo, todos los calendarios externos no siguen los estándares de iCal. Así, se puede que tenga que desactivar algunas funcionalidades para que funcione bien la sincronización.

* * *

<a id="comprender-las-notificaciones-mostradas-en-la-página-reserva"></a>

## Comprender las notificaciones mostradas en la página Reserva

Una vez establecida, la sincronización iCal está completamente automatizada. Sin embargo, es importante verificar de vez en cuando que todo funciona correctamente. HBook puede conservar los de sincronización y mostrarlas en la página **reservas**.

Estos mensajes están aquí para ayudarle a vigilar la sincronización. Esto puede ser:

- **un error de conexión**: esto simplemente significa que HBook no ha podido conectarse al servidor del calendario externo. Como la sincronización se inicia todas las horas (o a su frecuencia deseada) se puede ignorar este mensaje, excepto en el caso en que se repite con frecuencia. En este caso, le invitamos a elegir una frecuencia más baja (algunos servidores consideran las solicitudes demasiadas frecuentes como peligrosas y rechazan el acceso) y verificar con su proveedor para ver si ellos tienen información sobre estas rechazas de conexión.
- **una reserva no ha podido ser importada**: deberá verificar porque estas fechas no están disponibles en HBook. Las fechas de la reserva no importadas están indicadas para ayudarle a identificar esto.
- **une reserva ha sido modificada**: debería verificar si es posible modificar le reserva en HBook y por lo tanto actualizar manualmente.
- **una error de firma**: HBook comprueba la integridad del calendario recibido cuando llamá a los URLs de sus calendarios externos. Un error de información de firma indica que el check no ha salido con exito. Le invitamos a ponerse en contact con nosotros.

* * *

<a id="recursons-paso-a-paso-resolución-de-problemas-etc"></a>

## Recursons : paso a paso, resolución de problemas, etc.

Dada la complexidad de la sincronización iCal y del hecho que las plataformas/calendarios tercios están implicados, la instalación y la configuración de la sincronización pueden ser complicados. Hemos escrito numerosos artículos en nuestra base de conocimientos para ayudarle a configurar las sincronizaciones con cada calendario externo y para encontrar soluciones a los problemas frecuentes:

- [Paso a paso por plataforma - iCal](https://maestrel.atlassian.net/wiki/spaces/ESKB/pages/218202119/Paso+a+paso+por+plataforma+-+iCal)
- [Soluciones a problemas - iCal](https://maestrel.atlassian.net/wiki/spaces/ESKB/pages/218398742/Soluciones+a+problemas+-+iCal)

No dude en enviarnos un mensaje via nuestra página de contacto que encontrará [aquí](https://maestrel.atlassian.net/servicedesk/customer/portal/38). ¡Le ayudaremos con mucho gusto!