richsilv / meteor-cordova-notifications

Simple push notifications for Cordova apps built using Meteor
MIT License
104 stars 13 forks source link

Question/Enhancement: Any immediate plans for iOS/APN #1

Open adamgins opened 9 years ago

adamgins commented 9 years ago

Hi there, this looks awesome... I am really interested in any immediate plans for iOS/APN support, pretty pls?

richsilv commented 9 years ago

Yes, I'm talking to somebody about implementing this for iOS at the moment - it will hopefully only take a few days.

adamgins commented 9 years ago

Great stuff :-)

pvos commented 9 years ago

Would be great if this support IOS as well, would fill the gap.

Are there plans any ETA or a can anyone recommend a package for IOS push notifications which is proven to work at this moment with latest meteor?

richsilv commented 9 years ago

Kevin O'Hagan's looking at this. He's busy organising MeteorDay Spain at present, but hopefully we will have some progress over the next week. It really shouldn't take long.

On Thu, Nov 6, 2014 at 2:53 PM, Pascal Vos notifications@github.com wrote:

Would be great if this support IOS as well, would fill the gap.

Are there plans any ETA or a can anyone recommend a package for IOS push notifications which is proven to work at this moment with latest meteor?

— Reply to this email directly or view it on GitHub https://github.com/richsilv/meteor-cordova-notifications/issues/1#issuecomment-61989762 .

kevohagan commented 9 years ago

Yes next week ETA! :)

shouldnt be too hard to implement, havent had the time to really look at it yet ! @richsilv you're comments are awesome for TODO's ;)

randyhak commented 9 years ago

Hey guys, great work!!! I think it's the only push notification for meteor/android working out of the box. We were trying to get meteor working with push notifications and failed. So thumbs up for you guys.

kevohagan commented 9 years ago

Hey Randy and co.

Im working the iOS implementation of things. should be working in the next few days! :)

On 14 November 2014 14:24, Randy notifications@github.com wrote:

Hey guys, great work!!! I think it's the only push notification for meteor/android working out of the box. We were trying to get meteor working with push notifications and failed. So thumbs up for you guys.

— Reply to this email directly or view it on GitHub https://github.com/richsilv/meteor-cordova-notifications/issues/1#issuecomment-63063683 .

Kevin O'Hagan @kevohagan +0034685245319 Palma de Mallorca, Spain

randyhak commented 9 years ago

Hey Kevohagan,

If you need help testing the IOS version, let me know.

Regards,

Randy

elvismercado commented 9 years ago

Hi all. Any news on the iOS implementation?

kevohagan commented 9 years ago

hey guys!

sorry for all of this, i've been really stuck with work and events and havent really advanced on this, so any help would be welcome, im sure @richsilv would appreciate it!!

so for sure @randyhak if you wnat to check things out, go check the dev branch of the repo :)

elvismercado commented 9 years ago

thanks for the update @kevohagan. I will try to help if i get some time. Great wok by the way. @richsilv @kevohagan

richsilv commented 9 years ago

I think the iOS side of this should be relatively straight-forward, and I've put some pretty extensive comments in the dev branch in terms of what needs doing. My limiting factor isn't really time (although that's always an issue), it's that I'm a Linux/Android guy so I don't have the kit to test it on. So if anybody interested in iOS does have a free evening to take a look, be my guest!

On Mon, Nov 24, 2014 at 2:46 PM, kevohagan notifications@github.com wrote:

hey guys!

sorry for all of this, i've been really stuck with work and events and havent really advanced on this, so any help would be welcome, im sure @richsilv https://github.com/richsilv would appreciate it!!

so for sure @randyhak https://github.com/randyhak if you wnat to check things out, go check the dev branch of the repo :)

— Reply to this email directly or view it on GitHub https://github.com/richsilv/meteor-cordova-notifications/issues/1#issuecomment-64203147 .

fungilation commented 9 years ago

I'm just starting cordova wrapping for my meteor web app. Native app dev is new to me. Conversely I'm an "iOS guy" so I'd help if I can. I need app notifications for both iOS and Android.

Initial googling turns up this for APN notifications: http://stackoverflow.com/questions/22598009/how-can-one-send-ios-push-notifications-from-a-meteor-app

fungilation commented 9 years ago

@kevohagan do you have any uncommitted work for APN? I'm looking at the dev branch right now.

funkyeah commented 9 years ago

@fungilation and @kevohagan thanks for the effort guys, I tried looking into this and programming abilities just are up to snuff to tackle this... you have my moral support and excitement!

kevohagan commented 9 years ago

@fungilation no i havent any uncommitted work thats worth it really :(

On 4 December 2014 at 10:14, funkyeah notifications@github.com wrote:

@fungilation https://github.com/fungilation and @kevohagan https://github.com/kevohagan thanks for the effort guys, I tried looking into this and programming abilities just are up to snuff to tackle this... you have my moral support and excitement!

— Reply to this email directly or view it on GitHub https://github.com/richsilv/meteor-cordova-notifications/issues/1#issuecomment-65555868 .

Kevin O'Hagan @kevohagan +0034685245319 Palma de Mallorca, Spain

fungilation commented 9 years ago

Has anyone tried or looked at https://github.com/SpaceCapsule/Meteor-phonegap-push/blob/master/push.server.js? Doesn't include the device id management like this package does but seems to handle both android and ios push

elvismercado commented 9 years ago

I forked this project and managed to receive notifications on an iPhone5 on iOS8. You can see the adaptations here: https://github.com/elvismercado/meteor-cordova-notifications/tree/dev. I used @fungilation's link to send the a message to the APN server

richsilv commented 9 years ago

Great stuff, Elvis.

I'd really appreciate if somebody could briefly test Elvis's branch, and I'll merge it if all appears okay.

On Thu, Dec 4, 2014 at 2:25 PM, Elvis Mercado notifications@github.com wrote:

I forked this project and managed to receive notifications on an iPhone5 on iOS8. You can see the adaptations here: https://github.com/elvismercado/meteor-cordova-notifications/tree/dev. I used @fungilation https://github.com/fungilation's link to send the a message to the APN server

— Reply to this email directly or view it on GitHub https://github.com/richsilv/meteor-cordova-notifications/issues/1#issuecomment-65638557 .

fungilation commented 9 years ago

Nice! You beat me to it @elvismercado. You found a fix to iOS 8 bug too in PushPlugin. I'll verify notifications receiving on my iPhone 6 and iPad on iOS 7.1

Meteor.npmRequire() is undocumented by meteor though, have this instead in package.js for depending on apn?

Npm.depends({
  // "node-gcm": "0.9.12",    // https://github.com/SpaceCapsule/Meteor-phonegap-push use this
  apn: "1.6.2"
});
elvismercado commented 9 years ago

Thanks @richsilv @fungilation . I obviously forgot to mention how i made use of npm. I used https://atmospherejs.com/meteorhacks/npm in a test project so i forgot to set the packages Npm.depends on the package itself. Meteor.npmRequire() is part of the meteorhacks:npm package. I changed it to Npm.depends.

fungilation commented 9 years ago

Great. I realized I can't test for iOS notifications yet as I need to get my company DUNS registered before I can get on the apple developer program...

adnissen commented 9 years ago

@elvismercado could we get some quick documentation on how to use your fork?

funkyeah commented 9 years ago

@elvismercado another pretty please from me on what @adnissen said above!

in particular I'm a bit confused (not surprising since I'm a noob) on how to configure everything properly. In particular where does the deviceToken come from and how do you set it up properly and/or call it?

The Meteor.call function: https://github.com/elvismercado/meteor-cordova-notifications/blob/59fc740b0611cedb5735cb6c89a1fee7c11cb4f2/cordova-both.js#L31

suggests that data needs to have the token in it but where should: tokenHandler(data) be called?

Looks like you also may need to setup

as per the following documentation and put them somewhere specific... still a bit confusing to me if thats true

https://github.com/argon/node-apn/wiki/Preparing-Certificates https://github.com/argon/node-apn https://github.com/argon/node-apn/blob/master/doc/connection.markdown

elvismercado commented 9 years ago

Sorry i haven't had time to write some explanation. I will do my best to have something done by tomorrow night. For now ill mention some stuff here.

You should go ahead and read the PushPlugin documentation. (http://plugins.cordova.io/#/package/com.phonegap.plugins.pushplugin).

The moment we have a user logged in then we try to register the device with the PushPlugin: https://github.com/elvismercado/meteor-cordova-notifications/blob/dev/cordova-both.js#L100 The tokenHandler is passed as an argument, which is where we find the deviceToken if the PushPlugin manages to register the device. All that the tokenHandler does is pass the deviceToken to the user so we know who's deviceToken it is later on when the server needs it.

At this moment any time the server needs to send a notification it will need your certificate.pem, key.pem and passphrase. You need to be subscribed to the iOS Developer Program to be able to create a certificate which you will later extract and create the .pem files needed. I will not explain how to do this right now.

I hope this is enough for now.

richsilv commented 9 years ago

Just added a Gitter chatroom for this repo, which is here: https://gitter.im/richsilv/meteor-cordova-notifications?utm_source=share-link&utm_medium=link&utm_campaign=share-link It's a far better forum for discussion for this stuff (when the subject isn't a specific issue). Feel free to join!

funkyeah commented 9 years ago

Thanks!

On Mon, Dec 8, 2014 at 4:26 AM, Richard Silverton notifications@github.com wrote:

Just added a Gitter chatroom for this repo, which is here:

https://gitter.im/richsilv/meteor-cordova-notifications?utm_source=share-link&utm_medium=link&utm_campaign=share-link It's a far better forum for discussion for this stuff (when the subject isn't a specific issue). Feel free to join!

— Reply to this email directly or view it on GitHub https://github.com/richsilv/meteor-cordova-notifications/issues/1#issuecomment-66075773 .

Tim-W commented 9 years ago

I guess the majority of you is now using the raix:push package instead of this one?

elvismercado commented 9 years ago

unfortunately yes @Tim-W

fungilation commented 9 years ago

well I'm not, this works fine

On Tue, May 12, 2015 at 1:19 AM Elvis Mercado notifications@github.com wrote:

unfortunately yes @Tim-W https://github.com/Tim-W

— Reply to this email directly or view it on GitHub https://github.com/richsilv/meteor-cordova-notifications/issues/1#issuecomment-101185387 .

elvismercado commented 9 years ago

Well if you guys are still using it maybe it's a good idea to keep it up to date.