Tag: apple push notifications

为什么苹果推送通知服务有时会给我错误500?

我有一个node.js项目,我使用的应用程序的后端,我必须发送推送通知到Android和IOS,事情是,APNS有时会给我一个错误500试图发送通知。 以下是通常的回应: { sent: [], failed: [ { device: '<device_id>', status: '500', response: { reason: 'InternalServerError' } } ] 我读到,如果你一次发送很多,APNS可以拒绝连接,事情是,我通常不会发送太多,每秒最多1个通知。 我使用node-apn,heres发送通知的代码。 function sendIosNotification(deviceTokens,body,data,musico) { var notification = new apn.Notification(); if (musico) { notification.topic = "<name_goes_here>.musico"; } else { notification.topic = "<name_goes_here>.cliente"; } notification.alert = body; notification.badge = 1; notification.sound = "dong.aiff"; notification.payload = data; apnProvider.send(notification, […]

发送推送通知后,应用程序卡住“inputPEM密码”

我正在使用apn发送从node.js应用程序到苹果的推送通知。 我的代码: // send to development**** var dev_cert_path = path.join(__dirname, '..', 'cert.pem'); var dev_key_path = path.join(__dirname, '..', 'key.pem'); var devOptions = { "gateway": "gateway.sandbox.push.apple.com" , "cert": dev_cert_path, "key": dev_key_path, "passphrase":'XXXXX'}; var devApnConnection = new apn.Connection(devOptions) , devMyDevice = new apn.Device(token) , devNote = new apn.Notification(); devNote.expiry = Math.floor(Date.now() / 1000) + 3600; // Expires 1 […]

苹果推送通知testing

我使用node.js(服务器框架)和mongoose.js(基于mongo的模式build模)作为iOS应用程序的后端,我使用Mocha(testing框架)确保一切正常。 我真正想知道的,并且可以find没有文档,如果正在发送推送通知如何在服务器上testing。 我正在使用apnagent,目前我可以看到推送通知正在通过手动检查我的设备正确发送,但我很难find一个自动的方式来testing,他们正在正常工作。 这可能足以说明在高层回答需要做些什么。 但是如果这里不是实际的代码: mongoose模型在创build时触发推送通知: #this code is called after this model is saved in mongodb eventModel.post 'save', (doc) -> #push the message sendMessageToDevice = (event, token) -> message = event_body: eventId: event._id lat: event.lngLat[1] lng: event.lngLat[0] agent.createMessage() .device(token) .alert('New Event! ' + event.description) .set(message) .send() #cycle through the users to push to #get […]

APN BadDeviceToken iff运行dev版本

问题 我在工作时没有收到推送通知给我的应用程序, APN服务器返回“ BadDeviceToken ” 。 情况 我必须在这里错过一些简单的事情,情况是这样的: 当我发送推送通知到我的应用程序从App Store下载它的作品 当我从同一服务器发送推送通知到我的应用程序的相同版本(*),但build立了Xcode,APN服务器返回一个status: '400'失败, failed[0].response.reason: 'BadDeviceToken' (*)我说相同的版本,代码是相同的,插件应该是相同的,但我已经把cordovaiOS版本从4.x改为3.x。 技术 我正在使用推送通知的新方法,在服务器上的服务器上我只有一个.p8 APNs身份validation密钥。 服务器是使用node-apn插件的节点代码。 客户端应用程序是cordova,使用Telerik Push Plugin 。 我试过了 我已经尝试创build一个新的APNsauthentication密钥,并上传到服务器; 仍然适用于应用程序的App Store版本,而APN在发送到我本地生成的应用程序版本时仍然返回“BadDeviceToken”。 我已经尝试设置production: false在发送推送到我的本地构build的应用程序之前,在服务器configurationnode-apn production: false ; 我仍然收到“BadDeviceToken”错误。 根据这个问题对令牌做一个额外的hex编码; 结果是它仍然说“BadDeviceToken”,虽然在这种情况下,它实际上是真的。 将cordova-ios版本反弹到4.3.1; 仍然得到“BadDeviceToken”。 双重检查build立时的“推送通知”function 按照这里所build议的执行发布版本而不是debugging版本,并在此处进行描述 问题(S) 为什么APN服务器在显示不正确的时候说BadDeviceToken ? 而且,我该如何解决?

如何从Meteor应用程序发送iOS推送通知?

我没有find从Meteor应用程序发送推送通知的综合教程。 我明白,meteor运行使用node.js,所以我一直在跟随这个高度引用和推荐的教程https://blog.engineyard.com/2013/developing-ios-push-notifications-nodejs但无济于事; 在部署我的应用程序时,它会上传,但是网站却没有响应(因为部署没有错误,我不能看到问题出在哪里,但我认为这与我如何组织文件有关)。 我已经按照教程的说明正确下载并加载了所有的证书。 我已经使用他们的示例应用程序来正确获取我的testing设备的ID。 我只是无法弄清楚在哪里放置额外的文件和依赖Meteor的文件夹configuration。 它应该与教程中的结构有什么不同(换句话说,这个结构应该放在我的应用程序的.meteor文件夹中的一个文件夹内吗? 我认为最重要的问题是Meteor只是简单地构build它们的应用程序,而不是简单的Node.js应用程序,因此我需要将这些证书和依赖项放在特定的文件夹中,而不仅仅是具有application.html application.js的主应用程序文件夹application.js和application.css 。