#android #firebase #google-cloud-functions #firebase-cloud-messaging
#Android #firebase #google-cloud-функции #firebase-облако-обмен сообщениями
Вопрос:
Мне нужна ваша помощь с моим кодом, мне нужно отправить уведомление, когда пользователь выполняет действие из своего приложения, чтобы уведомить другого пользователя (у которого у меня есть токен его устройства).
Что я уже сделал: сначала установите node.js и из него загрузите firebase admin SDK, войдите в систему и подключите его к моему проекту на firebase, пока я не подключу Firebase CLI успешно.
затем я открыл index.js файл и добавьте к нему этот код:
const functions = require('firebase-functions');
//import admin module
const admin = require('firebase-admin');
admin.initializeApp(functions.config().firebase);
exports.pushNotification = functions.database.ref('/YourNode/{pushId}').onWrite((change, context) => {
console.log('Push notification event triggered');
// Get the current value of what was written to the Realtime Database.
const valueObject = change.after.val();
// Create a notification
const payload = {
notification: {
title: valueObject.title,
body: valueObject.message,
sound: "default"
}
};
//Create an options object that contains the time to live for the notification and the priority
const options = {
priority: "high",
timeToLive: 60 * 60 * 24
};
return admin.messaging().sendToTopic("pushNotifications", payload, options);
});
а затем я возвращаюсь к экрану cmd и ввожу firebase deploy, но на этом этапе он возвращает ошибку, которая:
и когда я решил эту проблему в Google, я понял, что мне нужно заплатить за членство в firebase, верно?
Что мне нужно
1- Если это правильно, правильно ли мой код и мои шаги? и что мне делать дальше, чтобы заставить уведомления работать?
2- Можете ли вы помочь мне дать правильные и конкретные шаги для достижения этой цели?
Пожалуйста, не давайте мне никаких ссылок на firebase, я прочитал всю документацию и действительно запутался.
Спасибо за ваше время, жду вашей помощи 🙂
Комментарии:
1. Просто чтобы уточнить: точный случай заключается в том, что вам нужно отправить push-сообщение кому-то другому по какому-либо запросу на ваш node.js приложение? И где вы размещаете свой node.js приложение?
2. @mrpasqal из общего кода и тегов, которые, по-видимому, являются облачными функциями Firebase .
3. Ответ на один вопрос, который я мог бы задать, приведен ниже. Если вопросы № 1 и № 2 все еще применимы к этому ответу, пожалуйста, отредактируйте свой вопрос, чтобы показать, в чем проблема при запуске этого кода.
4. @mrpasqal Я пытаюсь использовать облачную функцию Firebase для отправки этих push-уведомлений в случае, если другое пользовательское приложение переходит в спящий режим
Ответ №1:
Я подумал, что мне нужно заплатить за членство в firebase, верно?
Если ваш код требует Node.js 10 или выше, он больше не может быть развернут на бесплатном плане Firebase, и вам действительно нужно будет перейти на платный план. В сообщении об ошибке, которое вы получаете, также явно упоминается об этом. Я рекомендую изучить часто задаваемые вопросы о ценах Firebase по облачным функциям, поскольку это довольно сложно, и я не хочу неправильно цитировать это.
Комментарии:
1. Спасибо за ответ, мне нужно быть уверенным, что я делаю правильные шаги, чтобы получить уведомление? Если это так, я буду платить за план.