Error en notificaciones push con Nextcloud Talk en Android.

No voy a exagerar si digo que desde la version 22 de Nextcloud no me funcionaban las notificaciones push en la aplicación Talk en Android, y ya vamos por la 25 en el momento de escribir estas líneas, y la verdad es que desde ese instante me puse a buscar el motivo del problema, y hasta ahora no he encontrado la solución.

El problema radica en la base de datos de Nextcloud, concretamente en la tabla <prefix>_notifications_pushhash la cual se estructura de la siguiente forma:

id
uid
token
deviceidentifier
devicepublickey
devicepublickeyhash
pushtokenhash
proxyserver
apptype

No sé si el problema pudo deberse a una recuperación de la base de datos en el servidor hace un tiempo o a la reinstalación de TALK, el caso es que quedó por la eternidad un registro de mi dispositivo en la base de datos con información errónea. Supongo que TALK elimina la información de la base de datos cuando eliminas tu cuenta en la app para Android, lo que si es prácticamente seguro es que no la elimina si el dispositivo se resetea de fábrica o se desinstala la aplicación (y ambas cosas han ocurrido).

El caso es que lo que necesitamos para que las notificaciones vuelvan a funcionar es borrar las entradas que tenga la cuenta a la que no le funcionan las notificaciones, para ello nos conectamos mediante consola al servidor mysql.

mysql -u root

Seleccionamos la base de datos de nextcloud.

use nextcloud;

Vamos primero a ver si existen entradas para un determinado usuario cumpliendo el requisito apptype=talk.

SELECT * FROM oc_notifications_pushhash WHERE uid=<nombre_usuario> AND apptype=talk;

En caso de que te devuelva algun registro vamos a borrarlo.

DELETE FROM oc_notifications_pushhash WHERE uid=<nombre_usuario> AND apptype=talk;

Cierra sesión en la aplicacion TALK de tu dispositivo Android, y una vez hecho vuelve a iniciarla.

El registro volverá a aparecer en la base de datos y las notificaciones vuelven a aparecer en tu dispositivo android.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.