Synapse Invite Checker is a synapse module to restrict invites on a homeserver according to the rules required by Gematik in a TIM federation.
Table of Contents
pip install synapse-invite-checker
Here are the available configuration options:
# the outer modules section is just provided for completeness, the config block is the actual module config.
modules:
- module: "synapse_invite_checker.InviteChecker"
config:
title: "TIM Contact API by Famedly", # Title for the info endpoint, optional
description: "Custom description for the endpoint", # Description for the info endpoint, optional
contact: "[email protected]", # Contact information for the info endpoint, optional
federation_list_url: "https://localhost:8080", # Full url where to fetch the federation list from, required
federation_localization_url: "https://localhost:8080/localization", # Full url where to fetch the federation localization from, required. Should be the same host as federation list.
federation_list_client_cert: "tests/certs/client.pem", # path to a pem encoded client certificate for mtls, required if federation list url is https
gematik_ca_baseurl: "https://download-ref.tsl.ti-dienste.de/", # the baseurl to the ca to use for the federation list, required
tim-type: "epa" or "pro", # Patient/Insurance or Professional mode, defaults to "pro" mode. Optional currently, but will be required in a later release
The tests uses twisted's testing framework trial, with the development enviroment managed by hatch. Running the tests and generating a coverage report can be done like this:
hatch run cov
synapse-invite-checker
is distributed under the terms of the
AGPL-3.0 license.