Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/bluetiger9/SmtpClient-for-Qt
An SMTP Client writen in C++ for Qt. Allows applications to send emails (MIME with text, html, attachments, inline files, etc.) via SMTP. Supports SSL and SMTP authentication.
https://github.com/bluetiger9/SmtpClient-for-Qt
Last synced: 3 months ago
JSON representation
An SMTP Client writen in C++ for Qt. Allows applications to send emails (MIME with text, html, attachments, inline files, etc.) via SMTP. Supports SSL and SMTP authentication.
- Host: GitHub
- URL: https://github.com/bluetiger9/SmtpClient-for-Qt
- Owner: bluetiger9
- License: lgpl-2.1
- Created: 2011-08-30T16:15:05.000Z (almost 13 years ago)
- Default Branch: v2.0
- Last Pushed: 2024-01-09T11:35:39.000Z (5 months ago)
- Last Synced: 2024-01-22T01:31:02.868Z (5 months ago)
- Language: C++
- Homepage: https://github.com/bluetiger9/SmtpClient-for-Qt/wiki
- Size: 312 KB
- Stars: 420
- Watchers: 52
- Forks: 223
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Lists
- awesome-android-cpp - bluetiger9/SmtpClient-for-Qt - An SMTP Client writen in C++ for Qt. Allows applications to send emails (MIME with text, html, attachments, inline files, etc.) via SMTP. Supports SSL and SMTP authentication. (TODO scan for Android support in followings)
README
SMTP Client for Qt (C++) - Version 2.0 ![Linux Build](https://github.com/bluetiger9/SmtpClient-for-Qt/actions/workflows/linux-build.yml/badge.svg)
=============================================The SmtpClient for Qt is small library written for Qt 5 / 6 (C++ version) that allows application to send complex emails (plain text, html, attachments, inline files, etc.) using the Simple Mail Transfer Protocol (SMTP).
## New in version 2.0:
- Asynchronous & Synchronous working mode- Qt5/6 compatibility
- Building as a shared library
- code of SmtpClient refactored and partially rewrited
## New in version 1.1:
- TLS (STARTTLS) connection is now supported
- multiple types of recipients (to, cc, bcc)
- nested mime emails (mixed/alternative, mixed/related)
- output compilant with RFC2045
## SMTP Client for Qt supports
- TCP and SSL connections to SMTP servers
- SMTP authentication (PLAIN and LOGIN methods)
- sending MIME emails (to multiple recipients)
- plain text and HTML (with inline files) content in emails
- multiple attachments and inline files (used in HTML)
- different character sets (ascii, utf-8, etc) and encoding methods (7bit, 8bit, base64)
- error handling
## Examples
Lets see a simple example:
```c++
#include
#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
// Now we create a MimeMessage object. This is the email.
MimeMessage message;
EmailAddress sender("[email protected]", "Your Name");
message.setSender(sender);EmailAddress to("[email protected]", "Recipient's Name");
message.addRecipient(to);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
SmtpClient smtp("smtp.gmail.com", 465, SmtpClient::SslConnection);smtp.connectToHost();
if (!smtp.waitForReadyConnected()) {
qDebug() << "Failed to connect to host!";
return -1;
}smtp.login("[email protected]", "your_password");
if (!smtp.waitForAuthenticated()) {
qDebug() << "Failed to login!";
return -2;
}smtp.sendMail(message);
if (!smtp.waitForMailSent()) {
qDebug() << "Failed to send mail!";
return -3;
}smtp.quit();
}
```For more examples see the [Wiki/Examples](https://github.com/bluetiger9/SmtpClient-for-Qt/wiki/Examples).
## License
This project (all files including the demos/examples) is licensed under the GNU LGPL, version 2.1.
**Copyright (c) 2014-2022 - Attila Tőkés**