国产+高潮+在线,国产 av 仑乱内谢,www国产亚洲精品久久,51国产偷自视频区视频,成人午夜精品网站在线观看

webman pusher 推送服務(wù)應(yīng)用插件

類型 應(yīng)用插件
版本 0.0.1
版本更新時(shí)間 2023-02-24
大小 4.44 MB
開發(fā)商
hsk99
評(píng)分

詳細(xì)介紹

基于 webman + GatewayWorker 開發(fā)的一個(gè)推送服務(wù)應(yīng)用插件,客戶端基于訂閱模式 兼容 pusher。

功能特性

  • 基于 GatewayWorker 多進(jìn)程運(yùn)行
  • 推送數(shù)據(jù)統(tǒng)計(jì)
  • 推送記錄存儲(chǔ)
  • 客戶端兼容 pusher
  • webhooks

安裝使用

下載

下載源碼放入plugin目錄下,restart重啟webman。

訪問

訪問 http://127.0.0.1:8787/app/pusher 會(huì)自動(dòng)進(jìn)入安裝頁面,按照提示安裝組件,設(shè)置數(shù)據(jù)庫、Redis及Pusher配置信息。

安裝配置完成后 關(guān)閉重啟webman,即可使用。

文檔

訂閱發(fā)布

\plugin\pusher\app\service\Channel::publish(
    'public', // channel
    'message', // event
    json_encode([1, 2, 3, 4, 5, 6, 7, 8, 9]), // data
    null // exclude_socket_id
);

在線訂閱channel列表

\plugin\pusher\app\service\Channel::list($type = null); // $type: public、private、presence

在線訂閱channel詳情

\plugin\pusher\app\service\Channel::info($channel);

Pusher.js 客戶端使用

// connect
var id = Math.ceil(Math.random() * 100);
var pusher = new Pusher("ac584d0fde81dedab1ec8dd1ac51c2db", {
    forceTLS: false,
    wsHost: '127.0.0.1',
    wsPort: 8801,
    channelAuthorization: {
        endpoint: 'http://127.0.0.1:8787/app/pusher/connect/auth',
        params: {
            access_key: "ac584d0fde81dedab1ec8dd1ac51c2db",
            user_id: id,
            user_info: JSON.stringify({ 'name': '張三' + id })
        }
    }
})

// error
pusher.connection.bind("error", function (err) {
? ? console.log(JSON.stringify(err));
? ? // disconnect
? ? if (-1 === err.data.code) {
? ? ? ? pusher.connection.disconnect();
? ? }
});

// Public channels
var public = pusher.subscribe('public');
// Subscription succeeded
public.bind("pusher:subscription_succeeded", () => {
? ? console.log('public subscription_succeeded');
});
// custom event
public.bind('message', function (data) {
? ? console.log('public-message:' + JSON.stringify(data));
});

// Private channels
var private = pusher.subscribe('private-message');
// Subscription succeeded
private.bind("pusher:subscription_succeeded", () => {
? ? console.log('private subscription_succeeded');
});
// custom event
private.bind('client-message', function (data) {
? ? console.log('private-client-message:' + JSON.stringify(data));
});

// Private channels (Client push)
var client = pusher.subscribe('private-push');
// custom event
client.bind('message', function (data) {
? ? console.log('client-push-message:' + JSON.stringify(data));
? ? private.trigger('client-message', JSON.stringify(data));
});

// Presence channels
var presence = pusher.subscribe("presence-message");
// Subscription succeeded
presence.bind("pusher:subscription_succeeded", (data) => {
? ? console.log('presence subscription_succeeded:' + JSON.stringify(data));
});
// add member
presence.bind("pusher:member_added", (data) => {
? ? console.log('member_added:' + JSON.stringify(data));
});
// remove member
presence.bind("pusher:member_removed", (data) => {
? ? console.log('member_removed:' + JSON.stringify(data));
});
// custom event
presence.bind("message", (data) => {
? ? console.log('member_removed:' + JSON.stringify(data));
});

WebHooks

請(qǐng)求方式
  • POST
Header

|Header|類型|說明|
|:---- ? ?|:----- |----- ? |
|x-pusher-signature |string |簽名 ?|

簽名:hash_hmac('sha256', 請(qǐng)求數(shù)據(jù)包, 密鑰, false)

請(qǐng)求數(shù)據(jù)
{
? "time_ms": 1661132991.891466,
? "events": {
? ? "channel_added": [
? ? ? {
? ? ? ? "type": "public",
? ? ? ? "channel": "public"
? ? ? },
? ? ? {
? ? ? ? "type": "private",
? ? ? ? "channel": "private-message"
? ? ? }
? ? ],
? ? "channel_removed": [
? ? ? {
? ? ? ? "type": "private",
? ? ? ? "channel": "private-push"
? ? ? },
? ? ? {
? ? ? ? "type": "presence",
? ? ? ? "channel": "presence-message"
? ? ? }
? ? ],
? ? "user_added": {
? ? ? "presence-message": [
? ? ? ? {
? ? ? ? ? "channel": "presence-message",
? ? ? ? ? "user_id": 49,
? ? ? ? ? "user_info": "{\"name\":\"張三49\"}"
? ? ? ? }
? ? ? ]
? ? },
? ? "user_removed": {
? ? ? "presence-message": [
? ? ? ? {
? ? ? ? ? "channel": "presence-message",
? ? ? ? ? "user_id": 37,
? ? ? ? ? "user_info": "{\"name\":\"張三37\"}"
? ? ? ? }
? ? ? ]
? ? }
? }
}
數(shù)據(jù)說明

整個(gè)數(shù)據(jù)包為 JSON 數(shù)據(jù)

|參數(shù)名|類型|說明|
|:---- ? ?|:----- |----- ? |
|time_ms |string |毫秒時(shí)間戳 ? |
|events |array | 事件 ? ?|

版本歷史記錄
0.0.1
2023-02-23
webman pusher 推送服務(wù)應(yīng)用插件
評(píng)分及評(píng)論
5 滿分5分
cbw7172002 2023-05-04
數(shù)據(jù)庫安裝時(shí)候錯(cuò)誤,但沒提示
飛老鼠 2023-04-03
new Pusher() 里面不添加cluster: 'APP_CLUSTER' 報(bào)錯(cuò)
??