Tengo un servidor PHP que ejecuta un sitio web, y el sitio web tiene características como notificaciones en vivo, que básicamente son notificaciones que se le envían una vez que un usuario desea hacer un comentario sobre una de sus publicaciones, en vivo.
Decidí usar WebSocket para esto, solo para practicar. Para usar WebSocket, necesito autenticar al usuario y usar su información para obtener y entregar datos a otros usuarios conectados.
Etapa uno
Sé que PHP obtiene la identificación de sesión del usuario que ha iniciado sesión de las cookies y utiliza esa identificación para recuperar su archivo de sesión, que contiene su identificación de usuario.
Pensé en guardar el ID de sesión en una base de datos, vinculado al ID de usuario, y luego, cuando se inicializa la conexión de websocket, envío el ID de sesión de cookie y luego el servidor de websocket comprueba el ID enviado desde la base de datos.
Etapa dos
Si le gusta o comenta una publicación, necesita algún tipo de servicio que lo maneje, si le puede gustar o comentar, y qué hace cuando intenta hacer eso, y en mi opinión, esa lógica debería ser hecho en el servidor web, en el proyecto PHP.
Lo que pensé en hacer es enviar primero un XMLHttpRequest cuando te gusta o comentar una publicación, y esa solicitud devuelve el estado, si tiene éxito o no. Si tiene éxito, la respuesta contendrá el ID de la publicación o similar, y se enviará al servidor websocket, y el servidor notificará a todos los usuarios después de verificar que es real.
¿Puedes encontrar algún defecto en una de estas etapas? ¿Estoy pensando de la manera correcta?