Skip to main content

A postman helps you to send cold mails

Project description

cold-postman

cold_postman is a marketing tool to help users write cold mails in markdown and send them via a manageable csv file.

Installation

pip install cold_postman

Initialize the config

python -m cold_postman init db 
python -m cold_postman init config 

About config.yaml

batch_num: 10 # mails sent per batch
password: ''  # password 
smtp_port: 587 # port
smtp_server: smtp.example.com # smtp server
user: 'example@example.com' # user mail
from: 'Mr.Example' 
unsubscribe:
  link: mailto:example@example.com # The link for List-Unsubscibe.
  subject: Unsubscribe # The subject if is a mailto link.
  message: I'd like to unsubscribe. # Default message of the mail.

About control csv

Control csv is the receiver list. Columns decribed as below:

  • first_name: First name of the receiver.
  • last_name: Last name of the receiver.
  • email: Receiver's mail address.
  • last_sent: Timestamp of last contact.
  • enabled: (int) [1, 0], 1=enabled. 0=disabled, which will be skiped while executing.

Send Mail

Command to start the sending task:

# usage: __main__.py [-h] [-c CONFIG] [-d CRMDB] -m MESSAGE -t TITLE -s SIGNATURE [-a ATTACH]

# options:
#   -h, --help            show this help message and exit
#   -c CONFIG, --config CONFIG
#                         (Filepath) The file path of the config.
#   -d CRMDB, --crmdb CRMDB
#                         (Filepath) The file path of the crm DB.
#   -m MESSAGE, --message MESSAGE
#                         (Filepath) REQUIRED. The email content in markdown.
#   -t TITLE, --title TITLE
#                         (str) REQUIRED. The email title
#   -s SIGNATURE, --signature SIGNATURE
#                         (Filepath) REQUIRED. The signature in markdown
#   -a ATTACH, --attach ATTACH
#                         (Filepath) The attachment. 
#   -u UNSUBSCRIBE, --unsubscribe UNSUBSCRIBE
#                         (Bool) [True, False] Enable a unsubscribe link. Default=True
#   -i INTERVAL, --interval INTERVAL
#                         (Int) Interval (secs) between batchs. Default=10
python -m cold_postman -m message.md -t 'Subject of the Mail' -s signature.md -a attachment.zip

Prepare a markdown content

The markdown content is converted to rtf via markdown2, which supports all the stardard syntax.

The image wrapped in inline has to be written as following syntax.

![image_cid](file_path.png)

The alternative description will be applied as a cid in rtf, so please name it carefully and DO NOT be duplicated. To prevent from missing image, an absolute file path is recommended for attached image.

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

cold_postman-0.1.7.tar.gz (7.5 kB view details)

Uploaded Source

Built Distribution

cold_postman-0.1.7-py3-none-any.whl (9.1 kB view details)

Uploaded Python 3

File details

Details for the file cold_postman-0.1.7.tar.gz.

File metadata

  • Download URL: cold_postman-0.1.7.tar.gz
  • Upload date:
  • Size: 7.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.5.1 CPython/3.10.11 Darwin/22.6.0

File hashes

Hashes for cold_postman-0.1.7.tar.gz
Algorithm Hash digest
SHA256 2ca3586a5d41e9bdf977deb6f9c2177583806400d8238e3e9657280aba67768e
MD5 e43e0ec3d6b339989cbae36501f26017
BLAKE2b-256 ecedb102458d2139bd6285b08799fd12c0f776bb5d803a11bb7576c0fca9891d

See more details on using hashes here.

Provenance

File details

Details for the file cold_postman-0.1.7-py3-none-any.whl.

File metadata

  • Download URL: cold_postman-0.1.7-py3-none-any.whl
  • Upload date:
  • Size: 9.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.5.1 CPython/3.10.11 Darwin/22.6.0

File hashes

Hashes for cold_postman-0.1.7-py3-none-any.whl
Algorithm Hash digest
SHA256 4bb12a71188bc0bd98b86bd05f955abbb70f130471b34f4ba981f02e0d6769ef
MD5 13bc6f17cd69d29d82bd02ccbcd40cbe
BLAKE2b-256 0e3047be908b8edb9754e1dc11aaed8e684278f5c7a7b63da4e75cd003480dd9

See more details on using hashes here.

Provenance

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