Laravel 极光推送通知频道 极光推送 Laravel 驱动开源项目

我要开发同款
匿名用户2019年03月01日
66阅读

技术信息

开源地址
https://github.com/medz/laravel-jpush-notification-channel
授权协议
MIT

作品详情

我们在开发针对国内运营的时候进行需要使用过程的几家推送,极光推送则是其中之一。这个包就可以让你方便地在你构建的Laravel应用中进行极光推送的使用。

前提PHP>=7Laravel>=5.5安装

在Laravel应用目录使用Composer进行依赖:

composerrequiremedz/laravel-jpush-otificatio-chael

包中依赖了匹配的jpush/jpush依赖版本为^3.6,你已经依赖了更低版本的不兼容版本包,使用的时候要小心了!

配置

在cofig/services.php中进行如下配置:

retur['jpush'=>['app_key'=>ev('JPUSH_APP_KEY',''),'master_secret'=>ev('JPUSH_MASTER_SECRET',''),'aps_productio'=>ev('JPUSH_APNS_PRODUCTION',false),],];

然后在.ev文件中进行配置:

JPUSH_APP_KEY=JPUSH_MASTER_SECRET=JPUSH_APNS_PRODUCTION=使用

首先,要在数据模型上添加一个routeNotificatioForJpush方法:

useIllumiate\Foudatio\Auth\UserasAutheticatable;useMedz\Laravel\Notificatios\JPush\SederasJPushSeder;classUserextedsAutheticatable{/***GetNotificatioforJPushseder.*@retur\Medz\Laravel\Notificatios\JPush\Seder*/protectedfuctiorouteNotificatioForJpush(){returewJPushSeder(['platform'=>'all','audiece'=>['alias'=>spritf('user_%d',$this->id),],]);}}

这里我们返回一个Medz\Laravel\Notificatios\JPush\Seder实例,可以使用构造参数快速配置,如同上面一样,也可以使用链式调用进行配置。链式调用的API如下:

setPlatform 设置平台,值有all、wiphoe、adroid和iossetAudiece 推送目标进行设置

setAudiece方法或者构造参数中的audiece设置参考:推送目标文档。

然后打开通知类,添加一个toJpush 方法,这里我们已app/Notificatios/CommetNotificatio.php 为例:

<?phpamespaceApp\Notificatios;useIllumiate\Notificatios\Notificatio;useMedz\Laravel\Notificatios\JPush\MessageasJPushMessage;classCommetNotificatioextedsNotificatio{publicfuctiotoJpush($otifiable){$message=ewJPushMessage();//TODO/*======把所有的配置都进行配置===$message->setAlert('Alert.');//简单地给所有平台推送相同的alert消息//自定义消息$message->setMessage('Message',['title'=>'',//通知标题,会填充到toast类型text1字段上'_ope_page'=>'',点击打开的页面名称'extras'=>[],//自定义的数据内容]);//iOS通知$message->setNotificatio(JPushMessage::IOS,'Alert内容',['alert'=>'',//覆盖第二个参数的Alert内,推荐不传,'soud'=>'',//表示通知提示声音,默认填充为空字符串'badge'=>'',//表示应用角标,把角标数字改为指定的数字;为0表示清除,支持'+1','-1'这样的字符串,表示在原有的badge基础上进行增减,默认填充为'+1'///...])//更多通知请参考https://docs.jiguag.c/jpush/server/push/rest_api_v3_push/#otificatio官方文档//使用`setNotificatio`方法第一个常量有三个:IOS/ANDROID/WP//可选参数$message->setOptios([]);//参考https://docs.jiguag.c/jpush/server/push/rest_api_v3_push/#optios*/retur$message;}}

toJpush 方法需要返回一个Medz\Laravel\Notificatios\JPush\Message 对象实例!

完成上面的配置后,就可以推送了,记得在 via 方法中返回 jpush 这个值哈,例如:

publicfuctiovia(){retur['database','jpush'];}

 

功能介绍

我们在开发针对国内运营的时候进行需要使用过程的几家推送,极光推送则是其中之一。这个包就可以让你方便地在你构建的 Laravel 应用中进行极光推送的使用。 前提 PHP >= 7 Laravel...

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论