針對 Bot 設定問題進行疑難排解

適用于: SDK v4

Bot 可以產生不同類型的錯誤,例如無法回應、擲回錯誤,或可以在某個通道中運作,但不能在另一個通道中運作。 針對 Bot 進行疑難排解的第一個步驟,是在網路聊天中進行測試。 這可讓您判斷問題是否為 Bot (Bot 不適用於任何通道) 或特定通道 (Bot 適用於有些通道,但不適用於其他通道) 所特有。

在網路聊天中測試

  1. Azure 入口網站中開啟 Bot 資源。
  2. 開啟 [在網路聊天中測試] 窗格。
  3. 將訊息傳送給您的 Bot。

在網路聊天中測試

如果 Bot 並未以預期的輸出回應,請移至 Bot 不適用於網路聊天。 否則,移至 Bot 適用於網路聊天,但不適用於其他通道

Bot 不適用於網路聊天

Bot 無法運作的可能原因很多。 最可能是 Bot 應用程式已關閉且無法接收訊息,或 Bot 收到訊息但無法回應。 以下是一些可能的原因:

  • Bot 已關閉,無法觸達。
  • Bot 損毀。
  • Bot 的端點不正確。
  • Bot 已成功接收您的訊息,但無法回應。

若要查看 Bot 是否正在執行:

  1. 開啟 [概觀] 窗格。
  2. 複製 [訊息端點] 並將其貼到您的瀏覽器。

如果此端點傳回 HTTP 錯誤 404 或 405,則表示 Bot 可觸達且 Bot 能夠回應訊息。 若要調查超時問題,請參閱逾時因為 HTTP 5xx 錯誤發生失敗的文章。

如果此端點傳回錯誤「此站台無法連線」或「無法觸達此頁面」,這表示 Bot 已關閉而且需要重新部署。

Bot 適用於網路聊天,但不適用於其他通道

如果 Bot 如預期般在網路聊天中運作,但在某些其他通道中失敗,可能原因如下:

通道設定問題

這可能是因為通道設定參數 (例如 Bot 的使用者名稱和密碼) 未正確設定或已在外部進行變更。 例如,Bot 已針對特定頁面設定 Facebook 通道,而此頁面後來遭到刪除。 最簡單的解決方式是移除通道並重新進行通道設定。

以下連結提供設定 Bot Framework 所支援通道的指示:

通道特有的行為

有些功能的實作可能因通道而有所不同。 例如,並非所有通道都支援調適型卡片。 大部分通道都支援「動作」(按鈕),但是會以通道特有方式轉譯。 如果您看到某些訊息類型在不同通道中的運作方式有所差異,請參閱通道參考一文。

以下是一些額外的連結,可協助使用個別的通道:

通道中斷

偶爾,某些通道可能會中斷服務。 通常,這類中斷不會持續很久。 不過,如果您懷疑發生中斷,請洽詢通道網站或社交媒體。

判斷通道是否中斷的另一種方法是建立測試 Bot (例如簡單的 Echo Bot) 並新增通道。 如果測試 Bot 適用於某些通道,但不適用於其他通道,則表示問題不在您的生產 Bot。

其他資源

請參閱偵錯 Bot 操作說明,以及該區段中的其他偵錯文章。