Git Product home page Git Product logo

simple-mail's Introduction

SimpleMail Build Status

The SimpleMail is small library writen for Qt 5 (C++11 version) that allows application to send complex emails (plain text, html, attachments, inline files, etc.) using the Simple Mail Transfer Protocol (SMTP).

Features:

  • TCP and SSL connections to SMTP servers (STARTTLS included)

  • SMTP authentication (PLAIN and LOGIN methods)

  • sending MIME emails (to multiple recipients)

  • plain text and HTML (with inline files) content in emails

  • nested mime emails (mixed/alternative, mixed/related)

  • multiple attachments and inline files (used in HTML)

  • different character sets (ascii, utf-8, etc) and encoding methods (7bit, 8bit, base64)

  • multiple types of recipients (to, cc, bcc)

  • error handling

  • output compilant with RFC2045

Examples

Lets see a simple example:

#include <QCoreApplication>
#include "../src/SmtpMime"

int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);

    // This is a first demo application of the SmtpClient for Qt project

    // First we need to create an SmtpClient object
    // We will use the Gmail's smtp server (smtp.gmail.com, port 465, ssl)

    SimpleMail::Sender sender("smtp.gmail.com", 465, SimpleMail::Sender::SslConnection);

    // We need to set the username (your email address) and the password
    // for smtp authentification.

    sender.setUser("[email protected]");
    sender.setPassword("your_password");

    // Now we create a MimeMessage object. This will be the email.

    MimeMessage message;

    message.setSender(EmailAddress("[email protected]", "Your Name"));
    message.addTo(EmailAddress("[email protected]", "Recipient's Name"));
    message.setSubject("SmtpClient for Qt - Demo");

    // Now add some text to the email.
    // First we create a MimeText object.

    MimeText text;

    text.setText("Hi,\nThis is a simple email message.\n");

    // Now add it to the mail

    message.addPart(&text);

    // Now we can send the mail
    sender.sendMail(message);

}

License

This project (all files including the demos/examples) is licensed under the GNU LGPL, version 2.1+.

simple-mail's People

Contributors

bluetiger9 avatar buschmann23 avatar dantti avatar degitx avatar langesebastian avatar ludekvodicka avatar sjinks avatar

Stargazers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.