mirror of
https://git.anonymousland.org/anonymousland/synapse.git
synced 2025-05-04 20:04:58 -04:00
Support the stable API endpoint for MSC3283: new settings in /capabilities
endpoint (#11933)
This commit is contained in:
parent
1e12efa1b2
commit
d36943c4df
4 changed files with 53 additions and 47 deletions
|
@ -12,6 +12,7 @@
|
|||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
import logging
|
||||
from http import HTTPStatus
|
||||
from typing import TYPE_CHECKING, Tuple
|
||||
|
||||
from synapse.api.room_versions import KNOWN_ROOM_VERSIONS, MSC3244_CAPABILITIES
|
||||
|
@ -54,6 +55,15 @@ class CapabilitiesRestServlet(RestServlet):
|
|||
},
|
||||
},
|
||||
"m.change_password": {"enabled": change_password},
|
||||
"m.set_displayname": {
|
||||
"enabled": self.config.registration.enable_set_displayname
|
||||
},
|
||||
"m.set_avatar_url": {
|
||||
"enabled": self.config.registration.enable_set_avatar_url
|
||||
},
|
||||
"m.3pid_changes": {
|
||||
"enabled": self.config.registration.enable_3pid_changes
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -62,6 +72,9 @@ class CapabilitiesRestServlet(RestServlet):
|
|||
"org.matrix.msc3244.room_capabilities"
|
||||
] = MSC3244_CAPABILITIES
|
||||
|
||||
# Must be removed in later versions.
|
||||
# Is only included for migration.
|
||||
# Also the parts in `synapse/config/experimental.py`.
|
||||
if self.config.experimental.msc3283_enabled:
|
||||
response["capabilities"]["org.matrix.msc3283.set_displayname"] = {
|
||||
"enabled": self.config.registration.enable_set_displayname
|
||||
|
@ -76,7 +89,7 @@ class CapabilitiesRestServlet(RestServlet):
|
|||
if self.config.experimental.msc3440_enabled:
|
||||
response["capabilities"]["io.element.thread"] = {"enabled": True}
|
||||
|
||||
return 200, response
|
||||
return HTTPStatus.OK, response
|
||||
|
||||
|
||||
def register_servlets(hs: "HomeServer", http_server: HttpServer) -> None:
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue