Slack 傳入 Webhook 連線

Slack 傳入 Webhook 連線類型啟用了Slack 傳入 Webhook整合。

驗證 Slack

使用傳入 Webhook URL驗證 Slack。

預設連線 ID

警告

airflow.providers.slack.hooks.slack_webhook.SlackWebhookHook和社群提供的運算子目前不打算預設使用任何 Slack 傳入 Webhook 連線。未來可能會更改為slack_default

設定連線

Schema

選填。Http schema,如果未指定,則使用 https

Slack Webhook 端點 (主機)

選填。參考 slack webhook 端點,如果未指定,則使用 hooks.slack.com/services。如果端點包含 schema,則忽略Schema欄位的值。

Webhook 權杖 (密碼)

指定 Slack 傳入 Webhook URL。可以指定完整網址,例如 https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX,在這種情況下,會忽略Slack Webhook 端點 (主機)Schema欄位的值。或者,可以指定為 URL 路徑,例如 T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX,在這種情況下,Slack 傳入 Webhook URL 將由此欄位、SchemaSlack Webhook 端點 (主機)建立。

額外

指定可在slack_sdk.WebhookClient中使用的額外參數(以 json 字典形式)。所有參數都是選填的。

  • timeout:用戶端等待連線並接收來自 Slack 傳入 Webhook 回應的最長秒數。

  • proxy:用於進行 Slack 傳入 Webhook 呼叫的代理。

如果您透過 URI 設定連線,請確保 URI 的所有組成部分都經過 URL 編碼。

範例

以 URI 形式建立連線的程式碼片段:
from airflow.models.connection import Connection

conn = Connection(
    conn_id="slack_default",
    conn_type="slackwebhook",
    password="T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX",
    extra={
        # Specify extra parameters here
        "timeout": "42",
    },
)

# Generate Environment Variable Name
env_key = f"AIRFLOW_CONN_{conn.conn_id.upper()}"
print(f"{env_key}='{conn.get_uri()}'")
設定 Slack API 連線為環境變數 (URI)
export AIRFLOW_CONN_SLACK_DEFAULT='slackwebhook://:T00000000%2FB00000000%2FXXXXXXXXXXXXXXXXXXXXXXXX@/?timeout=42'

這個條目有幫助嗎?