używam tego kodu Ruby otrzymywać błędy z APN na nieudanych pchnięć:Podłączenie do prod APN z rozwojem cert
if IO.select([ssl], nil, nil, 5)
read_buffer = ssl.read(6)
process_error_response(read_buffer)
end
zauważyłem dziwną sytuację, w której IO.select nie jest zerowa, ale read_buffer zwraca pusta struna. Po pewnym debugowaniu zdałem sobie sprawę, że dzieje się tak, gdy łączysz się z gateway.push.apple.com certyfikatem APN rozwoju i to samo dzieje się, jeśli łączysz się z gateway.sandbox.push.apple.com z certyfikatem produkcyjnym.
Czy istnieje sposób, aby programowo wykryć, że tak jest, np. jeśli otrzymałeś certyfikat wypychania od użytkownika i powiedziałeś, że jest to produkcja/programowanie, ale nie możesz zweryfikować tego faktu w witrynie dla programistów Apple? Myślałbym, że połączenie zostanie odrzucone, ale zamiast tego wydaje się być stworzone, ale w stanie częściowo złamanym.