gpt4 book ai didi

laravel-5 - 如何在 PHP 中使用推送通知更新 Apple Wallet pass

转载 作者:行者123 更新时间:2023-12-04 17:57:14 24 4
gpt4 key购买 nike

我正在使用 expiredate 参数在 php 中进行传递。我想使用 Apple 推送通知更新传递。根据 Passbook 文档,您需要使用 Apple Push Notification Service 触发 iOS 设备的拉取,以便更新 Passbook。

最佳答案

这是我将通知推送到 APNS 的 PHP 代码。你可以引用。

$apnsHost = 'gateway.push.apple.com';
$apnsPort = 2195;
$apnsCert = base_path('certificates.pem');
$push_token = 'device token';
$passIdentify = 'pass indentify';

$payload = '{}';
$msg = chr(0) . pack('n', 32) . pack('H*', $push_token) . pack('n', strlen($payload)) . $payload . pack('n', strlen($passIdentify)) . $passIdentify;

$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);

fwrite($apns, $msg);

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

certificates.pem 与您在 .p12 扩展名中用于签署通行证的证书相同。所以你需要使用以下代码将其导出为.pem

$ cd ~/Desktop
$ openssl pkcs12 -in WenderCastPush.p12 -out WenderCastPush.pem -nodes -clcerts

根据本教程https://www.raywenderlich.com/123862/push-notifications-tutorial#comments .

关于laravel-5 - 如何在 PHP 中使用推送通知更新 Apple Wallet pass,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39388279/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com