Может ли кто-нибудь прояснить, чего хочет 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()
неправильный способ сделать это.
Спасибо