跳至內容
文件

使用 incoming webhook 連接 Slack

為頻道建立 Slack incoming webhook、將它加入 AutoPSEO、傳送測試訊息,並排解貼文失敗時 Slack 回傳的錯誤。

帳戶 → Slack、Teams 與 Webhooks → Slack - 已連結的工作區需要訂閱或試用閱讀時間 1 分鐘

AutoPSEO 透過 incoming webhook 將訊息發送到 Slack。Slack 會提供一個可寫入單一頻道的 URL,您把這個 URL 貼到 AutoPSEO,報告與警示就會開始送進該頻道。AutoPSEO 本身不會在您的工作區安裝任何東西:它無法讀取訊息、列出您的頻道,也無法在 webhook 指向之外的地方發文。您想在哪些頻道接收訊息,就為每個頻道各新增一筆項目。

在 Slack 中建立 webhook

Slack 透過 Slack app 核發 incoming webhook。請依照 Slack 的 incoming webhook 指南操作:

  1. 為您的工作區建立一個 Slack app,或開啟您已用於通知的 app。名稱請取團隊一看就懂的,例如 SEO 報告。
  2. 在 app 的設定中開啟 Incoming Webhooks,並啟用 Activate Incoming Webhooks。
  3. 點選 Add New Webhook to Workspace,選擇頻道並核准。若是私人頻道,您必須先成為該頻道的成員。
  4. 從 Webhook URLs for Your Workspace 複製新產生的 URL。它會以 https://hooks.slack.com/services/ 開頭。

其他頻道請重複步驟 3 與 4;一個 app 可以擁有多個 webhook。以 Slack 舊版自訂整合(custom integration)webhook 建立的 URL 也仍可使用,不過 Slack 建議改用 app。

Slack 將此 URL 視為機密:任何取得它的人都能在該頻道發文。請將它貼到 AutoPSEO 後妥善保管,不要放進工單、wiki 或螢幕截圖中。

將它加入 AutoPSEO

  1. 在 Slack, Teams & Webhooks 頁面找到 Slack - Connected workspaces,然後點選 Add to Slack。New channel 表單會開啟,並已將 Slack 選為目的地。
  2. Name:AutoPSEO 清單、傳送紀錄與測試訊息中使用的標籤,例如 #seo-alerts。
  3. Webhook URL:貼上 Slack 的 URL。對於 Slack 項目,AutoPSEO 只接受 slack.com 上的 https 位址;若 URL 不符,會立即提示。
  4. 點選 Add channel,再點選新資料列上的 Send test。幾秒內,Slack 中應會出現一則標明該項目名稱的簡短訊息,AutoPSEO 也會回報 Slack 的回應花了多久。

URL 會以加密方式儲存(AES-GCM)。之後清單只會顯示它的主機名稱與最後幾個字元,因此請取能清楚辨識每筆項目對應哪個 Slack 頻道的名稱。

接著,請讓它有內容可發:設定排程報告或警示。之後清單下方的 Slack - Subscriptions 表格,會依 Slack 頻道列出每一條發送到該處的規則、排程,以及規則是啟用還是暫停。

多個頻道與工作區

一個 webhook URL 只屬於某個工作區中的某一個頻道,且 Slack 不允許訊息覆寫 webhook 建立時指定的頻道。這讓行為保持可預期:

  • 一個 Slack 頻道對應一筆項目。若要把客戶分別送到 #client-a 與 #client-b,請各建立一個 webhook 並分別加入。
  • 多個工作區的做法相同,因為每個 webhook 都屬於您建立它的那個工作區。
  • 一筆項目可以承載多條規則。您可以將每週報告與流量下滑警示送到同一筆項目,也可以把警示放在較繁忙頻道中的專屬項目。

訊息未送達的原因

Send test 會立即顯示原因。至於排程訊息,請開啟 Delivery history,其中保留了每次失敗嘗試時 Slack 的回應。

AutoPSEO 顯示的內容意義處理方式
Slack 拒絕了此 URL (no_service)webhook 已在 Slack 中被移除或停用,或 URL 輸入有誤建立新的 webhook 並加入,然後刪除舊項目
Slack 頻道已不存在或已封存Slack 回應 channel_not_found 或 channel_is_archived為仍在使用的頻道建立 webhook
Slack 正在限制我們的請求頻率Slack 回應 HTTP 429稍候片刻,再使用 Send now 或 Test rule
10 秒後逾時Slack 未在時限內回應請稍後再試
您的試用期已結束沒有有效的方案或試用請選擇方案;排程傳送會隨之恢復

失敗的排程報告不會在同一週期內重新發送,因此在排除原因後,請使用 Send now。無法發出的警示則會在下一次檢查時重新評估(警示的執行時機)。

移除 Slack 頻道

點選該項目資料列上的 Delete,會移除已儲存的 URL,並在顯示確認訊息(會告知數量)後,一併刪除所有發送到該處的規則。AutoPSEO 不會變更 Slack 中的任何設定:在有人於 Slack app 中移除之前,webhook 仍會持續運作,因此若 URL 可能已被他人看到,請同時在 Slack 中將它移除。

讓你的 SEO 內容自動運行

連結 Search Console 與你的網站,AutoPSEO 會立即掃描並規劃首批主題。無需信用卡。