55 lines
1.9 KiB
C#
55 lines
1.9 KiB
C#
using IM_API.Dtos.Conversation;
|
|
using IM_API.Models;
|
|
|
|
namespace IM_API.Interface.Services
|
|
{
|
|
public interface IConversationService
|
|
{
|
|
/// <summary>
|
|
/// 清除消息会话
|
|
/// </summary>
|
|
/// <param name="clearConversationsDto"></param>
|
|
/// <returns></returns>
|
|
Task<bool> ClearConversationsAsync(int userId);
|
|
/// <summary>
|
|
/// 删除单个聊天会话
|
|
/// </summary>
|
|
/// <param name="conversationId"></param>
|
|
/// <returns></returns>
|
|
Task<bool> DeleteConversationAsync(int conversationId);
|
|
/// <summary>
|
|
/// 获取用户当前消息会话
|
|
/// </summary>
|
|
/// <param name="userId">用户id</param>
|
|
/// <returns></returns>
|
|
Task<List<ConversationDto>> GetConversationsAsync(int userId);
|
|
/// <summary>
|
|
/// 获取指定用户的所有推送标识符
|
|
/// </summary>
|
|
/// <param name="userId"></param>
|
|
/// <returns></returns>
|
|
Task<List<string>> GetUserAllStreamKeyAsync(int userId);
|
|
/// <summary>
|
|
/// 获取单个conversation信息
|
|
/// </summary>
|
|
/// <param name="conversationId"></param>
|
|
/// <returns></returns>
|
|
Task<ConversationDto> GetConversationByIdAsync(int userId, int conversationId);
|
|
/// <summary>
|
|
/// 清空未读消息
|
|
/// </summary>
|
|
/// <param name="userId"></param>
|
|
/// <param name="conversationId"></param>
|
|
/// <returns></returns>
|
|
Task<bool> ClearUnreadCountAsync(int userId, int conversationId);
|
|
/// <summary>
|
|
/// 为用户创建会话
|
|
/// </summary>
|
|
/// <param name="userAId"></param>
|
|
/// <param name="userBId"></param>
|
|
/// <param name="chatType"></param>
|
|
/// <returns></returns>
|
|
Task MakeConversationAsync(int userAId, int userBId, ChatType chatType);
|
|
}
|
|
}
|