cyberia
@cyberia
Веб-разработчик, плавно перехожу в мобильные разра

Как отправлять PUSH для iOS из php?

Нахожусь в поиске лучшего решения для отправки push для iOS через PHP. Нашел только разработку adobkin.com/2013/04/10/php-apn-php-rasshirieniie-d... всем устраивает, но не очень удобно ее устанавливать, и администраторы клиентов не всегда беруться ставить некий модуль для php по соображениям безопасности. Но самое главное — это то, что данное решение позволяет отправить пуш с 64 русскими символами. По моим догадкам, это происходит из-за конвертации русских символов в юникод последовательности типа \u2201 при построении JSON, а в момент написания этой библиотеки размер пуш был ограничен 256 байтами.

Собственно вопрос — кто что использует?
  • Вопрос задан
  • 2036 просмотров
Решения вопроса 1
comm1x
@comm1x
Web-developer
Самыми обычными сокетами. Выдержка из кода:
$ctx = stream_context_create();
stream_context_set_option($ctx, 'ssl', 'local_cert', 'ck.pem');
stream_context_set_option($ctx, 'ssl', 'passphrase', $passphrase);
$fp = stream_socket_client('ssl://gateway.sandbox.push.apple.com:2195', $err,
	$errstr, 60, STREAM_CLIENT_CONNECT|STREAM_CLIENT_PERSISTENT, $ctx);

$payload = json_encode($body);
$msg = chr(0) . pack('n', 32) . pack('H*', $deviceToken) . pack('n', strlen($payload)) . $payload;
fwrite($fp, $msg, strlen($msg));
fclose($fp);


Использовали этот гайд: www.raywenderlich.com/32960/apple-push-notificatio...
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы