using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using Hotline.CallCenter.BlackLists; using Hotline.CallCenter.Calls; using Hotline.CallCenter.Tels; using Hotline.Share.Dtos; using Hotline.Share.Dtos.CallCenter; using Hotline.Share.Dtos.TrCallCenter; using Hotline.Share.Enums.CallCenter; using XingTang.Sdk; namespace Hotline.Application.CallCenter { public interface ICallApplication { /// /// 查询分机 /// Task> QueryTelsAsync(CancellationToken cancellationToken); /// /// 查询分机组 /// Task> QueryTelGroupsAsync(CancellationToken cancellationToken); #region 黑名单 /// /// 新增黑名单 /// Task AddBlackListAsync(AddBlacklistDto dto, CancellationToken cancellationToken); /// /// 删除黑名单 /// Task RemoveBlackListAsync(string id, CancellationToken cancellationToken); /// /// 查询黑名单 /// Task> QueryBlackListsAsync(CancellationToken cancellationToken); #endregion /// /// 签入 /// Task SignInAsync(SignInDto dto, CancellationToken cancellationToken); /// /// 签出 /// Task SingOutAsync(CancellationToken cancellationToken); /// /// 签出 /// Task SingOutAsync(string telNo, CancellationToken cancellationToken); /// /// 查询当前用户的分机状态 /// /// /// Task GetTelStateAsync(CancellationToken cancellationToken); /// /// 定量查询通话记录 /// Task> QueryCallsFixedAsync(QueryCallsFixedDto dto, CancellationToken cancellationToken); /// /// 查询分机操作记录(定量) /// Task> QueryTelOperationsAsync(QueryTelOperationsFixedDto dto, CancellationToken cancellationToken); /// /// 依据通话记录编号获取映射后的callId /// Task GetOrSetCallIdAsync(string callNo, CancellationToken cancellationToken); /// /// 批量获取callId /// Task> GetOrSetCallIdRangeAsync(List callNos, CancellationToken cancellationToken); /// /// 查询通话记录 /// Task GetCallAsync(string callId, CancellationToken cancellationToken); /// /// 查询通话记录 /// Task> QueryCallsAsync( string? phone = null, ECallDirection? direction = null, DateTime? callStartTimeStart = null, DateTime? callStartTimeEnd = null, CancellationToken cancellationToken = default); #region tianrun Task GetTianrunCallAsync(string callId, CancellationToken cancellationToken); /// /// 关联通话记录与order(添润) /// Task RelateTianrunCallWithOrderAsync(string callId, string orderId, CancellationToken cancellationToken); /// /// 查询通话记录 /// Task> QueryTianrunCallsAsync( string? phone = null, ECallDirection? direction = null, DateTime? callStartTimeStart = null, DateTime? callStartTimeEnd = null, CancellationToken cancellationToken = default); #endregion } }