image:
  repository: dock.mau.dev/tulir/mautrix-whatsapp
  tag: latest
  pullPolicy: IfNotPresent

nameOverride: ""
fullnameOverride: ""

serviceAccount:
  # Specifies whether a service account should be created
  create: true
  # The name of the service account to use.
  # If not set and create is true, a name is generated using the fullname template
  name:

service:
  type: ClusterIP
  port: 29318

resources: {}
  # limits:
  #   cpu: 100m
  #   memory: 128Mi
  # requests:
  #   cpu: 100m
  #   memory: 128Mi

nodeSelector: {}

tolerations: []

affinity: {}

# Postgres pod configs
postgresql:
  enabled: true
  postgresqlDatabase: mxwa
  postgresqlPassword: SET TO RANDOM STRING
  persistence:
    size: 2Gi
  resources:
    requests:
      memory: 256Mi
      cpu: 100m

# Homeserver details
homeserver:
  # The address that this appservice can use to connect to the homeserver.
  address: https://example.com
  # The domain of the homeserver (for MXIDs, etc).
  domain: example.com

# Application service host/registration related details
# Changing these values requires regeneration of the registration.
appservice:
  id: whatsapp
  botUsername: whatsappbot
  # Display name and avatar for bot. Set to "remove" to remove display name/avatar, leave empty
  # to leave display name/avatar as-is.
  botDisplayname: WhatsApp bridge bot
  botAvatar: mxc://maunium.net/NeXNQarUbrlYBiPCpprYsRqr

  # Authentication tokens for AS <-> HS communication.
  asToken: SET TO RANDOM STRING
  hsToken: SET TO RANDOM STRING

# The keys below can be used to override the configs in the base config:
# https://github.com/tulir/mautrix-whatsapp/blob/master/example-config.yaml
# Note that the "appservice" and "homeserver" sections are above and slightly different than the base.

# Bridge config
bridge:
  # Localpart template of MXIDs for WhatsApp users.
  # {{.}} is replaced with the phone number of the WhatsApp user.
  username_template: whatsapp_{{.}}

  # Number of chats to sync for new users.
  initial_chat_sync_count: 10
  # Number of old messages to fill when creating new portal rooms.
  initial_history_fill_count: 20
  # 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

  # 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

  # Allow invite permission for user. User can invite any bots to room with whatsapp
  # users (private chat and groups)
  allow_user_invite: true

  # 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 WhatsApp account.
  #    admin - User level and some additional administration tools
  # Permitted keys:
  #        * - All Matrix users
  #   domain - All users on that homeserver
  #     mxid - Specific user
  permissions:
    "*": relaybot
    "example.com": user
    "@admin:example.com": admin

  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: !foo:example.com
    # List of users to invite to all created rooms that include the relaybot.
    invites: []
    # The formats to use when sending messages to WhatsApp 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:
  timestamp_format: Jan _2, 2006 15:04:05
  print_level: debug