using GB5Shared.DTO.Framework.Login; using System.Threading; using System.Threading.Tasks; namespace FrameworkDAL.CustomCode.EIPConversation.EIPConversationLog { public interface IEIPConversationLogDAL { /// Reuses the existing TEIPCONVERSATION thread for this interaction session /// if one exists, otherwise creates one. Returns ConversationId. Task GetOrCreateConversationAsync( int interactionSessionId, int tenantId, byte channelType, string sessionToken, LoginDTO loginDTO, CancellationToken ct = default); /// direction: 1=Inbound (user→EIP), 2=Outbound (EIP→user) Task InsertDetailAsync( int conversationId, byte direction, string message, LoginDTO loginDTO, CancellationToken ct = default); } }