У меня небольшая проблема. Я пытаюсь протестировать функцию push-уведомлений, но не могу понять. Я настроил страницу webRTC, которую использую для отправки уведомления (у меня нет двух устройств IOS). Все сертификаты / ключи были сгенерированы с помощью действий Fastlane (match и pem). Мне известно, что я использую производственную функцию для apnOptions и сгенерировал правильные сертификаты. Когда я пишу какую-то тарабарщину на ключе или идентификаторе команды, я получаю ошибки, это означает, что с моим сертификатом все в порядке. Идентификатор пакета - именно тот, который отображается на странице разработчика Apple.
Вот мой токен и мое уведомление:
var apnProvider = new apn.Provider({
token: {
key: "cert/key.p8",
keyId: "#",
teamId: "#"
},
production: true
});
if (deviceToken) {
if (platform === 'ios') {
let note = new apn.Notification()
note.alert = 'Hello World'
note = Object.assign(note, {
// Expires 1 hour from now.
expiry: Math.floor(Date.now() / 1000) + 3600,
badge: 3,
payload: payloadBody,
topic: "org.#.#"
})
apnProvider.send(note, deviceToken).then((result) => {
console.info('APNPROVIDER RESULT', `PLATFORM: ${platform}, RESULT:${JSON.stringify(result)}`)
})
Большое спасибо за Вашу помощь!
Да, я его включил.





IOS следует правильному формату для push-уведомлений. Если вы не соблюдаете правильный формат, ваши уведомления не будут доставлены. Также должен быть тег aps.
{
"aps": {
"alert": "Hello World",
"sound": "default"
},
"customData": {
"CustomKey": "CustomValue",
}
}
Вы можете перейти по этой ссылке для справки https://developer.apple.com/documentation/usernotifications/setting_up_a_remote_notification_server/generating_a_remote_notification
Я узнал в конце концов. Оказалось, что если я использую пакет voip, мне нужно добавить в конец пакета .voip. Итак, пакет будет выглядеть примерно так: org.test.Test.voip. Я задолбался..
Спасибо тебе большое. Ты спас мне жизнь. где эта информация .voip написана?
В моем случае проблема заключалась в том, что сервер принимал токен устройства push kit, то есть токен VoIP, а идентификатор пакета был com.something.
Решение: Для пользователей уведомлений с типом VoIP, идентификатор темы / пакета "com.something.voip".
Включили ли вы push-уведомления из возможностей в рамках цели в своем проекте?