設定擷取使用者輸入的逾時 - Amazon Lex

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

設定擷取使用者輸入的逾時

Amazon Lex V2 串流 API 可讓機器人自動偵測使用者輸入中的語音。當您建立意圖或插槽時,您可以設定語音的各個層面,例如語音的持續時間上限、等待使用者輸入時的逾時,或 DTMF 輸入的結束字元。您可以針對您的使用案例自訂機器人的行為。例如,您可以將信用卡號碼的位數限制為 16。

您也可以在與機器人開始交談時透過工作階段屬性設定逾時,並在必要時在 Lambda 函數中覆寫逾時。

屬性的組態索引鍵語法如預期運作:

x-amz-lex:<InputType>:<BehaviorName>:<IntentName>:<SlotName>

InputType 可以是 audiodtmftext

您可以透過指定意圖或位置名稱來設定*機器人中所有意圖或位置的預設設定。任何意圖或槽特定的設定都優先於預設設定。

Amazon Lex V2 提供預先定義的工作階段屬性,用於管理StartConversation操作以文字、語音或 DTMF 輸入到機器人的方式。預先定義的屬性全都位於 x-amz-lex 命名空間中。

您可以透過指定意圖或位置名稱來設定機器人中所有意圖、位置或子插槽的預設設定*。任何意圖或槽特定的設定都優先於預設設定。在下面的所有超時中使用這些模式。

對於複合插槽的子插槽,您可以分開.。例如:

<slotName>.<subSlotName>
x-amz-lex:allow-interrupt:<intentName>:<slotName>.<subSlotName>
表達式 案例
意圖:插槽。 SubSlot 僅適用於名為 'SlotSubSlot' 的複合插槽內名為 '' 的子插槽
意圖:插槽。 * 適用於名為 'Slot' 的複合插槽內的任何子插槽
意圖:*。 SubSlot 僅適用於任何複合插槽內名為SubSlot '' 的子插槽
意圖:* 。 * 適用於任何複合槽內的任何子槽

中斷行為

您可以設定機器人的中斷行為。該屬性是 Amazon Lex V2 定義。

允許中斷

x-amz-lex:allow-interrupt:<intentName>:<slotName>

定義使用者是否可以中斷 Amazon Lex V2 機器人播放的提示。您可以選擇性地將其關閉。

預設值:

語音輸入逾時

您可以使用工作階段屬性來設定與機器人的語音互動的逾時值。這些屬性是 Amazon Lex V2 定義。這些屬性可讓您指定 Amazon Lex V2 在收集輸入語音之前等待客戶完成講話的時間長度。

所有這些屬性都在x-amz-lex:audio命名空間中。

最大語音長度

x-amz-lex:audio:max-length-ms:<intentName>:<slotName>

定義 Amazon Lex V2 在截斷語音輸入並將語音傳回至應用程式之前等待的時間長度。如果您預期回應較長,或是想讓客戶有更多時間提供資訊,則可以增加輸入的長度。

預設值:13,000 毫秒 (13 秒)。最大值為 15,000 毫秒(15 秒)

如果您將max-length-ms屬性設定為超過 15,000 毫秒,該值將預設為 15,000 毫秒。

語音逾時

x-amz-lex:audio:start-timeout-ms:<intentName>:<slotName>

在假設客戶不會說話之前,機器人會等待多長時間。在客戶可能需要更多時間來尋找或回收說話之前的資訊,您可以增加時間。例如,您可能希望讓客戶有時間取出信用卡,以便他們可以輸入號碼。

預設值:4,000 毫秒 (4 秒)

靜音逾時

x-amz-lex:audio:end-timeout-ms:<intentName>:<slotName>

客戶停止說話以假設語音完成後,機器人會等待多長時間。您可以增加預期的靜音時間,同時提供輸入的情況下的時間。

預設值:600 毫秒 (0.6 秒)

允許音訊輸入

x-amz-lex:allow-audio-input:<intentName>:<slotName>

您可以啟用此屬性,以便機器人僅通過音頻模式接受用戶輸入。如果此標誌設置為 false,機器人將不接受音頻輸入。根據預設,值是設為 true。

預設值:

文字輸入逾時

使用下列工作階段屬性來指定您的機器人在文字交談模式下的行為方式。

此屬性位於x-amz-lex:text命名空間中。

啟動逾時閾值

x-amz-lex:text:start-timeout-ms:<intentName>:<slotName>

在重新提示客戶輸入文字之前,機器人會等待多久。如果您想讓客戶有更多時間尋找或召回資訊,然後再提供文字輸入,您可以增加時間。例如,您可能想要在客戶的訂單詳細資訊。或者,您也可以降低臨界值,以提早提示客戶。

預設值:30,000 毫秒 (30 秒)

DTMF 輸入的配置

使用下列工作階段屬性來指定 Amazon Lex V2 機器人在使用音訊交談時如何回應 DTMF 輸入。

所有這些屬性都在x-amz-lex:dtmf命名空間中。

刪除字元

x-amz-lex:dtmf:deletion-character:<intentName>:<slotName>

會清除累積的 DTMF 數字並立即結束輸入的 DTMF 字元。

預設值:*

結束字元

x-amz-lex:dtmf:end-character:<intentName>:<slotName>

立即結束輸入的 DTMF 字元。如果使用者未按下此字元,則輸入會在結束逾時後結束。

預設值:#

結束逾時

x-amz-lex:dtmf:end-timeout-ms:<intentName>:<slotName>

在假設輸入已結束之前,機器人應該從最後一個 DTMF 字元輸入中等待多長時間。

預設值:5000 毫秒 (5 秒)

每個話語的 DTMF 位數上限

x-amz-lex:dtmf:max-length:<intentName>:<slotName>

話語中允許的 DTMF 位數上限。例如,您可以將此值設定為 16,以限制可輸入信用卡號碼的字元數。這個值無法增加。

預設值:1024 個字元

允許 DTMF 輸入

您可以使用工作階段屬性來設定機器人可以接受的輸入類型。這些屬性是 Amazon Lex V2 定義。

x-amz-lex:allow-dtmf-input:<intentName>:<slotName>

您可以啟用此屬性,讓機器人透過 DTMF 模式接受使用者輸入。如果此旗標設定為 false,機器人將不會接受 DTMF 輸入。根據預設,值是設為 true。

預設值: