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}%");
}
}