discord.endpoint() function
discord.endpoint()
is a user-contributed function maintained by
the package author.
discord.endpoint()
sends a single message to a Discord channel using a
Discord webhook
and data from table rows.
Usage
discord.endpoint
is a factory function that outputs another function.
The output function requires a mapFn
parameter.
mapFn
A function that builds the record used to generate the Discord webhook request.
Requires an r
parameter.
mapFn
accepts a table row (r
) and returns a record that must include the following field:
content
For more information, see the discord.send()
content
parameter.
Function type signature
(
username: A,
webhookID: string,
webhookToken: string,
?avatar_url: B,
) => (mapFn: (r: C) => {D with content: E}) => (<-tables: stream[C]) => stream[{C with _sent: string}]
Parameters
webhookToken
(Required) Discord webhook token.
webhookID
(Required) Discord webhook ID.
username
(Required) Override the Discord webhook’s default username.
avatar_url
Override the Discord webhook’s default avatar.
Examples
Send critical statuses to a Discord channel
import "influxdata/influxdb/secrets"
import "contrib/chobbs/discord"
discordToken = secrets.get(key: "DISCORD_TOKEN")
endpoint =
telegram.endpoint(webhookToken: discordToken, webhookID: "123456789", username: "critBot")
crit_statuses =
from(bucket: "example-bucket")
|> range(start: -1m)
|> filter(fn: (r) => r._measurement == "statuses" and status == "crit")
crit_statuses
|> endpoint(mapFn: (r) => ({content: "The status is critical!"}))()
Was this page helpful?
Thank you for your feedback!
Support and feedback
Thank you for being part of our community! We welcome and encourage your feedback and bug reports for Flux and this documentation. To find support, use the following resources:
Customers with an annual or support contract can contact InfluxData Support.