Envoyer des avis Microsoft Teams à partir d'Autonomous Database sur une infrastructure Exadata dédiée

Vous pouvez configurer Microsoft Teams pour envoyer des messages, des alertes ou la sortie d'une interrogation d'Autonomous Database sur une infrastructure Exadata dédiée à un canal Microsoft Teams à l'aide de l'ensemble DBMS_CLOUD_NOTIFICATION.

Préparer l'envoi d'avis Microsoft Teams à partir d'Autonomous Database

Commencez par configurer un robot dans votre application Microsoft Teams. Créez ensuite des données d'identification à utiliser avec les procédures DBMS_CLOUD_NOTIFICATION pour envoyer des avis Microsoft Teams à partir d'Autonomous Database.

Pour configurer les avis Microsoft Teams :

  1. Créez votre application Microsoft Teams et ajoutez-y un robot. Voir Portail des développeurs pour les équipes pour plus d'informations sur la configuration d'une application.
  2. Dans la section Gestion des robots, assurez-vous que le robot dispose d'une clé secrète, d'une portée réglée à Équipe et d'une autorisation pour envoyer des avis.
  3. Publiez l'application dans votre organisation pour la mettre à la disposition des personnes de votre organisation.
  4. Une fois que l'administrateur informatique a approuvé l'application à partir du centre d'administration, installez-la à partir de la section Applications dans Teams.
  5. Demandez les autorisations Files.ReadWrite.All et ChannelSettings.Read.All à l'application pour l'API Graph à partir du portail Azure à l'aide des instructions suivantes :
    1. Connectez-vous à votre portail Azure, naviguez jusqu'à Azure Active Directory à l'aide du panneau de gauche, puis sélectionnez l'option Application.
    2. La page Application affiche les applications que vous possédez ainsi que les robots ajoutés à ces applications. Cliquez sur le robot pour en voir les détails.
    3. Copiez le répertoire/ID locataire à partir de la page d'aperçu du robot pour une utilisation ultérieure.
    4. Allez ensuite à Autorisations d'API dans le panneau de gauche. Sous Autorisations d'API, cliquez sur Ajouter une autorisation, sélectionnez Graphique Microsoft, puis Autorisation d'application.
    5. Recherchez les autorisations Files.ReadWrite.All et ChannelSettings.Read.All et ajoutez-les.
  6. Demandez à votre administrateur informatique d'approuver les autorisations demandées ci-dessus à partir du portail Azure en suivant les étapes ci-dessous :
    1. Connectez-vous à votre portail Azure, naviguez jusqu'à Azure Active Directory à l'aide du panneau de gauche, puis sélectionnez l'option Application.
    2. Sélectionnez Toutes les applications dans la page Application.
    3. Recherchez l'application/agent par son nom, allez à Autorisations d'API et accordez le consentement ADMIN pour les autorisations demandées : Files.ReadWrite.All et ChannelSettings.Read.All.

    Conseil :

    Une fois votre application approuvée par l'administrateur informatique, vous pouvez fournir l'ID robot et la clé secrète à d'autres utilisateurs pour installer l'application dans Teams dans l'organisation.
  7. Une fois l'application approuvée par l'administrateur informatique et les autorisations demandées ci-dessus accordées, vous pouvez utiliser l'ID robot de l'application et la clé secrète pour créer l'objet de données d'identification et générer un jeton de robot.
  8. Pour envoyer un résultat d'interrogation à un canal Microsoft Teams, obtenez team id et tenant id.

    Conseil :

    Le team id se trouve dans le lien d'équipe entre /team/ et /conversations. tenant id se trouve après "tenantId=" à la fin du lien d'équipe. Ce lien se trouve en cliquant sur les trois points à côté du nom de l'équipe et en sélectionnant Obtenir le lien vers l'équipe.

    Par exemple :

    https://teams.microsoft.com/l/team/teamID/conversations?groupId=groupid%tenantId=tenantid

  9. Obtenez channelID.

    Conseil :

    channelID se trouve dans le lien de canal entre /team/ et le nom du canal. Ce lien se trouve en cliquant sur les trois points à côté du nom du canal et en sélectionnant Obtenir le lien vers le canal.

    Par exemple :

    https://teams.microsoft.com/l/channel/channelID/channel_name?groupId=groupid&tenantId=tenantid

  10. Sur Exadata Cloud@Customer, configurez les paramètres de mandataire HTTP dans votre environnement pour permettre à la base de données d'accéder à Microsoft Teams. Voir Utilisation de la console pour provisionner le service Exadata Database sur Cloud@Customer pour plus d'informations sur la configuration des paramètres de mandataire HTTP lors de la création d'une infrastructure Exadata Cloud@Customer.

    Note :

    La configuration réseau, y compris le mandataire HTTP, ne peut être modifiée que jusqu'à ce que l'infrastructure Exadata ait l'état Activation requise. Une fois activé, vous ne pouvez pas modifier ces paramètres.

    Pour configurer un mandataire HTTP pour une infrastructure Exadata déjà provisionnée, soumettez une demande de service dans My Oracle Support. Pour plus de détails, voir Créer une demande de service dans My Oracle Support.

  11. Créez un objet de données d'identification pour accéder à l'application Microsoft Teams à partir d'Autonomous Database.

    Conseil :

    Si vous ne pouvez pas utiliser la procédure CREATE_CREDENTIAL avec succès, consultez l'utilisateur ADMIN pour accorder l'accès d'exécution aux ensembles DBMS_CLOUD.

    Le nom d'utilisateur des données d'identification est bot_id et le mot de passe est la clé du robot.

    Par exemple :

    
    BEGIN     
        DBMS_CLOUD.CREATE_CREDENTIAL(credential_name => 'TEAMS_CRED',       
            username        => 'bot_id', 
            password        => 'bot_secret');
    END;
    /
     

    Pour plus d'informations, voir Procédure CREATE_CREDENTIAL.

Envoyer des messages à un canal Microsoft Teams

Après avoir créé l'objet de données d'identification Microsoft Teams tel que décrit dans Préparer l'envoi d'avis Microsoft Teams à partir d'Autonomous Database, vous pouvez utiliser la procédure DBMS_CLOUD_NOTIFICATION.SEND_MESSAGE pour envoyer un message à un canal Microsoft Teams.

Exemple :

BEGIN
     DBMS_CLOUD_NOTIFICATION.SEND_MESSAGE(
        provider        => 'msteams',
        credential_name => 'TEAMS_CRED',
        message         => 'text from new teams api',
        params          => json_object('channel' value 'channelID'));
END;
/
 

Utilisez le paramètre params pour spécifier le canal.

Voir Procédure SEND_MESSAGE pour plus d'informations.

Envoyer les résultats d'interrogation à un canal Microsoft Teams

Après avoir créé l'objet de données d'identification Microsoft Teams tel que décrit dans Préparer l'envoi d'avis Microsoft Teams à partir d'Autonomous Database, vous pouvez utiliser la procédure DBMS_CLOUD_NOTIFICATION.SEND_DATA pour envoyer la sortie d'une interrogation à un canal Microsoft Teams.

Exemple :

BEGIN
     DBMS_CLOUD_NOTIFICATION.SEND_DATA(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;
/
 

Utilisez le paramètre params pour spécifier le locataire, l'équipe, le canal, le titre et le type de données dans les valeurs string.

Note :

La taille de fichier maximale prise en charge lors de l'utilisation de DBMS_CLOUD_NOTIFICATION.SEND_DATA pour Microsoft Teams est de 4 Mo.

Voir Procédure SEND_DATA pour plus d'informations.