BotSharp/src/Infrastructure/BotSharp.Abstraction/Conversations/IConversationStateService.cs

20 lines
622 B
C#
Raw Normal View History

2023-11-01 01:48:12 +00:00
using System.Text.Json;
2023-08-09 21:49:55 +00:00
namespace BotSharp.Abstraction.Conversations;
/// <summary>
/// Conversation state service to track the context in the conversation lifecycle
/// </summary>
public interface IConversationStateService
{
string GetConversationId();
2023-09-06 03:19:36 +00:00
ConversationState Load(string conversationId);
2023-09-14 01:41:51 +00:00
string GetState(string name, string defaultValue = "");
2023-09-25 22:46:00 +00:00
bool ContainsState(string name);
2023-09-06 03:19:36 +00:00
ConversationState GetStates();
IConversationStateService SetState<T>(string name, T value, bool isNeedVersion = true);
2023-11-01 01:48:12 +00:00
void SaveStateByArgs(JsonDocument args);
2023-08-15 15:41:34 +00:00
void CleanState();
2023-08-09 21:49:55 +00:00
void Save();
}