estoy usando el código Ruby a recibir errores de APN sobre empuja sin éxito:conexión a prod APN con el desarrollo cert
if IO.select([ssl], nil, nil, 5)
read_buffer = ssl.read(6)
process_error_response(read_buffer)
end
me di cuenta de una situación extraña donde IO.select no es nula, pero devuelve un read_buffer cuerda vacía. Después de algunas depuraciones, me di cuenta de que esto sucede si te conectas a gateway.push.apple.com con un certificado APNs de desarrollo, y lo mismo ocurre al parecer si te conectas a gateway.sandbox.push.apple.com con un certificado de producción.
¿Hay alguna forma de detectar mediante programación que este es el caso, p. si un usuario le da un certificado push y le dice que es producción/desarrollo, pero en realidad no puede verificar ese hecho en el sitio del desarrollador de Apple. Hubiera pensado que la conexión sería rechazada, pero parece que se creó pero en un estado parcialmente roto.