Qt WebChannel Ejemplo de ChatServer
Un sencillo servidor de chat implementado utilizando la API C++ de QWebChannel.

ChatServer proporciona un servicio de chat al que se pueden conectar la Aplicación QMLQt WebChannel ChatClient y el Ejemplo HTMLQt WebChannel ChatClient.
Ejecución del ejemplo
Para ejecutar el ejemplo desde Qt Creatorabra el modo Welcome y seleccione el ejemplo de Examples. Para obtener más información, consulte Qt Creator: Tutorial: Construir y ejecutar.
Implementación de un servidor de chat
La aplicación C++ implementa un QObject que proporciona todos los mecanismos necesarios para un servicio de chat. Este objeto se publica a través de un QWebChannel que utiliza un WebSocket como transporte.
El servidor proporciona un método básico login (sólo nombre de usuario, sin contraseñas), que debe ser invocado con éxito antes de que un cliente pueda chatear. Después de iniciar sesión, un cliente puede invocar el método sendMessage y recibir la señal newMessage para escribir y recibir mensajes. Además, existe una propiedad userList que proporciona los nombres de todos los demás clientes conectados. Además, el servidor envía periódicamente una señal keepAlive a todos los clientes. Los clientes tienen que responder a esta señal, de lo contrario el cliente será eliminado de la propiedad userList.
El ejemplo muestra cómo se pueden utilizar los elementos básicos de QObject con QWebChannel, es decir, señales (newMessage), ranuras (sendMessage) y propiedades (userList).
Dado que se trata de una aplicación de servidor simple, se necesitan clientes independientes para interactuar con ella. Qt WebChannel ChatClient QML Application y Qt WebChannel ChatClient HTML Example son implementaciones de cliente compatibles con este servidor.
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.