Hi, I am trying to get enhanced message with error-response, too.
if select.select here with given timeout = 0s, it often get NO APNS's error-response in time, 
when I set to 0.3s it got 90% of error-response, however, it's not guarantee 100% to get error-response for every failed notification, the network connection might also be a factor of delayed time.
Now I am trying to implement using another thread to constantly monitor the read descriptor and response to main thread for further handling. Refering to solution concept: http://redth.info/the-problem-with-apples-push-notification-ser/