我对Firebase和Nodejs是新手。我正在尝试使用Firebase Cloud函数从一个设备发送通知到另一个设备。
这是发送通知的node.js代码:
var functions = require('firebase-functions');
var admin = require('firebase-admin');
admin.initializeApp(functions.config().firebase);
exports.sendNotification = functions.database.ref('/sendNotification/{notificationId}')
.onWrite(event => {
var regToken="fYRweeL8cic:APA91bH6Q_gyKKrLL...";
// Grab the current value of what was written to the Realtime Database.
var eventSnapshot = event.data;
var payload = {
data: {
title: eventSnapshot.child("title").val()
}
};
// Set the message as high priority and have it expire after 24 hours.
var options = {
priority: "high",
timeToLive: 60 * 60 * 24
};
admin.messaging().sendToDevice(regToken,payload,options)
.then(function(response){
console.log("Successfully sent message: ", response);
})
.catch(function(error){
console.log("Error sending message: ", error);
})
})
这是将通知添加到实时数据库以触发函数的代码:
public void sendNotification(){
FirebaseDatabase database = FirebaseDatabase.getInstance();
final DatabaseReference myRef = database.getReference("sendNotification");
myRef.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
Toast.makeText(getApplicationContext(),
"sent", Toast.LENGTH_SHORT).show();
Map data = new HashMap();
data.put("title", "this is my title");
data.put("message", "this is the message");
myRef.push().setValue(data);
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
}
{"results":[{"error":{"code":"messaging/registration-token-not-registered","message":"The provided registration token is not registered. A previously valid registration token can be unregistered for a variety of reasons. See the error documentation for more details. Remove this registration token and stop using it to send messages."}}],"canonicalRegistrationTokenCount":0,"failureCount":1,"successCount":0,"multicastId":6051985890611026000}
反应真的很清楚,代币已经改变了。我已经将它更改为有效的令牌,它起作用了。
正如注释中所建议的,我使用了:json.stringify(response)
来获取更多信息。这是回应:
{"results":[{"error":{"code":"messaging/registration-token-not-registered","message":"The provided registration token is not registered. A previously valid registration token can be unregistered for a variety of reasons. See the error documentation for more details. Remove this registration token and stop using it to send messages."}}],"canonicalRegistrationTokenCount":0,"failureCount":1,"successCount":0,"multicastId":6051985890611026000}
反应真的很清楚,代币已经改变了。我已经将它更改为有效的令牌,它起作用了。
我想在登录时向特定用户发送通知,我使用Firebase消息,我可以通过控制台发送通知,但我想使用发送到主题和request以Swift代码发送此通知。当我在postman中运行代码时,我无法实现http请求以发送通知。我有以下错误: 请求缺少身份验证密钥(FCM令牌)。请参阅FCM文档的“认证”部分,网址为https://firebase.google.com/docs/cloud-messagi
如何通过Azure从我的UWP-App向不同设备上的应用程序的其他实例发送推送通知? 以下是注册设备以接收推送的说明。(这是可行的)第二部分是关于如何在控制台应用程序上发送推送(这也是可行的)https://azure.microsoft.com/en-us/documentation/articles/notification-hubs-windows-store-dotnet-get-star
我正在尝试使用Azure通知中心向客户端发送推送通知。我读了这篇文章,它使用标签来识别每个用户。 https://azure.microsoft.com/en-us/documentation/articles/notification-hubs-aspnet-backend-windows-dotnet-notify-users/ 它可以完成这项工作,但标记的数量有限。我正在考虑存储和使用中心返
问题内容: 我已经在项目中实现了推送通知,到目前为止一切正常。我尝试过通过Pusher发送通知,但效果很好。但是我必须通过PHP发送它们,但尚无法使用。我发现了许多有关如何实现此目标的旧解释,但似乎没有一个对我有用。 这就是我要使用的方法: 问题答案: 尝试使用此php脚本,确保.pem证书在运行时以与该php脚本相同的路径退出,并获得正确的设备令牌
我现在已经在我的应用程序中设置了Firebase通知,当我发送消息时,消息会发送给我的应用程序的所有用户。(我目前通过Firebase控制台发送消息。我想用另一种不涉及Firebase控制台的方式发送推送通知,我相信HTTP Post是一种简单的方式。如何使用HTTP POST远程发送推送通知?
我正在尝试设置一些代码以通过Office 365经过身份验证的SMTP服务发送电子邮件: 这似乎不起作用,我看到了一个例外: SMTP服务器需要安全连接,或者客户端没有经过身份验证。服务器响应是:5 . 7 . 57 SMTP;客户端未通过身份验证,无法在系统中从< br >发送匿名邮件。net . mail . mail command . send(SmtpConnection conn,By