freyo / xinge by freyo

This package makes it easy to send notifications via Tencent Xinge with Laravel
450
5
2
Package Data
Maintainer Username: freyo
Maintainer Contact: freyhsiao@gmail.com (freyo)
Package Create Date: 2017-07-22
Package Last Update: 2018-05-03
Home Page: http://xg.qq.com
Language: PHP
License: MIT
Last Refreshed: 2024-05-03 15:04:11
Package Statistics
Total Downloads: 450
Monthly Downloads: 0
Daily Downloads: 0
Total Stars: 5
Total Watchers: 2
Total Forks: 0
Total Open Issues: 0

Tencent Xinge PHP SDK for Laravel

Latest Version on Packagist Software License Total Downloads

腾讯移动推送(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.