SYSTEM$SEND_SNOWFLAKE_NOTIFICATION

Envoie un message de notification à une adresse e-mail ou à une file d’attente fournie par un service Cloud (Amazon SNS, Google Cloud PubSub ou Azure Event Grid).

Voir aussi :

Utilisation de SYSTEM$SEND_SNOWFLAKE_NOTIFICATION pour envoyer des notifications

Syntaxe

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> , ... ] ) )
Copy

Arguments

message

Chaîne au format JSON qui spécifie le type et le contenu du message. La chaîne doit se présenter au format suivant :

{ "<content_type>": "<message_contents>" }
Copy

Où :

  • "content_type" est l’un des éléments suivants :

    • "text/plain" pour les messages en texte clair.

    • "text/html" pour les messages HTML.

    • "application/json" pour les messages JSON.

  • "<message_contents>" est le contenu du message.

Par exemple :

{ "text/html": "<p>A message</p>" }
Copy

Pour construire cette chaîne, vous pouvez appeler l’une des fonctions suivantes :

  • Pour envoyer un message e-mail HTML, appelez la fonction TEXT_HTML.

  • Pour envoyer un message e-mail en texte clair, appelez la fonction TEXT_PLAIN.

  • Pour envoyer un message JSON à une file d’attente, appelez la fonction APPLICATION_JSON.

integration_configuration

Chaîne au format JSON qui spécifie l’intégration de notification ou la configuration de messagerie à utiliser pour envoyer la notification. La chaîne doit se présenter sous l’un des formats suivants :

{ "<integration_name>": {} }
Copy
{ "<integration_name>": { <options> } }
Copy

Où :

  • "integration_name" est le nom de l’intégration de notification.

  • options est une liste de propriétés délimitée par des virgules (au format JSON) qui spécifie des valeurs qui remplacent les valeurs par défaut de l’intégration. Vous pouvez spécifier les propriétés suivantes :

    Nom de propriété

    Description

    subject

    Ligne d’objet de la notification par e-mail. Par exemple :

    { "subject" : "Service status update" }
    
    Copy

    L’objet ne peut pas comporter plus de 256 caractères.

    Si vous ne définissez pas cette propriété, la ligne d’objet par défaut de l’intégration est utilisée.

    Si l’intégration ne spécifie pas de ligne d’objet par défaut, "Snowflake Email Notification" est utilisé.

    toAddress

    Liste des adresses e-mail des destinataires à inclure dans la ligne « À » de la notification par e-mail.

    Formatez cette liste sous forme de tableau JSON. Par exemple :

    { "toAddress" : ["person_1@example.com", "person_2@example.com"] }
    
    Copy

    Si vous ne définissez pas cette propriété, la procédure stockée utilise la liste des adresses e-mail de la propriété DEFAULT_RECIPIENTS de l”intégration de notification par e-mail.

    ccAddress

    Liste des adresses e-mail des destinataires à inclure dans la ligne « Cc » de la notification par e-mail.

    Formatez cette liste sous forme de tableau JSON. Par exemple :

    { "ccAddress" : ["person_to_cc1@example.com", "person_to_cc2@example.com"] }
    
    Copy

    bccAddress

    Liste des adresses e-mail des destinataires à inclure dans la ligne « Cci » de la notification par e-mail.

    Formatez cette liste sous forme de tableau JSON. Par exemple :

    { "bccAddress" : ["person_to_bcc1@example.com", "person_to_bcc2@example.com"] }
    
    Copy

    Par exemple :

    { "my_queue_int": {} }
    
    Copy
    { "my_email_int": { "subject" : "Different subject" } }
    
    Copy
    { "my_email_int": { "subject" : "Different subject" }, { "toAddress": ["person_a@example.com"] }
    
    Copy

Pour construire les chaînes au format JSONpour la configuration d’intégration, appelez l’une des fonctions suivantes :

  • Si vous envoyez la notification à une file d’attente ou si vous envoyez une notification par e-mail et que vous souhaitez utiliser les valeurs par défaut spécifiées dans l’intégration de notification par e-mail, appelez la fonction INTEGRATION.

  • Si vous envoyez une notification par e-mail et que vous souhaitez remplacer les valeurs par défaut spécifiées dans l’intégration de notification par e-mail, appelez la fonction EMAIL_INTEGRATION_CONFIG.

( message [ , message , ... ] )

ARRAY de chaînes au format JSON, chacune d’entre elles spécifiant un type de message et son contenu. Spécifiez cet argument si vous souhaitez envoyer un message dans plusieurs formats.

Chaque message doit utiliser le format décrit ci-dessus.

Pour construire l’ARRAY, appelez la fonction ARRAY_CONSTRUCT.

Note

L’ARRAY ne peut pas contenir plus d’un objet pour le même type de contenu de message.

( integration_configuration [ , integration_configuration , ... ] )

ARRAY de chaînes au format JSON, chacune d’entre elles spécifiant une intégration et une configuration de notification à utiliser. Spécifiez cet argument si vous souhaitez utiliser plusieurs intégrations de notification ou configurations de messagerie pour envoyer un message.

Chaque configuration d’intégration doit utiliser le format décrit ci-dessus.

Pour construire l’ARRAY, appelez la fonction ARRAY_CONSTRUCT.

Note

L’ARRAY ne peut pas contenir plus d’un objet pour la même intégration de notification.

Renvoie

Si la procédure stockée s’exécute correctement, elle renvoie la chaîne « Notifications placées en file d’attente ».

Notes sur l’utilisation

  • Pour les notifications par e-mail, si la propriété DEFAULT_RECIPIENTS n’est pas définie dans l’intégration de notification et si vous ne définissez pas la propriété toAddress: dans l’appel SYSTEM$SEND_SNOWFLAKE_NOTIFICATION, l’appel échoue.

  • Pour les notifications webhook, appelez SANITIZE_WEBHOOK_CONTENT pour assainir le message avant de le transmettre à SYSTEM$SEND_SNOWFLAKE_NOTIFICATION.

Exemples

Voir Utilisation de SYSTEM$SEND_SNOWFLAKE_NOTIFICATION pour envoyer des notifications.