Отправка push-уведомлений из настольного клиента AIR без промежуточного программного обеспечения (например, PHP) - PullRequest
2 голосов
/ 19 января 2012

С этим кодом PHP:

<?php
$apnsHost = 'gateway.sandbox.push.apple.com';
$apnsCert = 'apns-dev.pem';
$apnsPort = 2195;

$streamContext = stream_context_create();
stream_context_set_option($streamContext, 'ssl', 'local_cert', $apnsCert);

$apns = stream_socket_client('ssl://' . $apnsHost . ':' . $apnsPort, $error, $errorString, 2, STREAM_CLIENT_CONNECT, $streamContext);

$payload['aps'] = array('alert' => 'Oh hai!', 'badge' => 1, 'sound' => 'default');
$output = json_encode($payload);
$token = pack('H*', str_replace(' ', '', $token))
$apnsMessage = chr(0) . chr(0) . chr(32) . $token . chr(0) . chr(strlen($output)) . $output;
fwrite($apns, $apnsMessage);

socket_close($apns);
fclose($apns);

?>

Вы можете отправить push-уведомление с помощью PHP. Из настольного клиента AIR я легко могу передать переменные POST в похожий код и использовать AS3 + PHP для отправки уведомления.

Вопрос: теоретически возможно ли сделать то же самое, только используя AS3 и AIR (то есть без PHP)? Кто-нибудь пробовал? Помимо проблем с брандмауэром, что в конечном итоге может вызвать проблемы? Благодарю.

Ответы [ 2 ]

1 голос
/ 27 января 2012

Простите, если я здесь не на цели, но вы смотрели на ANE?

Есть iOS ANE, которая выглядит так, как будто она позволяет вам отправлять нативный push с вашего контроллера без php.

http://www.raywenderlich.com/3443/apple-push-notification-services-tutorial-part-12

1 голос
/ 20 января 2012

Класс NetGroup идеально подходит для этого.Вы можете отправлять все, что хотите, с устройства A на устройство B и наоборот, или даже на несколько устройств.Он работает как чат, но не ограничивается строками.

Если устройства не находятся в одной сети, их нужно будет вводить друг другу через сервер Adobe Cirrus (бесплатно для тестирования идля некоммерческого использования) или другой сервер FMS (например, хостинговая служба Adobe или Amazon или ваш собственный сервер).После внедрения они обычно обмениваются данными друг с другом по защищенному одноранговому протоколу rtmfp, который может проходить практически через все межсетевые экраны.В редких случаях, когда они не могут подключиться напрямую, сервер FMS может ретранслировать сообщения.

...