keithslater / easyapns
为 Laravel 提供的 Easy APNS。Easy APNS 是使用 PHP & MySQL 的 Apple 推送通知服务
Requires
- php: >=5.3.0
- illuminate/support: 4.1.*
This package is not auto-updated.
Last update: 2024-09-28 15:29:00 UTC
README
Easy APNS 的 Laravel 包
- 这是一个非常早期的测试版。使用风险自负。请报告任何错误 *
- 作者:Keith Slater
- 网站: http://www.keithslater.com
从 Easy APNS 转移的代码
安装说明
将以下内容添加到您的 composer.json 文件中
"keithslater/easyapns": "dev-master"
然后运行 composer update
项目更新后,将以下内容添加到您的 app.php 文件中
'providers' => array( 'Keithslater\Easyapns\EasyapnsServiceProvider', );
以下命令将迁移应用到您的数据库
$ php artisan migrate --package="keithslater/easyapns"
此命令将配置文件复制到 app/config/packages/keithslater/easyapns/config.php
$ php artisan config:publish keithslater/easyapns
将您的开发和生产 .pem 文件上传到 app/config/packages/keithslater/easyapns/。如果您需要将证书转换为 pem 文件,我建议参考 Stackoverflow 上的这个答案。
根据需要修改 app/config/packages/keithslater/easyapns/config.php
APNS 命令
查找数据库中仍然排队的消息并将它们推送出去。只为设备发送第一条消息
$ php artisan apns fetch
类似于 fetch,但为每个设备发送所有消息
$ php artisan apns flush
您可能希望将这些命令之一设置为 cronjob
用法
将以下内容添加到调用 APNS 的头部
use \Keithslater\Easyapns\Easyapns;
然后您就可以像平常一样使用 Easy APNS
$apns = new Easyapns(); $apns->newMessage(1); $apns->addMessageAlert('Test message sent'); $apns->queueMessage(); $apns->processQueue();
有关更多信息,请参阅 Easy APNS。
响应 Apple 代理方法
我建议设置一个名为 apns 的路由。从这个路由调用 Easyapns 以处理所有输入请求。类似于以下示例
Route::get('apns', function() { $apns = new Easyapns(Input::all()); });
这几行代码将响应您的应用的代理方法并将其添加到数据库中。只需更改 app 代理方法中的 host 和 urlString 字符串,使其指向此处。