ConversationalAgentSession 類別

定義

數位 助理 與 Windows 交談代理程式平臺之間的通道。

public ref class ConversationalAgentSession sealed : IClosable
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 524288)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class ConversationalAgentSession final : IClosable
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 524288)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class ConversationalAgentSession : System.IDisposable
Public NotInheritable Class ConversationalAgentSession
Implements IDisposable
繼承
Object Platform::Object IInspectable ConversationalAgentSession
屬性
實作

Windows 需求

裝置系列
Windows 10, version 1903 (已於 10.0.18362.0 引進)
API contract
Windows.Foundation.UniversalApiContract (已於 v8.0 引進)

備註

當辨識關鍵詞語句,例如 「Hey Cortana」 或 「」 時,通常會透過語音啟用來建立 ConversationalAgentSession。

ConversationalAgentSession 可以透過各種其他方式建立,包括當關鍵詞語句透過頭戴式裝置或麥克風) 傳輸時,藍牙 (、系統鍵盤快捷方式 (例如適用於 Cortana 的 Win+C) ,以及從您的應用程式內起始語音互動 (,或許是透過某種按對談 UI) 。

屬性

AgentState

取得數位 助理 的狀態。

IsIndicatorLightAvailable

取得指標光線是否可用。

IsInterrupted

取得 ConversationalAgentSession 是否中斷。

IsInterruptible

取得 ConversationalAgentSession 是否可以中斷。

IsScreenAvailable

取得是否可開啟畫面。

IsUserAuthenticated

取得使用者是否已 (驗證,例如,裝置) 鎖定。

IsVoiceActivationAvailable

取得數位 助理 是否可以透過語音輸入來啟用。

Signal

啟動數位 助理 的號,例如關鍵詞語句、藍牙傳輸、系統鍵盤快捷鍵、應用程式內語音識別,或其他音效 (門燈、警報器) 。

方法

Close()

終止 ConversationalAgentSession

CreateAudioDeviceInputNode(AudioGraph)

同步建立音訊圖形輸入節點。

重要

若要避免可能的並行問題,建議您改用 CreateAudioDeviceInputNodeAsync

CreateAudioDeviceInputNodeAsync(AudioGraph)

以異步方式建立音訊圖形輸入節點。

Dispose()

執行與釋放 (Free)、釋放 (Release) 或重設 Unmanaged 資源相關聯之應用程式定義的工作。

GetAudioCaptureDeviceId()

同步擷取目前語音輸入裝置的裝置標識碼。

重要

若要避免可能的並行問題,建議您改用 GetAudioCaptureDeviceIdAsync

GetAudioCaptureDeviceIdAsync()

以異步方式擷取目前語音輸入裝置的裝置標識碼。

GetAudioClient()

同步擷取 IAudioClient 物件,此物件會建立和初始化應用程式與音訊轉譯裝置之間的音訊數據流。

重要

若要避免可能的並行問題,建議您改用 GetAudioClientAsync

GetAudioClientAsync()

以異步方式擷 取 IAudioClient 物件,以建立和初始化應用程式與音訊轉譯裝置之間的音訊數據流。

GetAudioRenderDeviceId()

同步擷取目前語音輸出裝置的裝置標識碼。

重要

若要避免可能的並行問題,建議您改用 GetAudioRenderDeviceIdAsync

GetAudioRenderDeviceIdAsync()

以異步方式擷取目前語音輸出裝置的裝置標識碼。

GetCurrentSessionAsync()

以異步方式擷取目前 ConversationalAgentSession 的參考。

GetCurrentSessionSync()

同步擷取目前 ConversationalAgentSession 的參考。

重要

若要避免可能的並行問題,建議您改用 GetCurrentSessionAsync

GetMissingPrerequisites()

取得需要語音啟用才能正常運作所需的必要條件。

GetMissingPrerequisitesAsync()

取得語音啟用無法正常運作的遺漏必要條件。

GetSignalModelId()

擷取啟動交談代理程式之 Signal 的唯一模型標識碼。

重要

若要避免可能的並行問題,建議您改用 GetSignalModelIdAsync

GetSignalModelIdAsync()

以異步方式擷取啟動交談代理程式之 Signal 的唯一模型標識碼。

GetSupportedSignalModelIds()

擷取交談代理程式所支援的唯一 Signal 模型標識碼集合。

重要

若要避免可能的並行問題,建議您改用 GetSupportedSignalModelIdsAsync

GetSupportedSignalModelIdsAsync()

以異步方式擷取交談代理程式所支援的唯一 Signal 模型標識符集合。

RequestActivation(ConversationalAgentActivationKind)

要求數位 助理 啟動至前景。

RequestActivationAsync(ConversationalAgentActivationKind)

以異步方式要求數位 助理 啟動至前景。

RequestAgentStateChange(ConversationalAgentState)

同步要求目前 ConversationalAgentSession 的狀態變更。

重要

若要避免可能的並行問題,建議您改用 RequestAgentStateChangeAsync

RequestAgentStateChangeAsync(ConversationalAgentState)

以異步方式要求目前 ConversationalAgentSession 的狀態變更。

RequestForegroundActivation()

同步要求數位 助理 啟動至前景。

重要

若要避免可能的並行問題,建議您改用 RequestForegroundActivationAsync

RequestForegroundActivationAsync()

以異步方式要求數位 助理 啟動至前景。

RequestInterruptible(Boolean)

如果偵測到另一個數位 助理 的關鍵詞,則同步要求此 ConversationalAgentSession 可以中斷。

重要

若要避免可能的並行問題,建議您改用 RequestInterruptibleAsync

RequestInterruptibleAsync(Boolean)

如果偵測到另一個數位 助理 的關鍵詞,異步要求此 ConversationalAgentSession 可以中斷。

SetSignalModelId(UInt32)

將唯一標識碼指派給代表交談代理程式的啟用音訊號的模型。

重要

若要避免可能的並行問題,建議您改用 SetSignalModelIdAsync

SetSignalModelIdAsync(UInt32)

以異步方式將唯一標識符指派給模型,代表交談代理程序的啟用音訊號。

SetSupportLockScreenActivation(Boolean)

啟用或停用對交談代理程式鎖定畫面啟用的支援。

SetSupportLockScreenActivationAsync(Boolean)

以異步方式啟用或停用對交談代理程式鎖定畫面啟用的支援。

事件

SessionInterrupted

發生於偵測到另一個數位 助理 啟用訊號時。

SignalDetected

發生於偵測到啟用數位 助理 的號時。

SystemStateChanged

發生於系統或使用者變更限制數位 助理 執行一或多個動作的設定時。

適用於