Un backend può inviare correttamente una richiesta Firebase Cloud Messaging attraverso un proxy aziendale mentre un dispositivo Android non riceve mai la notifica. La richiesta Admin API del backend e la connessione FCM del dispositivo sono percorsi separati.

Le linee guida di rete di Firebase affermano che il protocollo del dispositivo FCM non può essere inoltrato tramite un proxy di rete. Configurare un client HTTP sul mittente non trasforma quella connessione persistente del dispositivo in una richiesta di proxy HTTP.

Per i dispositivi Android, le porte TCP di destinazione documentate sono 5228, 5229, 5230 e 443. FCM usa normalmente la 5228, e anche le altre porte sono disponibili. Applicare il criterio pertinente sulla rete a cui si connettono i dispositivi riceventi.

Usare le linee guida pubblicate di Firebase sui nomi host quando un firewall limita le destinazioni; sconsigliano gli elenchi fissi di IP consentiti perché gli indirizzi possono cambiare. I dispositivi necessitano anche di DNS funzionante e di un percorso stabile per la loro connessione di lunga durata.

Se il mittente non riesce durante l'acquisizione del token o una richiesta Admin API, diagnosticare quel trasporto HTTP lato server. Per le interfacce HTTP di Firebase Admin Java, configurare insieme i trasporti dell'API e delle credenziali. Se l'invio riesce ma la consegna fallisce, conservare quel risultato e analizzare il percorso del dispositivo invece di sostituire ripetutamente le credenziali proxy del backend.

Articoli correlati