Send any form (HTTP POST, HTML) to an encrypted matrix room, used as part of etke.cc service.
- End-to-End encryption
- Receive any HTTP POST request as form submission in a matrix room
env vars
- BUSCARRON_HOMESERVER - homeserver url, eg:
https://matrix.example.com - BUSCARRON_LOGIN - user login/localpart, eg:
buscarron - BUSCARRON_PASSWORD - user password
- BUSCARRON_NAME_ROOM - Matrix Room ID of the
nameform - BUSCARRON_NAME_REDIRECT - URL to redirect after handling form
namedata submission, supports go template vars from submission data (egemailfield can be added to the redirect string as{{ .email }})
- BUSCARRON_NAME_REDIRECT_REJECT - URL to redirect after handling form
name(doesn't support templates) for rejected submissions - BUSCARRON_NAME_RATELIMIT - rate limit of the form, format:
<max requests>r/<interval:s,m>, eg:1r/s,54r/m,7r/h - BUSCARRON_NAME_RATELIMIT_SHARED - enable shared rate limit between forms with that option enabled
- BUSCARRON_NAME_HASEMAIL - if the form has an
emailfield and you want to enforce email validation - BUSCARRON_NAME_HASDOMAIN - if the form has a
domainfield and you want to enforce domain validation - BUSCARRON_NAME_EXTENSIONS - space-separated list of the form extensions, allowed values:
confirmation - BUSCARRON_NAME_TEXT - custom form text, supports go template vars from submission data (e.g.,
emailfield can be displayed as{{ .email }}) - BUSCARRON_NAME_CONFIRMATION_SUBJECT - confrimation email subject, supports go template vars from submission data (eg
emailfield can be added to subject as{{ .email }}). Requiresconfirmationextension in theBUSCARRON_NAME_EXTENSIONSlist and postmark (or SMTP) configuration - BUSCARRON_NAME_CONFIRMATION_BODY - confrimation email body, supports go template vars from submission data (eg
emailfield can be added to body as{{ .email }}). Requiresconfirmationextension in theBUSCARRON_NAME_EXTENSIONSlist and postmark (or SMTP) configuration
- Add form name to BUSCARRON_LIST, eg:
export BUSCARRON_LIST="form1 form2") - Add form config, eg:
export BUSCARRON_FORM1_REDIRECT=https://http.cat/200 - Send POST request to the
http://127.0.0.1:8080/name
- BUSCARRON_SENTRY - sentry DSN
- BUSCARRON_HC_URL - healthchecks.io URL, default:
https://hc-ping.com - BUSCARRON_HC_UUID - healthchecks.io check UUID
- BUSCARRON_LOGLEVEL - log level
- BUSCARRON_DB_DSN - database connection string
- BUSCARRON_DB_DIALECT - database dialect (postgres, sqlite3)
- BUSCARRON_SPAMLIST - list of spam emails with wildcards, eg:
export BUSCARRON_SPAMLIST=*@spammer.com annoy@gmail.com spammer@* - BUSCARRON_BAN_SIZE - jail size of banned users
- BUSCARRON_BAN_LIST - list of IP hashes / IDs for permanent ban
- BUSCARRON_PM_TOKEN - Postmark server token
- BUSCARRON_PM_FROM - Postmark sender signature
- BUSCARRON_PM_REPLYTO - reply-to email header
- BUSCARRON_SMTP_FROM - email address (from) for SMTP validation and the From address of sent mail when SMTP sending is enabled. Must be valid email on valid SMTP server, otherwise it will be rejected by other servers
- BUSCARRON_SMTP_VALIDATION - enforce SMTP validation
- BUSCARRON_SMTP_HOST - SMTP server host for sending mail; when set, mail is sent via SMTP instead of Postmark
- BUSCARRON_SMTP_PORT - SMTP server port, default:
587 - BUSCARRON_SMTP_LOGIN - SMTP login
- BUSCARRON_SMTP_PASSWORD - SMTP password
- BUSCARRON_SMTP_REPLYTO - reply-to email header for SMTP-sent mail
- BUSCARRON_METRICS_LOGIN - /metrics login
- BUSCARRON_METRICS_PASSWORD - /metrics password
- BUSCARRON_METRICS_IPS - /metrics allowed ips
- BUSCARRON_REDMINE_HOST - redmine host, e.g.
https://redmine.example.com - BUSCARRON_REDMINE_APIKEY - redmine API key
- BUSCARRON_REDMINE_PROJECT - redmine project identifier, e.g.
internal-project - BUSCARRON_REDMINE_TRACKERID - redmine tracker ID, e.g.
1 - BUSCARRON_REDMINE_STATUSID - redmine status ID, e.g.
1
You can find default values in config/defaults.go