Search code examples
node.jsfirebasepush-notificationapple-push-notificationsfirebase-cloud-messaging

Invalid registration token provided. Make sure it matches the registration token the client app receives from registering with FCM


I got this code from my client iOS app on XCode console

enter image description here

Firebase registration token: diWY78iar8s:APA91bHJAzXe384OEYvfk4bKsyS1NQvteph7DwG7JRIMm_HuXg8EeNllVrsSi0v9W_Gh95ezbOStp3ZWuWl0AzFKxMaCOjN81yiz7A5qhkONrd7lP2CTkUbFErw28r3ONTLvo8c8sO7h diWY78iar8s:APA91bHJAzXe384OEYvfk4bKsyS1NQvteph7DwG7JRIMm_HuXg8EeNllVrsSi0v9W_Gh95ezbOStp3ZWuWl0AzFKxMaCOjN81yiz7A5qhkONrd7lP2CTkUbFErw28r3ONTLvo8c8sO7h

NodeJS

console.log("START");
var FCM = require('fcm-node');
var serverKey = require('/Users/bheng/Desktop/Apps/APNS/node/mhn-app-firebase-adminsdk-bs45c-5ac3770488.json')
var fcm = new FCM(serverKey)
var collapseKey = 'new_message';
var message = {
    to: 'diWY78iar8s:APA91bHJAzXe384OEYvfk4bKsyS1NQvteph7DwG7JRIMm_HuXg8EeNllVrsSi0v9W_Gh95ezbOStp3ZWuWl0AzFKxMaCOjN81yiz7A5qhkONrd7lP2CTkUbFErw28r3ONTLvo8c8sO7hdiWY78iar8s:APA91bHJAzXe384OEYvfk4bKsyS1NQvteph7DwG7JRIMm_HuXg8EeNllVrsSi0v9W_Gh95ezbOStp3ZWuWl0AzFKxMaCOjN81yiz7A5qhkONrd7lP2CTkUbFErw28r3ONTLvo8c8sO7h',
    data: {
        cpeMac: '000000000000',
        type: 'malware'
    },
    notification: {
        title: 'Hello baby',
        body: 'Nice body',
        tag: collapseKey,
        icon: 'ic_notification',
        color: '#18d821',
        sound: 'default',
    },
};


fcm.send(message, function(err, response){
    if (err) {
        console.log("Something has gone wrong!")

        console.log(JSON.stringify(err));

    } else {
        console.log("Successfully sent with response: ", JSON.stringify(response))
    }
})

console.log("END");

Result

When I run it

node app.js  

I kept getting

START                                                                                 
END                                                                                   
Successfully sent with response:  {"results":[{"error":{"code":"messaging/invalid-registration-token","message":"Invalid registration token provided. Make sure it matches the registration token the client app receives from registering with FCM."}}],"canonicalRegistrationTokenCount":0,"failureCount":1,"successCount":0,"multicastId":7577724855311354000}

How would one go about debugging this further?


Solution

  • your token has some additional random string such as to: 'diWY78iar8s:APA91bHJAzXe384OEYvfk4bKsyS1NQvteph7DwG7JRIMm_HuXg8EeNllVrsSi0v9W_Gh95ezbOStp3ZWuWl0AzFKxMaCOjN81yiz7A5qhkONrd7lP2CTkUbFErw28r3ONTLvo8c8sO7hdiWY78iar8s:APA91bHJAzXe384OEYvfk4bKsyS1NQvteph7DwG7JRIMm_HuXg8EeNllVrsSi0v9W_Gh95ezbOStp3ZWuWl0AzFKxMaCOjN81yiz7A5qhkONrd7lP2CTkUbFErw28r3ONTLvo8c8sO7h',

    just remove : diWY78iar8s: from your token string

    console.log("START");
    var FCM = require('fcm-node');
    var serverKey = require('/Users/bheng/Desktop/Apps/APNS/node/mhn-app-firebase-adminsdk-bs45c-5ac3770488.json')
    var fcm = new FCM(serverKey)
    var collapseKey = 'new_message';
    var message = {
        to: 'APA91bHJAzXe384OEYvfk4bKsyS1NQvteph7DwG7JRIMm_HuXg8EeNllVrsSi0v9W_Gh95ezbOStp3ZWuWl0AzFKxMaCOjN81yiz7A5qhkONrd7lP2CTkUbFErw28r3ONTLvo8c8sO7hdiWY78iar8s:APA91bHJAzXe384OEYvfk4bKsyS1NQvteph7DwG7JRIMm_HuXg8EeNllVrsSi0v9W_Gh95ezbOStp3ZWuWl0AzFKxMaCOjN81yiz7A5qhkONrd7lP2CTkUbFErw28r3ONTLvo8c8sO7h',
        data: {
            cpeMac: '000000000000',
            type: 'malware'
        },
        notification: {
            title: 'Hello baby',
            body: 'Nice body',
            tag: collapseKey,
            icon: 'ic_notification',
            color: '#18d821',
            sound: 'default',
        },
    };
    
    
    fcm.send(message, function(err, response){
        if (err) {
            console.log("Something has gone wrong!")
    
            console.log(JSON.stringify(err));
    
        } else {
            console.log("Successfully sent with response: ", JSON.stringify(response))
        }
    })
    
    console.log("END");
    

    Response from FCM :

    Successfully sent with response:  { results: [ { messageId: '0:1543448946734425%479ec0e2479ec0e2' } ],
      canonicalRegistrationTokenCount: 0,
      failureCount: 0,
      successCount: 1,
      multicastId: 6133765431734591000 }