0

プッシュ通知を受信するようにプロビジョニング プロファイルとアプリケーションを正しくセットアップしましたが、使用に苦労していPHP to send the notificationます。以下に概説するスクリプトを使用していますが、次の警告が表示されます。

Warning: stream_socket_client() [function.stream-socket-client]: unable to connect to ssl://gateway.sandbox.push.apple.com:2195 (Connection refused).

この問題について多くの調査を行いましたが、この問題を解決する方法がわかりません。どんなアイデアもとても役に立ちます。皆さん、ありがとうございました!

<?php

$message=$_POST['message'];

if ($message)
{

    $device_token = "TOKEN_HERE";

    $payload = '{
    "aps": {
         "badge": 1,
         "alert": "Hello world!",
         "sound": "bingbong.aiff"
    }
}';

$ctx = stream_context_create();
stream_context_set_option ($ctx, 'ssl', 'local_cert', 'PEM_FILE_HERE' );
stream_context_set_option ($ctx, 'ssl', 'passphrase', 'PASSPHRASE_HERE' );
$fp = stream_socket_client ('ssl://gateway.sandbox.push.apple.com:2195', $err, $errstr, 
60, STREAM_CLIENT_CONNECT, $ctx);

if (!$fp) {
print "Failed";
return;
}
else {
print "Sent";
}

$devArray = array();
$devArray[] = $deviceToken;

foreach($devArray as $deviceToken) {
$msg = chr(0) . pack("n",32) . pack ('H*', str_replace(' ', '', $deviceToken)) . pack 
("n",strlen($payload)) . $payload . "n";
print "Sending Message :" . $payload . "n";
fwrite($fp,$msg);
}
fclose($fp);

}
?>
<form action="" method="post">
<input type = "text" name = "message">
<input type = "submit" value = "Send Notification">
</form>
4

1 に答える 1