Push-уведомление Safari в Windows Azure
Я пытаюсь использовать push-уведомления Safari с Windows Azure в качестве бэкэнда. Я был в состоянии загрузить Website Push ID: web.com...
сертификат для Azure Mobile Services
и было принято без каких-либо сообщений об ошибках в apple push notification settings
,
Для обработки конечных точек веб-службы (webServiceURL/version/pushPackages/websitePushID
, webServiceURL/version/devices/deviceToken/registrations/websitePushID
и т. д.) Я создал в Mobile Services API, который работает нормально.
Но я не могу отправить push-уведомление или получить сообщение об ошибке.
Мой тестовый код выглядит так:
function send(req, res) {
var push = req.service.push;
var devicesTable = req.service.tables.getTable('devices');
devicesTable.read({
success: function(devices) {
devices.forEach(function(device) {
console.log("send to deviceToken " + device.deviceToken);
push.apns.send(device.deviceToken, {
alert: 'Toast: A new Mobile Services task.',
payload: {
inAppMessage: "Hey, a new item arrived: '"
}
});
push.apns.send(device.deviceToken, {
alert: {
"title": "Test 123 ",
"body": "Test 123 ",
"action": "View"
},
"url-args": ["boarding"]
},
{
error : function(err) {
console.log("send error " + err);
}
}
);
});
}
});
res.send(200, "");
}
Является ли моя проблема форматированием словаря, или мобильные службы Azure по какой-то причине не поддерживают push-уведомления Safari?
Насколько я знаю, APNS одинакова для push-уведомлений iOS, Mac и Safari.
Обновление: я протестировал его с SimplePush, поэтому сертификат в порядке, как и регистрация Safari. Моя полезная нагрузка выглядит так:
// Create the payload body
$body['aps'] = array(
'alert' => array(
'title' => 'test',
'body' => $message
),
'url-args' => array('test'),
);
1 ответ
Я предполагаю, что вы правильно зарегистрировали свой клиент Safari в соответствии с указаниями Apple - тестировали ли вы свой клиент на не-Azure реализации? Глядя на руководство по внедрению от Apple, кажется, что есть много движущихся частей, даже если не рассматривать Azure в качестве источника push-информации.