從專用 Exadata 基礎架構上的自治式 AI 資料庫傳送 Microsoft Teams 通知
您可以設定 Microsoft Teams,使用 DBMS_CLOUD_NOTIFICATION 套裝軟體,將查詢的訊息、警示或輸出從專用 Exadata 基礎架構上的自治式 AI 資料庫傳送至 Microsoft Teams 通道。
準備從 Autonomous AI 資料庫傳送 Microsoft Teams 通知
從在 Microsoft Teams 應用程式中設定機器人開始進行。接著,建立要與 DBMS_CLOUD_NOTIFICATION 程序搭配使用的證明資料,以從 Autonomous AI Database 傳送 Microsoft Teams 通知。
若要設定 Microsoft Teams 通知,請執行下列動作:
-
建立您的 Microsoft Teams 應用程式並在其中新增機器人。如需有關設定應用程式的資訊,請參閱團隊的開發人員入口網站。
-
在機器人管理區段中,確定機器人具有秘密金鑰、範圍設為團隊,以及傳送通知的權限。
-
將應用程式發布至您的組織,以供組織中的人員使用。
-
您的 IT 管理員從管理中心核准應用程式之後,請從團隊的應用程式區段安裝應用程式。
-
使用下列指示,向 Azure Portal 的 Graph API 要求
Files.ReadWrite.All和ChannelSettings.Read.All權限:-
登入您的 Azure 入口網站,使用左側面板導覽至 Azure Active Directory ,然後選取應用程式選項。
-
「應用程式」頁面會顯示您所擁有的應用程式,以及新增至這些應用程式的機器人。按一下機器人即可檢視其詳細資訊。
-
從機器人程式總覽頁面複製目錄 / 租用戶 ID 以供日後使用。
-
接著,前往左側面板中的 API 權限。在 API 權限下,按一下新增權限,選取 Microsoft 圖表,然後選取應用程式權限。
-
搜尋
Files.ReadWrite.All和ChannelSettings.Read.All權限並加以新增。
-
-
讓您的 IT 管理員依照下列步驟,從 Azure 入口網站核准上述要求的權限:
-
登入您的 Azure 入口網站,使用左側面板導覽至 Azure Active Directory ,然後選取應用程式選項。
-
從應用程式頁面選取所有應用程式。
-
依照應用程式 / 機器人程式的名稱搜尋應用程式 / 機器人程式,前往 API 權限,並授予 ADMIN 同意的要求權限:
Files.ReadWrite.All和ChannelSettings.Read.All。
提示:您的應用程式獲得 IT 管理員核准後,您可以提供機器人 ID 和秘密金鑰給其他使用者,在組織內的團隊內安裝應用程式。
-
-
IT 管理員核准應用程式之後,就會授予上述要求的權限,您可以使用應用程式的機器人 ID 和秘密金鑰來建立證明資料物件並產生機器人權杖。
-
若要將查詢結果傳送至 Microsoft Teams 通道,請取得
team id和tenant id。提示:
team id位於 /team/ 與 /conversations 之間的團隊連結中。tenant id位於團隊連結結尾的 "tenantId=" 之後。按一下團隊名稱旁的三個點並選取取得團隊連結,即可找到此連結。舉例而言:
https://teams.microsoft.com/l/team/teamID/conversations?groupId=groupid%tenantId=tenantid -
取得
channelID。提示:
channelID位於 /team/ 與通道名稱之間的通道連結中。按一下通道名稱旁的三個點並選取取得通道連結,即可找到此連結。舉例而言:
https://teams.microsoft.com/l/channel/channelID/channel_name?groupId=groupid&tenantId=tenantid -
在 Exadata Cloud@Customer 上,在您的環境中設定 HTTP 代理主機設定值,以允許資料庫存取 Microsoft Teams。請參閱使用主控台在 Cloud@Customer 上佈建 Exadata 資料庫服務,瞭解在建立 Exadata Cloud@Customer Infrastructure 時設定 HTTP 代理主機設定值的相關資訊。
注意:只有在 Exadata 基礎架構為「需要啟用」狀態時,才能編輯包含 HTTP 代理主機的網路組態。啟用之後,就無法編輯這些設定值。
若要設定已經佈建之 Exadata 基礎架構的 HTTP 代理主機,請在 My Oracle Support 送出服務要求 (SR)。請參閱 在 My Oracle Support 中建立服務要求,瞭解詳細資訊。
-
建立證明資料物件以從自治式 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 程序以瞭解詳細資訊。
傳送訊息至 Microsoft Teams 頻道
依照「準備從 Autonomous AI 資料庫傳送 Microsoft Teams 通知」所述,建立 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 參數來指定通道。
通道:指定從準備從 Autonomous AI Database 傳送 Microsoft Teams 通知中的步驟 10 取得的通道 ID。
請參閱 SEND_MESSAGE 程序以瞭解詳細資訊。
將查詢結果傳送至 Microsoft Teams 頻道
依照「準備從 Autonomous AI 資料庫傳送 Microsoft Teams 通知」所述,建立 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 值中的租用戶、團隊、通道、標題以及資料類型。
-
租用戶:指定從準備從 Autonomous AI Database 傳送 Microsoft Teams 通知中的步驟 8 取得的租用戶 ID。
-
team :指定從準備從 Autonomous AI Database 傳送 Microsoft Teams 通知中的步驟 8 取得的團隊 ID。
-
通道:指定從準備從 Autonomous AI Database 傳送 Microsoft Teams 通知中的步驟 9 取得的通道 ID。
-
title :指定檔案標題。標題只能包含英文字母、數字、底線和連字號。出現在 Microsoft Teams 中的檔案名稱會是標題參數和時間戳記的串連,以確保其唯一性。標題大小上限為 50 個字元。
例如:
'title'_'timestamp'.'format' -
type :指定輸出格式。有效值為 CSV 或 JSON。
注意:針對 Microsoft Teams 使用 DBMS_CLOUD_NOTIFICATION.SEND_DATA 時,支援的檔案大小上限為 4MB。