# Host for the SMTP server where you're going to receive email notifications
HICHIPBRIDGE_SMTP_HOST=smtp-server.example.com
# MQTT broker endpoint
HICHIPBRIDGE_MQTT_BROKER=mqtt://mqtt-broker.example.com:1883
# MQTT client id
HICHIPBRIDGE_MQTT_CLIENTID=hichipbridge
# MQTT username
HICHIPBRIDGE_MQTT_USERNAME=user
# MQTT password
HICHIPBRIDGE_MQTT_PASSWORD=password
# Prefix for the MQTT topics where events will be saved
HICHIPBRIDGE_MQTT_TOPIC=hichipbridge
# Token for the email notifications
HICHIPBRIDGE_EMAIL_TOKEN=superconfidentialtoken;)
# Whether images should be saved in a S3 storage bucket (true/false)
HICHIPBRIDGE_S3_ENABLED=false
# The S3 storage endpoint
HICHIPBRIDGE_S3_ENDPOINT=s3.example.com
# The S3 access key ID
HICHIPBRIDGE_S3_ACCESS_KEY=username
# The S3 secret access key
HICHIPBRIDGE_S3_SECRET_KEY=password
# Whether S3 uses SSL (true/false)
HICHIPBRIDGE_S3_USE_SSL=true
# The S3 bucket name
HICHIPBRIDGE_S3_BUCKET=hichipbridge
