Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

188
Views
Tokens de validación de mensajería en la nube de FCM

He desarrollado una aplicación web con FCM Push Notifications.

Está enviando y funcionando bien, excepto el siguiente problema que tengo:

Cuando alguien se suscribe, el token que recibo por la respuesta, lo guardo en mi base de datos mySQL con otra información de usuario que quiero.

Cuando alguien se da de baja, después de recibir una respuesta exitosa de darse de baja, elimino la entrada en mi base de datos.

PERO cuando alguien se da de baja por sí mismo al no usar mi aplicación web sino al cliente (Chrome, Firefox, etc.) y al eliminar y no recibir más notificaciones de mi aplicación web, entonces no sé si lo hizo para eliminarlo de mi base de datos.

No veo que haya una función FCM que le proporcione todos los tokens activos para verificarlos y compararlos con mi base de datos.

¿Hay alguna forma de eliminar de mi base de datos todos los tokens inactivos?

¡Gracias!

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Uno puede validarlos en lotes de 500 ID de registro cada uno:

 use Kreait\Firebase\Factory; use Kreait\Firebase\Contract\Messaging; use Kreait\Firebase\Exception\MessagingException; use Kreait\Firebase\Exception\FirebaseException; class SomeController { /** Constructor */ public function __construct() { $factory = (new Factory)->withServiceAccount(getenv('GOOGLE_APPLICATION_CREDENTIALS')); $this->messaging = $factory->createMessaging(); } /** * It validates device registration ID. * * @param string|string[] $token * @return array|bool|Exception|MessagingException|FirebaseException the validation results. */ public function validate_fcm_token( string|array $token=[] ): bool|Exception|MessagingException|array|FirebaseException { if ($token == null|| is_array($token) && (sizeof($token) === 0 || sizeof($token) > 500)) {return false;} else if (is_string($token)) {$token = [ $token ];} try { return $this->messaging->validateRegistrationTokens($token); } catch ( MessagingException | FirebaseException $e ) { return $e; } } }

Esto generalmente divide la matriz de entrada en tres matrices de salida, de las cuales una se llama invalid .

... ver también la documentación correspondiente .

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!