keithslater/easyapns

此包最新版本(dev-master)没有提供许可证信息。

为 Laravel 提供的 Easy APNS。Easy APNS 是使用 PHP & MySQL 的 Apple 推送通知服务

dev-master 2014-05-25 21:20 UTC

This package is not auto-updated.

Last update: 2024-09-28 15:29:00 UTC


README

Easy APNS 的 Laravel 包

  • 这是一个非常早期的测试版。使用风险自负。请报告任何错误 *

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 字符串,使其指向此处。