Errores de notificación push en /logs

Estamos viendo el siguiente error en nuestros /logs con bastante frecuencia (de decenas a cientos de veces al día). Aparte de que parece estar relacionado con las notificaciones push, no sé exactamente qué está ocurriendo ni si requiere atención. Esto ocurre con la última versión stable.

Failed to send push notification : host: fcm.googleapis.com, #<Net::HTTPForbidden 403 Forbidden readbody=true> body: the key in the authorization header does not correspond to the sender ID used to subscribe this user. Please ensure you are using the correct sender ID and server Key from the Firebase console.

backtrace

webpush-1.0.0/lib/webpush/request.rb:165:in verify_response' webpush-1.0.0/lib/webpush/request.rb:32:in perform’
webpush-1.0.0/lib/webpush.rb:44:in payload_send' /var/www/discourse/app/services/push_notification_pusher.rb:79:in send_notification’
/var/www/discourse/app/services/push_notification_pusher.rb:25:in block in push' activerecord-6.0.3.1/lib/active_record/relation/delegation.rb:87:in each’
activerecord-6.0.3.1/lib/active_record/relation/delegation.rb:87:in each' /var/www/discourse/app/services/push_notification_pusher.rb:23:in push’
/var/www/discourse/app/jobs/regular/send_push_notification.rb:7:in execute' /var/www/discourse/app/jobs/base.rb:232:in block (2 levels) in perform’
rails_multisite-2.3.0/lib/rails_multisite/connection_management.rb:68:in with_connection' /var/www/discourse/app/jobs/base.rb:221:in block in perform’
/var/www/discourse/app/jobs/base.rb:217:in each' /var/www/discourse/app/jobs/base.rb:217:in perform’
sidekiq-6.0.7/lib/sidekiq/processor.rb:196:in execute_job' sidekiq-6.0.7/lib/sidekiq/processor.rb:164:in block (2 levels) in process’
sidekiq-6.0.7/lib/sidekiq/middleware/chain.rb:138:in block in invoke' /var/www/discourse/lib/sidekiq/pausable.rb:138:in call’
sidekiq-6.0.7/lib/sidekiq/middleware/chain.rb:140:in block in invoke' sidekiq-6.0.7/lib/sidekiq/middleware/chain.rb:143:in invoke’
sidekiq-6.0.7/lib/sidekiq/processor.rb:163:in block in process' sidekiq-6.0.7/lib/sidekiq/processor.rb:136:in block (6 levels) in dispatch’
sidekiq-6.0.7/lib/sidekiq/job_retry.rb:111:in local' sidekiq-6.0.7/lib/sidekiq/processor.rb:135:in block (5 levels) in dispatch’
sidekiq-6.0.7/lib/sidekiq.rb:37:in block in <module:Sidekiq>' sidekiq-6.0.7/lib/sidekiq/processor.rb:131:in block (4 levels) in dispatch’
sidekiq-6.0.7/lib/sidekiq/processor.rb:257:in stats' sidekiq-6.0.7/lib/sidekiq/processor.rb:126:in block (3 levels) in dispatch’
sidekiq-6.0.7/lib/sidekiq/job_logger.rb:13:in call' sidekiq-6.0.7/lib/sidekiq/processor.rb:125:in block (2 levels) in dispatch’
sidekiq-6.0.7/lib/sidekiq/job_retry.rb:78:in global' sidekiq-6.0.7/lib/sidekiq/processor.rb:124:in block in dispatch’
sidekiq-6.0.7/lib/sidekiq/logger.rb:10:in with' sidekiq-6.0.7/lib/sidekiq/job_logger.rb:33:in prepare’
sidekiq-6.0.7/lib/sidekiq/processor.rb:123:in dispatch' sidekiq-6.0.7/lib/sidekiq/processor.rb:162:in process’
sidekiq-6.0.7/lib/sidekiq/processor.rb:78:in process_one' sidekiq-6.0.7/lib/sidekiq/processor.rb:68:in run’
sidekiq-6.0.7/lib/sidekiq/util.rb:15:in watchdog' sidekiq-6.0.7/lib/sidekiq/util.rb:24:in block in safe_thread’

2 Me gusta

El mismo problema aquí :confused:

Lo interesante es que si nuestros miembros desactivan y vuelven a activar las notificaciones push en Android, funciona correctamente durante unos días, pero después aparecen muchas advertencias en los registros :arrow_down: y las notificaciones dejan de funcionar.

Error al enviar la notificación push: host: fcm.googleapis.com, #<Net::HTTPForbidden 403 Forbidden readbody=true>
cuerpo:
la clave en el encabezado de autorización no corresponde al ID de remitente utilizado para suscribir a este usuario. Asegúrate de utilizar el ID de remitente y la clave del servidor correctos desde la consola de Firebase.
5 Me gusta

Ahora funcionó bien para mí durante dos semanas, pero tras volver a compilar, dejó de funcionar. Creo que esto se debe de alguna manera al proceso de reconstrucción de la aplicación. Cuando actualizo desde la sección de administración, funciona perfectamente después de eso. Ahora, lo único que puede solucionar la notificación push de Android es que los miembros la desactiven y la vuelvan a activar. Y funcionará hasta la siguiente reconstrucción.

¿Es posible que la reconstrucción esté causando este problema?

1 me gusta

Sí, ese fue el problema en nuestro foro. Cada vez que reconstruía la aplicación, las notificaciones push dejaban de funcionar. Pero ahora parece que se ha resuelto en nuestro foro. He reconstruido por tercera vez y las notificaciones push siguen funcionando perfectamente. :heart_eyes: No sé cuál era el problema, pero ¡muchas gracias por la corrección! :slightly_smiling_face:

1 me gusta