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

# Application service host/registration related details.
# Changing these values requires regeneration of the registration.
appservice:
  # The address that the homeserver can use to connect to this appservice.
  address: http://localhost:8080

  # The hostname and port where this appservice should listen.
  hostname: 0.0.0.0
  port: 8080

  # Database config.
  database:
    # The database type. Only "sqlite3" is supported.
    type: sqlite3
    # The database URI. Usually file name. https://github.com/mattn/go-sqlite3#connection-string
    uri: mautrix-whatsapp.db
  # Path to the Matrix room state store.
  state_store_path: ./mx-state.json

  # The unique ID of this appservice.
  id: whatsapp
  # Appservice bot details.
  bot:
    # Username of the appservice bot.
    username: whatsappbot
    # Display name and avatar for bot. Set to "remove" to remove display name/avatar, leave empty
    # to leave display name/avatar as-is.
    displayname: WhatsApp bridge bot
    avatar: mxc://maunium.net/NeXNQarUbrlYBiPCpprYsRqr

  # Authentication tokens for AS <-> HS communication. Autogenerated; do not modify.
  as_token: "This value is generated when generating the registration"
  hs_token: "This value is generated when generating the registration"

# Bridge config. Currently unused.
bridge:
  # Localpart template of MXIDs for WhatsApp users.
  # {{.}} is replaced with the phone number of the WhatsApp user.
  username_template: whatsapp_{{.}}
  # Displayname template for WhatsApp users.
  # {{.Notify}} - nickname set by the WhatsApp user
  # {{.Jid}}    - phone number (international format)
  # The following variables are also available, but will cause problems on multi-user instances:
  # {{.Name}}   - display name from contact list
  # {{.Short}}  - short display name from contact list
  displayname_template: "{{if .Notify}}{{.Notify}}{{else}}{{.Jid}}{{end}} (WA)"

  # The prefix for commands. Only required in non-management rooms.
  command_prefix: "!wa"

  # Permissions for using the bridge.
  # Permitted values:
  #     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:
    "example.com": user
    "@admin:example.com": admin

# Logging config.
logging:
  # The directory for log files. Will be created if not found.
  directory: ./logs
  # Available variables: .Date for the file date and .Index for different log files on the same day.
  file_name_format: "{{.Date}}-{{.Index}}.log"
  # Date format for file names in the Go time format: https://golang.org/pkg/time/#pkg-constants
  file_date_format: 2006-01-02
  # Log file permissions.
  file_mode: 0600
  # Timestamp format for log entries in the Go time format.
  timestamp_format: Jan _2, 2006 15:04:05
  # Minimum severity for log messages.
  # Options: debug, info, warn, error, fatal
  print_level: debug
