<code id="wow6k"></code>
<center id="wow6k"><wbr id="wow6k"></wbr></center>
<optgroup id="wow6k"></optgroup><optgroup id="wow6k"><div id="wow6k"></div></optgroup>
<center id="wow6k"><wbr id="wow6k"></wbr></center><center id="wow6k"><wbr id="wow6k"></wbr></center><center id="wow6k"><wbr id="wow6k"></wbr></center><optgroup id="wow6k"></optgroup>
<optgroup id="wow6k"></optgroup>
<optgroup id="wow6k"><div id="wow6k"></div></optgroup>
<center id="wow6k"></center><optgroup id="wow6k"><small id="wow6k"></small></optgroup><center id="wow6k"></center>
<center id="wow6k"></center>

蒲公英文檔中心

蒲公英 Webhook 介紹

Webhook 功能介紹

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

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

目前,蒲公英支持如下三種事件類型:

  1. 應用上傳事件(包括后續的新版本上傳)
  2. 應用收到新的用戶反饋
  3. 應用收到 Crash Log

在蒲公英上開啟 Webhook 功能

首先進入 應用管理,點擊一個 應用名稱,之后在點擊 設置 -> Webbook 中,即可看到針對該應用的 Webhook 設置。第一次進入該頁面時,會直接顯示出創建 Webhook 的頁面,如圖所示:

創建 Webhook

在圖中,按照提示填寫以下內容:

  • Webhook 名稱 給即將創建的 Webhook 起一個名字。例如:WebhookTest 等
  • URL 設置蒲公英在發生事件時,將事件的消息推送到哪里。也就是說,接受蒲公英事件的 URL。如果是需要集成紛紜或 HiWork 等服務 ,該 URL 由紛紜或 HiWork 提供。
  • 選擇要推送的功能 設置蒲公英將哪些事件消息發送給上面填寫的 URL
  • Webhook 狀態 可以打開或者關閉蒲公英發送事件

填寫好之后,點擊 保存信息 按鈕,即可成功創建一條 Webhook 。這樣,蒲公英就會在上述相關事件發生時,將消息推送到剛剛設置的 URL 上。

Webhook 的注意事項和調試方式

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

如果開發者是自己開發 Webhook 服務或者僅僅想測試,推薦使用 Request 服務(http://request.lesschat.com/)。

第三方 Webhook 服務開發

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

{
  "action": "應用更新",
  "title": "OooPlay",
  "link": "http://www.jsjtzm.com/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.jsjtzm.com/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.jsjtzm.com/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');

或者:

$data = $HTTP_RAW_POST_DATA;

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

$info = json_decode($data, true);

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

久久99久久精品免观看吃奶