Firebase Cloud Messaging VOIPをサポートする pushkit サービスについてのアイデアはありますか?.
はいの場合、誰かが同じガイドラインを提供してください。
Skype /ハングアウト/ WhatsAppまたはその他のVOIPベースのアプリに実装されているものと同じです。
前もって感謝します。
執筆時点では(FirebaseMessaging 1.1.0/Firebase 3.2.0)FCMはiOSの下で通常のAPNを使用するため、PushKit通知はサポートされていません。
Node-apnを介してPushKit + Firebaseを動作させました。 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!");
});
});
これは私のために働いた! Authkey_xxxx.p8ファイルをディレクトリに追加することを忘れないでください。通知トピックのバンドルIDに.voipを追加することを忘れないでください。
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!");
});
});