mirror of
				https://github.com/spantaleev/matrix-docker-ansible-deploy.git
				synced 2025-11-04 00:58:56 +01:00 
			
		
		
		
	!qporfwt is used as an example of a room ID on https://spec.matrix.org/v1.12/#room-structure Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
		
			
				
	
	
		
			238 lines
		
	
	
		
			12 KiB
		
	
	
	
		
			Django/Jinja
		
	
	
	
	
	
			
		
		
	
	
			238 lines
		
	
	
		
			12 KiB
		
	
	
	
		
			Django/Jinja
		
	
	
	
	
	
#jinja2: lstrip_blocks: "True"
 | 
						||
# Homeserver details.
 | 
						||
homeserver:
 | 
						||
    # The address that this appservice can use to connect to the homeserver.
 | 
						||
    address: {{ matrix_go_skype_bridge_homeserver_address }}
 | 
						||
    # The domain of the homeserver (for MXIDs, etc).
 | 
						||
    domain: {{ matrix_go_skype_bridge_homeserver_domain }}
 | 
						||
    # If you don’t know what this is, no need to modify(for parse "mention user/reply message, etc")
 | 
						||
    server_name: matrix.to
 | 
						||
 | 
						||
# Application service host/registration related details.
 | 
						||
# Changing these values requires regeneration of the registration.
 | 
						||
appservice:
 | 
						||
    # The address that the homeserver can use to connect to this appservice.
 | 
						||
    address: {{ matrix_go_skype_bridge_appservice_address }}
 | 
						||
 | 
						||
    # The hostname and port where this appservice should listen.
 | 
						||
    hostname: 0.0.0.0
 | 
						||
    port: 8080
 | 
						||
 | 
						||
    # Database config.
 | 
						||
    database:
 | 
						||
        # The database type. "sqlite3" and "postgres" are supported.
 | 
						||
        type: {{ matrix_go_skype_bridge_appservice_database_type|to_json }}
 | 
						||
        # The database URI.
 | 
						||
        #   SQLite: File name is enough. https://github.com/mattn/go-sqlite3#connection-string
 | 
						||
        #   Postgres: Connection string. For example, postgres://user:password@host/database?sslmode=disable
 | 
						||
        uri: {{ matrix_go_skype_bridge_appservice_database_uri|to_json }}
 | 
						||
        # Maximum number of connections. Mostly relevant for Postgres.
 | 
						||
        max_open_conns: 20
 | 
						||
        max_idle_conns: 2
 | 
						||
 | 
						||
    # Settings for provisioning API
 | 
						||
    provisioning:
 | 
						||
        # Prefix for the provisioning API paths.
 | 
						||
        prefix: /_matrix/provision/v1
 | 
						||
        # Shared secret for authentication. If set to "disable", the provisioning API will be disabled.
 | 
						||
        shared_secret: disable
 | 
						||
 | 
						||
    # The unique ID of this appservice.
 | 
						||
    id: skype
 | 
						||
    # Appservice bot details.
 | 
						||
    bot:
 | 
						||
        # Username of the appservice bot.
 | 
						||
        username: skypebridgebot
 | 
						||
        # Display name and avatar for bot. Set to "remove" to remove display name/avatar, leave empty
 | 
						||
        # to leave display name/avatar as-is.
 | 
						||
        displayname: Skype bridge bot
 | 
						||
        avatar: mxc://matrix.org/kGQUDQyPiwbRXPFkjoBrPyhC
 | 
						||
 | 
						||
    # Authentication tokens for AS <-> HS communication. Autogenerated; do not modify.
 | 
						||
    as_token: "{{ matrix_go_skype_bridge_appservice_token }}"
 | 
						||
    hs_token: "{{ matrix_go_skype_bridge_homeserver_token }}"
 | 
						||
 | 
						||
# Bridge config
 | 
						||
bridge:
 | 
						||
    # Localpart template of MXIDs for Skype users.
 | 
						||
    # {{ '{{.}}' }} is replaced with the phone number of the Skype user.
 | 
						||
    username_template: {{ 'skype-{{.}}' }}
 | 
						||
    # Displayname template for Skype users.
 | 
						||
    # {{ '{{.Notify}}' }} - nickname set by the Skype user
 | 
						||
    # {{ '{{.Jid}}' }}    - phone number (international format)
 | 
						||
    # The following variables are also available, but will cause problems on multi-user instances:
 | 
						||
    # {{ '{{.Name}}' }}   - display name from contact list
 | 
						||
    # {{ '{{.Short}}' }}  - short display name from contact list
 | 
						||
    # To use multiple if's, you need to use: {{ '{{else if .Name}}' }}, for example:
 | 
						||
    # "{{ '{{if .Notify}}' }}{{ '{{.Notify}}' }}{{ '{{else if .Name}}' }}{{ '{{.Name}}' }}{{ '{{else}}' }}{{ '{{.Jid}}' }}{{ '{{end}}' }} (WA)"
 | 
						||
    displayname_template: "{{ '{{if .DisplayName}}' }}{{ '{{.DisplayName}}' }}{{ '{{else}}' }}{{ '{{.PersonId}}' }}{{ '{{end}}' }} (Skype)"
 | 
						||
    # Localpart template for per-user room grouping community IDs.
 | 
						||
    # On startup, the bridge will try to create these communities, add all of the specific user's
 | 
						||
    # portals to the community, and invite the Matrix user to it.
 | 
						||
    # (Note that, by default, non-admins might not have your homeserver's permission to create
 | 
						||
    #  communities.)
 | 
						||
    # {{ '{{.Localpart}}' }} is the MXID localpart and {{ '{{.Server}}' }} is the MXID server part of the user.
 | 
						||
    community_template: skype-{{ '{{.Localpart}}' }}={{ '{{.Server}}' }}
 | 
						||
 | 
						||
    # Skype connection timeout in seconds.
 | 
						||
    connection_timeout: 20
 | 
						||
    # If Skype doesn't respond within connection_timeout, should the bridge try to fetch the message
 | 
						||
    # to see if it was actually bridged? Use this if you have problems with sends timing out but actually
 | 
						||
    # succeeding.
 | 
						||
    fetch_message_on_timeout: false
 | 
						||
    # Whether or not the bridge should send a read receipt from the bridge bot when a message has been
 | 
						||
    # sent to Skype. If fetch_message_on_timeout is enabled, a successful post-timeout fetch will
 | 
						||
    # trigger a read receipt too.
 | 
						||
    delivery_receipts: false
 | 
						||
    # Number of times to regenerate QR code when logging in.
 | 
						||
    # The regenerated QR code is sent as an edit and essentially multiplies the login timeout (20 seconds)
 | 
						||
    login_qr_regen_count: 2
 | 
						||
    # Maximum number of times to retry connecting on connection error.
 | 
						||
    max_connection_attempts: 3
 | 
						||
    # Number of seconds to wait between connection attempts.
 | 
						||
    # Negative numbers are exponential backoff: -connection_retry_delay + 1 + 2^attempts
 | 
						||
    connection_retry_delay: -1
 | 
						||
    # Whether or not the bridge should send a notice to the user's management room when it retries connecting.
 | 
						||
    # If false, it will only report when it stops retrying.
 | 
						||
    report_connection_retry: true
 | 
						||
    # Maximum number of seconds to wait for chats to be sent at startup.
 | 
						||
    # If this is too low and you have lots of chats, it could cause backfilling to fail.
 | 
						||
    chat_list_wait: 30
 | 
						||
    # Maximum number of seconds to wait to sync portals before force unlocking message processing.
 | 
						||
    # If this is too low and you have lots of chats, it could cause backfilling to fail.
 | 
						||
    portal_sync_wait: 600
 | 
						||
 | 
						||
    # Whether or not to send call start/end notices to Matrix.
 | 
						||
    call_notices:
 | 
						||
        start: true
 | 
						||
        end: true
 | 
						||
 | 
						||
    # Number of chats to sync for new users.
 | 
						||
    # Since some of the obtained conversations are not the conversations that the user needs to see,
 | 
						||
    # the actual number of conversations displayed on the Matrix client will be slightly less than the set value
 | 
						||
    initial_chat_sync_count: 10
 | 
						||
    # Number of old messages to fill when creating new portal rooms.
 | 
						||
    initial_history_fill_count: 20
 | 
						||
    # Whether or not notifications should be turned off while filling initial history.
 | 
						||
    # Only applicable when using double puppeting.
 | 
						||
    initial_history_disable_notifications: false
 | 
						||
    # Maximum number of chats to sync when recovering from downtime.
 | 
						||
    # Set to -1 to sync all new chats during downtime.
 | 
						||
    recovery_chat_sync_limit: -1
 | 
						||
    # Whether or not to sync history when recovering from downtime.
 | 
						||
    recovery_history_backfill: true
 | 
						||
    # Maximum number of seconds since last message in chat to skip
 | 
						||
    # syncing the chat in any case. This setting will take priority
 | 
						||
    # over both recovery_chat_sync_limit and initial_chat_sync_count.
 | 
						||
    # Default is 3 days = 259200 seconds
 | 
						||
    sync_max_chat_age: 259200
 | 
						||
 | 
						||
    # sync contact, Non-martix-standard parameter, defaults to false
 | 
						||
    sync_contact: false
 | 
						||
 | 
						||
    # Whether or not to sync with custom puppets to receive EDUs that
 | 
						||
    # are not normally sent to appservices.
 | 
						||
    sync_with_custom_puppets: true
 | 
						||
 | 
						||
    # Servers to always allow double puppeting from
 | 
						||
    double_puppet_server_map:
 | 
						||
        "{{ matrix_go_skype_bridge_homeserver_domain }}": {{ matrix_go_skype_bridge_homeserver_address }}
 | 
						||
    # Allow using double puppeting from any server with a valid client .well-known file.
 | 
						||
    double_puppet_allow_discovery: false
 | 
						||
    # Shared secret for https://github.com/devture/matrix-synapse-shared-secret-auth
 | 
						||
    #
 | 
						||
    # If set, custom puppets will be enabled automatically for local users
 | 
						||
    # instead of users having to find an access token and run `login-matrix`
 | 
						||
    # manually.
 | 
						||
    login_shared_secret_map: {{ matrix_go_skype_bridge_bridge_login_shared_secret_map|to_json }}
 | 
						||
 | 
						||
    # Whether or not to invite own Skype user's Matrix puppet into private
 | 
						||
    # chat portals when backfilling if needed.
 | 
						||
    # This always uses the default puppet instead of custom puppets due to
 | 
						||
    # rate limits and timestamp massaging.
 | 
						||
    invite_own_puppet_for_backfilling: true
 | 
						||
    # Whether or not to explicitly set the avatar and room name for private
 | 
						||
    # chat portal rooms. This can be useful if the previous field works fine,
 | 
						||
    # but causes room avatar/name bugs.
 | 
						||
    private_chat_portal_meta: true
 | 
						||
 | 
						||
    # Whether or not thumbnails from Skype should be sent.
 | 
						||
    # They're disabled by default due to very low resolution.
 | 
						||
    Skype_thumbnail: false
 | 
						||
 | 
						||
    # Allow invite permission for user. User can invite any bots to room with Skype
 | 
						||
    # users (private chat and groups)
 | 
						||
    allow_user_invite: false
 | 
						||
 | 
						||
    # The prefix for commands. Only required in non-management rooms.
 | 
						||
    command_prefix: "{{ matrix_go_skype_bridge_command_prefix }}"
 | 
						||
 | 
						||
    # End-to-bridge encryption support options. This requires login_shared_secret to be configured
 | 
						||
    # in order to get a device for the bridge bot.
 | 
						||
    #
 | 
						||
    # Additionally, https://github.com/matrix-org/synapse/pull/5758 is required if using a normal
 | 
						||
    # application service.
 | 
						||
    encryption:
 | 
						||
        # Allow encryption, work in group chat rooms with e2ee enabled
 | 
						||
        allow: {{ matrix_go_skype_bridge_bridge_encryption_allow|to_json }}
 | 
						||
        # Default to encryption, force-enable encryption in all portals the bridge creates
 | 
						||
        # This will cause the bridge bot to be in private chats for the encryption to work properly.
 | 
						||
        # It is recommended to also set private_chat_portal_meta to true when using this.
 | 
						||
        default: {{ matrix_go_skype_bridge_bridge_encryption_default|to_json }}
 | 
						||
 | 
						||
        puppet_id:
 | 
						||
            # when set to true, the matrixid of the contact (puppet) from the bridge to the Matrix will be encrypted into another string
 | 
						||
            allow: false
 | 
						||
            # 8 characters
 | 
						||
            key: '12dsf323'
 | 
						||
            # Use the username_template prefix. (Warning: At present, username_template cannot be too complicated, otherwise this function may cause unknown errors)
 | 
						||
            username_template_prefix: 'skype-'
 | 
						||
 | 
						||
    # Permissions for using the bridge.
 | 
						||
    # Permitted values:
 | 
						||
    # relaybot - Talk through the relaybot (if enabled), no access otherwise
 | 
						||
    #     user - Access to use the bridge to chat with a Skype account.
 | 
						||
    #    admin - User level and some additional administration tools
 | 
						||
    # Permitted keys:
 | 
						||
    #        * - All Matrix users
 | 
						||
    #   domain - All users on that homeserver
 | 
						||
    #     mxid - Specific user
 | 
						||
    permissions: {{ matrix_go_skype_bridge_bridge_permissions|to_json }}
 | 
						||
 | 
						||
    relaybot:
 | 
						||
        # Whether or not relaybot support is enabled.
 | 
						||
        enabled: false
 | 
						||
        # The management room for the bot. This is where all status notifications are posted and
 | 
						||
        # in this room, you can use `!wa <command>` instead of `!wa relaybot <command>`. Omitting
 | 
						||
        # the command prefix completely like in user management rooms is not possible.
 | 
						||
        management: '!qporfwt:example.com'
 | 
						||
        # List of users to invite to all created rooms that include the relaybot.
 | 
						||
        invites: []
 | 
						||
        # The formats to use when sending messages to Skype via the relaybot.
 | 
						||
        message_formats:
 | 
						||
            m.text: "<b>{{ '{{ .Sender.Displayname }}' }}</b>: {{ '{{ .Message }}' }}"
 | 
						||
            m.notice: "<b>{{ '{{ .Sender.Displayname }}' }}</b>:: {{ '{{ .Message }}' }}"
 | 
						||
            m.emote: "* <b>{{ '{{ .Sender.Displayname }}' }}</b>: {{ '{{ .Message }}' }}"
 | 
						||
            m.file: "<b>{{ '{{ .Sender.Displayname }}' }}</b>: sent a file"
 | 
						||
            m.image: "<b>{{ '{{ .Sender.Displayname }}' }}</b>: sent an image"
 | 
						||
            m.audio: "<b>{{ '{{ .Sender.Displayname }}' }}</b>: sent an audio file"
 | 
						||
            m.video: "<b>{{ '{{ .Sender.Displayname }}' }}</b>: sent a video"
 | 
						||
            m.location: "<b>{{ '{{ .Sender.Displayname }}' }}</b>: sent a location"
 | 
						||
 | 
						||
# Logging config.
 | 
						||
logging:
 | 
						||
    # The directory for log files. Will be created if not found.
 | 
						||
    directory: ./logs
 | 
						||
    # Available variables: .Date for the file date and .Index for different log files on the same day.
 | 
						||
    # empy/null = journal logging only
 | 
						||
    file_name_format:
 | 
						||
    # Date format for file names in the Go time format: https://golang.org/pkg/time/#pkg-constants
 | 
						||
    file_date_format: "2006-01-02"
 | 
						||
    # Log file permissions.
 | 
						||
    file_mode: 0600
 | 
						||
    # Timestamp format for log entries in the Go time format.
 | 
						||
    timestamp_format: "Jan _2, 2006 15:04:05"
 | 
						||
    # Minimum severity for log messages.
 | 
						||
    # Options: debug, info, warn, error, fatal
 | 
						||
    print_level: {{ matrix_go_skype_bridge_log_level }}
 |