有人知道Firebase云消息传递支持VOIP pushkit服务吗?
如果是,那么有人能提供同样的指导方针吗?
同样的事情在Skype /环聊 / WhatsApp或任何其他基于VOIP的应用程序中实现。
提前感谢。
我让PushKit Firebase通过node-apn工作。只需通过npm将它安装到您的云功能文件夹中。你可以从你的商店或者类似的地方得到代币,但是我认为这是不言自明的...
这是一些虚拟代码:
export const test = functions.https.onRequest((request, response) => {
const config = {
production: false, /* change this when in production */
cert: 'yourCERT.pem',
key: 'yourKey.pem',
};
const apnProvider = new apn.Provider(config);
const notification = new apn.Notification();
const recepients: string[] = [];
recepients.push(apn.token('SOME PUSHKIT TOKEN'));
recepients.push(apn.token('ANOTHER PUSHKIT TOKEN'));
notification.topic = 'com.your.app.voip'; // you have to add the .voip here!!
notification.payload = {
// some payload
};
return apnProvider.send(notification, recepients).then((reponse) => {
console.log(reponse);
return response.send("finished!");
});
});
链接到node-apn
这对我有用!不要忘记在目录中添加Authkey_xxxx. p8文件,也不要忘记在通知主题中将. voip添加到包ID中。
export const test = functions.https.onRequest((request, response) => {
const config = {
production: false, /* change this when in production */
token: {
key: "./AuthKey_xxxx.p8",
keyId: "xxxx",
teamId: "yyyy"
}
};
const apnProvider = new apn.Provider(config);
const notification = new apn.Notification();
const recepients: string[] = [];
recepients.push(apn.token('SOME PUSHKIT TOKEN'));
recepients.push(apn.token('ANOTHER PUSHKIT TOKEN'));
notification.topic = 'com.your.app.voip'; // you have to add the .voip here!!
notification.payload = {
// some payload
};
return apnProvider.send(notification, recepients).then((reponse) => {
console.log(reponse);
return response.send("finished!");
});
});
在撰写本文时(FirebaseMessaging 1.1.0/Firebase 3.2.0),FCM在iOS下使用常规APN,因此不支持PushKit通知。
我的应用程序在服务器上发生某种事件后接收推送通知。 除了在一小段时间内有许多事件一个接一个地发生的情况外,一切都很正常。 设备上的Firebase令牌也是正常的,因为应用程序从Firebase控制台接收通知。
是否有任何API(Python、JS、...)可用于生成和检索Firebase云消息传递服务器令牌? 最终目标应与单击“项目设置”中的“添加服务器密钥”按钮相同。
Firebase云消息服务的multicast_id是什么? 如Google提供的留档中所述,多播id是标识多播消息的唯一编号。 我读了,但我不明白。有人能解释一下吗?
我已经从Firebase中导入的Google项目中删除了名为Server key(由Google Service自动创建)的api密钥。 现在,项目设置中的字段服务器密钥-云消息传递为空。我也不能发送通知,我从服务器上得到一个未经授权的401错误。 我能做什么?
我在Android和iOS应用程序中使用FCM。客户端代码工作正常,因为我可以从Firebase控制台向两个平台发送通知,而不会出现任何问题。通过我的C#代码,我可以成功地将通知发送到android设备,但除非直接来自Firebase通知控制台,否则通知永远不会出现在iPhone上。我不知道是什么给你的。 C#服务器端代码 我的服务器端代码无法在iPhone上运行通知,但Firebase对此做出了
在我的Android应用程序中,我收到使用Firebase发送的消息,问题不是所有消息都到达,有时消息到达非常慢。 在我的服务器端,我跟踪我发送到FCM的消息,我总是收到成功:来自FCM的1个响应,仍然有我在Android应用程序中没有收到的消息。 我认为FCM消息日志在上面描述的情况下会有很大的帮助,但我不确定是否存在此选项。 有办法浏览Firebase消息日志吗?