Slack 入站 Webhook 连接

Slack 入站 Webhook 连接类型启用 Slack 入站 Webhook 集成。

验证 Slack

使用 入站 Webhook URL 验证 Slack。

默认连接 ID

警告

airflow.providers.slack.hooks.slack_webhook.SlackWebhookHook 和社区提供的操作符目前不打算默认使用任何 Slack 入站 Webhook 连接。未来可能会更改为 slack_default

配置连接

架构

可选。HTTP 架构,如果未指定,则使用 https

Slack Webhook 端点(主机)

可选。引用 Slack Webhook 端点,如果未指定,则使用 hooks.slack.com/services。如果端点包含架构,则忽略字段 架构 中的值。

Webhook 令牌(密码)

指定 Slack 入站 Webhook URL。它可以指定为完整 URL,例如 https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX,在这种情况下,Slack Webhook Endpoint (Host)Schema 字段的值将被忽略。或者,它可以指定为 URL 路径,例如 T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX,在这种情况下,Slack 入站 Webhook URL 将从此字段、SchemaSlack Webhook Endpoint (Host) 构建。

额外

指定可以在 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'

此条目有帮助吗?