slack.endpoint() 函数
slack.endpoint()
返回一个函数,该函数可用于为每个输入行向 Slack 发送消息。
每个输出行都包含一个 _sent
列,指示是否已成功发送该行的消息。
用法
slack.endpoint()
是一个工厂函数,它输出另一个函数。输出函数需要一个 mapFn
参数。
mapFn
一个构建用于生成 POST 请求的记录的函数。
mapFn
接受表行 (r
) 并返回一个记录,该记录必须包含以下属性
- channel
- color
- text
函数类型签名
(
?token: string,
?url: string,
) => (
mapFn: (r: A) => {B with text: D, color: string, channel: C},
) => (<-tables: stream[A]) => stream[{A with _sent: string}]
有关更多信息,请参阅 函数类型签名。
参数
url
Slack API URL。默认值为 https://slack.com/api/chat.postMessage
。
如果使用 Slack webhook API,则此 URL 在 Slack webhook 设置过程中提供。
token
Slack API 令牌。默认值为 ""
。
如果使用 Slack Webhook API,则不需要令牌。
示例
向 Slack 端点发送状态警报
import "sampledata"
import "slack"
data =
sampledata.int()
|> map(fn: (r) => ({r with status: if r._value > 15 then "alert" else "ok"}))
|> filter(fn: (r) => r.status == "alert")
data
|> slack.endpoint(token: "mY5uP3rSeCr37T0kEN")(
mapFn: (r) => ({channel: "Alerts", text: r._message, color: "danger"}),
)()
此页是否对您有帮助?
感谢您的反馈!