Может кто-нибудь уточнить, что APN (Apple Push Notification) хочет, насколько вы его запросите?
Документы говорят, что он начинает отправлять, как только будет установлено соединение. Означает ли это, что я не делаю fread()
на нем?
Вот мой текущий код, чтобы попробовать его прочитать. Я не помещал fread()
в цикле, так как не знаю, какой ответ указывает "больше нет записей для чтения", и я не хотел бесконечного цикла на моем сервере.
<?php
$apnsCert = 'HOHRO-prod.pem';
$streamContext = stream_context_create();
stream_context_set_option($streamContext, 'ssl', 'local_cert', $apnsCert);
stream_context_set_option($streamContext, 'ssl', 'verify_peer', false);
$apns = stream_socket_client('ssl://feedback.push.apple.com:2196', $error, $errorString, 60, STREAM_CLIENT_CONNECT, $streamContext);
echo 'error=' . $error;
echo 'errorString=' . $errorString;
$result = fread($apns, 38);
echo 'result=' . $result;
fclose($apns);
?>
Пока все, что я получаю, это пустой ответ. Ошибок нет, поэтому он подключается.
Я не знаю, означает ли нулевой ответ отсутствие данных, или мой fread()
- неправильный способ сделать это.
Спасибо