Cómo enviar notificaciones de usuario a usuario en la aplicación de chat con firebase en Android

Para pasar datos entre usuarios que usan Firebase, son necesarios varios pasos. Primero un usuario tiene que descubrir al otro usuario, luego deben crear un nuevo hilo de mensajes y agregar un observador. Finalmente, necesitan de alguna manera “decirle” al otro usuario sobre el nuevo hilo de mensajes para que el usuario pueda establecer un observador. Veamos cómo funcionaría esto en la práctica. Aquí están nuestros datos ficticios:

usuarios / 1 / nombre: Simon
/trapos/

usuarios / 2 / nombre: John
/trapos/

trapos/

Para un ejemplo simple, asumiremos que Simon conoce la identificación de usuario de John, pero en un ejemplo de la vida real, tendría que implementar un índice y una búsqueda de usuarios.

Primero, Simon agregará un nuevo hilo a la rama de datos de hilos:

hilos / 1 / mensajes

Luego agregará un observador child-added a este camino.

Como conoce la identificación de John, puede construir una ruta a los datos de usuario de John y agregará la identificación del hilo a la sub-rama de hilos de John:

usuarios / 2 / nombre: John
/ hilos / 1

Como John está observando la información de su perfil, verá que se ha agregado el hilo y construirá una ruta al hilo y agregará un observador.

En este punto, ambos usuarios están observando la misma ruta de hilo y ambos se actualizarán si se agrega un mensaje. Cuando Simon agrega un mensaje:

hilos / 1 / mensajes / 1 / ¡Hola!

John será notificado.

Si está interesado en la mensajería con Firebase, debe consultar el SDK de Firebase Chat de código abierto para iOS y el SDK de Firebase Chat para Android. Ofrecen una implementación de implementación de mensajería completa sobre Firebase que puede ahorrarle algo de tiempo.