PUSH notification stop working!

Description

Can somebody explain me clearly how to setup PUSH notifications? I gave up now((
There are no problems with PUSH notifications in September 2020, but since today October,1 all PUSH notifications gone!(( I tried to re-register our RockerChat Server in Cloud, tried to re-apply agreements, restart our RocketChat server many times. No luck at all.(((
If I try to press button “Send a test push to my user” in the “Admin”->“Push notification” I always get red popup message with text “There are no tokens for this user [error-no-tokens-for-this-user]”
What token it wants??? Why yesterday it worked fine, but today it tell me about “no token”???
do not understand, please explain me clearly how to fix problem with PUSH notifications not working?

Server Setup Information

  • Version of Rocket.Chat Server: 3.7.0
  • Operating System: Ubuntu 20.4
  • Deployment Method: docker
  • Number of Running Instances: 1
  • DB Replicaset Oplog:
  • NodeJS Version: 12.18.4
  • MongoDB Version: 4.0.20
  • Proxy: nginx (jwilder/nginx-proxy)
  • Firewalls involved:

Any additional Information

API ➔ debug POST: /api/v1/method.call/push_test
Meteor ➔ method push_test -> userId: 9y4Sv8Nsq64NAThXN, arguments:
Exception while invoking method push_test Error: There are no tokens for this user [error-no-tokens-for-this-user]
at MethodInvocation.push_test (server/lib/pushConfig.js:51:10)
at MethodInvocation.methodsMap. (app/lib/server/lib/debug.js:67:34)
at maybeAuditArgumentChecks (packages/ddp-server/livedata_server.js:1771:12)
at packages/ddp-server/livedata_server.js:1689:15
at Meteor.EnvironmentVariable.EVp.withValue (packages/meteor.js:1234:12)
at packages/ddp-server/livedata_server.js:1687:36
at new Promise ()
at Server.applyAsync (packages/ddp-server/livedata_server.js:1686:12)
at Server.apply (packages/ddp-server/livedata_server.js:1625:26)
at Server.call (packages/ddp-server/livedata_server.js:1607:17)
at Object.post (app/api/server/v1/misc.js:262:26)
at app/api/server/api.js:394:82
at Meteor.EnvironmentVariable.EVp.withValue (packages/meteor.js:1234:12)
at Object._internalRouteActionHandler [as action] (app/api/server/api.js:394:39)
at Route.share.Route.Route._callEndpoint (packages/nimble_restivus/lib/route.coffee:150:32)
at packages/nimble_restivus/lib/route.coffee:59:33
at packages/simple_json-routes.js:98:9
=> awaited here:
at Promise.await (/app/bundle/programs/server/npm/node_modules/meteor/promise/node_modules/meteor-promise/promise_server.js:60:12)
at Server.apply (packages/ddp-server/livedata_server.js:1638:22)
at Server.call (packages/ddp-server/livedata_server.js:1607:17)
at Object.post (app/api/server/v1/misc.js:262:26)
at app/api/server/api.js:394:82
at Meteor.EnvironmentVariable.EVp.withValue (packages/meteor.js:1234:12)
at Object._internalRouteActionHandler [as action] (app/api/server/api.js:394:39)
at Route.share.Route.Route._callEndpoint (packages/nimble_restivus/lib/route.coffee:150:32)
at packages/nimble_restivus/lib/route.coffee:59:33
at packages/simple_json-routes.js:98:9
API ➔ debug Success {
statusCode: 200,
body: {
message: ‘{“msg”:“result”,“id”:“204”,“error”:{“isClientSafe”:true,“error”:“error-no-tokens-for-this-user”,“reason”:“There are no tokens for this user”,“details”:{“method”:“push_test”},“message”:“There are no tokens for this user [error-no-tokens-for-this-user]”,“errorType”:“Meteor.Error”}}’,
success: true
}
}

This error shows if the current user is not (correctly) logged in on a mobile client. If you are logged in on mobile, try to logout and login again.

Thank you very much! It helps!
Am I understand right that since today every 1st day of month all our users should re-login in it’s mobile apps to “re-activate” PUSH notifications feature?
It is very inconvenient for users, but if it is only solution I’ll write instruction for them.

Sounds more like a side effect with update to 3.7.0. We are still on 3.6.3 and do not have such a problem. Forced re-login every month does not seem plausible.

I can say more: if you shutdown RocketChat server - all clients write on its top that chat-server is unavialable, then wait 20-30 sec and start RocketChat server, so all clients do autoreconnect to server. I thought it will solve “no tokens” problem, because all clients did re-login, but it is not! “no tokens” error still persists .((

It would be really helpful if this message “There are no tokens for this user” was renamed to “Current user is not (correctly) logged in on a mobile client” in the first place :slight_smile:

1 Like

I am confused. What does it mean to “correctly login” on the mobile client? I am opening up the android application, add the server url and login with my url and password. I am able to send message from the mobile app. So obviously I am logged in. But when I try to send the test push notification from the web client I still get that red alert saying that “There are no tokens for this user”. Please help!