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: 18 days 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 (about 13 years ago)
- Default Branch: v2.0
- Last Pushed: 2024-09-09T09:17:36.000Z (2 months ago)
- Last Synced: 2024-09-10T09:47:48.906Z (2 months ago)
- Language: C++
- Homepage: https://github.com/bluetiger9/SmtpClient-for-Qt/wiki
- Size: 333 KB
- Stars: 449
- Watchers: 53
- Forks: 227
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
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**