BotSharp/src/Infrastructure/BotSharp.Abstraction/Repositories/IBotSharpRepository.cs

41 lines
1.6 KiB
C#
Raw Normal View History

2023-09-07 22:04:34 +00:00
using BotSharp.Abstraction.Users.Models;
2023-08-26 04:41:01 +00:00
namespace BotSharp.Abstraction.Repositories;
2023-08-10 04:53:22 +00:00
public interface IBotSharpRepository
{
int Transaction<TTableInterface>(Action action);
void Add<TTableInterface>(object entity);
2023-09-02 05:10:46 +00:00
2023-09-15 20:19:44 +00:00
#region User
2023-10-17 20:29:40 +00:00
User? GetUserByEmail(string email);
User? GetUserByExternalId(string externalId);
2023-09-07 22:04:34 +00:00
void CreateUser(User user);
2023-09-15 20:19:44 +00:00
#endregion
2023-09-03 04:54:22 +00:00
2023-09-15 20:19:44 +00:00
#region Agent
void UpdateAgent(Agent agent, AgentField field);
2023-10-16 21:37:01 +00:00
Agent? GetAgent(string agentId);
List<Agent> GetAgents(string? name = null, bool? disabled = null, bool? allowRouting = null,
bool? isPublic = null, List<string>? agentIds = null);
List<Agent> GetAgentsByUser(string userId);
2023-10-17 20:29:40 +00:00
void BulkInsertAgents(List<Agent> agents);
void BulkInsertUserAgents(List<UserAgent> userAgents);
bool DeleteAgents();
2023-09-09 20:13:19 +00:00
List<string> GetAgentResponses(string agentId, string prefix, string intent);
2023-09-15 20:19:44 +00:00
string GetAgentTemplate(string agentId, string templateName);
#endregion
2023-09-03 22:43:50 +00:00
2023-09-15 20:19:44 +00:00
#region Conversation
2023-09-07 22:04:34 +00:00
void CreateNewConversation(Conversation conversation);
2023-09-03 22:43:50 +00:00
string GetConversationDialog(string conversationId);
void UpdateConversationDialog(string conversationId, string dialogs);
2023-09-09 21:44:25 +00:00
List<StateKeyValue> GetConversationStates(string conversationId);
void UpdateConversationStates(string conversationId, List<StateKeyValue> states);
2023-09-07 22:04:34 +00:00
Conversation GetConversation(string conversationId);
List<Conversation> GetConversations(string userId);
2023-10-23 20:33:24 +00:00
void AddExectionLogs(string conversationId, List<string> logs);
List<string> GetExectionLogs(string conversationId);
2023-09-15 20:19:44 +00:00
#endregion
2023-08-10 04:53:22 +00:00
}