• Pgyer document center

    Webhook 設置

    什么是 Webhook

    Webhook 就是用戶通過自定義回調的方式來改變 Web 應用的一種行為,這些回調可以由不是該 Web 應用官方的第三方用戶或者開發人員來維護、修改。通過 Webhook,開發者可以自定義一些行為通知到指定的 URL 去。

    在蒲公英中,使用 Webhook 功能,開發者可以將蒲公英上的部分事件消息,同步到另一個平臺(或網站)上去。例如:開發者在蒲公英平臺中,上傳了一個應用版本、或者收到一條用戶反饋時,蒲公英都會將這個消息推送到開發者制定的一個指定 URL 上去。

    目前,蒲公英支持如下 6 種事件類型:應用更新、版本變動、應用反饋、App 設置變動、遷移應用、刪除應用。

    如何設置蒲公英 Webhook

    1. 設置基本信息。進入至應用 設置 - Webhook 設置,并點擊 創建 Webhook,填寫 Webhook 名稱,選擇 Webhook 類型
    2. 設置 Webhook URL。 根據具體的 Webhook 類型填寫接受消息的 URL,例如,想在企業微信中接受通知時,則填寫企業微信分配的 Webhook URL。
    3. 選擇訂閱內容。 選擇需要訂閱的應用消息內容,并設置 Webhook狀態開啟,點擊 保存信息 即成功設置消息機器人。

    這樣,蒲公英就會在上述相關事件發生時,將消息推送到剛剛設置的 URL 上。

    蒲公英支持對同一個應用設置多個 Webhook,開發者可以重復上述過程,再次創建即可。但是同一個應用最多只能添加3個 Webhook。

    數據協議

    蒲公英針對第三方的 Webhook 服務,當蒲公英發送事件時,使用 HTTP POST 請求,Content-Typeapplication/json,數據格式為 JSON。 例如,有應用的新版本上傳時,蒲公英發送的數據格式類似如下形式(實際情況下會有稍許不同):

    {
      "action": "應用更新",
      "title": "OooPlay",
      "link": "http://www.credom.org/oooplay_test",
      "message": "您的應用OooPlay有了新的版本(2.4)更新。",
      "type": "updateVersion",
      "os_version": "2.4",
      "build_version": "139",
      "created": "2015-10-09 11:25:16",
      "updated": "2015-10-09 11:25:16",
      "timestamp": 1444361118,
      "appsize": "2238036",
      "device_type": 'iOS',
      "notes": "修復了一些小弱智的小bug"
    }
    

    當應用收到 反饋 信息時,蒲公英會發送如下類似格式的數據(實際情況下會有稍許不同):

    {
      "action": "應用反饋",
      "title": "OooPlay",
      "link": "http://www.credom.org/oooplay_test",
      "message": "您的應用OooPlay收到一條新的反饋信息",
      "type": "feedback",
      "os_version": "2.4",
      "build_version": "139",
      "created": "2015-10-09 11:25:16",
      "updated": "2015-10-09 11:25:16",
      "timestamp": 1444361118,
      "appsize": "2238036",
      "device_type": 'iOS',
      "notes": "修復了一些小弱智的小bug"
    }
    

    當應用收到 Crash Log 信息時,蒲公英會發送如下類似格式的數據(實際情況下會有稍許不同):

    {
      "action": "Crash log",
      "title": "OooPlay",
      "link": "http://www.credom.org/oooplay_test",
      "message": "您的應用OooPlay收到了新的Crash Log",
      "type": "crashlog",
      "os_version": "2.4",
      "build_version": "139",
      "created": "2015-10-09 11:25:16",
      "updated": "2015-10-09 11:25:16",
      "timestamp": 1444361118,
      "appsize": "2238036",
      "device_type": 'iOS',
      "notes": "libsystem_kernel.dylib 0x3094c49c mach_msg_trap 20 CoreFoundation 0x21edf7f3 <redacted> 146 CoreFoundation 0x21edddb9 <redacted> 1016 ..."
    }
    

    第三方 Webhook 服務可以使用獲取 POST RAW 數據的方式來獲取消息數據。例如,在 PHP 中可以用如下方式獲取數據:

    $data = file_get_contents('php://input');
    // or
    $data = $HTTP_RAW_POST_DATA;
    

    獲取到數據之后,再進行 json decode 即可解析出具體的數據,例如:

    $info = json_decode($data, true);
    

    之后,第三方 Webhook 服務即可將獲取到的消息數據,根據自身的業務邏輯進行相應處理,例如可以顯示在自己平臺的消息流、或通知中心等。

    企業微信群消息機器人設置

    請打開企業微信,找到需要接受消息的群組:

    1. 打開群組的操作菜單,選擇 添加群機器人

    enter image description here

    1. 點擊 添加機器人,輸入機器人名稱并添加

    enter image description here

    1. 返回至蒲公英 Webhook 創建也面,將獲取到的 URL 地址,復制輸入至 Webhook URL

    enter image description here

    釘釘群消息機器人設置

    1. 點擊群組回話頁右上角設置,打開 智能群助手

    enter image description here

    1. 點擊添加 自定義機器人,輸入機器人名稱及設置 安全設置 - 自定義關鍵詞應用,點擊完成

    enter image description here

    enter image description here

    1. 返回至蒲公英消息機器人創建也面,將獲取到的 URL 地址,復制輸入至 Webhook URL

    enter image description here

    飛書群消息機器人設置

    1. 打開 群組設置,找到 群機器人,點擊 添加機器人,選擇 自定義機器人并添加

    enter image description here

    1. 輸入機器人名稱及描述,點擊 下一步

    enter image description here

    1. 配置飛書群機器人 安全設置 - 自定義關鍵詞為 應用 ,并復制 Webhook 地址,點擊 完成;將復制的 Webhook URL 輸入至蒲公英 Webhook URL。

    enter image description here

  • 红豆视频