首頁  >  文章  >  php框架  >  laravel怎麼推播訊息給APP

laravel怎麼推播訊息給APP

(*-*)浩
(*-*)浩原創
2019-10-30 09:42:563551瀏覽

在進行APP開發過程中,會常用到訊息推送。對於創業型的公司如果自己去搭建訊息推播伺服器,時間成本,以及技術難度無疑都會增加很多。 在我自己的實作過程中,覺得百度的訊息推播服務穩定性整體來說是很高的,而且介面文件也很完善,推薦使用。

laravel怎麼推播訊息給APP

* 文中訊息推播服務使用百度訊息推送SDK 3.0.0版本

* Laravel版本是:5.1 .*     (推薦學習:laravel開發

* PHP>5.5.9

為了便於多個專案中使用百度的訊息推送,因此將百度訊息推送封裝成為了composer包。 透過簡單的安裝,即可使用。

1.安裝在專案中的composer.json中加入以下內容

"require": {
        "riverslei/baidu-pusher": "~1.0"
    },

然後執行 composer update

2.安裝完成後,設定 config\app.php 中的 providers 數組及 aliases 數組。

    'providers' => [
        /*
         * 第三方提供者
         */
        Riverslei\Pusher\PusherServiceProvider::class,
    ],

    'providers' => [
        /*
         * 第三方
         */
        'Pusher'    => Riverslei\Pusher\Pusher::class,
    ],

以上設定完成後,使用一下指令產生推送的設定檔

php artisan vendor:publish --provider=Riverslei\Pusher\PusherServiceProvider

執行該指令後,在 config 資料夾中會增加一個設定檔 pusher.php 。可以開啟查看相關的設定資訊。修改為自己的apikey及其他內容。

其中預設內容是用來測試的帳號的。

3.測試SDK

之前百度一直沒有提供服務端的測試程式碼,而且一直不能進行獨立測試。這次SDK升級後,終於弄了一個測試帳號了。大家可以試試看。以下是我根據官方的測試程式碼,寫的符合Laravel的測試程式碼。

首先,設定路由

Route::get('/pusher', 'TestController@pusher');

其次,建立該控制器及方法

<?php

namespace App\Http\Controllers;

use Pusher;

class TestController extends Controller
{
    public function pusher()
    {
        $channelId = &#39;3785562685113372034&#39;;
        // 消息内容.
        $message = array (
                // 消息的标题.
                &#39;title&#39; => &#39;Hi!.&#39;,
                // 消息内容
                &#39;description&#39; => "hello!, this message from baidu push service."
        );
        // 设置消息类型为 通知类型.
        $opts = array (
                &#39;msg_type&#39; => 1
        );
        // 向目标设备发送一条消息
        $rs = Pusher::pushMsgToSingleDevice($channelId, $message, $opts);

        // 判断返回值,当发送失败时, $rs的结果为false, 可以通过getError来获得错误信息.
        if($rs === false){
            print_r(Pusher::getLastErrorCode());
            print_r(Pusher::getLastErrorMsg());
        }else{
            // 将打印出消息的id,发送时间等相关信息.
            var_dump($rs);
        }

        echo "done!";
    }
}

完成後,在瀏覽器中存取: http://youdomain/pusher。查看瀏覽器中的內容

laravel怎麼推播訊息給APP

出現該內容,表示已經成功了。可以在適當的位置使用。

以上是laravel怎麼推播訊息給APP的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
上一篇:laravel怎麼學下一篇:laravel怎麼學