From 5d7273d2f15024b00fa036c9d26bb1c1370cc4fc Mon Sep 17 00:00:00 2001 From: ryoii <ryoii@foxmail.com> Date: Wed, 5 Feb 2020 22:00:05 +0800 Subject: [PATCH] Get friendList, GroupList and MemberList --- .../mamoe/mirai/api/http/route/BaseRoute.kt | 1 + .../mirai/api/http/route/InfoRouteModule.kt | 30 +++++++++++++++++++ 2 files changed, 31 insertions(+) create mode 100644 mirai-api-http/src/main/kotlin/net/mamoe/mirai/api/http/route/InfoRouteModule.kt diff --git a/mirai-api-http/src/main/kotlin/net/mamoe/mirai/api/http/route/BaseRoute.kt b/mirai-api-http/src/main/kotlin/net/mamoe/mirai/api/http/route/BaseRoute.kt index 174ccd880..e74d4f570 100644 --- a/mirai-api-http/src/main/kotlin/net/mamoe/mirai/api/http/route/BaseRoute.kt +++ b/mirai-api-http/src/main/kotlin/net/mamoe/mirai/api/http/route/BaseRoute.kt @@ -27,6 +27,7 @@ fun Application.mirai() { authModule() messageModule() + infoModule() } /** diff --git a/mirai-api-http/src/main/kotlin/net/mamoe/mirai/api/http/route/InfoRouteModule.kt b/mirai-api-http/src/main/kotlin/net/mamoe/mirai/api/http/route/InfoRouteModule.kt new file mode 100644 index 000000000..847f88d79 --- /dev/null +++ b/mirai-api-http/src/main/kotlin/net/mamoe/mirai/api/http/route/InfoRouteModule.kt @@ -0,0 +1,30 @@ +package net.mamoe.mirai.api.http.route + +import io.ktor.application.Application +import io.ktor.application.call +import io.ktor.routing.routing +import net.mamoe.mirai.api.http.dto.GroupDTO +import net.mamoe.mirai.api.http.dto.MemberDTO +import net.mamoe.mirai.api.http.dto.QQDTO +import net.mamoe.mirai.api.http.dto.toJson +import net.mamoe.mirai.contact.toMutableList + +fun Application.infoModule() { + routing { + + miraiGet("/friendList") { + val ls = it.bot.qqs.toMutableList().map { qq -> QQDTO(qq) } + call.respondJson(ls.toJson()) + } + + miraiGet("/groupList") { + val ls = it.bot.groups.toMutableList().map { group -> GroupDTO(group) } + call.respondJson(ls.toJson()) + } + + miraiGet("/memberList") { + val ls = it.bot.getGroup(paramOrNull("target")).members.toMutableList().map { member -> MemberDTO(member) } + call.respondJson(ls.toJson()) + } + } +} \ No newline at end of file