using System; using System.Collections.Generic; using System.Text; using System.Threading.Tasks; using GxPress.Request.App.IM; using GxPress.Request.GroupChat; using GxPress.Result.App.IM; namespace GxPress.Service.Interface.IM { /// <summary> ///环信IM接口 /// </summary> public interface IIMService : IService { /// <summary> /// 采集聊天数据 /// </summary> /// <returns></returns> Task<bool> GatherChatDataAsync(); /// <summary> /// 强制用户下线 /// </summary> /// <param name="phone"></param> /// <returns></returns> Task<bool> DisconnectAsync(string phone); /// <summary> /// 创建群聊 /// </summary> /// <param name="request"></param> /// <returns></returns> Task<CreateGroupChatResult> CreateGroupChatAsync(GroupChatInRequest request); /// <summary> /// 群插入用户 /// </summary> /// <param name="request"></param> /// <returns></returns> Task<bool> InsertGroupChatUsersAsync(InsertGroupChatUsersRequest request); /// <summary> /// 群删除用户 /// </summary> /// <param name="request"></param> /// <returns></returns> Task<bool> RemoveGroupChatUsersAsync(InsertGroupChatUsersRequest request); Task<bool> GetTokenImAsync(); Task<bool> DeleteUserAsync(string imId); /// <summary> /// 解除禁言 /// </summary> /// <param name="groupChatImId"></param> /// <returns></returns> Task<bool> RemoveMute(string groupChatImId); /// <summary> /// 添加禁言 /// </summary> /// <param name="groupChatImId"></param> /// <returns></returns> Task<bool> InMute(string groupChatImId); /// <summary> /// 添加用户黑名单 /// </summary> /// <param name="userId"></param> /// <param name="blacklistUserId"></param> /// <returns></returns> Task<bool> AddBlacklistUserAsync(int userId, int blacklistUserId); /// <summary> /// 移除黑名单 /// </summary> /// <param name="blacklistId"></param> /// <returns></returns> Task<bool> ReMoveBlacklistUserAsync(int blacklistId,int userId); /// <summary> /// 根据ImId删除群组 /// </summary> /// <param name="groupChatImId"></param> /// <returns></returns> Task<bool> DeleteGroupChatAsync(string groupChatImId,int userId); } }