Documentation ¶
Index ¶
- func Context(req *http.Request, device *userapi.Device, rsAPI roomserver.SyncRoomserverAPI, ...) util.JSONResponse
- func GetEvent(req *http.Request, device *userapi.Device, rawRoomID string, eventID string, ...) util.JSONResponse
- func GetFilter(req *http.Request, device *api.Device, syncDB storage.Database, userID string, ...) util.JSONResponse
- func GetMemberships(req *http.Request, device *userapi.Device, roomID string, ...) util.JSONResponse
- func OnIncomingMessagesRequest(req *http.Request, db storage.Database, roomID string, device *userapi.Device, ...) util.JSONResponse
- func PutFilter(req *http.Request, device *api.Device, syncDB storage.Database, userID string) util.JSONResponse
- func Relations(req *http.Request, device *userapi.Device, syncDB storage.Database, ...) util.JSONResponse
- func Search(req *http.Request, device *api.Device, syncDB storage.Database, ...) util.JSONResponse
- func Setup(csMux *mux.Router, srp *sync.RequestPool, syncDB storage.Database, ...)
- type ContextRespsonse
- type EventContext
- type GroupBy
- type Groupings
- type Groups
- type ProfileInfoResponse
- type RelationsResponse
- type Result
- type RoomEvents
- type RoomEventsResponse
- type RoomResult
- type SearchCategories
- type SearchCategoriesResponse
- type SearchContextResponse
- type SearchRequest
- type SearchResponse
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Context ¶ added in v0.6.4
func Context( req *http.Request, device *userapi.Device, rsAPI roomserver.SyncRoomserverAPI, syncDB storage.Database, roomID, eventID string, lazyLoadCache caching.LazyLoadCache, ) util.JSONResponse
func GetEvent ¶ added in v0.10.3
func GetEvent( req *http.Request, device *userapi.Device, rawRoomID string, eventID string, cfg *config.SyncAPI, syncDB storage.Database, rsAPI api.SyncRoomserverAPI, ) util.JSONResponse
GetEvent implements
GET /_matrix/client/r0/rooms/{roomId}/event/{eventId}
https://spec.matrix.org/v1.4/client-server-api/#get_matrixclientv3roomsroomideventeventid
func GetFilter ¶
func GetFilter( req *http.Request, device *api.Device, syncDB storage.Database, userID string, filterID string, ) util.JSONResponse
GetFilter implements GET /_matrix/client/r0/user/{userId}/filter/{filterId}
func GetMemberships ¶ added in v0.10.5
func GetMemberships( req *http.Request, device *userapi.Device, roomID string, syncDB storage.Database, rsAPI api.SyncRoomserverAPI, joinedOnly bool, membership, notMembership *string, at string, ) util.JSONResponse
GetMemberships implements
GET /rooms/{roomId}/members GET /rooms/{roomId}/joined_members
func OnIncomingMessagesRequest ¶
func OnIncomingMessagesRequest( req *http.Request, db storage.Database, roomID string, device *userapi.Device, rsAPI api.SyncRoomserverAPI, cfg *config.SyncAPI, srp *sync.RequestPool, lazyLoadCache caching.LazyLoadCache, ) util.JSONResponse
OnIncomingMessagesRequest implements the /messages endpoint from the client-server API. See: https://matrix.org/docs/spec/client_server/latest.html#get-matrix-client-r0-rooms-roomid-messages nolint:gocyclo
func PutFilter ¶
func PutFilter( req *http.Request, device *api.Device, syncDB storage.Database, userID string, ) util.JSONResponse
PutFilter implements
POST /_matrix/client/r0/user/{userId}/filter
func Relations ¶ added in v0.10.3
func Relations( req *http.Request, device *userapi.Device, syncDB storage.Database, rsAPI api.SyncRoomserverAPI, rawRoomID, eventID, relType, eventType string, ) util.JSONResponse
nolint:gocyclo
func Search ¶ added in v0.10.0
func Search(req *http.Request, device *api.Device, syncDB storage.Database, fts fulltext.Indexer, from *string, rsAPI roomserverAPI.SyncRoomserverAPI) util.JSONResponse
nolint:gocyclo
func Setup ¶
func Setup( csMux *mux.Router, srp *sync.RequestPool, syncDB storage.Database, userAPI userapi.SyncUserAPI, rsAPI api.SyncRoomserverAPI, cfg *config.SyncAPI, lazyLoadCache caching.LazyLoadCache, fts fulltext.Indexer, rateLimits *httputil.RateLimits, )
Setup configures the given mux with sync-server listeners
Due to Setup being used to call many other functions, a gocyclo nolint is applied: nolint: gocyclo
Types ¶
type ContextRespsonse ¶ added in v0.6.4
type ContextRespsonse struct { End string `json:"end"` Event *synctypes.ClientEvent `json:"event,omitempty"` EventsAfter []synctypes.ClientEvent `json:"events_after,omitempty"` EventsBefore []synctypes.ClientEvent `json:"events_before,omitempty"` Start string `json:"start"` State []synctypes.ClientEvent `json:"state,omitempty"` }
type EventContext ¶ added in v0.13.0
type Groups ¶ added in v0.10.0
type Groups struct {
RoomID map[string]RoomResult `json:"room_id"`
}
type ProfileInfoResponse ¶ added in v0.13.0
type RelationsResponse ¶ added in v0.10.3
type RelationsResponse struct { Chunk []synctypes.ClientEvent `json:"chunk"` NextBatch string `json:"next_batch,omitempty"` PrevBatch string `json:"prev_batch,omitempty"` }
type Result ¶ added in v0.10.0
type Result struct { Context SearchContextResponse `json:"context"` Rank float64 `json:"rank"` Result synctypes.ClientEvent `json:"result"` }
type RoomEvents ¶ added in v0.10.0
type RoomEvents struct { EventContext EventContext `json:"event_context"` Filter synctypes.RoomEventFilter `json:"filter"` Groupings Groupings `json:"groupings"` IncludeState bool `json:"include_state"` Keys []string `json:"keys"` OrderBy string `json:"order_by"` SearchTerm string `json:"search_term"` }
type RoomEventsResponse ¶ added in v0.13.0
type RoomResult ¶ added in v0.10.0
type SearchCategories ¶ added in v0.10.0
type SearchCategories struct {
RoomEvents RoomEvents `json:"room_events"`
}
type SearchCategoriesResponse ¶ added in v0.13.0
type SearchCategoriesResponse struct {
RoomEvents RoomEventsResponse `json:"room_events"`
}
type SearchContextResponse ¶ added in v0.10.0
type SearchContextResponse struct { End string `json:"end"` EventsAfter []synctypes.ClientEvent `json:"events_after"` EventsBefore []synctypes.ClientEvent `json:"events_before"` Start string `json:"start"` ProfileInfo map[string]ProfileInfoResponse `json:"profile_info"` }
type SearchRequest ¶ added in v0.10.0
type SearchRequest struct {
SearchCategories SearchCategories `json:"search_categories"`
}
type SearchResponse ¶ added in v0.10.0
type SearchResponse struct {
SearchCategories SearchCategoriesResponse `json:"search_categories"`
}
Click to show internal directories.
Click to hide internal directories.