
Hi, I don't know exactly when, but I see that the push targets of almost all users have disappeared, is this normal? Prj. ID. 6665de8b001d6c9b0a25

Ya all the same

How many? Could it be that some targets were expired, but not the one specified?

sometimes 1, sometimes 2

I once tried to send a push manually to an expired token and it sent it correctly, again via appwrite

yes but even if it was considered expired it didn't delete them, today I found many deleted items, is there any scheduled event that cleans?

Send to only 1 target and you got an error saying it was expired?

Yes, they are deleted as a background job. No guarantee as to when exactly it'll run

ah...but why they are expired...

i need to investigate..

no it is sent without errors, I will try again as soon as I have time

The only thing I can think of is it is marked as expired in Appwrite, then you update it, but it's still marked as expired, and then it gets deleted

Is it marked as expired only when Google is engaged in an attempt to send a push?

What do you mean? The API call is made to Google/firebase and then we mark it as expired depending on the response

On appwrite, is the status of "EXPIRED" inserted when the first push is sent?

It's supposed to be marked as expired only if firebase returns the not found or unregistered error

But I think we may be correlating it wrong so the wrong target in the batch is marked as expired

This is a PR to fix it: https://github.com/utopia-php/messaging/pull/88

so there is actually an index problem, and a token that has not actually expired is then updated in the table

@Steven Hi Steven, I saw that the fix to this problem was merged into master, just out of curiosity, how will this be released on the cloud now?

we need to deploy it

We've deployed the fix.
- the push target should specify whether it's expired or not now
- updating a push target will reset the expired flag
- the correct recipient should be marked as expired if the push fails
Let me know how it goes.

good, for 1. where i can see if the push target is marked expired or not?

In the payload. For example, account.get()
includes the targets.

Perfect, I think I can see it with command cli, top, thank you
Recommended threads
- Email Verification Email
Hi everyone, I’m currently experiencing an issue with the email verification functionality. When I trigger the verification, the request returns a valid respon...
- Appwrite Cloud Custom Domains Issue
I’m trying to configure my custom domain api.kondri.lt (CNAME pointing to appwrite.network., also tried fra.cloud.appwrite.io with no luck ) but encountering a ...
- Persistent 401 Unauthorized on all authe...
Hello, I'm facing a critical 401 Unauthorized error on my admin panel app and have exhausted all debugging options. The Problem: When my React app on localhos...
