Introducción
El Gestor de Canales es un componente clave de la Plataforma Smart Island que permite la gestión centralizada de canales de comunicación del proyecto, incluyendo: sitios web, aplicaciones móviles, paneles informativos y canales futuros.
Este componente está diseñado para facilitar la difusión multicanal de contenidos y servicios, tanto a la ciudadanía como a las entidades locales de La Palma.
Se basa en tecnologías open source como Drupal (para canales web y app) y Xibo (para señalización digital), integradas en una arquitectura escalable y modular desplegada sobre OpenShift/Kubernetes.
Arquitectura Tecnológica
| Componente | Tecnología | Recursos | Réplicas |
|---|---|---|---|
| Drupal | Apache + PHP + Drupal | 2 cores / 4 GB RAM | 2 |
| Xibo | Xibo CMS | 4 cores / 8 GB RAM | 2 |
| PostgreSQL | Base de datos Drupal | 2 cores / 12 GB RAM | 3 |
| MySQL | Base de datos Xibo | 2 cores / 8 GB RAM | 3 |
- Despliegue: Contenedores en OpenShift
- Comunicaciones: PostgreSQL (puerto 5432), MySQL (puerto 3306), acceso externo vía Ingress
Tecnologías Clave
- Drupal 9.x: CMS modular para gestión de canales web y app
- Xibo: Señalización digital para paneles físicos
- PostgreSQL / MySQL: Bases de datos
- PHP 8.1, Apache, Google Analytics, pgAdmin
Despliegue y Puesta a Disposición de la Solución
Describe el proceso de despliegue, configuración y puesta en marcha del Gestor de Canales de la Plataforma Smart Island, incluyendo:
- Instalación de contenedores
- Configuración de Drupal y Xibo
- Subida de código y generación de bases de datos
- Exposición de APIs REST
- Librerías y fuentes utilizadas
Configuración y Parametrización
Drupal
- Plantilla:
drupal/bootstrap5 - Módulos contribuidos: más de 40, incluyendo
admin_toolbar,captcha,feeds,geolocation,google_analytics,paragraphs,webform,yoast_seo, etc. - Módulo personalizado:
custom_api_restpara exponer servicios REST.
Xibo
- Versión: 3.2
- Configuración vía Helm (
values.yaml) - Uso de Memcached y SMTP configurado
- Base de datos: MySQL
Subida de Código y Generación de Bases de Datos
Drupal
- Código subido por SFTP a
/nombrepath - Configuración en
settings.php - Base de datos PostgreSQL:
Extensión:createuser -U postgres -S -D -R -P usuariobasededatos
createdb -U postgres -O usuariobasededatos passwordbasededatosCREATE EXTENSION pg_trgm;
Xibo
- Base de datos MySQL creada manualmente
- Contenido generado automáticamente desde Helm
API REST
Gestión de Usuarios
- Login:
POST /user/login - Registro:
POST /user/register - Reset password, logout, eliminación de usuario
Gestión de Contenidos
- Taxonomías, secciones, imágenes 360, puntos WiFi
- Acceso mediante
BasicAuthy_format=json
Librerías y Fuentes
Librerías instaladas
ckeditor,jquery,select2,signature_pad,swagger-ui,tippyjs, etc.
Plantillas
- Bootstrap 5.2.3
- Swiper 4.3.0
Fuentes
- Tema personalizado: Arial Rounded MT Bold
- Administración: Open Sans
Manual de Administración Técnica del CMS
Describe los procesos de administración y mantenimiento del Gestor de Contenidos (CMS) basado en Drupal 9, utilizado como backend del Componente C2.04 – Gestor de Canales, así como de los componentes relacionados (App turística y Gestor de Contenidos).
Plataforma Tecnológica
- CMS: Drupal 9 (basado en Symfony 4)
- Base de datos: PostgreSQL
- Lenguaje: PHP
- Licencia: GNU/GPL
- Framework: MVC
Roles y Permisos
| Rol | Descripción |
|---|---|
| Administrador | Gestión total del CMS, contenidos, usuarios, módulos y configuración. |
| Gestor de canales | Gestión de contenidos específicos del componente 4 (audio, vídeo, imagen…). |
Permisos configurables desde:/admin/people/permissions
Tipos de Contenido (Componente 4)
| Tipo de Contenido | Descripción |
|---|---|
| Imagen | Gestión de imágenes en alta, media y baja resolución. |
| Audio | Gestión de archivos de audio. |
| Vídeo | Gestión de vídeos en diferentes calidades. |
| Panel | Publicación de paneles URBO en el frontend. |
| Gestor de Canal | Enlaces a aplicaciones de gestión de canales. |
| Notificación App | Envío de notificaciones push, con soporte para geolocalización. |
Navegación y Gestión
Gestión de Contenidos
- Acceso:
Administrar > Contenido - Operaciones: crear, editar, traducir, publicar/despublicar, eliminar, revisar versiones.
- Filtros: por tipo, estado, idioma, título.
- Acciones masivas: publicar, despublicar, eliminar.
Taxonomías
- Clasificación de contenidos mediante vocabularios y términos.
- Acceso:
/admin/structure/taxonomy
Módulos
- Gestión desde:
/admin/modules - Módulos clave:
webform,yoast_seo,google_analytics,paragraphs,feeds, etc.
Bloques
- Gestión de diseño y contenido modular.
- Acceso:
/admin/structure/block
Menús
- Gestión de navegación del sitio.
- Acceso:
/admin/structure/menu
Multiidioma y Traducciones
- Configuración:
Administrar > Configuración > Regional e idioma - Traducción de interfaz y contenidos.
- Exportación/Importación de archivos
.popara traducciones masivas.
Informes y Mantenimiento
Informes
- Mensajes de registro:
/admin/reports/dblog - Actualizaciones disponibles:
/admin/reports/updates
Cron y Caché
- Limpieza de caché y ejecución de tareas programadas.
- Recomendado tras cambios de código o configuración.
API y Canales
- Los contenidos gestionados se exponen a través de la API REST para su consumo por:
- Aplicaciones móviles
- Paneles informativos
- Webs municipales
- Otros canales integrados
——————————————————————————————————————————————————————————-
Integraciones
El documento de integraciones describe las integraciones técnicas del backend Drupal con los sistemas externos que forman parte de la Plataforma La Palma Smart Island, incluyendo diagramas y configuraciones clave.
Integraciones Principales
1. Firebase
- Función: Envío de notificaciones push a dispositivos móviles.
- Origen: Contenido tipo Notificación App.
- Configuración:
- Ruta:
/admin/config/push_service/config - Módulo personalizado:
push_service.module
- Ruta:
- Flujo:
Drupal → Firebase → Dispositivos móviles
2. Context Broker
- Función: Integración bidireccional para envío y recepción de datos.
- Envío de datos:
- Indicadores agregados (eventos, experiencias, noticias):
Módulo:Cross-platforms integration indicators - Datos individuales (Beacons):
Módulo:Cross-platforms integration
- Indicadores agregados (eventos, experiencias, noticias):
- Recepción de datos:
- Notificaciones tipo mensaje desde el subservicio Beacons.
- Endpoint:
https://lapalmasmart.lapalma.es/api/subscription_context_broker
(securizado) - Flujo:
Context Broker → Drupal → Firebase → Dispositivos
3. Google Analytics
- Función: Seguimiento del uso y consumo de contenidos.
- Método: Integración vía módulo oficial de Drupal.
- Configuración:
Módulo:Google Analytics
Documentación Componente C2.04:
Repositorio Documentación C2.04
Informe Ejecución Plan de pruebas
Despliegue y puesta a disposición de la solución