fix: telegram bot - hacking it until it runs
This commit is contained in:
parent
467a35e7b9
commit
dd4841dbe0
|
@ -77,3 +77,5 @@ ENCRYPTED_BY_DEFAULT=all
|
||||||
#SECRET_TELEGRAM_DB_PASSWORD_VERSION=v1
|
#SECRET_TELEGRAM_DB_PASSWORD_VERSION=v1
|
||||||
#SECRET_TELEGRAM_API_HASH_VERSION=v1
|
#SECRET_TELEGRAM_API_HASH_VERSION=v1
|
||||||
#SECRET_TELEGRAM_BOT_TOKEN_VERSION=v1
|
#SECRET_TELEGRAM_BOT_TOKEN_VERSION=v1
|
||||||
|
#SECRET_TELEGRAM_AS_TOKEN_VERSION=v1
|
||||||
|
#SECRET_TELEGRAM_HS_TOKEN_VERSION=v1
|
||||||
|
|
13
README.md
13
README.md
|
@ -82,5 +82,18 @@ This could be implemented in this recipe but we haven't merged it in yet. Change
|
||||||
|
|
||||||
### Telegram bridging
|
### Telegram bridging
|
||||||
|
|
||||||
|
> WIP
|
||||||
|
|
||||||
|
Setting it up is a bit of a chicken/egg & chasing cats moment. Here is a rough guide:
|
||||||
|
|
||||||
|
- `abra app secret generate -a <domain>` (generates invalid secret values)
|
||||||
|
- `abra app deploy <domain>`
|
||||||
|
- `abra app run matrix.fva.wtf telegram-bridge cat /data/registration.yaml` (get your app service secrets)
|
||||||
|
- `abra app undeploy <domain>`
|
||||||
|
- `abra app secret insert <domain> telegram_as_token v1 <secret>`
|
||||||
|
- `abra app secret insert <domain> telegram_hs_token v1 <secret>`
|
||||||
|
- `abra app deploy <domain>`
|
||||||
|
- ??? api/hash/token ???
|
||||||
|
|
||||||
- [`docs.mau.fi`](https://docs.mau.fi/bridges/python/setup/docker.html?bridge=telegram)
|
- [`docs.mau.fi`](https://docs.mau.fi/bridges/python/setup/docker.html?bridge=telegram)
|
||||||
- [`example-config.yaml`](https://mau.dev/mautrix/telegram/-/blob/master/mautrix_telegram/example-config.yaml)
|
- [`example-config.yaml`](https://mau.dev/mautrix/telegram/-/blob/master/mautrix_telegram/example-config.yaml)
|
||||||
|
|
|
@ -2,8 +2,17 @@
|
||||||
version: "3.8"
|
version: "3.8"
|
||||||
|
|
||||||
services:
|
services:
|
||||||
telegram-bridge:
|
app:
|
||||||
|
environment:
|
||||||
|
- TELEGRAM_APP_SERVICE_ENABLED=1
|
||||||
|
- TELEGRAM_APP_SERVICE_CONFIG=/telegram-data/registration.yaml
|
||||||
|
volumes:
|
||||||
|
- telegram-data:/telegram-data
|
||||||
|
|
||||||
|
telegram_bridge:
|
||||||
image: dock.mau.dev/mautrix/telegram:1f5b91cbec7866663d8dd8f4c9a62115e2905552-amd64
|
image: dock.mau.dev/mautrix/telegram:1f5b91cbec7866663d8dd8f4c9a62115e2905552-amd64
|
||||||
|
depends_on:
|
||||||
|
- telegram_db
|
||||||
configs:
|
configs:
|
||||||
- source: telegram_bridge_yaml
|
- source: telegram_bridge_yaml
|
||||||
target: /data/config.yaml
|
target: /data/config.yaml
|
||||||
|
@ -18,12 +27,16 @@ services:
|
||||||
- TELEGRAM_APP_ID
|
- TELEGRAM_APP_ID
|
||||||
secrets:
|
secrets:
|
||||||
- telegram_api_hash
|
- telegram_api_hash
|
||||||
|
- telegram_as_token
|
||||||
- telegram_bot_token
|
- telegram_bot_token
|
||||||
- telegram_db_password
|
- telegram_db_password
|
||||||
|
- telegram_hs_token
|
||||||
volumes:
|
volumes:
|
||||||
- telegram-data:/data
|
- telegram-data:/data
|
||||||
|
networks:
|
||||||
|
- internal
|
||||||
|
|
||||||
telegram-db:
|
telegram_db:
|
||||||
image: postgres:13-alpine
|
image: postgres:13-alpine
|
||||||
secrets:
|
secrets:
|
||||||
- telegram_db_password
|
- telegram_db_password
|
||||||
|
@ -44,7 +57,7 @@ services:
|
||||||
configs:
|
configs:
|
||||||
telegram_bridge_yaml:
|
telegram_bridge_yaml:
|
||||||
name: ${STACK_NAME}_telegram_bridge_yaml_${TELEGRAM_BRIDGE_YAML_VERSION}
|
name: ${STACK_NAME}_telegram_bridge_yaml_${TELEGRAM_BRIDGE_YAML_VERSION}
|
||||||
file: telegram-bridge.yaml.tmpl
|
file: telegram_bridge.yaml.tmpl
|
||||||
template_driver: golang
|
template_driver: golang
|
||||||
|
|
||||||
volumes:
|
volumes:
|
||||||
|
@ -61,3 +74,9 @@ secrets:
|
||||||
telegram_bot_token:
|
telegram_bot_token:
|
||||||
external: true
|
external: true
|
||||||
name: ${STACK_NAME}_telegram_bot_token_${SECRET_TELEGRAM_BOT_TOKEN_VERSION}
|
name: ${STACK_NAME}_telegram_bot_token_${SECRET_TELEGRAM_BOT_TOKEN_VERSION}
|
||||||
|
telegram_as_token:
|
||||||
|
external: true
|
||||||
|
name: ${STACK_NAME}_telegram_as_token_${SECRET_TELEGRAM_AS_TOKEN_VERSION}
|
||||||
|
telegram_hs_token:
|
||||||
|
external: true
|
||||||
|
name: ${STACK_NAME}_telegram_hs_token_${SECRET_TELEGRAM_HS_TOKEN_VERSION}
|
||||||
|
|
|
@ -1442,9 +1442,10 @@ room_prejoin_state:
|
||||||
|
|
||||||
# A list of application service config files to use
|
# A list of application service config files to use
|
||||||
#
|
#
|
||||||
#app_service_config_files:
|
{{ if eq (env "TELEGRAM_APP_SERVICE_ENABLED") "1" }}
|
||||||
# - app_service_1.yaml
|
app_service_config_files:
|
||||||
# - app_service_2.yaml
|
- "{{ env "TELEGRAM_APP_SERVICE_CONFIG" }}"
|
||||||
|
{{ end }}
|
||||||
|
|
||||||
# Uncomment to enable tracking of application service IP addresses. Implicitly
|
# Uncomment to enable tracking of application service IP addresses. Implicitly
|
||||||
# enables MAU tracking for application service users.
|
# enables MAU tracking for application service users.
|
||||||
|
@ -1885,7 +1886,7 @@ saml2_config:
|
||||||
oidc_providers:
|
oidc_providers:
|
||||||
|
|
||||||
{{ if eq (env "KEYCLOAK_ENABLED") "1" }}
|
{{ if eq (env "KEYCLOAK_ENABLED") "1" }}
|
||||||
- idp_id: {{ env "KEYCLOAK_ID" }}
|
- idp_id: {{ env "KEYCLOAK_ID" }}
|
||||||
idp_name: {{ env "KEYCLOAK_NAME" }}
|
idp_name: {{ env "KEYCLOAK_NAME" }}
|
||||||
issuer: "{{ env "KEYCLOAK_URL" }}"
|
issuer: "{{ env "KEYCLOAK_URL" }}"
|
||||||
client_id: "{{ env "KEYCLOAK_CLIENT_ID" }}"
|
client_id: "{{ env "KEYCLOAK_CLIENT_ID" }}"
|
||||||
|
|
|
@ -24,7 +24,7 @@ homeserver:
|
||||||
# Changing these values requires regeneration of the registration.
|
# Changing these values requires regeneration of the registration.
|
||||||
appservice:
|
appservice:
|
||||||
# The address that the homeserver can use to connect to this appservice.
|
# The address that the homeserver can use to connect to this appservice.
|
||||||
address: http://telegram-bridge:29317
|
address: http://telegram_bridge:29317
|
||||||
# When using https:// the TLS certificate and key files for the address.
|
# When using https:// the TLS certificate and key files for the address.
|
||||||
tls_cert: false
|
tls_cert: false
|
||||||
tls_key: false
|
tls_key: false
|
||||||
|
@ -40,7 +40,7 @@ appservice:
|
||||||
# Format examples:
|
# Format examples:
|
||||||
# SQLite: sqlite:///filename.db
|
# SQLite: sqlite:///filename.db
|
||||||
# Postgres: postgres://username:password@hostname/dbname
|
# Postgres: postgres://username:password@hostname/dbname
|
||||||
database: postgres://telegrambridge:{{ secret "telegram_db_password" }}@telagram-db/telegrambridge
|
database: postgres://telegrambridge:{{ secret "telegram_db_password" }}@telegram_db/telegrambridge
|
||||||
# Additional arguments for asyncpg.create_pool() or sqlite3.connect()
|
# Additional arguments for asyncpg.create_pool() or sqlite3.connect()
|
||||||
# https://magicstack.github.io/asyncpg/current/api/index.html#asyncpg.pool.create_pool
|
# https://magicstack.github.io/asyncpg/current/api/index.html#asyncpg.pool.create_pool
|
||||||
# https://docs.python.org/3/library/sqlite3.html#sqlite3.connect
|
# https://docs.python.org/3/library/sqlite3.html#sqlite3.connect
|
||||||
|
@ -87,8 +87,8 @@ appservice:
|
||||||
ephemeral_events: false
|
ephemeral_events: false
|
||||||
|
|
||||||
# Authentication tokens for AS <-> HS communication. Autogenerated; do not modify.
|
# Authentication tokens for AS <-> HS communication. Autogenerated; do not modify.
|
||||||
as_token: "This value is generated when generating the registration"
|
as_token: "{{ secret "telegram_as_token" }}"
|
||||||
hs_token: "This value is generated when generating the registration"
|
hs_token: "{{ secret "telegram_hs_token" }}"
|
||||||
|
|
||||||
# Prometheus telemetry config. Requires prometheus-client to be installed.
|
# Prometheus telemetry config. Requires prometheus-client to be installed.
|
||||||
metrics:
|
metrics:
|
||||||
|
@ -527,7 +527,7 @@ logging:
|
||||||
file:
|
file:
|
||||||
class: logging.handlers.RotatingFileHandler
|
class: logging.handlers.RotatingFileHandler
|
||||||
formatter: normal
|
formatter: normal
|
||||||
filename: ./mautrix-telegram.log
|
filename: /data/mautrix-telegram.log
|
||||||
maxBytes: 10485760
|
maxBytes: 10485760
|
||||||
backupCount: 10
|
backupCount: 10
|
||||||
console:
|
console:
|
Loading…
Reference in New Issue