mirror of
https://github.com/matrix-org/dendrite.git
synced 2025-12-21 05:43:09 -06:00
Remove doc references to publicroomsapi
This commit is contained in:
parent
123bd57351
commit
27e081aec9
|
|
@ -48,13 +48,12 @@ Arguments:
|
|||
`
|
||||
|
||||
var (
|
||||
syncServerURL = flag.String("sync-api-server-url", "", "The base URL of the listening 'dendrite-sync-api-server' process. E.g. 'http://localhost:4200'")
|
||||
clientAPIURL = flag.String("client-api-server-url", "", "The base URL of the listening 'dendrite-client-api-server' process. E.g. 'http://localhost:4321'")
|
||||
mediaAPIURL = flag.String("media-api-server-url", "", "The base URL of the listening 'dendrite-media-api-server' process. E.g. 'http://localhost:7779'")
|
||||
publicRoomsAPIURL = flag.String("public-rooms-api-server-url", "", "The base URL of the listening 'dendrite-public-rooms-api-server' process. E.g. 'http://localhost:7775'")
|
||||
bindAddress = flag.String("bind-address", ":8008", "The listening port for the proxy.")
|
||||
certFile = flag.String("tls-cert", "", "The PEM formatted X509 certificate to use for TLS")
|
||||
keyFile = flag.String("tls-key", "", "The PEM private key to use for TLS")
|
||||
syncServerURL = flag.String("sync-api-server-url", "", "The base URL of the listening 'dendrite-sync-api-server' process. E.g. 'http://localhost:4200'")
|
||||
clientAPIURL = flag.String("client-api-server-url", "", "The base URL of the listening 'dendrite-client-api-server' process. E.g. 'http://localhost:4321'")
|
||||
mediaAPIURL = flag.String("media-api-server-url", "", "The base URL of the listening 'dendrite-media-api-server' process. E.g. 'http://localhost:7779'")
|
||||
bindAddress = flag.String("bind-address", ":8008", "The listening port for the proxy.")
|
||||
certFile = flag.String("tls-cert", "", "The PEM formatted X509 certificate to use for TLS")
|
||||
keyFile = flag.String("tls-key", "", "The PEM private key to use for TLS")
|
||||
)
|
||||
|
||||
func makeProxy(targetURL string) (*httputil.ReverseProxy, error) {
|
||||
|
|
@ -121,13 +120,6 @@ func main() {
|
|||
fmt.Fprintln(os.Stderr, "no --media-api-server-url specified.")
|
||||
os.Exit(1)
|
||||
}
|
||||
|
||||
if *publicRoomsAPIURL == "" {
|
||||
flag.Usage()
|
||||
fmt.Fprintln(os.Stderr, "no --public-rooms-api-server-url specified.")
|
||||
os.Exit(1)
|
||||
}
|
||||
|
||||
syncProxy, err := makeProxy(*syncServerURL)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
|
|
@ -140,14 +132,8 @@ func main() {
|
|||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
publicRoomsProxy, err := makeProxy(*publicRoomsAPIURL)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
|
||||
http.Handle("/_matrix/client/r0/sync", syncProxy)
|
||||
http.Handle("/_matrix/client/r0/directory/list/", publicRoomsProxy)
|
||||
http.Handle("/_matrix/client/r0/publicRooms", publicRoomsProxy)
|
||||
http.Handle("/_matrix/media/v1/", mediaProxy)
|
||||
http.Handle("/", clientProxy)
|
||||
|
||||
|
|
@ -159,8 +145,6 @@ func main() {
|
|||
|
||||
fmt.Println("Proxying requests to:")
|
||||
fmt.Println(" /_matrix/client/r0/sync => ", *syncServerURL+"/api/_matrix/client/r0/sync")
|
||||
fmt.Println(" /_matrix/client/r0/directory/list => ", *publicRoomsAPIURL+"/_matrix/client/r0/directory/list")
|
||||
fmt.Println(" /_matrix/client/r0/publicRooms => ", *publicRoomsAPIURL+"/_matrix/media/client/r0/publicRooms")
|
||||
fmt.Println(" /_matrix/media/v1 => ", *mediaAPIURL+"/api/_matrix/media/v1")
|
||||
fmt.Println(" /* => ", *clientAPIURL+"/api/*")
|
||||
fmt.Println("Listening on ", *bindAddress)
|
||||
|
|
|
|||
|
|
@ -108,7 +108,7 @@ Assuming that Postgres 9.5 (or later) is installed:
|
|||
* Create the component databases:
|
||||
|
||||
```bash
|
||||
for i in account device mediaapi syncapi roomserver serverkey federationsender publicroomsapi appservice naffka; do
|
||||
for i in account device mediaapi syncapi roomserver serverkey federationsender currentstate appservice naffka; do
|
||||
sudo -u postgres createdb -O dendrite dendrite_$i
|
||||
done
|
||||
```
|
||||
|
|
@ -176,17 +176,17 @@ The following contains scripts which will run all the required processes in orde
|
|||
| | :7774
|
||||
| |
|
||||
| |
|
||||
| | /directory +----------------------------------+
|
||||
| | +--------->| dendrite-public-rooms-api-server |<========++
|
||||
| | | +----------------------------------+ ||
|
||||
| | | :7775 | ||
|
||||
| | | +<-----------+ ||
|
||||
| | | | ||
|
||||
| | | /sync +--------------------------+ ||
|
||||
| |
|
||||
| |
|
||||
| |
|
||||
| |
|
||||
| |
|
||||
| |
|
||||
| | /sync +--------------------------+
|
||||
| | +--------->| dendrite-sync-api-server |<================++
|
||||
| | | | +--------------------------+ ||
|
||||
| | | | :7773 | ^^ ||
|
||||
Matrix +------------------+ | | | | || client_data ||
|
||||
| | | +--------------------------+ ||
|
||||
| | | :7773 | ^^ ||
|
||||
Matrix +------------------+ | | | || client_data ||
|
||||
Clients --->| client-api-proxy |-------+ +<-----------+ ++=============++ ||
|
||||
+------------------+ | | | || ||
|
||||
:8008 | | CS API +----------------------------+ || ||
|
||||
|
|
@ -232,7 +232,6 @@ your client at `http://localhost:8008`.
|
|||
--client-api-server-url "http://localhost:7771" \
|
||||
--sync-api-server-url "http://localhost:7773" \
|
||||
--media-api-server-url "http://localhost:7774" \
|
||||
--public-rooms-api-server-url "http://localhost:7775" \
|
||||
```
|
||||
|
||||
### Federation proxy
|
||||
|
|
@ -282,15 +281,6 @@ order to upload and retrieve media.
|
|||
./bin/dendrite-media-api-server --config dendrite.yaml
|
||||
```
|
||||
|
||||
### Public room server
|
||||
|
||||
This implements `/directory` requests. Clients talk to this via the proxy
|
||||
in order to retrieve room directory listings.
|
||||
|
||||
```bash
|
||||
./bin/dendrite-public-rooms-api-server --config dendrite.yaml
|
||||
```
|
||||
|
||||
### Federation API server
|
||||
|
||||
This implements federation requests. Servers talk to this via the proxy in
|
||||
|
|
|
|||
|
|
@ -9,23 +9,22 @@ a request/response model like HTTP or RPC. Therefore, components can expose "int
|
|||
Note in Monolith mode these are actually direct function calls and are not serialised HTTP requests.
|
||||
|
||||
```
|
||||
Tier 1 Sync PublicRooms FederationAPI ClientAPI MediaAPI
|
||||
Public Facing | .-----1------` | | | | | | | | |
|
||||
2 | .-------3-----------------` | | | `--------|-|-|-|--11--------------------.
|
||||
| | | .--------4----------------------------------` | | | |
|
||||
| | | | .---5-----------` | | | | | |
|
||||
| | | | | .---6----------------------------` | | |
|
||||
| | | | | | | .-----7----------` | |
|
||||
| | | | | | 8 | | 10 |
|
||||
| | | | | | | | `---9----. | |
|
||||
V V V V V V V V V V V
|
||||
Tier 1 Sync FederationAPI ClientAPI MediaAPI
|
||||
Public Facing | | | | | | | | | |
|
||||
2 .-------3-----------------` | | | `--------|-|-|-|--11--------------------.
|
||||
| | .--------4----------------------------------` | | | |
|
||||
| | | .---5-----------` | | | | | |
|
||||
| | | | .---6----------------------------` | | |
|
||||
| | | | | | .-----7----------` | |
|
||||
| | | | | 8 | | 10 |
|
||||
| | | | | | | `---9----. | |
|
||||
V V V V V V V V V V
|
||||
Tier 2 Roomserver EDUServer FedSender AppService KeyServer ServerKeyAPI
|
||||
Internal only | `------------------------12----------^ ^
|
||||
`------------------------------------------------------------13----------`
|
||||
|
||||
Client ---> Server
|
||||
```
|
||||
- 1 (PublicRooms -> Roomserver): Calculating current auth for changing visibility
|
||||
- 2 (Sync -> Roomserver): When making backfill requests
|
||||
- 3 (FedAPI -> Roomserver): Calculating (prev/auth events) and sending new events, processing backfill/state/state_ids requests
|
||||
- 4 (ClientAPI -> Roomserver): Calculating (prev/auth events) and sending new events, processing /state requests
|
||||
|
|
@ -46,20 +45,20 @@ In addition to this, all public facing components (Tier 1) talk to the `UserAPI`
|
|||
```
|
||||
.----1--------------------------------------------.
|
||||
V |
|
||||
Tier 1 Sync PublicRooms FederationAPI ClientAPI MediaAPI
|
||||
Public Facing ^ ^ ^ ^
|
||||
| | | |
|
||||
2 | | |
|
||||
Tier 1 Sync FederationAPI ClientAPI MediaAPI
|
||||
Public Facing ^ ^ ^
|
||||
| | |
|
||||
2 | |
|
||||
| `-3------------. |
|
||||
| | | |
|
||||
| | | |
|
||||
| .------4------` | |
|
||||
| | .--------5-----|------------------------------`
|
||||
| | | |
|
||||
| | |
|
||||
| | |
|
||||
| | |
|
||||
| .--------4-----|------------------------------`
|
||||
| | |
|
||||
Tier 2 Roomserver EDUServer FedSender AppService KeyServer ServerKeyAPI
|
||||
Internal only | | ^ ^
|
||||
| `-----6----------` |
|
||||
`--------------------7--------`
|
||||
| `-----5----------` |
|
||||
`--------------------6--------`
|
||||
|
||||
|
||||
Producer ----> Consumer
|
||||
|
|
@ -67,7 +66,6 @@ Producer ----> Consumer
|
|||
- 1 (ClientAPI -> Sync): For tracking account data
|
||||
- 2 (Roomserver -> Sync): For all data to send to clients
|
||||
- 3 (EDUServer -> Sync): For typing/send-to-device data to send to clients
|
||||
- 4 (Roomserver -> PublicRooms): For tracking the current room name/topic/joined count/etc.
|
||||
- 5 (Roomserver -> ClientAPI): For tracking memberships for profile updates.
|
||||
- 6 (EDUServer -> FedSender): For sending EDUs over federation
|
||||
- 7 (Roomserver -> FedSender): For sending PDUs over federation, for tracking joined hosts.
|
||||
- 4 (Roomserver -> ClientAPI): For tracking memberships for profile updates.
|
||||
- 5 (EDUServer -> FedSender): For sending EDUs over federation
|
||||
- 6 (Roomserver -> FedSender): For sending PDUs over federation, for tracking joined hosts.
|
||||
|
|
|
|||
Loading…
Reference in a new issue