Integración domótica Horaires Commerces, gratuita y de código abierto

Horario de sus comercios, encontrado en OpenStreetMap, en el panel de Gladys.
Esta integración trae a Gladys el horario de los comercios a los que va: qué comercios están abiertos, cuándo abren o cierran, con escenas cuando un comercio abre o cierra pronto.
Todo se calcula en Gladys. La única llamada externa va a OpenStreetMap, a través del servicio overpass.ch y con su clave gratuita, para encontrar el horario de los comercios alrededor de sus casas (ver Clave de overpass.ch más abajo). Sin clave, escriba usted mismo el horario de sus comercios.
Instalación
Abra Integraciones, busque la integración, instálela y rellene la pantalla Configuración.
| Campo | Qué poner |
|---|---|
| Clave de overpass.ch | Su clave gratuita, para buscar el horario en OpenStreetMap (ver abajo). |
| Comercios y horario | Sus comercios y su horario (ver abajo). |
| Casas alrededor de las que buscar | Las casas de Gladys alrededor de las que buscar. Ninguna marcada: todas las que tienen ubicación. |
| Radio de búsqueda ... (km) | A qué distancia de una casa se buscan los comercios. Por defecto: 10. |
| Tipos de comercios ... | Los tipos de comercios propuestos en la pestaña Descubrimiento. Ninguno marcado: ninguno. |
| Aviso antes de ... (min) | Cuándo se activan «abre pronto» / «cierra pronto». Por defecto: 30 min. |
Pulse después Probar la configuración: la respuesta dice, comercio por comercio, si está abierto.
Por último, abra la pestaña Descubrimiento de la integración y cree los dispositivos.
Comercios y horario
Un comercio por entrada: un nombre, y luego = y su horario si quiere escribirlo. Separe los comercios con |:
Leclerc = Mo-Sa 08:30-20:00; PH off | Farmacia = Mo-Fr 09:00-19:00 | Panadería = Tu-Su 07:00-13:00,15:30-19:30
El horario sigue la sintaxis de OpenStreetMap — a menudo ya visible en la ficha del comercio en un mapa:
| Usted escribe | Significa |
|---|---|
Mo-Sa 08:30-20:00 | De lunes a sábado, de 8:30 a 20:00 |
Mo-Fr 08:30-12:00,14:00-19:00 | Con pausa al mediodía |
Mo-Sa 08:30-20:00; Su 09:00-12:30 | Reglas separadas por ; |
Mo-Sa 08:30-20:00; We 08:30-21:00 | Una regla posterior sustituye a la anterior ese día |
...; PH off | Cerrado los festivos franceses |
...; PH 09:00-12:30 | Horario reducido los festivos |
24/7 | Siempre abierto |
Días en inglés: Mo Tu We Th Fr Sa Su. PH = festivos franceses (lunes de Pascua,
Ascensión y lunes de Pentecostés incluidos). Las horas se leen en hora de París. 10
comercios como máximo.
El nombre identifica el comercio: cambiarlo crea un nuevo dispositivo en Gladys.
Horario encontrado automáticamente
Escriba solo el nombre: Leclerc (o Leclerc = auto). La integración busca entonces
en OpenStreetMap el comercio con ese nombre más cercano a sus casas de Gladys (todas
las casas con ubicación, indicada en Ajustes → Casas), y toma su horario. Para
buscar otras palabras que el nombre, escríbalas tras auto:, por ejemplo
Panadería = auto: Boulangerie Dupont. Los acentos y las mayúsculas no cuentan. Hace falta una clave gratuita de
overpass.ch (ver Clave de overpass.ch más abajo).
- Con varias casas, gana el comercio más cercano de todas: dé un nombre preciso
(
auto: Carrefour Market Vierzon) para elegir uno cerca de una casa concreta. - Probar la configuración indica el comercio encontrado, su localidad, su distancia y su horario: compruebe que es el correcto.
- El horario se busca de nuevo una vez al día, y se guarda: un reinicio sin red lo conserva.
- Si OpenStreetMap no tiene horario para su comercio, o uno que la integración no sabe leer, escríbalo a mano (y, por qué no, añádalo en openstreetmap.org).
Comercios alrededor de sus casas (pestaña Descubrimiento)
La integración busca en OpenStreetMap, alrededor de cada casa de Gladys con ubicación (indicada en Ajustes → Casas), los comercios más cercanos de los tipos marcados en la configuración — supermercados, panaderías, farmacias, oficinas de correos, puntos limpios… — que publican su horario. Los 3 más cercanos de cada tipo, por casa.
Abra la pestaña Descubrimiento de la integración: cada comercio aparece con su
casa y su distancia, por ejemplo E.Leclerc (Casa, 1.3 km). Cree aquellos a los que
va, en una habitación de la casa correcta, y cámbieles el nombre como quiera:
funcionan como los comercios que escribe, y su horario se actualiza una vez al día.
Clave de overpass.ch
El horario se busca en OpenStreetMap a través del servicio overpass.ch, con su propia clave gratuita: sin clave, no se busca nada (los comercios escritos con su horario funcionan igual). El plan gratuito (sin tarjeta, para uso personal) da 10 000 peticiones al mes; la integración hace una al día.
- Abra overpass.ch/signup (botón Get a free key en la página de inicio).
- Rellene E-mail, Password (10 caracteres como mínimo) y Website (por
ejemplo
https://github.com/prohand/gladys-horaires-commerces), acepte las condiciones y pulse Create account (o Continue with Google). - Abra el correo recibido y pulse el enlace de confirmación.
- Inicie sesión (Log in) y abra la página de claves:
overpass.ch/dashboard/keys. Cree una clave.
No rellene «Allowed referers» ni marque «Reject requests without a referer»: la
integración no envía referer, el servidor rechazaría sus peticiones (error 403
forbidden_referer). - Copie la clave. Su dirección completa,
https://api.overpass.ch/v1/…/interpreter, también sirve. - En Gladys: Integraciones → Horaires Commerces → Configuración, péguela en Clave de overpass.ch y guarde.
- Pulse Probar la configuración. Los logs de la integración dicen
OpenStreetMap answered by api.overpass.chcuando la clave funciona.
La clave es personal: no la publique (foro, repositorio de código, captura de
pantalla). Una clave rechazada o una cuota del mes agotada se
indica en Probar la configuración y en los logs
(OpenStreetMap lookup failed: overpass.ch refused the key (403)); el horario ya
encontrado se mantiene, y la búsqueda vuelve a intentarlo en la próxima hora.
Dispositivos
| Dispositivo | Función | Notas |
|---|---|---|
| Cada comercio | Abierto (1 = abierto, 0 = cerrado) | Utilizable en cualquier condición de escena |
| Cada comercio | Minutos hasta abrir o cerrar | Actualizado cada minuto |
Escenas
Disparadores
- Un comercio abre pronto (
store_opening_soon) y Un comercio cierra pronto (store_closing_soon): una sola vez, los minutos configurados antes. Filtro: el comercio (vacío = cualquiera). Variables: nombre del comercio, hora, minutos restantes. Ejemplo: «{{store_name}} cierra a las {{time}}, quedan {{minutes_left}} minutos.»
«El comercio está abierto» es un estado: use las condiciones de dispositivo de Gladys.
Acciones
- ¿Está abierto un comercio? (
is_store_open): elija un comercio. Salidas: abierto (sí/no), la hora del próximo cambio (HH:MM) y los minutos hasta entonces.
Panel
- Horario de comercios: todos los comercios de un vistazo (abierto o cerrado, hasta cuándo), o — con el ajuste Comercio — un comercio en detalle, con una cuenta atrás y el horario de hoy.
Solución de problemas
- La pestaña Descubrimiento está vacía: pulse Probar la configuración: busca de nuevo en OpenStreetMap y dice por qué (casa sin ubicación, ningún tipo marcado, OpenStreetMap inaccesible, ningún comercio de esos tipos en el radio).
- «Falta la clave de overpass.ch»: pegue su clave en la configuración (ver Clave de overpass.ch más arriba).
- «No se pudo contactar con OpenStreetMap»: el mensaje dice por qué (clave rechazada, cuota agotada, servidor inaccesible). Compruebe la clave en overpass.ch/dashboard/keys; nuevo intento en la próxima hora.
- «Ningún comercio con este nombre ... en OpenStreetMap»: pruebe con menos palabras, un Radio de búsqueda mayor, o escriba el horario a mano.
- «Ninguna casa de Gladys tiene ubicación»: indique la ubicación de la casa en Ajustes → Casas.
- «No se entiende el horario»: el mensaje cita la parte errónea. Use los días en
inglés (
Mo, noLu) y horasHH:MM(08:30, no8.30). - Un comercio «no se entiende»: cada entrada debe ser
Nombre = horario, entradas separadas por|.
Datos
Para encontrar el horario (comercios escritos sin horario, y pestaña Descubrimiento),
las palabras buscadas, los tipos de comercios y la ubicación de sus casas (una zona
del radio de búsqueda alrededor de cada una) se envían con su clave a la API Overpass
de overpass.ch (api.overpass.ch, en Alemania), una vez al día. El horario encontrado se guarda en
/data/hours.json. Para no enviar nada: no ponga clave, y escriba el horario de todos
los comercios.
Parámetros de configuración
Estos son los parámetros que Horaires Commerces te pide en su pantalla de configuración en Gladys.
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| Primeros pasos | section | No | Todo se calcula en Gladys: el horario de los comercios a los que va, escrito por usted o encontrado en OpenStreetMap alrededor de sus casas, abierto o cerrado de un vistazo, con escenas cuando un comercio abre o cierra pronto. Para encontrar el horario en OpenStreetMap, pegue abajo su clave gratuita de overpass.ch. |
| Servidor de OpenStreetMap | section | No | El horario se busca en OpenStreetMap a través de overpass.ch, con su propia clave gratuita: cree una cuenta gratuita en overpass.ch (sin tarjeta) y pegue su clave abajo (pasos en la Documentación). Sin clave, no se busca nada: escriba el horario de sus comercios. overpass.ch recibe las palabras buscadas, los tipos de comercios y una zona alrededor de cada casa. |
| Clave de overpass.ch | secret | No | |
| Sus comercios | section | No | Un comercio por entrada: un nombre solo, el horario se busca entonces en OpenStreetMap, en el comercio con ese nombre más cercano a sus casas de Gladys (Nombre = auto: otras palabras para buscar otro nombre), o un nombre, un signo igual y su horario en sintaxis OpenStreetMap (días Mo Tu We Th Fr Sa Su, PH para los festivos, off si está cerrado). Comercios separados por una barra vertical |. |
| Comercios y horario | string | No | |
| Alrededor de sus casas | section | No | La integración busca en OpenStreetMap, alrededor de cada casa de Gladys con ubicación, los comercios más cercanos de los tipos marcados abajo que publican su horario. Abra la pestaña Descubrimiento: los comercios aparecen con su casa y su distancia, p. ej. E.Leclerc (Casa, 1.3 km); cree aquellos a los que va. |
| Casas alrededor de las que buscar (ninguna marcada: todas) | multi_select | No | |
| Radio de búsqueda alrededor de las casas (km) | number | No | A qué distancia de una casa se buscan los comercios en OpenStreetMap: los escritos sin horario y los propuestos en la pestaña Descubrimiento. |
| Tipos de comercios a proponer en la pestaña Descubrimiento (ninguno marcado: ninguno) | multi_select | No | Los 3 más cercanos de cada tipo, por casa. |
| Aviso antes de abrir o cerrar (min) | number | No | Cuándo se activan los disparadores «abre pronto» y «cierra pronto». |
Cómo instalar Horaires Commerces en Gladys
- En Gladys, abre Integraciones: Horaires Commerces aparece en el catálogo junto a las integraciones nativas, con una insignia de comunidad.
- Haz clic en Instalar. Gladys descarga la imagen Docker (
ghcr.io/prohand/gladys-horaires-commerces:1.0.1), la ejecuta en un entorno aislado del núcleo y genera la interfaz de la integración (dispositivos, descubrimiento y configuración). - Abre la pantalla de Configuración de la integración, rellena los parámetros y guarda.
- También puedes instalarla directamente desde la URL de su repositorio: https://github.com/prohand/gladys-horaires-commerces.
Horaires Commerces requiere Gladys >=5.3.0. El catálogo de Gladys se actualiza cada hora, así que una nueva versión está disponible como máximo una hora después de publicarse.
¿Todavía no usas Gladys? Es gratuito y de código abierto: sigue la guía de instalación para empezar.
Sobre las integraciones externas
Horaires Commerces es una integración externa: una integración comunitaria empaquetada como contenedor Docker y publicada en GitHub. Gladys la instala con un clic y la ejecuta en un entorno aislado del núcleo. La publica y mantiene prohand, no el equipo principal de Gladys.
- Explorar todas las integraciones, nativas y de la comunidad
- Crear y publicar tu propia integración externa
- Código fuente en GitHub — fuente de esta documentación