SYSTEM$SEND_SNOWFLAKE_NOTIFICATION¶
向云服务(Amazon SNS、Google Cloud PubSub 或 Azure 事件网格)提供的电子邮件地址、Webhook 或队列发送通知消息。
语法¶
SYSTEM$SEND_SNOWFLAKE_NOTIFICATION(
<message>,
<integration_configuration> )
SYSTEM$SEND_SNOWFLAKE_NOTIFICATION(
( <message>, [ <message>, ... ] ),
<integration_configuration> )
SYSTEM$SEND_SNOWFLAKE_NOTIFICATION(
<message>,
( <integration_configuration> [ , <integration_configuration> , ... ] ) )
SYSTEM$SEND_SNOWFLAKE_NOTIFICATION(
( <message> [ , <message> , ... ] ),
( <integration_configuration> [ , <integration_configuration> , ... ] ) )
实参¶
message
JSON 格式的字符串,用于指定消息的类型和内容。该字符串必须采用以下格式:
{ "<content_type>": "<message_contents>" }
其中:
"content_type"
是以下其中一项:"text/plain"
,用于纯文本消息。"text/html"
,用于 HTML 消息。"application/json"
,用于 JSON 消息。
"<message_contents>"
是消息的内容。
例如:
{ "text/html": "<p>A message</p>" }
要构造此字符串,可以调用以下函数之一:
要发送 HTML 电子邮件消息,可调用 TEXT_HTML 函数。
要发送纯文本电子邮件消息,可调用 TEXT_PLAIN 函数。
要向队列发送 JSON 消息,可调用 APPLICATION_JSON 函数。
integration_configuration
JSON 格式的字符串,它指定用于发送通知的通知集成或电子邮件配置。该字符串必须采用以下格式之一:
{ "<integration_name>": {} }
{ "<integration_name>": { <options> } }
其中:
"integration_name"
是通知集成的名称。options
是以逗号分隔的属性列表(采用JSON 格式),用于指定替换集成中默认值的值。您可以指定以下属性:属性名称
描述
subject
电子邮件通知的主题行。例如:
{ "subject" : "Service status update" }
主题长度不能超过 256 个字符。
如果您未设置此属性,则会使用集成的默认主题行。
如果集成未指定默认主题行,则会使用
"Snowflake Email Notification"
。toAddress
要包含在电子邮件通知的“收件人:”行中的收件人电子邮件地址列表。
将此列表格式化为 JSON 数组。例如:
{ "toAddress" : ["person_1@example.com", "person_2@example.com"] }
如果您未设置此属性,则存储过程将使用 电子邮件通知集成 的 DEFAULT_RECIPIENTS 属性中的电子邮件地址列表。
ccAddress
要包含在电子邮件通知的“抄送:”行中的收件人电子邮件地址列表。
将此列表格式化为 JSON 数组。例如:
{ "ccAddress" : ["person_to_cc1@example.com", "person_to_cc2@example.com"] }
bccAddress
要包含在电子邮件通知的“密送:”行中的收件人电子邮件地址列表。
将此列表格式化为 JSON 数组。例如:
{ "bccAddress" : ["person_to_bcc1@example.com", "person_to_bcc2@example.com"] }
例如:
{ "my_queue_int": {} }
{ "my_email_int": { "subject" : "Different subject" } }
{ "my_email_int": { "subject" : "Different subject" }, { "toAddress": ["person_a@example.com"] }
要构造用于集成配置的 JSON 格式字符串,可调用以下函数之一:
如果您要向队列发送通知,或者要发送电子邮件通知并希望使用电子邮件通知集成中指定的默认值,可调用 INTEGRATION 函数。
如果您要发送电子邮件通知,并想替换电子邮件通知集成中指定的默认值,可调用 EMAIL_INTEGRATION_CONFIG 函数。
( message [ , message , ... ] )
JSON 格式字符串的 ARRAY,每个字符串都指定消息类型和内容。如果要发送多种格式的消息,请指定此实参。
每条消息都应使用 上述格式。
要构造 ARRAY,请调用 ARRAY_CONSTRUCT 函数。
备注
ARRAY 不能包含相同消息内容类型的多个对象。
( integration_configuration [ , integration_configuration , ... ] )
JSON 格式字符串的 ARRAY,每个字符串都指定要使用的通知集成和配置。如果您想使用多个通知集成或电子邮件配置来发送消息,请指定此实参。
每个集成配置都应使用 上述格式。
要构造 ARRAY,请调用 ARRAY_CONSTRUCT 函数。
备注
对于同一个通知集成,ARRAY 不能包含多个对象。
返回¶
如果存储过程成功执行,它将返回字符串“Enqueued notifications”。
使用说明¶
对于电子邮件通知,如果未在通知集成中设置 DEFAULT_RECIPIENTS 属性,并且您没有在 SYSTEM$SEND_SNOWFLAKE_NOTIFICATION 调用中设置
toAddress:
属性,该调用将会失败。对于 Webhook 通知,在将消息传递给 SYSTEM$SEND_SNOWFLAKE_NOTIFICATION 之前,调用 SANITIZE_WEBHOOK_CONTENT 对消息进行清理。