簡體   English   中英

Dialog Bot Framework中的並發Bot狀態

[英]Concurrency Bot state in Dialog Bot Framework

我正在構建一個使用對話框與客戶端進行交互的Bot,現在,我在IDialogContext中使用PrivateConversationData來存儲客戶端與我的Bot聊天時的一些參數。 但是,當我閱讀用戶狀態文檔時 ,他們說:

您可以在每個存儲中為用戶或對話存儲的最大數據量為32 KB。 例如,您可以在通道ABC上為用戶A存儲32 KB數據,在通道ABC上的私人對話中為用戶A存儲32 KB數據,並在通道ABC上為會話1存儲32 KB數據。

那么,如果許多客戶端同時與我的Bot聊天並且我的代碼存儲了一些參數以查詢我的數據庫時會發生什么,如果下一個客戶端與我的機器人通信並設置相同名稱的一些參數時,我的數據也會丟失嗎? 我很困惑,與機器人聊天的每個客戶端都將擁有自己的PrivateConversationData還是與Bot連接的所有客戶端都將僅訪問一個PrivateConversationData

PrivateConversationData存儲對於關鍵用戶+對話是唯一的,因此不,您的客戶端將不能僅訪問一個PrivateConversationData

如果要在特定於對話的頻道上為用戶保存狀態數據,請使用“私人對話”數據存儲

但是,根據您的寫作,在您的情況下使用UserData存儲似乎會更好,因為存儲在數據包中的數據似乎並不特定於對話。

如果要在非特定於對話的頻道上為用戶保存狀態數據,請使用用戶數據存儲

看一下State示例以審查此概念。 另外,如果要為狀態使用自定義存儲,請查看“ 自定義狀態”示例。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM