MCPcopy Create free account
hub / github.com/daodst/chat / GetStateEvent

Function GetStateEvent

roomserver/api/wrapper.go:114–129  ·  view source on GitHub ↗

GetStateEvent returns the current state event in the room or nil.

(ctx context.Context, rsAPI QueryEventsAPI, roomID string, tuple gomatrixserverlib.StateKeyTuple)

Source from the content-addressed store, hash-verified

112
113// GetStateEvent returns the current state event in the room or nil.
114func GetStateEvent(ctx context.Context, rsAPI QueryEventsAPI, roomID string, tuple gomatrixserverlib.StateKeyTuple) *gomatrixserverlib.HeaderedEvent {
115 var res QueryCurrentStateResponse
116 err := rsAPI.QueryCurrentState(ctx, &QueryCurrentStateRequest{
117 RoomID: roomID,
118 StateTuples: []gomatrixserverlib.StateKeyTuple{tuple},
119 }, &res)
120 if err != nil {
121 util.GetLogger(ctx).WithError(err).Error("Failed to QueryCurrentState")
122 return nil
123 }
124 ev, ok := res.StateEvents[tuple]
125 if ok {
126 return ev
127 }
128 return nil
129}
130
131// IsServerBannedFromRoom returns whether the server is banned from a room by server ACLs.
132func IsServerBannedFromRoom(ctx context.Context, rsAPI FederationRoomserverAPI, roomID string, serverName gomatrixserverlib.ServerName) bool {

Callers

nothing calls this directly

Calls 2

QueryCurrentStateMethod · 0.65
ErrorMethod · 0.45

Tested by

no test coverage detected