Estoy pensando en construir un juego multijugador usando GAE. Cuando el jugador A hace un movimiento, me gustaría registrar los detalles y luego dejar que el jugador B sepa sobre el movimiento.¿Puede GAE actuar como un servidor XMPP?
Pensé que podría obtener alguna biblioteca XMPP de código abierto en mi cliente y notificar presencia a mi aplicación si eso fuera posible. No me gustaría obligar al jugador a registrarse en un servicio como Google Talk, por lo que generaré jid sobre la marcha en función de la identificación de la sesión.
¡Me gustaría saber de usted!
Gracias
En el ejemplo se supone que su usuario ya tiene un cliente y una identificación xmpp. Creo que OP quiere que esto funcione sin esa suposición: el juego en sí sería el cliente y generaría identificaciones anónimas. ¿Ese escenario también funcionaría? –
La respuesta breve es No o Sí, pero deberá ejecutar su propio servidor xmpp fuera de GAE para crear estos identificadores xmpp anónimos, ya que el cliente de GAE no puede crear nuevos identificadores. Si eliges crear los identificadores xmpp anónimos, probablemente lo estés haciendo porque tienes un cliente personalizado y estás haciendo un túnel con tu protocolo de juego a través de xmpp, ¿verdad? Si la idea es usar GAE para alimentar el servidor xmpp que no va a funcionar debido a la regla de no-socket. Pero podría usar un servidor xmpp externo y usar GAE para hacer el motor de giro. – dar
Pensé que la API de GAE podría haber admitido los comandos del servidor XMPP porque la documentación indica que el GAE puede ser [appid] @ appspot.com o [cualquier cosa] @ [id de la aplicación] .appspotchat.com. Pero después de finalmente entender el funcionamiento de XMPP, veo que GAE es solo un cliente. De lo contrario, sí XMPP se suponía que era un túnel solo para evitar la limitación de no tener sockets en GAE. Necesitaba un método para notificar a mi jugador al instante sin votación. – kasuku