4 ms·
Great suggestions. It would be awesome if you contributed it to grocer as well :P. It's still in active development though so you may find some of these enhance
by vanstee 14y ago
Great suggestions. It would be awesome if you contributed it to grocer as well :P. It's still in active development though so you may find some of these enhancements in grocer at some point in the near future. Thanks man!
- kyledrake 14y agoNo problem, I would love to contribute! My account is kyledrake on Github. Right now I'm experimenting with socket keepalive, which I think may be important to keeping socket connections open (per some discussion I found from an Apple dev). If my tests go well I'll send a pull request later tonight! The one thing I haven't figured out yet is how to stop messages from being dropped after feedback comes in. It has a tendency to silently fail to send messages. My current solution is to check for errors before a write, and do a IO.select on the socket to wait for a read for an arbitrary amount of time. You might want to look at some of the weird stuff I had to do in here.. it's a problem I'd like to figure out how to deal with: https://github.com/geoloqi/lead_zeppelin/blob/master/lib/lead_zeppelin/apns/gateway.rb#L96 https://github.com/geoloqi/lead_zeppelin/blob/master/lib/lea...
- vanstee 14y agoSweet. Now accepting pull requests :) Interesting. We haven't hit that issue yet. Hmmm. We also haven't had any issues with feedback affecting our outgoing messages. Yeah we just check for messages from the feedback socket after sending a notification (as Apple's guide recommends) but we're not doing anything fancy like waiting for a response. Sounds cool though.
- kyledrake 14y agoI want to remove the IO.select because it slows things down unfortunately. I noticed you are using enhanced push, but also opening a feedback socket separately. I was under the impression that you were supposed to read feedback in-line with the enhanced protocol, but I may have gotten this wrong. Are you using the enhanced protocol -and- listening to the feedback socket? This is interesting, and may solve a problem I'm having, so I wanted to get your thoughts.
- vanstee 14y agoCouldn't find that in the guide (reading feedback from the same socket). I might have missed it though. And yep. We're using the enhanced protocol while opening another connection to the feedback service. I just followed this section of the docs. http://developer.apple.com/library/mac/#documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/CommunicatingWIthAPS/CommunicatingWIthAPS.html#//apple_ref/doc/uid/TP40008194-CH101-SW3 http://developer.apple.com/library/mac/#documentation/Networ...
- deleted 14y ago[deleted]
- kyledrake 14y agoWhere do you call the feedback socket after sending a notification in the code? Is this something you do on your application's end? Sorry, last question I promise. Pull requests coming soon!
- vanstee 14y agoOh sorry. Yeah we do this in our app (not automatically in the gem).