andreseko / onesignal
OneSignal 推送包装器 Laravel
v2.0.0
2024-01-31 01:38 UTC
Requires
- php: >=7.4
- guzzlehttp/guzzle: ^7.0
- illuminate/support: 5.*|6.*|7.*|8.*|9.*|10.*
- symfony/psr-http-message-bridge: 2.*
Requires (Dev)
- phpunit/phpunit: ^8
- vlucas/phpdotenv: ^3.6.0
README
介绍
这是一个简单的 OneSignal 包装器库,用于 Laravel。它通过定义的方法简化了基本的通知流程。您可以向所有用户发送消息,也可以通知单个用户。在开始安装此服务之前,请先在 https://onesignal.com 上完成您的 OneSignal 设置,并完成所有必要的步骤以获得应用程序 ID 和 REST API 密钥。
要求
安装
首先,您需要使用 Composer 安装此包
composer require andreseko/onesignal
如果您的 Laravel 版本低于 5.5,您需要执行以下操作:
然后,通过在 config/app.php
中添加服务提供者的条目来更新它
[ 'providers' => [ // ... AndreSeko\OneSignal\OneSignalServiceProvider::class ] ];
然后,通过在别名部分添加条目来注册类别名
[ 'aliases' => [ // ... 'OneSignal' => AndreSeko\OneSignal\OneSignalFacade::class ] ];
最后,再次从命令行运行
php artisan vendor:publish --tag=config
配置
您需要填写位于您的应用程序 config
目录中的 onesignal.php
文件。app_id
是您的 OneSignal 应用程序 ID,而 rest_api_key
是您的 REST API 密钥。您还可以通过 .env
文件覆盖这些参数。
用法
向所有平台发送通知
您可以使用以下命令轻松地向所有已注册用户发送消息
$onesignal = new \AndreSeko\OneSignal\OneSignal('APP_ID', 'REST_API_KEY'); $onesignal->setTitle('MY APP') ->setSubTitle('My best app ever') ->setMessage('My cool message') ->sendNotification();
仅向 iOS 发送通知
向 iOS 用户发送消息
$onesignal = new \AndreSeko\OneSignal\OneSignal('APP_ID', 'REST_API_KEY'); $onesignal->setTitle('MY APP') ->setSubTitle('My best app ever') ->setMessage('My cool message') ->setPlataform(OneSignal::IOS) ->setPlataform(OneSignal::ANDROID, false) ->setPlataform(OneSignal::WEB, false) ->configureIos('my_custom_sound.caf') ->sendNotification();
仅向 Android 发送通知
向 Android 用户发送消息
$onesignal = new \AndreSeko\OneSignal\OneSignal('APP_ID', 'REST_API_KEY'); $onesignal->setTitle('MY APP') ->setSubTitle('My best app ever') ->setMessage('My cool message') ->setPlataform(OneSignal::ANDROID) ->setPlataform(OneSignal::IOS, false) ->setPlataform(OneSignal::WEB, false) ->configureAndroid('my_custom_sound') ->sendNotification();
获取所有通知
从 Onesignal 获取所有通知
$onesignal = new \AndreSeko\OneSignal\OneSignal('APP_ID', 'REST_API_KEY'); $response = $onesignal->getNotifications();
有关所有可自定义参数的信息,请参阅 https://documentation.onesignal.com/reference。