server_name: "{{ matrix_domain }}" enable_metrics: false report_stats: false listeners: - port: 8008 type: http tls: false resources: - names: [client, federation] compress: true database: name: psycopg2 args: user: "{{ db_user }}" password: "{{ db_pass }}" database: "{{ db_name }}" host: "localhost" port: 5432 registration_shared_secret: "{{ synapse_registration_secret }}" tls_certificate_path: "/data/tls.crt" private_key_path: "/data/tls.key" federation_domain_whitelist: - matrix.org - gitter.im # Optional: Rate limits rc_flood_control: interval: 1000 burst_count: 3 # Enable password login enable_registration: true enable_registration_without_verification: true ## -- turn settings # Voice & Video Chat Settings media_store_path: /data/media_store max_image_pixels: 32000000 # 32MP max # TURN/STUN server config turn_uris: - "turn:{{ matrix_domain }}:3478?transport=udp" - "turn:{{ matrix_domain }}:3478?transport=tcp" - "turns:{{ matrix_domain }}:5349?transport=tcp" # encrypted TURN turn_shared_secret: "{{ coturn_shared_secret }}" turn_username: "{{ coturn_username }}" turn_password: "{{ coturn_password }}" turn_time_limit: 86400 # 24h (optional) turn_allow_guests: true # allow non-Matrix users (e.g., web guests) # Optional: Enable call features enable_call_signalling: true