6

Trying to send a message from a node.js app in firebase to an android device using code snippets from the firebase website.

https://firebase.google.com/docs/cloud-messaging/android/send-multiple

Keep getting getMessaging is not a function.

My call is await admin.messaging().getMessaging().send(...)

Can't find what is wrong.

2 Answers 2

15

The getMessaging() function that you are referring to is a top level function that can be imported from firebase-admin/messaging SDK as shown below:

import { getMessaging } from "firebase-admin/messaging";

This is equivalent of admin.messaging() and both return an instance of Messaging class.

If you are following Firebase documentation to send messages, the code should be:

import { getMessaging } from "firebase-admin/messaging"; // not just "firebase-admin"

const messaging = getMessaging();

await messaging.send(...)

The Admin SDK is not fully modular yet like the the client SDK so rest of the syntax remains same. Also checkout What is the difference between admin.firestore, admin.firestore() and getFirestore()

Sign up to request clarification or add additional context in comments.

Comments

4

You're using firebase-admin sdk which does have different syntax. For your use-case, you should instead use:

await admin.messaging().send(...);

For more information, checkout this documentation.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.