summary refs log tree commit diff
path: root/MxApiExtensions/Controllers/Client/Room/RoomsSendMessageController.cs
blob: 3d1d4e2ff06bf010e760646c6845ef55fbc5213d (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
using LibMatrix.Services;
using Microsoft.AspNetCore.Mvc;
using MxApiExtensions.Services;

namespace MxApiExtensions.Controllers.Client.Room;

[ApiController]
[Route("/")]
public class RoomController(ILogger<LoginController> logger, HomeserverResolverService hsResolver, AuthenticationService auth, MxApiExtensionsConfiguration conf,
        AuthenticatedHomeserverProviderService hsProvider)
    : ControllerBase {
    [HttpGet("/_matrix/client/{_}/rooms/{roomId}/members_by_homeserver")]
    public async Task<Dictionary<string, List<string>>> GetRoomMembersByHomeserver(string _, [FromRoute] string roomId, [FromQuery] bool joinedOnly = true) {
        var hs = await hsProvider.GetHomeserver();
        var room = hs.GetRoom(roomId);
        return await room.GetMembersByHomeserverAsync();
    }
}