How can the user send email to me from my app ?
-
Like this one
https://github.com/xcoder123/SimpleSmtp_SSL_QT5 -
I actually want to create a forum which has To, From, Subject and body in it and i want user to just type his/her email in the 'From' section and whenever he/she clicks on submit button the mail should get forwarded to me. I don't want him/her to login by giving their email and password i just want them to send me the mail by just mentioning their email address. Is that possible ?
-
@Ahti
Well you own app can allow sending email, however you like.
BUT the server you are using for sending the emails demands login.
So your app must login it self for it to send any emails.
Due to spam, there are very few mail servers that allows sending email
anonymously these days. -
Have you registered to any email service ?
-
When there is a library that is considered standard I tend to suggest it over some 1-man-wrapper. Not because the latter is bad but it's so much easier to find docs/examples/support when a library is very popular.
This leads me to libcurl (there are some relatively active C++ bindings like https://github.com/JosephP91/curlcpp but the core C api should be more than enough for what you are trying to do)
Here you can find an example of sending an email using gmail
-
@Ahti Your users will use their email address only to login to you forum.
Now that you have email service and a registered user to use that service, your users will use this email user to send email to you.
You should probably maintain multiple users in case if you have a large userbase. -
@Ahti said in How can the user send email to me from my app ?:
Okay guys tell me how can i simply let user to login to his/her email from my app and then let them send email to me ?
This is even harder as you should know their mail server and sometimes you cannot really access it (for example if they use a private MS exchange server)
I put here another example with libcurl: https://curl.haxx.se/libcurl/c/smtp-mail.html
If you think it's not for you then the easy route is using
QDesktopServices::openUrl("mailto:youremail@address.com");
-
@Ahti Why not just let the user use their preferred EMail client to send an EMail to you? See http://stackoverflow.com/questions/28674805/open-default-mail-app-from-within-qt-with-some-html
It is much easier and the user can use his/her EMail client.
You still can have a form in your app (I guess you meant form not forum?), but then you pass that data via a mailto: URL to the system, which then opens the standard EMail client and fill the data user entered in your form. -
@jsulm
Okay why would he has to login from the broswer and then use my app to send email to me ? Can't he simply login to his email account from my app and send mail to me from my app ? And yes i meant form not forum sorry for the mistake. And i used that "QDesktopService..." And it opens up MS outlook. -
Ok. listen. we need to talk about sending emails.
A program cannot just send email. It need the help of
a mail server. That is another PC that has a post office program.
Like GMAIL is. its a mail service.So for your program to send mails, you need to send via such server.
That can happen
1: You pop outlook via QDesktopService and the mail is sent over whatever server outlook is using.
2: You send via a google account that your program knows username and password for.
So before sending email via GOOGLE you will login to this account inside the program.
This is part of the SMTP protocol.3: You use some online mail service where you can send email via some API.
You could also ask user to login to his mail service but I would never give my password to any unknown program so it's not a good solution and also teaches the users to do stupid things.
So the part you need to understand is that Sending email demands that the MAIL server knows who u are. So the programs need to supply username and password to the MAil server
to be allowed to send anything.