forked from Mirrors/gomuks
hicli/json: add resolve alias command
This commit is contained in:
parent
34346cffec
commit
8cc475e66b
3 changed files with 19 additions and 0 deletions
|
@ -79,6 +79,10 @@ func (h *HiClient) handleJSONCommand(ctx context.Context, req *JSONCommand) (any
|
|||
return unmarshalAndCall(req.Data, func(params *ensureGroupSessionSharedParams) (bool, error) {
|
||||
return true, h.EnsureGroupSessionShared(ctx, params.RoomID)
|
||||
})
|
||||
case "resolve_alias":
|
||||
return unmarshalAndCall(req.Data, func(params *resolveAliasParams) (*mautrix.RespAliasResolve, error) {
|
||||
return h.Client.ResolveAlias(ctx, params.Alias)
|
||||
})
|
||||
case "login":
|
||||
return unmarshalAndCall(req.Data, func(params *loginParams) (bool, error) {
|
||||
return true, h.LoginPassword(ctx, params.HomeserverURL, params.Username, params.Password)
|
||||
|
@ -158,6 +162,10 @@ type ensureGroupSessionSharedParams struct {
|
|||
RoomID id.RoomID `json:"room_id"`
|
||||
}
|
||||
|
||||
type resolveAliasParams struct {
|
||||
Alias id.RoomAlias `json:"alias"`
|
||||
}
|
||||
|
||||
type loginParams struct {
|
||||
HomeserverURL string `json:"homeserver_url"`
|
||||
Username string `json:"username"`
|
||||
|
|
|
@ -27,6 +27,8 @@ import type {
|
|||
RPCEvent,
|
||||
RawDBEvent,
|
||||
ReceiptType,
|
||||
ResolveAliasResponse,
|
||||
RoomAlias,
|
||||
RoomID,
|
||||
TimelineRowID,
|
||||
UserID,
|
||||
|
@ -161,6 +163,10 @@ export default abstract class RPCClient {
|
|||
return this.request("paginate_server", { room_id, limit })
|
||||
}
|
||||
|
||||
resolveAlias(alias: RoomAlias): Promise<ResolveAliasResponse> {
|
||||
return this.request("resolve_alias", { alias })
|
||||
}
|
||||
|
||||
discoverHomeserver(user_id: UserID): Promise<ClientWellKnown> {
|
||||
return this.request("discover_homeserver", { user_id })
|
||||
}
|
||||
|
|
|
@ -139,6 +139,11 @@ export interface PaginationResponse {
|
|||
has_more: boolean
|
||||
}
|
||||
|
||||
export interface ResolveAliasResponse {
|
||||
room_id: RoomID
|
||||
servers: string[]
|
||||
}
|
||||
|
||||
export interface EventUnsigned {
|
||||
prev_content?: unknown
|
||||
prev_sender?: UserID
|
||||
|
|
Loading…
Add table
Reference in a new issue