{#
SPDX-FileCopyrightText: 2024 MDAD project contributors
SPDX-FileCopyrightText: 2024 - 2026 Catalan Lover <catalanlover@protonmail.com>
SPDX-FileCopyrightText: 2024 Suguru Hirahara

SPDX-License-Identifier: AGPL-3.0-or-later
#}

homeserver:
  # The Matrix server name, this will be the name of the server in your Matrix ID.
  domain: "{{ matrix_domain }}"
  # The url for the appservice to call the client server API from.
  url: "{{ matrix_homeserver_url }}"

# Database configuration for storing which Mjolnirs have been provisioned.
db:
  engine: "postgres"
  connectionString: "{{ matrix_appservice_draupnir_for_all_database_connection_string }}"

{% if not matrix_appservice_draupnir_for_all_zero_touch_deploy %}
# A room you have created that scopes who can access the appservice.
# See docs/access_control.md
adminRoom: {{ matrix_appservice_draupnir_for_all_config_adminRoom | to_json }}
{% endif %}

{% if matrix_appservice_draupnir_for_all_zero_touch_deploy %}
# The initial manager to invite if the admin room has to be created.
initialManager: {{ matrix_appservice_draupnir_for_all_config_initialManager | to_json }}
{% endif %}

# This is a web api that the widget connects to in order to interact with the appservice.
webAPI:
  port: 9000

# The directory the bot should store various bits of information in
dataPath: "/data"

# Maximum number of bots each user can provision.
# Defaults to 1 when omitted.
maxDraupnirsPerUser: 1

# Allow users to self-provision by inviting the appservice bot.
# When false, provisioning must be done through admin commands.
# Defaults to false when omitted.
allowSelfServiceProvisioning: false

roomStateBackingStore:
  enabled: {{ matrix_appservice_draupnir_for_all_config_roomStateBackingStore_enabled | to_json }}
