module
Version:
v2.2.2
Opens a new window with list of versions in this module.
Published: Jan 10, 2022
License: MIT
Opens a new window with license information.
README
¶
Mother Miounne 

more about that name
A bridge between matrix and external services, used as automation backend of etke.cc service.
Features
External services to matrix
- Any HTML form (actually, any HTTP POST form) to matrix room, through bot and/or appservice-webhooks
- buymeacoffee API integration (list members, supporters and extras purchases) and notifications
- flexible rate limiter (per item)
- antispam module (honeypot, blocklists and DNS lookups)
Configuration
done via env vars:
http server (optional)
- MIOUNNE_LOG_LEVEL - log level, default:
INFO
- MIOUNNE_LOG_IP - if you want log users IPs, set to
1
to enable
- MIOUNNE_SERVER_PORT - HTTP server port, default: 8080
- MIOUNNE_FREQUENCY - dealy between background checks (eg: notifications) in minutes, default:
10
Buymeacoffee (optional)
- MIOUNNE_BMC_TOKEN - buymeacoffee API token
- MIOUNNE_BMC_ROOM - Matrix Room ID to use as admin room, you should create it yourself and invite Miounne
- MIOUNNE_BMC_NOTIFY_MEMBERS - notify about new members and new canceled/unsubscribed members, set to
1
to enable
- MIOUNNE_BMC_NOTIFY_EXTRAS - notify about new extras purchases, set to
1
to enable
- MIOUNNE_BMC_NOTIFY_SUPPORTERS - notify about new one-time supporters, set to
1
to enable
Matrix
Matrix bot
- MIOUNNE_MATRIX_HOMESERVER - homeserver url, eg:
https://matrix.example.com
- MIOUNNE_MATRIX_USER_LOGIN - user localpart/login (eg:
miounne
)
- MIOUNNE_MATRIX_USER_PASSWORD - user password
- MIOUNNE_MATRIX_USER_DISPLAYNAME - (optional) display name of the matrix user, default:
Mother Miounne
matrix-registration (optional, set only if you want matrix-registration integration)
- MIOUNNE_MATRIX_REGISTRATION_URL - matrix-registration API URL/endpoint, note: you MUST set url with
/api
for newer versions of matrix-registration.
- MIOUNNE_MATRIX_REGISTRATION_ROOM - matrix-registration admin room ID, you should create that room yourself and invite Miounne
- MIOUNNE_MATRIX_REGISTRATION_SECRET - matrix-registration admin shared secret
- MIOUNNE_MATRIX_REGISTRATION_NOTIFY_NEW - send notifications about new invite tokens created
- MIOUNNE_MATRIX_REGISTRATION_NOTIFY_USE - send notifications after somebody uses an invite token
Antispam (optional)
env vars:
- MIOUNNE_SPAM_EMAILS - list of spammers' email addresses, eg:
imaspammer@gmail.com honestlynotspammer@gmail.com
- MIOUNNE_SPAM_HOSTS - list of spammers' hosts, eg:
google.com microsoft.com
env vars:
- MIOUNNE_FORMS_NAME_URL - Matrix webhook url of the
name
form (use instead of room ID)
- MIOUNNE_FORMS_NAME_ROOM - Matrix Room ID of the
name
form (use instead of webhook)
- MIOUNNE_FORMS_NAME_IMG - Matrix webhook avatar url of the
name
form
- MIOUNNE_FORMS_NAME_FIELDS - List of fields of the
name
form, eg: name email notes
- MIOUNNE_FORMS_NAME_REDIRECT - URL to redirect after handling form
name
data
- MIOUNNE_FORMS_NAME_HONEYPOT - honeypot field name of the
name
form
- MIOUNNE_FORM_NAME_EXTENSIONS - list of form extensions of the
name
form
- MIOUNNE_FORM_NAME_RATELIMIT - rate limit of the form, format:
<max requests>r/<interval:s,m>
, eg: 1r/s
or 54r/m
- Add form name to MIOUNNE_FORMS, eg:
export MIOUNNE_FORMS="form1 form2"
)
- Add form config, eg:
export MIOUNNE_FORMS_FORM1_IMG=https://http.cat/200
Where to get
Binary releases, docker registry, etke.cc
Directories
¶
Package main represends command-line tool
|
Package main represends command-line tool |
Package configuration represents config management
|
Package configuration represents config management |
|
|
Package models represents...
|
Package models represents... |
Package repositories represents data storage/source for miounne
|
Package repositories represents data storage/source for miounne |
formext
Package formext represents form extensions
|
Package formext represents form extensions |
Package services represents used services
|
Package services represents used services |
|
|
Click to show internal directories.
Click to hide internal directories.