Added documentation for server_notices.

This commit is contained in:
Hans van Zijst 2024-11-27 14:37:40 +01:00 committed by Valentin Gagarin
parent 76eada069b
commit 1c6cecb6ff

View file

@ -408,7 +408,10 @@ See for more options [Synapse's documentation](https://element-hq.github.io/syna
# TURN # TURN
Check for more information about [how to configure the TURN Check for more information about [how to configure the TURN
server](../coturn). Once you've set up your TURN server, configure it in server](../coturn) or [LiveKit](../element-call#livekit). You probably want
LiveKit, but read on if you choose coturn.
Once you've set up your TURN server, configure it in
Synapse, in `conf.d/turn.yaml`: Synapse, in `conf.d/turn.yaml`:
``` ```
@ -430,3 +433,59 @@ the [Synapse documentation](https://element-hq.github.io/synapse/latest/server_n
to see how to configure that. to see how to configure that.
It's also necessary for moderation ([see Draupnir](../draupnir)). It's also necessary for moderation ([see Draupnir](../draupnir)).
## Server Notices
Server notices allow administrators to send messages to users, much like the
`wall` functionality in UNIX/Linux.
Add this bit of info to `conf.d/server_notices.yaml`:
```
server_notices:
system_mxid_localpart: server
system_mxid_display_name: "Server Notices"
# system_mxid_avatar_url: "mxc://matrixdev.example.com/QBBZcaxfrrpvreGeNhqRaCjG"
room_name: "Server Notices"
# room_avatar_url: "mxc://matrixdev.example.com/QBBZcaxfrrpvreGeNhqRaCjG"
room_topic: "Room used by your server admin to notice you of important
information"
auto_join: true
```
This means that the user sending the messages (who isn't really a user anyway)
is `server@example.com`, with the display name `Server Notices`. The room that users receive
these messages in is called the same. The room will be created if it doesn't
yet exist, every user that receives a server message will be put in a room
with that name.
Every user gets his own room, so if you send a server notice to 100 users,
there will be (at least) 100 rooms by that name, all containing 1 user.
The option `auto_join` means that users will automatically join the room as
soon as it's created. They can leave afterwards, but they'll put into it again
as soon as they receive another server message.
The two commented out options are the avatars for user and room. This is a bit
tricky. You'll need to upload an image to a room first, so that it's present
in the media store. Then you can refer to it by the ID it gets, in the way
shown above. These avatars will only be set or changed when you send a server
notice.
Important bit: you must upload these pictures to an unencrypted room. Pictures
in an encrypted room are... well... encrypted, and that causes a problem for
the thumbnailer. Pictures in encrypted rooms are stored as MIME type
`application/octet-stream`, you want one of the formats you configured under
[Homeserver Blocking](#blocking). Or, if you haven't defined a whitelist, at
least an image mimetype...
You can find the ID of the picture in the database (table `local_media_repository`)
or, more conveniently, in [Synapse-Admin](../synapse-admin), which is also
where you'll want to go if you want to send a server notice.
In Synapse-Admin, open the User tab, select the user(s) you want to send a
notice to, and click "Send Server Notices".
If the result is that you're returned to the login screen of Synapse-Admin,
there was an error sending the notice. Check the Synapse logs.