Skip to content
Snippets Groups Projects
sample_config.yaml 37.4 KiB
Newer Older
  • Learn to ignore specific revisions
  • #        base: "ou=users,dc=example,dc=com"
    #        attributes:
    #           uid: "cn"
    #           mail: "email"
    #           name: "givenName"
    #        #bind_dn:
    #        #bind_password:
    #        #filter: "(objectClass=posixAccount)"
    
    
    
    # Clients requesting push notifications can either have the body of
    # the message sent in the notification poke along with other details
    # like the sender, or just the event ID and room ID (`event_id_only`).
    # If clients choose the former, this option controls whether the
    # notification request includes the content of the event (other details
    # like the sender are still included). For `event_id_only` push, it
    # has no effect.
    #
    # For modern android devices the notification content will still appear
    # because it is loaded by the app. iPhone, however will send a
    # notification saying only that a message arrived and who it came from.
    #
    #push:
    #  include_content: true
    
    
    #spam_checker:
    #  module: "my_custom_project.SuperSpamChecker"
    #  config:
    #    example_option: 'things'
    
    
    
    # Uncomment to allow non-server-admin users to create groups on this server
    
    
    # If enabled, non server admins can only create groups with local parts
    # starting with this prefix
    #
    #group_creation_prefix: "unofficial/"
    
    
    
    # User Directory configuration
    #
    
    Erik Johnston's avatar
    Erik Johnston committed
    # 'enabled' defines whether users can search the user directory. If
    # false then empty responses are returned to all queries. Defaults to
    # true.
    #
    
    # 'search_all_users' defines whether to search all users visible to your HS
    # when searching the user directory, rather than limiting to users visible
    # in public rooms.  Defaults to false.  If you set it True, you'll have to run
    # UPDATE user_directory_stream_pos SET stream_id = NULL;
    # on your database to tell it to rebuild the user_directory search indexes.
    #
    #user_directory:
    
    Erik Johnston's avatar
    Erik Johnston committed
    #  enabled: true
    
    #  search_all_users: false
    
    
    # User Consent configuration
    #
    # for detailed instructions, see
    # https://github.com/matrix-org/synapse/blob/master/docs/consent_tracking.md
    #
    # Parts of this section are required if enabling the 'consent' resource under
    # 'listeners', in particular 'template_dir' and 'version'.
    #
    # 'template_dir' gives the location of the templates for the HTML forms.
    # This directory should contain one subdirectory per language (eg, 'en', 'fr'),
    # and each language directory should contain the policy document (named as
    # '<version>.html') and a success page (success.html).
    #
    # 'version' specifies the 'current' version of the policy document. It defines
    # the version to be served by the consent resource if there is no 'v'
    # parameter.
    #
    # 'server_notice_content', if enabled, will send a user a "Server Notice"
    # asking them to consent to the privacy policy. The 'server_notices' section
    # must also be configured for this to work. Notices will *not* be sent to
    # guest users unless 'send_server_notice_to_guests' is set to true.
    #
    # 'block_events_error', if set, will block any attempts to send events
    # until the user consents to the privacy policy. The value of the setting is
    # used as the text of the error.
    #
    # 'require_at_registration', if enabled, will add a step to the registration
    # process, similar to how captcha works. Users will be required to accept the
    # policy before their account is created.
    #
    # 'policy_name' is the display name of the policy users will see when registering
    # for an account. Has no effect unless `require_at_registration` is enabled.
    # Defaults to "Privacy Policy".
    #
    #user_consent:
    #  template_dir: res/templates/privacy
    #  version: 1.0
    #  server_notice_content:
    #    msgtype: m.text
    #    body: >-
    #      To continue using this homeserver you must review and agree to the
    #      terms and conditions at %(consent_uri)s
    #  send_server_notice_to_guests: True
    #  block_events_error: >-
    #    To continue using this homeserver you must review and agree to the
    #    terms and conditions at %(consent_uri)s
    #  require_at_registration: False
    #  policy_name: Privacy Policy
    #
    
    
    # Server Notices room configuration
    #
    # Uncomment this section to enable a room which can be used to send notices
    # from the server to users. It is a special room which cannot be left; notices
    # come from a special "notices" user id.
    #
    # If you uncomment this section, you *must* define the system_mxid_localpart
    # setting, which defines the id of the user which will be used to send the
    # notices.
    #
    # It's also possible to override the room name, the display name of the
    # "notices" user, and the avatar for the user.
    #
    #server_notices:
    #  system_mxid_localpart: notices
    #  system_mxid_display_name: "Server Notices"
    #  system_mxid_avatar_url: "mxc://server.com/oumMVlgDnLYFaPVkExemNVVZ"
    #  room_name: "Server Notices"
    
    
    
    
    Erik Johnston's avatar
    Erik Johnston committed
    # Uncomment to disable searching the public room list. When disabled
    # blocks searching local and remote room lists for local and remote
    # users by always returning an empty list for all queries.
    
    Erik Johnston's avatar
    Erik Johnston committed
    #enable_room_list_search: false
    
    # The `alias_creation` option controls who's allowed to create aliases
    # on this server.
    #
    # The format of this option is a list of rules that contain globs that
    # match against user_id, room_id and the new alias (fully qualified with
    # server name). The action in the first rule that matches is taken,
    # which can currently either be "allow" or "deny".
    #
    # Missing user_id/room_id/alias fields default to "*".
    #
    # If no rules match the request is denied. An empty list means no one
    # can create aliases.
    #
    # Options for the rules include:
    #
    #   user_id: Matches against the creator of the alias
    #   alias: Matches against the alias being created
    #   room_id: Matches against the room ID the alias is being pointed at
    #   action: Whether to "allow" or "deny" the request if the rule matches
    #
    # The default is:
    #
    #alias_creation_rules:
    #  - user_id: "*"
    #    alias: "*"
    #    room_id: "*"
    #    action: allow
    
    # The `room_list_publication_rules` option controls who can publish and
    # which rooms can be published in the public room list.
    #
    # The format of this option is the same as that for
    # `alias_creation_rules`.
    #
    # If the room has one or more aliases associated with it, only one of
    # the aliases needs to match the alias rule. If there are no aliases
    # then only rules with `alias: *` match.
    #
    # If no rules match the request is denied. An empty list means no one
    # can publish rooms.
    #
    # Options for the rules include:
    #
    #   user_id: Matches agaisnt the creator of the alias
    #   room_id: Matches against the room ID being published
    #   alias: Matches against any current local or canonical aliases
    #            associated with the room
    #   action: Whether to "allow" or "deny" the request if the rule matches
    #
    # The default is:
    #
    #room_list_publication_rules:
    #  - user_id: "*"
    #    alias: "*"
    #    room_id: "*"
    #    action: allow