mirror of
				https://github.com/spantaleev/matrix-docker-ansible-deploy.git
				synced 2025-11-04 00:58:56 +01:00 
			
		
		
		
	Add appservice-double-puppet double-puppeting support to mautrix-twitter
Shared Secret Auth double puppeting still works for this bridge, but is deprecated and will go away in the future.
This commit is contained in:
		@@ -15,11 +15,13 @@ matrix_mautrix_twitter_enabled: true
 | 
			
		||||
 | 
			
		||||
If you'd like to use [Double Puppeting](https://docs.mau.fi/bridges/general/double-puppeting.html) (hint: you most likely do), you have 2 ways of going about it.
 | 
			
		||||
 | 
			
		||||
### Method 1: automatically, by enabling Shared Secret Auth
 | 
			
		||||
### Method 1: automatically, by enabling Appservice Double Puppet or Shared Secret Auth
 | 
			
		||||
 | 
			
		||||
The bridge will automatically perform Double Puppeting if you enable [Shared Secret Auth](configuring-playbook-shared-secret-auth.md) for this playbook.
 | 
			
		||||
The bridge will automatically perform Double Puppeting if you enable the [Appservice Double Puppet](configuring-playbook-appservice-double-puppet.md) service or the [Shared Secret Auth](configuring-playbook-shared-secret-auth.md) service for this playbook.
 | 
			
		||||
 | 
			
		||||
This is the recommended way of setting up Double Puppeting, as it's easier to accomplish, works for all your users automatically, and has less of a chance of breaking in the future.
 | 
			
		||||
Enabling [Appservice Double Puppet](configuring-playbook-appservice-double-puppet.md) is the recommended way of setting up Double Puppeting, as it's easier to accomplish, works for all your users automatically, and has less of a chance of breaking in the future.
 | 
			
		||||
 | 
			
		||||
Enabling double puppeting by enabling the [Shared Secret Auth](configuring-playbook-shared-secret-auth.md) service works at the time of writing, but is deprecated and will stop working in the future.
 | 
			
		||||
 | 
			
		||||
### Method 2: manually, by asking each user to provide a working access token
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -1714,7 +1714,18 @@ matrix_mautrix_twitter_appservice_token: "{{ '%s' | format(matrix_homeserver_gen
 | 
			
		||||
matrix_mautrix_twitter_homeserver_address: "{{ matrix_addons_homeserver_client_api_url }}"
 | 
			
		||||
matrix_mautrix_twitter_homeserver_token: "{{ '%s' | format(matrix_homeserver_generic_secret_key) | password_hash('sha512', 'twt.hs.token', rounds=655555) | to_uuid }}"
 | 
			
		||||
 | 
			
		||||
matrix_mautrix_twitter_login_shared_secret: "{{ matrix_synapse_ext_password_provider_shared_secret_auth_shared_secret if matrix_synapse_ext_password_provider_shared_secret_auth_enabled else '' }}"
 | 
			
		||||
matrix_mautrix_twitter_bridge_login_shared_secret_map_auto: |-
 | 
			
		||||
  {{
 | 
			
		||||
    ({
 | 
			
		||||
      matrix_mautrix_twitter_homeserver_domain: ("as_token:" + matrix_appservice_double_puppet_registration_as_token)
 | 
			
		||||
    })
 | 
			
		||||
    if matrix_appservice_double_puppet_enabled
 | 
			
		||||
    else (
 | 
			
		||||
      {matrix_mautrix_twitter_homeserver_domain: matrix_synapse_ext_password_provider_shared_secret_auth_shared_secret}
 | 
			
		||||
      if matrix_synapse_ext_password_provider_shared_secret_auth_enabled
 | 
			
		||||
      else {}
 | 
			
		||||
    )
 | 
			
		||||
  }}
 | 
			
		||||
 | 
			
		||||
matrix_mautrix_twitter_metrics_enabled: "{{ prometheus_enabled or matrix_metrics_exposure_enabled }}"
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -106,11 +106,9 @@ matrix_mautrix_twitter_appservice_database: "{{
 | 
			
		||||
	}[matrix_mautrix_twitter_database_engine]
 | 
			
		||||
}}"
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Can be set to enable automatic double-puppeting via Shared Secret Auth (https://github.com/devture/matrix-synapse-shared-secret-auth).
 | 
			
		||||
matrix_mautrix_twitter_login_shared_secret: ''
 | 
			
		||||
 | 
			
		||||
matrix_mautrix_twitter_bridge_login_shared_secret_map: "{{ {matrix_mautrix_twitter_homeserver_domain: matrix_mautrix_twitter_login_shared_secret} if matrix_mautrix_twitter_login_shared_secret else {} }}"
 | 
			
		||||
matrix_mautrix_twitter_bridge_login_shared_secret_map: "{{ matrix_mautrix_twitter_bridge_login_shared_secret_map_auto | combine(matrix_mautrix_twitter_bridge_login_shared_secret_map_custom) }}"
 | 
			
		||||
matrix_mautrix_twitter_bridge_login_shared_secret_map_auto: {}
 | 
			
		||||
matrix_mautrix_twitter_bridge_login_shared_secret_map_custom: {}
 | 
			
		||||
 | 
			
		||||
matrix_mautrix_twitter_appservice_bot_username: twitterbot
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -13,3 +13,12 @@
 | 
			
		||||
    - {'name': 'matrix_mautrix_twitter_container_network', when: true}
 | 
			
		||||
    - {'name': 'matrix_mautrix_twitter_metrics_proxying_hostname', when: "{{ matrix_mautrix_twitter_metrics_proxying_enabled }}"}
 | 
			
		||||
    - {'name': 'matrix_mautrix_twitter_metrics_proxying_path_prefix', when: "{{ matrix_mautrix_twitter_metrics_proxying_enabled }}"}
 | 
			
		||||
 | 
			
		||||
- name: (Deprecation) Catch and report renamed mautrix-twitter variables
 | 
			
		||||
  ansible.builtin.fail:
 | 
			
		||||
    msg: >-
 | 
			
		||||
      Your configuration contains a variable, which now has a different name.
 | 
			
		||||
      Please change your configuration to rename the variable (`{{ item.old }}` -> `{{ item.new }}`).
 | 
			
		||||
  when: "item.old in vars"
 | 
			
		||||
  with_items:
 | 
			
		||||
    - {'old': 'matrix_mautrix_twitter_login_shared_secret', 'new': '<removed>'}
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user