A dangerous and probably broken SMTP proxy that attempts to keep you sane
Project description
An SMTP proxy built around inbox.py which attempts to maintain some sanity as your servers begin to send thousands of emails just cause.
The basic premise is emails from a given server or process will happen, but all 1300 aren’t really necessary right this instant. god forbid if you pay by the smtp delivery.
Installation
pip install opstacle
Configuration
opstacle is configured only by environment variables, and our contestants are:
Pretty things
OPSTACLE_FROM_ADDRESS
Most messages will be simply relayed without modification, but we need our own name when we send rolled up emails
Sample Value: “Opstacle opstacle@opstacle.io”
Threshold configuration
OPSTACLE_INTERVAL
Interval to keep counters when messages have been sent, in seconds
Sample Value: 30
OPSTACLE_MESSAGE_CAP
Max number of messages to send in a given OPSTACLE_INTERVAL
Sample Value: 5
“Fake” SMTP server (where opstacle will listen)
OPSTACLE_LISTEN_HOST
Sample Value: “127.0.0.1”
OPSTACLE_LISTEN_PORT
Sample Value: 9025
“Real” SMTP server
OPSTACLE_SMTP_USER
Sample Value: “postmaster@smtp.opstacle.org”
OPSTACLE_SMTP_PASS
Sample Value: “stopTheInsanity”
OPSTACLE_SMTP_HOST
Sample Value: “smtp.opstacle.org”
OPSTACLE_SMTP_PORT
Sample Value: “587”
Running
Once installed, opstacle can be invoked by calling opstacle.
Logs are spit directly to YOU! Right there on STDOUT, and no you can’t turn them down
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file opstacle-1.0.1.tar.gz
.
File metadata
- Download URL: opstacle-1.0.1.tar.gz
- Upload date:
- Size: 4.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a8b8187866a237db8203ec485729e62885f0baa849dae710de949a3c3703e968 |
|
MD5 | 2545adeef798bf438097aea941956ce7 |
|
BLAKE2b-256 | 3b7fc7ccf577f50418b26c86f33c3837db3bb2371057baf9bb1a7948bf0ddab9 |