Saltar al contenido principal

Integración domótica Menus des cantines, gratuita y de código abierto

Integración Menus des cantines para Gladys Assistant

Menús de comedores escolares de ciudades francesas (datos abiertos): Toulouse, Rennes, Nantes.

El menú del comedor escolar de su ciudad en Gladys: entrante, plato principal, guarnición, lácteo y postre del día, las menciones que da la ciudad (vegetariano, ecológico, local…), un widget con hoy y mañana, una acción de escena que lee el menú, y disparadores para un día vegetariano o un plato que usted espera («¡patatas fritas!»).

Los menús vienen de los portales de datos abiertos de las ciudades: sin cuenta ni clave. Esta integración no está afiliada a las ciudades ni a sus proveedores.

Lo que obtiene​

  • Un dispositivo por menú que publica la ciudad: Toulouse (infantil, primaria), Rennes (los tres sectores de la cocina central), Nantes Métropole (un menú por municipio y tipo: estándar, infantil, primaria, alternativo…).
  • Funciones de texto con la comida de hoy, actualizadas pocos minutos después de medianoche.
  • Un widget del panel con la comida de hoy y de mañana.
  • Una acción de escena «Obtener el menú del comedor» y dos disparadores.

Requisitos​

  • Gladys Assistant 5.3.0 o posterior.
  • Acceso a internet desde el equipo de Gladys (los portales están en internet).
  • Un colegio en una de las ciudades admitidas (para otras, vea Limitaciones).

Instalación​

  1. En Gladys, abra Integraciones → Instalar desde GitHub.
  2. Pegue https://github.com/guim31/gladys-cantines e instale.
  3. Abra la pestaña Configuración de la integración.

Configuración​

Ajustes​

  • Ciudades: marque la ciudad de su colegio. Rennes reparte sus colegios en tres sectores: la web de la ciudad indica el suyo.
  • Palabras vigiladas: palabras que buscar en los platos, separadas por comas (frites, pizza, poisson: los platos están en francés), para el disparador «Plato vigilado en el menú». Ni los acentos ni las mayúsculas importan; una palabra coincide con el inicio de una palabra (frite encuentra «Frites au four», riz no encuentra «Chorizo»).
  • Actualización: frecuencia de lectura de los portales (cada 3, 6 o 12 horas). Los menús se publican con semanas de antelación: 6 horas bastan.
  • Idioma de nombres y mensajes: idioma de los nombres de las funciones, de los estados y de las frases de escena. Los nombres se fijan al añadir el dispositivo.

Añadir menús​

Guarde la configuración: los menús de las ciudades marcadas aparecen en la pestaña Descubrir. Añada el suyo a Gladys y cámbiele el nombre si quiere («Colegio de Léa»): el widget y las frases de escena usan ese nombre.

Comprobar​

La acción Estado de la pestaña Configuración muestra, por ciudad, los menús encontrados, la hora de la última lectura, el último día publicado y el último error.

Dispositivos​

Cada función es un texto de solo lectura con el valor de hoy:

FunciónContenido
Entrante, Plato principal, Guarnición, Lácteo, PostreToulouse y Rennes: el plato, dos opciones unidas por «o»
Menú del díaNantes Métropole: la comida completa tal como la escribe el municipio
Mencionesvegetariano, ecológico, sostenible, local, carne francesa, y el comentario del día de la ciudad («Semaine du goût»)

Un plato que no se sirve muestra «—». Un día sin comida muestra Hoy no hay comida (fin de semana, vacaciones, festivo: las ciudades no dicen cuál), o Menú aún no publicado después del último día publicado por la ciudad. Los platos conservan la escritura de la ciudad, en francés.

Widget del panel​

Menús del comedor: una fila por menú y día (hoy, mañana), con el plato principal y una etiqueta «Vegetariano» un día vegetariano. Toque una fila para ver la comida completa y sus menciones. Ajustes: menús mostrados (vacío: todos, cuatro con mañana, ocho sin), mostrar mañana, mostrar las menciones.

Disparadores de escena​

  • Menú vegetariano: un menú vigilado es vegetariano, hoy (se envía entre las 7:00 y las 10:00) o mañana (entre las 18:00 y las 21:00). Solo cuando la ciudad lo indica: Toulouse (solo los platos codificados «plat sans viande»: un día de pescado o huevo no se señala), Rennes (código, comentario o un único plato principal con ese nombre), y los municipios de Nantes Métropole que empiezan el texto con «Menu végétarien».
  • Plato vigilado en el menú: un plato contiene una de las palabras vigiladas, mismas franjas. El filtro opcional Palabra compara de forma exacta: escríbala en minúsculas, como en la configuración.

Ambos transmiten el nombre del menú, la fecha y la comida completa; el segundo también la palabra y el plato encontrado. Cada evento se envía una vez por menú, día y palabra, aunque la integración se reinicie en la franja.

Acción de escena​

Obtener el menú del comedor responde con una frase lista para un mensaje o un altavoz: «Colegio de Léa, mañana: Carottes râpées, Poulet rôti, Frites, Yaourt, Pomme.» Campos: el menú (vacío: todos los menús vigilados) y el día (vacío: hoy). Salidas: la frase, has_menu (1 si se sirve una comida) y vegetarian (1 si todas las comidas servidas son vegetarianas), para un paso «Continuar solo si».

Ejemplos de escenas​

  • A las 19:00 los días de colegio: «Obtener el menú del comedor» para mañana, y enviar la frase a la familia.
  • «Plato vigilado en el menú», día mañana, palabra frites: un mensaje en la tableta de los niños.
  • «Menú vegetariano», día hoy: prever carne para la cena.

Datos y actualización​

CiudadPortalLicenciaPublicación
Toulousedata.toulouse-metropole.fr, «Menus des cantines – automatisés»Licence Ouverte 2.0unas tres semanas antes, actualizado a diario
Rennesdata.rennesmetropole.fr, «Menus des cantines des écoles»ODbLvarias semanas antes
Nantes Métropoledata.nantesmetropole.fr, «Menus des cantines scolaires à Nantes Métropole»Licence Ouvertede una a ocho semanas antes según el municipio

Una petición por ciudad en cada actualización, para los días desde dos semanas atrás hasta cinco semanas adelante. Los estados de hoy se recalculan cada 10 minutos: el nuevo día aparece en los diez minutos siguientes a la medianoche (hora de París).

Solución de problemas​

  • Mi menú no está en la pestaña Descubrir: marque su ciudad y guarde; un municipio de Nantes Métropole que no ha publicado nada en semanas no aparece.
  • «Menú aún no publicado»: la ciudad aún no ha publicado ese día; la acción Estado indica el último día publicado.
  • Un disparador no se envía: compruebe las franjas horarias, el filtro de palabra en minúsculas y que el menú está añadido a Gladys.
  • Registros: docker logs del contenedor de la integración, LOG_LEVEL=debug para cada lectura.

Limitaciones​

  • Tres ciudades por ahora. Otras publican sus menús en PDF o no los publican; se puede añadir una ciudad con API de datos abiertos: abra una issue.
  • Sin alérgenos: ninguno de estos portales los publica por día.
  • La mención vegetariana vale lo que publica la ciudad.
  • Desarrollada sin acceso a un colegio: se agradecen sus comentarios.

Créditos​

Datos: Mairie de Toulouse (Licence Ouverte 2.0), Ville de Rennes / Rennes Métropole (ODbL), Ville de Nantes y los municipios de Nantes Métropole (Licence Ouverte). Integración de guim31, Apache 2.0.

Parámetros de configuración​

Estos son los parámetros que Menus des cantines te pide en su pantalla de configuración en Gladys.

ParámetroTipoObligatorioDescripción
FuncionamientosectionNoMarque su ciudad y guarde: sus menús aparecen en la pestaña Descubrir. Añada el suyo a Gladys. Sin cuenta ni clave.
Ciudadesmulti_selectNoCiudades que publican los menús de sus comedores en datos abiertos. Otras: vea la guía.
Palabras vigiladasstringNoSeparadas por comas, para el disparador «Plato vigilado en el menú».
ActualizaciónselectNo
Idioma de nombres y mensajesselectNoLos nombres de las funciones se fijan al añadir el dispositivo.

Cómo instalar Menus des cantines en Gladys​

  1. En Gladys, abre Integraciones: Menus des cantines aparece en el catálogo junto a las integraciones nativas, con una insignia de comunidad.
  2. Haz clic en Instalar. Gladys descarga la imagen Docker (ghcr.io/guim31/gladys-cantines:1.0.0), la ejecuta en un entorno aislado del núcleo y genera la interfaz de la integración (dispositivos, descubrimiento y configuración).
  3. Abre la pantalla de Configuración de la integración, rellena los parámetros y guarda.
  4. También puedes instalarla directamente desde la URL de su repositorio: https://github.com/guim31/gladys-cantines.

Menus des cantines 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​

Menus des cantines 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 guim31, no el equipo principal de Gladys.

Suscríbete a la newsletter de Gladys Assistant

Unos pocos correos al mes sobre nuevas versiones y novedades del proyecto. Enviados por Pierre-Gilles Leymarie, fundador del proyecto. Puedes darte de baja cuando quieras 🙂