Classe responsável pela comunicação de sistemas externos com o serviço MoveChat.
Construtores
Declaração |
---|
MoveChatClient(IMoveChatService moveChatService) |
Métodos
Nome | Descrição |
---|---|
GetConsumerCompanyAsync | Obtém, as informações da empresa logada de forma assíncrona. Uma empresa é representada pela entidade ConsumerCompany. |
CreateConsumerCompanyUserAsync | Cria e retorna um novo usuário de forma assíncrona. |
BatchCreateConsumerCompanyUserAsync | Cria usuários em lote de forma assíncrona. |
GetConsumerCompanyUserByIdAsync | Busca usuário através do seu Id no MoveChat de forma assíncrona. |
GetConsumerCompanyUserByProvidedIdAndRoleAsync | Busca usuário pelo Id interno do usuário e cargo de forma assíncrona. |
GetConsumerCompanyUsersAsync | Lista os usuários da empresa atual de forma paginada e assíncrona. |
CreateRoomAsync | Cria uma nova sala de forma assíncrona. |
UpdateRoomAsync | Atualiza informações de uma sala de forma assíncrona. |
DeleteRoomAsync | Exclui uma sala de forma assíncrona. |
GetRoomByIdAsync | Busca uma sala pelo Id de forma assíncrona. |
GetRoomsAsync | Lista salas da ConsumerCompany de forma paginada e assíncrona. |
GetRoomMessagesAsync | Lista, de forma paginada e assíncrona, RoomMessage de uma sala. |
GetAllRoomMessagesAsync | Lista todas RoomMessage de um tipo em uma Room de forma assíncrona. O tempo de execução do método cresce em função do número mensagens em uma sala. Utilize o evento GetAllRoomMessagesProgressChangedEvent para verificar a progressão do método. |
Eventos
GetAllRoomMessagesProgressChangedEvent
Evento enviado sempre que há atualização no progresso do método GetAllRoomMessagesAsync.
Sintaxe:
public delegate void OnGetAllRoomMessagesProgressChangedEventHandler(double changedProgress);
public event OnGetAllRoomMessagesProgressChangedEventHandler GetAllRoomMessagesProgressChangedEvent;
Exemplo de utilização:
public class ExampleClass
{
private IMoveChatClient _moveChatClient;
public ExampleClass(IMoveChatClient moveChatClient)
{
_moveChatClient = moveChatClient;
}
public async Task<Room> GetAllRoomMessagesAsync(Guid roomId, ERoomMessageType messageType)
{
// verificar o progresso da execução do método
moveChatClient.GetAllRoomMessagesProgressChangedEvent += WriteProgress;
return await _moveChatClient.GetAllRoomMessagesAsync(roomId, messageType);
}
public void WriteProgress(double progress)
{
Console.WriteLine($"Progresso: {progress}%");
}
}