Invia notifiche di Microsoft Teams da Autonomous Database

Descrive come configurare Microsoft Teams in modo da poter inviare messaggi, avvisi o output di una query da Autonomous Database a un canale Microsoft Teams. Vengono inoltre descritte le procedure utilizzate per inviare le notifiche di Microsoft Teams.

Preparati a inviare notifiche di Microsoft Teams da Autonomous Database

Per iniziare, configurare un bot nell'applicazione Microsoft Teams. Creare quindi una credenziale da utilizzare con le procedure DBMS_CLOUD_NOTIFICATION per inviare le notifiche di Microsoft Teams da Autonomous Database.

Per configurare le notifiche di Microsoft Teams:

  1. Creare l'applicazione Microsoft Teams e aggiungervi un bot. Per informazioni sull'impostazione di un'applicazione, vedere Portale sviluppatori per i team.
  2. Nella sezione Gestione bot, assicurarsi che il bot disponga di una chiave segreta, di un ambito impostato su Team e dell'autorizzazione per inviare le notifiche.
  3. Pubblica l'app nella tua organizzazione per renderla disponibile alle persone nella tua organizzazione.
  4. Dopo che l'amministratore IT ha approvato l'applicazione dal centro di amministrazione, installarla nella sezione App di Teams.
  5. Richiedere le autorizzazioni Files.ReadWrite.All e ChannelSettings.Read.All all'applicazione per l'API Graph dal portale Azure utilizzando le istruzioni riportate di seguito.
    1. Eseguire il login al portale Azure, passare a Azure Active Directory utilizzando il pannello a sinistra e selezionare l'opzione Applicazione.
    2. La pagina Applicazione visualizza le applicazioni di cui si è proprietari insieme ai bot aggiunti a tali applicazioni. Fare clic sul bot per visualizzarne i dettagli.
    3. Copiare la directory/ID tenant dalla pagina di panoramica del bot per utilizzarla in un secondo momento.
    4. Passare quindi a Autorizzazioni API nel pannello sinistro. In Autorizzazioni API, fare clic su Aggiungi autorizzazione, selezionare Grafico Microsoft e quindi Autorizzazione applicazione.
    5. Cercare le autorizzazioni Files.ReadWrite.All e ChannelSettings.Read.All e aggiungerle.
  6. Chiedere all'amministratore IT di approvare le autorizzazioni richieste in precedenza dal portale Azure attenendosi alla procedura riportata di seguito.
    1. Eseguire il login al portale Azure, passare a Azure Active Directory utilizzando il pannello a sinistra e selezionare l'opzione Applicazione.
    2. Selezionare Tutte le applicazioni dalla pagina Applicazione.
    3. Cercare l'applicazione/bot in base al nome, andare a Autorizzazioni API e concedere il consenso ADMIN per le autorizzazioni richieste: Files.ReadWrite.All e ChannelSettings.Read.All.

    Suggerimento

    Dopo l'approvazione dell'applicazione da parte dell'amministratore IT, è possibile fornire l'ID bot e la chiave segreta ad altri utenti per installare l'applicazione all'interno dei team nell'organizzazione.
  7. Dopo l'approvazione dell'applicazione da parte dell'amministratore IT e la concessione delle autorizzazioni richieste sopra riportate, è possibile utilizzare l'ID bot dell'applicazione e la chiave segreta per creare l'oggetto delle credenziali e generare un token bot.
  8. Per inviare un risultato di query a un canale Microsoft Teams, ottenere team id e tenant id.

    Suggerimento

    Il team id si trova nel collegamento del team tra /team/ e /conversazioni. Il file tenant id si trova dopo "tenantId=" alla fine del collegamento del team. Per trovare questo collegamento, fare clic sui tre punti accanto al nome del team e selezionare Ottieni collegamento al team.

    Ad esempio:

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

  9. Ottenere il file channelID.

    Suggerimento

    channelID si trova nel collegamento del canale tra /team/ e il nome del canale. Per trovare questo collegamento, fare clic sui tre punti accanto al nome del canale e selezionare Ottieni collegamento al canale.

    Ad esempio:

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

  10. Creare un oggetto credenziali per accedere all'applicazione Microsoft Teams da Autonomous Database.

    Suggerimento

    Se non è possibile utilizzare correttamente la procedura CREATE_CREDENTIAL, consultare l'utente ADMIN per concedere l'accesso di esecuzione sui package DBMS_CLOUD.

    Il nome utente della credenziale è bot_id e la password è la chiave bot.

    Ad esempio:

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

    Per ulteriori informazioni, vedere CREATE_CREDENTIAL Procedura.

Invia messaggi a un canale Microsoft Teams

Dopo aver creato l'oggetto credenziale di Microsoft Teams come descritto in Prepara a inviare notifiche di Microsoft Teams da Autonomous Database, è possibile utilizzare la procedura DBMS_CLOUD_NOTIFICATION.SEND_MESSAGE per inviare un messaggio a un canale Microsoft Teams.

Esempio:

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;
/
 

Utilizzare il parametro params per specificare il canale.

Per ulteriori informazioni, vedere SEND_MESSAGE Procedura.

Invia risultati query a un canale Microsoft Teams

Dopo aver creato l'oggetto delle credenziali di Microsoft Teams come descritto in Prepara a inviare notifiche di Microsoft Teams da Autonomous Database, è possibile utilizzare la procedura DBMS_CLOUD_NOTIFICATION.SEND_DATA per inviare l'output di una query a un canale Microsoft Teams.

Esempio:

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;
/
 

Utilizzare il parametro params per specificare il tenant, il team, il canale, il titolo e il tipo di dati nei valori string.

Nota

La dimensione massima del file supportata quando si utilizza DBMS_CLOUD_NOTIFICATION.SEND_DATA per Microsoft Teams è di 4 MB.

Per ulteriori informazioni, vedere SEND_DATA Procedura.