Ensemble DBMS_CLOUD_NOTIFICATION
L'ensemble DBMS_CLOUD_NOTIFICATION vous permet d'envoyer des messages ou la sortie d'une interrogation SQL à un fournisseur.
- Aperçu de DBMS_CLOUD_NOTIFICATION
Décrit l'ensembleDBMS_CLOUD_NOTIFICATION. - Sommaire des sous-programmes DBMS_CLOUD_NOTIFICATION
Ce tableau résume les sous-programmes inclus dans l'ensemble.
Aperçu de DBMS_CLOUD_NOTIFICATION
Décrit l'ensemble DBMS_CLOUD_NOTIFICATION.
Les fournisseurs pris en charge avec DBMS_CLOUD_NOTIFICATION sont : Courriel, Microsoft Teams, OCI Notifications (ONS) et Slack.
Lorsque vous utilisez le service d'avis OCI avec l'ensemble DBMS_CLOUD_NOTIFICATION, seule la procédure DBMS_CLOUD_NOTIFICATION.SEND_MESSAGE est prise en charge (la procédure DBMS_CLOUD_NOTIFICATION.SEND_DATA n'est pas prise en charge)
Rubrique parent : Ensemble DBMS_CLOUD_NOTIFICATION
Sommaire des sous-programmes DBMS_CLOUD_NOTIFICATION
Ce tableau résume les sous-programmes inclus dans le package.
| Sous-programme | Description |
|---|---|
|
Envoyer la sortie de l'interrogation SQL à un fournisseur. |
|
|
Envoyer un message texte à un fournisseur. |
- Procédure SEND_DATA
La procédureSEND_DATAenvoie les résultats de l'interrogation spécifiée à un fournisseur. - Procédure SEND_MESSAGE
La procédure envoie un message texte à un fournisseur.
Rubrique parent : Ensemble DBMS_CLOUD_NOTIFICATION
SEND_DATA Procédure
La procédure SEND_DATA envoie les résultats de l'interrogation spécifiée à un fournisseur.
Syntaxe
DBMS_CLOUD_NOTIFICATION.SEND_DATA(
provider IN VARCHAR2,
credential_name IN VARCHAR2,
query IN CLOB,
params IN CLOB
);
Paramètres
| Paramètre | Description |
|---|---|
|
|
Spécifie le fournisseur. Les valeurs valides sont les suivantes : ' Ce paramètre est obligatoire. |
|
|
Nom de l'objet de données d'identification permettant d'accéder au fournisseur. Pour le fournisseur de courriel, les données d'identification sont le nom des données d'identification de l'expéditeur approuvé SMTP qui contient son nom d'utilisateur et son mot de passe. Pour le fournisseur msteams, les données d'identification sont le nom des données d'identification. Pour le fournisseur Slack, le nom d'utilisateur des données d'identification doit être Ce paramètre est obligatoire. |
|
|
Spécifie l'interrogation SQL à exécuter. Les résultats sont envoyés au fournisseur. Ce paramètre est obligatoire. |
|
|
Spécifie des paramètres spécifiques pour Pour le type de fournisseur
Pour le type de fournisseur
Pour le type de fournisseur
Ce paramètre est obligatoire. |
Notes d'utilisation
-
Utilisez la procédure
DBMS_CLOUD.CREATE_CREDENTIAL(credential_name,username,password)pour créer l'objet de données d'identification.Pour plus d'informations, voir ProcédureCREATE_CREDENTIAL.
-
Pour le fournisseur
email, notez ce qui suit :-
L'utilisateur nécessite un point d'extrémité de connexion SMTP pour le serveur de transmission de messages afin d'obtenir
smtp_host. L'utilisateur a également besoin d'un expéditeur approuvé SMTP et de ses données d'identification pour s'authentifier auprès du serveur de transmission de messages afin d'obtenircredential_name. La connexion SMTP doit être configurée et les données d'identification SMTP doivent être générées et approuvées. -
La taille maximale des messages prise en charge lors de l'utilisation de
DBMS_CLOUD_NOTIFICATION.SEND_DATAavec le fournisseuremailest de 32k octets. -
Vous ne pouvez utiliser
DBMS_CLOUD_NOTIFICATIONque pour les avis par courriel avec Autonomous AI Database version 19.21 et supérieure.
-
-
Pour le fournisseur
msteams, l'utilisateur a besoin de l'application Microsoft Teams et d'un robot configuré dans celle-ci. L'application doit être publiée dans l'organisation et installée après avoir obtenu l'approbation de l'administrateur du centre d'administration. L'utilisateur doit également disposer de l'autorisationFiles.ReadWrite.AlletChannelSettings.Read.Allpour l'API Graph à partir de son portail Azure. Pour générer le jeton requis, l'utilisateur a besoin debot_iddans le nom d'utilisateur et debot_secretdans le mot de passe.La taille maximale de fichier prise en charge lors de l'utilisation de
DBMS_CLOUD_NOTIFICATION.SEND_DATApour Microsoft Teams est de 4 Mo. - Pour le fournisseur
slack, la valeurusernamepeut être n'importe quelle chaîne valide etpasswordest le jeton de robot Slack.
Exemples
Envoyer une sortie SQL avec le fournisseur email :
BEGIN
DBMS_CLOUD.CREATE_CREDENTIAL(
credential_name => 'EMAIL_CRED',
username => 'username',
password => 'password');
END;
/
BEGIN
DBMS_CLOUD_NOTIFICATION.SEND_DATA(
provider => 'email',
credential_name => 'EMAIL_CRED',
query => 'SELECT tablespace_name FROM dba_tablespaces',
params => json_object('recipient' value 'mark@oracle.com, suresh@oracle.com',
'to_cc' value 'nicole@oracle.com1, jordan@oracle.com',
'to_bcc' value 'manisha@oracle.com',
'subject' value 'Test subject',
'type' value 'json',
'title' value 'mytitle',
'message' value 'This is the message',
'smtp_host' value 'smtp.email.example.com',
'sender' value 'approver_sender@oracle.com' )
);
END;
/Envoyer une sortie SQL avec le fournisseur msteams :
BEGIN
DBMS_CLOUD.CREATE_CREDENTIAL(credential_name => 'TEAMS_CRED',
username => 'bot_id',
password => 'bot_secret');
END;
/
BEGIN
DBMS_CLOUD_NOTIFICATION.SEND_MESSAGE(provider => 'msteams',
credential_name => 'TEAMS_CRED',
query => 'SELECT tablespace_name FROM dba_tablespaces',
params => json_object('tenant'value '5b743bc******c0286',
'team'value '0ae401*********5d2bd',
'channel'value '19%3a94be023*****%40thread.tacv2',
'title'value 'today',
'type'value 'csv'));
END;
/
Envoyer une sortie SQL avec le fournisseur slack :
BEGIN
DBMS_CLOUD.CREATE_CREDENTIAL(
credential_name => 'SLACK_CRED',
username => 'SLACK_TOKEN',
password => 'password');
END;
/
BEGIN
DBMS_CLOUD_NOTIFICATION.SEND_DATA(
provider => 'slack',
credential_name => 'SLACK_CRED',
query => 'SELECT username, account_status, expiry_date FROM USER_USERS WHERE rownum < 5',
params => json_object('channel' value 'C0....08','type' value 'csv'));
END;
/
Rubrique parent : Sommaire des sous-programmes DBMS_CLOUD_NOTIFICATION
SEND_MESSAGE Procédure
La procédure envoie un message texte à un fournisseur.
Syntaxe
DBMS_CLOUD_NOTIFICATION.SEND_MESSAGE(
provider IN VARCHAR2,
credential_name IN VARCHAR2,
message IN CLOB,
params IN CLOB
);
Paramètres
| Paramètre | Description |
|---|---|
|
|
Spécifie le fournisseur. Les valeurs valides sont les suivantes : ' Ce paramètre est obligatoire. |
|
|
Nom de l'objet de données d'identification permettant d'accéder au fournisseur.
Ce paramètre est obligatoire. Utilisez la procédure |
|
|
Indique le texte du message. Ce paramètre est obligatoire. |
|
|
Spécifie des paramètres spécifiques pour Pour le type de fournisseur
Pour le type de fournisseur
Pour le type de fournisseur
Pour les avis OCI de fournisseur de type
Avec le fournisseur
|
Note d'utilisation pour le fournisseur de courriel
Pour le fournisseur email, l'utilisateur nécessite un point d'extrémité de connexion SMTP pour le serveur de transmission de messages afin d'obtenir smtp_host. L'utilisateur a également besoin d'un expéditeur approuvé SMTP et de ses données d'identification pour s'authentifier auprès du serveur de transmission de messages afin d'obtenir credential_name. La connexion SMTP doit être configurée et les données d'identification SMTP doivent être générées et approuvées.
Note d'utilisation pour le fournisseur Msteams
Pour le fournisseur msteams, l'utilisateur a besoin de l'application Microsoft Teams et d'un robot configuré dans celle-ci. L'application doit être publiée dans l'organisation et installée après avoir obtenu l'approbation de l'administrateur du centre d'administration. L'utilisateur doit également disposer de l'autorisation Files.ReadWrite.All et ChannelSettings.Read.All pour l'API Graph à partir de son portail Azure. Pour générer le jeton requis, l'utilisateur a besoin de bot_id dans le nom d'utilisateur et de bot_secret dans le mot de passe.
Note d'utilisation pour le fournisseur Slack
Pour le fournisseur slack, la valeur username peut être n'importe quelle chaîne valide et password est le jeton de robot Slack.
Notes d'utilisation pour les avis OCI pour le fournisseur OCI
DBMS_CLOUD_NOTIFICATION prend en charge le fournisseur d'avis OCI. Voir Aperçu des avis pour plus de détails sur le fournisseur d'avis OCI.
- Pour utiliser le fournisseur d'avis OCI, vous devez effectuer les opérations suivantes :
- Créer un sujet. Voir Création d'un sujet pour plus de détails sur la création d'un sujet
- Créez les abonnements requis. Voir Création d'un abonnement pour plus de détails sur la création d'un abonnement.
- Après avoir créé les abonnements, confirmez-les. Les messages ne sont publiés que pour les abonnements confirmés. Pour plus de détails sur la confirmation des abonnements, voir Confirmation d'un abonnement.
- L'instance de base de données de l'IA autonome, les données d'identification, si vous utilisez des données d'identification d'utilisateur et le sujet d'abonnement doivent tous se trouver dans la même région.
- Notez les limitations suivantes :
- Taille limite du message : La taille limite du message par demande est de 64 Ko. Les messages dépassant cette taille ne peuvent pas être envoyés ou traités dans une seule demande.
- Limite de débit de transmission de messages : Il existe différentes limites de débit de transmission de messages en fonction du protocole utilisé.
- Protocole
email: la limite est de 10 messages par minute par point d'extrémité.
Cette restriction peut avoir une incidence sur la vitesse à laquelle les messages peuvent être transmis et reçus.
- Protocole
- Limite de transactions par minute (TPM) par location : Il existe une limite de TPM de 60 par sujet pour cette opération. Cette limite représente le nombre maximal de messages par minute pouvant être traités ou traités pour un sujet donné. Si cette limite est dépassée, les messages risquent de ne pas être traités ou traités à un rythme plus lent.
Exemples
Envoyez un message texte avec le fournisseur email :
BEGIN
DBMS_CLOUD.CREATE_CREDENTIAL(
credential_name => 'EMAIL_CRED',
username => 'username',
password => 'password');
END;
/
BEGIN
DBMS_CLOUD_NOTIFICATION.SEND_MESSAGE(
provider => 'email',
credential_name => 'EMAIL_CRED',
message => 'Subject content',
params => json_object('recipient' value 'mark@oracle.com, suresh@oracle.com',
'to_cc' value 'nicole@oracle.com, jordan@oracle.com',
'to_bcc' value 'manisha@oracle.com',
'subject' value 'Test subject',
'smtp_host' value 'smtp.email.example.com',
'sender' value 'approver_sender@oracle.com' )
);
END;
/Envoyez un message texte avec le fournisseur msteams :
BEGIN
DBMS_CLOUD.CREATE_CREDENTIAL(credential_name => 'TEAMS_CRED',
username => 'bot_id',
password => 'bot_secret');
END;
/
BEGIN
DBMS_CLOUD_NOTIFICATION.SEND_MESSAGE(
provider => 'msteams',
credential_name => 'TEAMS_CRED',
message => 'text from new teams api',
params => json_object('channel'value 'C0....08'),'region'value 'india');
END;
/
Envoyez un message texte avec le fournisseur slack :
BEGIN
DBMS_CLOUD.CREATE_CREDENTIAL(
credential_name => 'SLACK_CRED',
username => 'SLACK_TOKEN',
password => 'password');
END;
/
BEGIN
DBMS_CLOUD_NOTIFICATION.SEND_MESSAGE(
provider => 'slack',
credential_name => 'SLACK_CRED',
message => 'Send text from Autonomous AI Database.',
params => json_object('channel' value 'C0....08'));
END;
/
Envoyez un message texte avec le service d'avis OCI, entrez le fournisseur oci :
BEGIN
DBMS_CLOUD_NOTIFICATION.SEND_MESSAGE(
provider => 'oci',
credential_name => 'OCI_CRED',
message => 'Text message for you.',
params => json_object('topic_ocid' value 'oci********pa',
'title' value 'Title for message subject' ));
END;
/
BEGIN
DBMS_CLOUD_NOTIFICATION.SEND_MESSAGE(
provider => 'oci',
credential_name => 'OCI$RESOURCE_PRINCIPAL',
message => 'Text message for you.',
params => json_object('topic_ocid' value 'oci********pa',
'title' value 'Title for message subject' ));
END;
/
Rubrique parent : Sommaire des sous-programmes DBMS_CLOUD_NOTIFICATION