Skip to main content

Sends a test email via SMTP, and checks that it was received via IMAP

Project description

This packages sends a test email via SMTP, and checks that it was received via IMAP. Requires Python 3.x, since the stdlib in 2.x is missing too many features in this area.

Usage

Create a configuration file:

[default]
recipient = test@example.com
smtp_host = smtp.example.com:25
imap_host = imap.example.com:143
imap_username = test@example.com
imap_password = secret

Now run mail-check-roundtrip example.conf. It will send a message with a random string in the X-Mailcheck-Token header, and then poll until receive_timeout to see if a message with that string was rececived (this message is then deleted). The exit status is 0 if sucessful, 1 on errors (e.g. connection failed) and 2 if the message could not be found.

Options

The following configuration options are supported and these are their defaults:

[default]
recipient = # REQUIRED
from = # defaults to recipient
headers = # default empty
    Subject: This is a test
    X-Custom-Header: one

smtp_host = localhost:25
smtp_ssl = starttls  # or `ssl` or `none` (not recommended)
smtp_username =
smtp_password =

imap_host = localhost:143
imap_ssl = starttls  # or `ssl` or `none` (not recommended).
imap_username = # REQUIRED
imap_password = # REQUIRED
imap_folder = INBOX

poll_timeout = 60
poll_interval = 10
poll_delete = true  # Delete the message after it was found
loglevel = WARNING  # This means no output for a successful run.

CHANGES

1.0.5 (2023-04-04)

Changes

  • Switch from setup.py to pyproject.toml (wheel)

1.0.5 (2023-04-04)

Changes

  • Switch from setup.py to pyproject.toml (wheel)

1.0.4 (2021-08-15)

  • Reduce loglevel for smtp/imap errors to prevent stdout output.

1.0.3 (2019-02-26)

  • Catch smtp/imap errors and exit, so we don’t produce output on stdout (which is annoying in cronjobs).

1.0.2 (2018-04-08)

  • Fix typo in console script name.

1.0.1 (2018-04-07)

  • Fix typo because smtplib.starttls has context and imaplib.starttls has ssl_context as the kw name, sigh.

1.0.0 (2018-04-07)

  • First release.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ws.mailcheck-1.0.5.tar.gz (4.0 kB view details)

Uploaded Source

Built Distribution

ws.mailcheck-1.0.5-py3-none-any.whl (4.2 kB view details)

Uploaded Python 3

File details

Details for the file ws.mailcheck-1.0.5.tar.gz.

File metadata

  • Download URL: ws.mailcheck-1.0.5.tar.gz
  • Upload date:
  • Size: 4.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-httpx/0.23.3

File hashes

Hashes for ws.mailcheck-1.0.5.tar.gz
Algorithm Hash digest
SHA256 36a64591d521ee5d00a27e27f7b9cfd27dbbbb1de058a4421db01d5a925d6efc
MD5 5d01bd680dbbb8218d3977c2b72b590a
BLAKE2b-256 9a6a9dd30f9788f3b03084a256de8f22ec6c8e445dd3cde8d9c6cd1a904b5cdc

See more details on using hashes here.

File details

Details for the file ws.mailcheck-1.0.5-py3-none-any.whl.

File metadata

File hashes

Hashes for ws.mailcheck-1.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 fb84c9d798aee43914146efbe14678b34657174a1ae5e3e7af12c2dfdf218a49
MD5 5188b74cffc8ad81c4e33941465e010e
BLAKE2b-256 101c8d48c2e08ee74ed9747f3e406871d006e837c96dc4b6d4b2e3b53df1c6ee

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page