Matrix Docker Ansible eploy
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

157 lines
7.4 KiB

  1. # matrix-sms-bridge is a Matrix <-> SMS bridge
  2. # See: https://github.com/benkuly/matrix-sms-bridge
  3. matrix_sms_bridge_enabled: true
  4. matrix_sms_bridge_docker_image: "folivonet/matrix-sms-bridge:latest"
  5. matrix_sms_bridge_docker_image_force_pull: "{{ matrix_sms_bridge_docker_image.endswith(':latest') }}"
  6. matrix_sms_bridge_database_docker_image: "neo4j:latest"
  7. matrix_sms_bridge_database_docker_image_force_pull: "{{ matrix_sms_bridge_docker_image.endswith(':latest') }}"
  8. matrix_sms_bridge_base_path: "{{ matrix_base_data_path }}/matrix-sms-bridge"
  9. matrix_sms_bridge_config_path: "{{ matrix_base_data_path }}/matrix-sms-bridge/config"
  10. matrix_sms_bridge_data_path: "{{ matrix_base_data_path }}/matrix-sms-bridge/data"
  11. matrix_sms_bridge_data_log_path: "{{ matrix_base_data_path }}/matrix-sms-bridge/data/log"
  12. matrix_sms_bridge_data_spool_path: "{{ matrix_base_data_path }}/matrix-sms-bridge/data/spool"
  13. matrix_sms_bridge_data_spool_inbox_path: "{{ matrix_base_data_path }}/matrix-sms-bridge/data/spool/inbox"
  14. matrix_sms_bridge_data_spool_inbox_processed_path: "{{ matrix_base_data_path }}/matrix-sms-bridge/data/spool/inbox_processed"
  15. matrix_sms_bridge_data_spool_outbox_path: "{{ matrix_base_data_path }}/matrix-sms-bridge/data/spool/outbox"
  16. matrix_sms_bridge_data_spool_sent_path: "{{ matrix_base_data_path }}/matrix-sms-bridge/data/spool/sent"
  17. matrix_sms_bridge_data_spool_error_path: "{{ matrix_base_data_path }}/matrix-sms-bridge/data/spool/error"
  18. matrix_sms_bridge_database_path: "{{ matrix_base_data_path }}/matrix-sms-bridge/database"
  19. matrix_sms_bridge_appservice_token: ''
  20. matrix_sms_bridge_homeserver_token: ''
  21. matrix_sms_bridge_database_username: 'matrix-sms-bridge'
  22. matrix_sms_bridge_database_password: ''
  23. matrix_sms_bridge_container_http_host_bind_port: ''
  24. # A list of extra arguments to pass to the container
  25. matrix_sms_bridge_container_extra_arguments: []
  26. # List of systemd services that service depends on.
  27. matrix_sms_bridge_systemd_required_services_list: ['docker.service','matrix-sms-bridge-database.service']
  28. matrix_sms_bridge_database_systemd_required_services_list: ['docker.service']
  29. # List of systemd services that service wants
  30. matrix_sms_bridge_systemd_wanted_services_list: []
  31. matrix_sms_bridge_database_systemd_wanted_services_list: []
  32. matrix_sms_bridge_appservice_url: 'http://matrix-sms-bridge:8080'
  33. matrix_sms_bridge_database_url: 'bolt://matrix-sms-bridge-database:7687'
  34. matrix_sms_bridge_homeserver_hostname: 'matrix-synapse'
  35. matrix_sms_bridge_homeserver_port: '8008'
  36. matrix_sms_bridge_homserver_domain: "{{ matrix_domain }}"
  37. matrix_sms_bridge_default_room: ''
  38. matrix_sms_bridge_gammu_modem: ''
  39. matrix_sms_bridge_configuration_yaml: |
  40. #jinja2: lstrip_blocks: "True"
  41. # Database connection
  42. org:
  43. neo4j:
  44. driver:
  45. uri: {{ matrix_sms_bridge_database_url }}
  46. authentication:
  47. username: {{ matrix_sms_bridge_database_username }}
  48. password: {{ matrix_sms_bridge_database_password }}
  49. matrix:
  50. bridge:
  51. sms:
  52. # (optional) SMS messages without a valid token a routed to this room.
  53. # Note that you must invite @smsbot:yourHomeServer to this room.
  54. defaultRoomId: "{{ matrix_sms_bridge_default_room }}"
  55. templates:
  56. # (optional) The message, that will be sent as SMS. Valid placeholders are {sender}, {body} and {token}.
  57. outgoingMessage: "{sender} wrote:\n\n{body}\n\nTo answer to this message add this token to your message: {token}"
  58. # (optional) The message, that will be sent as SMS, when an incoming SMS didn't contain a valid token
  59. # and was routed to a default room. By default no answer will be sent.
  60. answerInvalidTokenWithDefaultRoom: "Your token was invalid. The message will be sent to a default matrix room."
  61. # (optional) The message, that will be sent as SMS, when an incoming SMS didn't contain a valid token
  62. # and no default room is configured.
  63. answerInvalidTokenWithoutDefaultRoom: "Your message did not contain any valid token. Nobody will read your message.",
  64. # (optional) The message, that will be sent to a matrix room, when sending a bridged message via SMS failed.
  65. sendSmsError: "Could not send SMS to this user. Please try it again later."
  66. # (optional) The content of bridged SMS message into the default room. Valid placeholders are {sender} and {body}.
  67. defaultRoomIncomingMessage: "{sender} wrote:\n{body}"
  68. provider:
  69. gammu:
  70. # (optional) default is disabled
  71. enabled: true
  72. # (optional) Path to the Gammu-Inbox directory.
  73. inboxPath: "{{ matrix_sms_bridge_data_spool_inbox_path }}"
  74. # (optional) Path to the directory, where to put processed messages.
  75. inboxProcessedPath: "{{ matrix_sms_bridge_data_spool_inbox_path_processed }}"
  76. bot:
  77. # The domain-part of matrix-ids. E. g. example.org when your userIds look like @unicorn:example.org
  78. serverName: {{ matrix_sms_bridge_homserver_domain }}
  79. client:
  80. homeServer:
  81. # The hostname of your Homeserver.
  82. hostname: {{ matrix_sms_bridge_homeserver_hostname }}
  83. # (optional) The port of your Homeserver. Default is 443.
  84. port: {{ matrix_sms_bridge_homeserver_port }}
  85. # (optional) Use http or https. Default is true (so uses https).
  86. secure: false
  87. # The token to authenticate against the Homeserver.
  88. token: {{ matrix_sms_bridge_appservice_token }}
  89. appservice:
  90. # A unique token for Homeservers to use to authenticate requests to this application service.
  91. hsToken: {{ matrix_sms_bridge_homeserver_token }}
  92. matrix_sms_bridge_configuration_extension_yaml: |
  93. # Your custom YAML configuration goes here.
  94. # This configuration extends the default starting configuration (`matrix_sms_bridge_configuration_yaml`).
  95. #
  96. # You can override individual variables from the default configuration, or introduce new ones.
  97. #
  98. # If you need something more special, you can take full control by
  99. # completely redefining `matrix_sms_bridge_configuration_yaml`.
  100. matrix_sms_bridge_configuration_extension: "{{ matrix_sms_bridge_configuration_extension_yaml|from_yaml if matrix_sms_bridge_configuration_extension_yaml|from_yaml is mapping else {} }}"
  101. matrix_sms_bridge_configuration: "{{ matrix_sms_bridge_configuration_yaml|from_yaml|combine(matrix_sms_bridge_configuration_extension, recursive=True) }}"
  102. matrix_sms_bridge_gammu_configuration: |
  103. [gammu]
  104. Device = /dev/ttyModem
  105. LogFile = {{ matrix_sms_bridge_data_log_path }}/gammu.log
  106. debugLevel = 1
  107. [smsd]
  108. Service = files
  109. LoopSleep = 2
  110. InboxPath = {{ matrix_sms_bridge_data_spool_inbox_path }}
  111. OutboxPath = {{ matrix_sms_bridge_data_spool_outbox_path }}
  112. SentSMSPath = {{ matrix_sms_bridge_data_spool_sent_path }}
  113. ErrorSMSPath = {{ matrix_sms_bridge_data_spool_error_path }}
  114. InboxFormat = detail
  115. OutboxFormat = detail
  116. TransmitFormat = auto
  117. debugLevel = 1
  118. LogFile = {{ matrix_sms_bridge_data_log_path }}/smsd.log
  119. DeliveryReport = log
  120. DeliveryReportDelay = 7200
  121. HangupCalls = 1
  122. CheckBattery = 0
  123. matrix_sms_bridge_registration_yaml: |
  124. id: sms
  125. as_token: "{{ matrix_sms_bridge_appservice_token }}"
  126. hs_token: "{{ matrix_sms_bridge_homeserver_token }}"
  127. namespaces:
  128. users:
  129. - exclusive: true
  130. regex: '^@sms_.+:{{ matrix_sms_bridge_homserver_domain|regex_escape }}$'
  131. url: {{ matrix_sms_bridge_appservice_url }}
  132. sender_localpart: smsbot
  133. rate_limited: false