HandyCafe Docs
owner cashier it-admin

Clientes Legacy

HandyCafe puede gestionar instalaciones de clientes V3 y V4 junto con clientes modernos en el mismo servidor. Los clientes legacy aparecen en el Panel de Administración como un tipo de tarjeta propio, con un conjunto de acciones reducido que coincide con lo que soporta el protocolo original.

Antes de que puedas ver los clientes legacy en el Panel de Administración, habilita el soporte en tiempo de ejecución en Configuración > Clientes Legacy.

Cómo Aparecen los Clientes Legacy

Los clientes legacy se conectan al servidor a través del protocolo de multidifusión UDP original. No utilizan mDNS como los clientes modernos. En su lugar, el servidor los descubre de dos maneras:

Ruta de Descubrimiento Disparador
TCP Login El cliente envía una LoginRequest en el puerto de comandos TCP. El servidor registra el par y emite un evento de conexión.
UDP Ping El cliente transmite un marco de Ping en el grupo de multidifusión. El servidor lo recibe, actualiza el registro del par y emite un evento en línea.

El estado por MAC se mantiene en un almacén de clientes legacy con IP, nombre de host, usuario conectado, versión del cliente, temporizadores de sesión y una marca de tiempo de última vista. Cada marco entrante reinicia el temporizador de inactividad. Si el temporizador se activa sin tráfico (por defecto 10 segundos), el cliente se marca como desconectado. El registro persiste en la base de datos para que no se pierda el historial.

La Tarjeta del Cliente Legacy

Cada cliente legacy se representa como una tarjeta distinta de las tarjetas de clientes modernos. El encabezado muestra el nombre de pantalla (nombre de host cuando está disponible, MAC cuando no), una insignia de en línea o desconectado con color y una etiqueta de estado.

Colores y Etiquetas de Estado

Estado Color Significado
En línea Verde Una sesión activa está en curso.
Inactivo Cian El cliente está conectado y esperando. No hay sesión activa.
Pausado Ámbar La sesión está pausada. La facturación está detenida.
Ocupado Púrpura El cliente está procesando una solicitud.
Pago Rosa El cliente está en un flujo de pago.
Admin Índigo El cliente está en modo administrador o mantenimiento.
Desconectado Gris No hay tráfico reciente. Las acciones están deshabilitadas hasta que el cliente vuelva a estar en línea.
Temporizado Celeste Una sesión con tiempo limitado está en curso con una fecha límite.

Reloj de Sesión

Cuando una sesión está activa, la tarjeta muestra un bloque de reloj:

  • Hora de inicio.
  • Hora de finalización (para sesiones con tiempo limitado).
  • Minutos utilizados.
  • Minutos restantes con una cuenta regresiva en vivo.
  • Costo acumulado.

Información de Identidad

La tarjeta siempre muestra:

  • Dirección MAC.
  • Dirección IP.
  • Versión del cliente (por ejemplo "3.4.01").
  • Usuario conectado si lo hay.

Barra de Herramientas de Acción

Cuando el cliente está en línea, una barra de herramientas de acción debajo de la información de identidad ofrece las operaciones disponibles.

Control de Sesión

Botón Visible Cuando Comportamiento
Login El estado es inactivo Abre el diálogo de Inicio de Sesión del Dispositivo. Selecciona minutos y método de pago. El servidor envía un comando de Login con los valores elegidos. La sesión comienza en el cliente.
Logout El estado es en línea, temporizado, pausado, ocupado o pago Si la sesión es postpago, un diálogo de pago recoge el monto y método. Se escribe una transacción en el libro mayor. El servidor envía un comando de Logout. La sesión se cierra en el cliente.

Añadir Tiempo

Abre un selector de minutos. Acepta valores positivos (extender) o negativos (reducir). La magnitud máxima es de 10,000 minutos en cualquier dirección. Funciona para sesiones prepagadas y postpagadas.

Si configuraste valores de minutos preestablecidos en tu configuración de precios, la tarjeta también muestra una fila de botones preestablecidos. Toca un preestablecido para aplicar el valor sin abrir el selector.

Captura de Pantalla

Solicita una captura de pantalla en vivo del cliente legacy a través del puerto de transferencia de archivos. El flujo es:

  1. El servidor envía un comando de solicitud de captura de pantalla.
  2. El cliente abre un oyente TCP de corta duración en un puerto efímero.
  3. El servidor se conecta, envía un encabezado de transferencia de archivos de 9 bytes y espera.
  4. El cliente captura la pantalla, la codifica como un BMP comprimido y la transmite de vuelta.
  5. El servidor descomprime el BMP y lo almacena en la carpeta legacy_screenshots bajo tu directorio de datos de HandyCafe.
  6. El visor de capturas de pantalla se abre con la nueva imagen.

Si el cliente no responde dentro del tiempo de espera (por defecto 30 segundos para conectar, 20 segundos para datos), la solicitud falla y aparece un mensaje de error. Puedes intentarlo de nuevo inmediatamente.

Acciones de Energía

Acción Confirmación Efecto
Cerrar sesión Ninguna Cierra la sesión del usuario de Windows en la máquina cliente. La sesión de Windows termina pero la computadora permanece encendida.
Reiniciar Envía un comando de reinicio. La máquina cliente se reinicia.
Apagar Envía un comando de apagado. La máquina cliente se apaga.

Reiniciar y Apagar muestran un diálogo de confirmación para prevenir acciones de energía accidentales.

Operaciones No Soportadas

Los clientes legacy no soportan todas las funciones disponibles en los clientes modernos de HandyCafe. Principales limitaciones:

  • No hay ajustes de pausa a mitad de sesión. Los cambios de tiempo enviados mientras la sesión está pausada se ponen en cola pero el cliente puede ignorarlos. Reanuda la sesión primero, aplica el cambio, luego pausa de nuevo si es necesario.
  • No hay modo Admin a través de comando del servidor. El estado interno de administrador del cliente no puede ser cambiado desde el servidor. El modo Admin se controla solo en la máquina cliente.
  • No hay registro de licencia desde el servidor. El servidor refleja los bytes de licencia que ve en los marcos del cliente pero no puede enviar una nueva licencia al cliente. Registra el cliente localmente.
  • No hay integración de billetera de miembro para sesiones iniciadas en clientes legacy. Los pagos se registran como filas simples de transactions con transaction_type=sessions y el MAC del cliente. Los flujos de billetera modernos no se aplican.
  • No hay escritorio remoto. La función de escritorio remoto utiliza una ruta de transmisión UDP que no está presente en los clientes legacy.
  • No hay sincronización de archivos push. Sync Explorer envía archivos solo a través del protocolo moderno.

Para funcionalidad completa, migra a clientes modernos de HandyCafe cuando sea posible.

Comportamiento Offline

Cuando el tiempo de inactividad expira, la tarjeta se atenúa, la insignia de estado se vuelve gris y todos los botones de acción se desactivan. El registro del cliente permanece en el almacén para que el historial, MAC, nombre de host y datos de última vista se conserven. Cuando el cliente vuelve a estar en línea (nuevo ping UDP o login TCP), la tarjeta se reactiva y las acciones vuelven a estar disponibles.

El registro no se elimina automáticamente. Para eliminar un cliente antiguo permanentemente, edítalo desde la base de datos de administración o elimínalo a través de la herramienta de administración correspondiente.

Consejos

  • Mantén el tiempo de inactividad en 10 segundos a menos que sepas que tus clientes legacy emiten señales más lentas que eso. Un tiempo de espera más corto marca incorrectamente a los clientes saludables como desconectados durante breves interrupciones de red.
  • Si un cliente legacy aparece en línea pero no responde a los comandos, confirma la Variante de Protocolo en Configuración. Una discrepancia entre la variante del servidor (STE vs Standard) y la compilación del cliente causa caídas silenciosas de comandos.
  • Las capturas de pantalla de clientes legacy son BMPs comprimidos, que son más grandes que las capturas PNG modernas. Mantén la carpeta legacy_screenshots en un disco con espacio libre adecuado si tomas muchas capturas.
  • Usa Añadir Tiempo con botones preestablecidos durante los cambios de turno. Un solo toque extiende una sesión por un incremento predefinido, lo cual es más rápido que escribir minutos manualmente.
  • Retira clientes legacy gradualmente. Migra un lote a la vez, confirma que los nuevos clientes funcionen de manera idéntica en el Panel de Administración, y solo entonces desmantela los antiguos.