전용 Exadata 인프라의 자율운영 AI 데이터베이스에서 Microsoft Teams 통지 전송

DBMS_CLOUD_NOTIFICATION 패키지를 사용하여 전용 Exadata 인프라의 자율운영 AI 데이터베이스에서 Microsoft Teams 채널로 쿼리의 메시지, 경보 또는 출력을 전송하도록 Microsoft Teams를 구성할 수 있습니다.

자율운영 AI 데이터베이스에서 Microsoft 팀 통지 전송 준비

Microsoft Teams 앱에서 봇을 구성하여 시작하십시오. 그런 다음 DBMS_CLOUD_NOTIFICATION 절차와 함께 사용할 인증서를 생성하여 자율운영 AI 데이터베이스에서 Microsoft Teams 통지를 전송합니다.

Microsoft Teams 통지를 구성하려면 다음을 수행합니다.

  1. Microsoft Teams 앱을 생성하고 여기에 봇을 추가합니다. 앱 설정에 대한 자세한 내용은 팀용 개발자 포털을 참조하십시오.

  2. 봇 관리 섹션에서 봇에 보안 키, 범위가 으로 설정되고 알림을 보낼 수 있는 권한이 있는지 확인합니다.

  3. 조직 내 사용자가 사용할 수 있도록 조직에 앱을 게시합니다.

  4. IT 관리자가 관리 센터에서 앱을 승인한 후 Teams의 Apps 섹션에서 앱을 설치합니다.

  5. 다음 지침을 사용하여 Azure Portal에서 Graph API용 앱에 Files.ReadWrite.AllChannelSettings.Read.All 권한을 요청합니다.

    1. Azure Portal에 로그인하고 왼쪽 패널을 사용하여 Azure Active Directory로 이동한 다음 애플리케이션 옵션을 선택합니다.

    2. 응용 프로그램 페이지에는 사용자가 소유한 응용 프로그램과 해당 응용 프로그램에 추가된 봇이 표시됩니다. 봇을 눌러 세부정보를 확인합니다.

    3. 나중에 사용할 수 있도록 봇 개요 페이지에서 directory/tenant id를 복사합니다.

    4. 그런 다음 왼쪽 패널에서 API 사용 권한으로 이동합니다. API 권한에서 권한 추가를 누르고 Microsoft 그래프, 애플리케이션 권한 순으로 선택합니다.

    5. Files.ReadWrite.AllChannelSettings.Read.All 권한을 검색하여 추가합니다.

  6. IT 관리자가 아래 단계에 따라 Azure 포털에서 위에 요청된 권한을 승인하도록 합니다.

    1. Azure Portal에 로그인하고 왼쪽 패널을 사용하여 Azure Active Directory로 이동한 다음 애플리케이션 옵션을 선택합니다.

    2. 애플리케이션 페이지에서 모든 애플리케이션을 선택합니다.

    3. 애플리케이션/봇을 이름으로 검색하고, API 권한으로 이동하고, 요청된 권한(Files.ReadWrite.AllChannelSettings.Read.All)에 대해 ADMIN 동의를 부여합니다.

    참고: IT 관리자가 앱을 승인한 후 다른 사용자에게 봇 ID 및 보안 키를 제공하여 조직의 팀 내에 앱을 설치할 수 있습니다.

  7. IT 관리자가 앱을 승인하고 위에 요청된 권한이 부여된 후 앱의 봇 ID 및 보안 키를 사용하여 인증서 객체를 생성하고 봇 토큰을 생성할 수 있습니다.

  8. 질의 결과를 Microsoft Teams 채널로 전송하려면 team idtenant id를 가져옵니다.

    참고: team id는 /team/과 /conversations 사이의 팀 링크에 있습니다. tenant id는 팀 링크 끝에 있는 "tenantId=" 뒤에 있습니다. 이 링크는 팀 이름 옆에 있는 3개의 점을 누르고 팀에 대한 링크 가져오기를 선택하여 찾을 수 있습니다.

    예:

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

  9. channelID를 얻습니다.

    참고: channelID는 /team/과 채널 이름 사이의 채널 링크에 있습니다. 이 링크는 채널 이름 옆에 있는 3개의 점을 누르고 채널에 대한 링크 가져오기를 선택하여 찾을 수 있습니다.

    예:

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

  10. Exadata Cloud@Customer에서 데이터베이스가 Microsoft Teams에 액세스할 수 있도록 환경에서 HTTP 프록시 설정을 구성합니다. Exadata Cloud@Customer 인프라를 생성하는 동안 HTTP 프록시 설정 설정에 대한 자세한 내용은 콘솔을 사용하여 Cloud@Customer에서 Exadata Database Service 프로비전을 참조하십시오.

    주: HTTP 프록시를 포함한 네트워크 구성은 Exadata 인프라가 [활성화 필요] 상태가 될 때까지만 편집할 수 있습니다. 일단 활성화되면 해당 설정을 편집할 수 없습니다.

    이미 프로비전된 Exadata 인프라에 대해 HTTP 프록시를 설정하려면 My Oracle Support에서 SR(서비스 요청)을 제출하십시오. 자세한 내용은 My Oracle Support에서 서비스 요청 생성을 참조하십시오.

  11. 자율운영 AI 데이터베이스에서 Microsoft Teams 앱에 액세스할 인증서 객체를 생성합니다.

    참고: CREATE_CREDENTIAL 프로시저를 성공적으로 사용할 수 없으면 ADMIN 사용자에게 문의하여 DBMS_CLOUD 패키지에 대한 실행 액세스 권한을 부여하십시오.

    인증서의 사용자 이름은 bot_id이고 암호는 봇 키입니다.

    예:

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

    자세한 내용은 CREATE_CREDENTIAL Procedure를 참조하십시오.

Microsoft Teams 채널로 메시지 전송

Prepare to Send Microsoft Teams Notifications from Autonomous AI Database에 설명된 대로 Microsoft Teams 자격 증명 객체를 생성한 후 DBMS_CLOUD_NOTIFICATION.SEND_MESSAGE 프로시저를 사용하여 Microsoft Teams 채널로 메시지를 보낼 수 있습니다.

예제:

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

params 매개변수를 사용하여 채널을 지정합니다.

channel: specifies the Channel ID obtained from Step 10 in Prepare to Send Microsoft Teams Notifications from Autonomous AI Database.

자세한 내용은 SEND_MESSAGE 프로시저를 참조하십시오.

Microsoft Teams 채널에 질의 결과 전송

Prepare to Send Microsoft Teams Notifications from Autonomous AI Database에 설명된 대로 Microsoft Teams 자격 증명 객체를 생성한 후 DBMS_CLOUD_NOTIFICATION.SEND_DATA 프로시저를 사용하여 질의 출력을 Microsoft Teams 채널로 전송할 수 있습니다.

예제:

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

params 매개변수를 사용하여 테넌트, 팀, 채널, 제목 및 데이터 유형을 string 값으로 지정합니다.

주: Microsoft Teams에 DBMS_CLOUD_NOTIFICATION.SEND_DATA를 사용할 때 지원되는 최대 파일 크기는 4MB입니다.

관련 항목