freyo/xinge

This package makes it easy to send notifications via Tencent Xinge with Laravel

2.0.2 2018-05-03 07:17 UTC

README

Latest Version on Packagist Software License Total Downloads

68747470733a2f2f6d632e71636c6f7564696d672e636f6d2f7374617469632f696d672f33633466303238353132333163363233386364373638313535356163653534372f5847507573682e737667

腾讯移动推送(XinGe Push,即 XGPush)

This package makes it easy to send notifications using Tencent Xinge with Laravel.

Installation

You can install this package via composer:

composer require freyo/xinge

Next add the service provider and facade to your config/app.php:

...
'providers' => [
    ...
    Freyo\Xinge\ServiceProvider::class,
],
'aliases' => [
    ...
    'Xinge' => Freyo\Xinge\Facade::class,
],
...

Laravel 5.5 uses Package Auto-Discovery, so doesn't require you to manually add the ServiceProvider.

Setting up the Xinge service

You will need to create a Xinge app in order to use this channel. Within in this app you will find the access id and access secret. Place them inside your .env file. In order to load them, add this to your config/services.php file:

...
'xinge' => [
    'android' => [
        'access_id'    => env('XINGE_ANDROID_ACCESS_ID'),
        'secret_key'   => env('XINGE_ANDROID_ACCESS_KEY')
    ],
    'ios' => [
        'access_id'    => env('XINGE_IOS_ACCESS_ID'),
        'secret_key'   => env('XINGE_IOS_ACCESS_KEY')
    ],
]
...

This will load the Xinge app data from the .env file. Make sure to use the same keys you have used there like XINGE_IOS_ACCESS_ID.

Usage

Notification

Follow Laravel's documentation to add the channel to your Notification class.

Example: AndroidPushSingleAccount, iOSPushSingleAccount.

Facade

Xinge::android()->PushSingleDevice($deviceToken, $message);
Xinge::android()->PushSingleAccount($deviceType, $account, $message);
Xinge::android()->PushAllDevices($deviceType, $message);
Xinge::android()->PushTags($deviceType, $tagList, $tagsOp, $message);
Xinge::android()->PushAccountList($deviceType, $accountList, $message);

Xinge::ios()->PushSingleDevice($deviceToken, $message, $environment = 0);
Xinge::ios()->PushSingleAccount($deviceType, $account, $message, $environment = 0);
Xinge::ios()->PushAllDevices($deviceType, $message, $environment = 0);
Xinge::ios()->PushTags($deviceType, $tagList, $tagsOp, $message, $environment = 0);
Xinge::ios()->PushAccountList($deviceType, $accountList, $message, $environment = 0);

FULL API DOCUMENT

License

The MIT License (MIT). Please see License File for more information.