c언어로 e-mail 발송하기

mousemax의 이미지

linux에서 seral port에 마이컴(AVR)을 연결하고
마이컴에연결된 센서를 비교해서 자동으로e-mail를 발송하려하는데 c언어로 어떻게 e-mail를 발송할 수 있는지 모르겠네요
아직 어떤 mail서버를 사용할지도 결정 못했지만 조언 부탁 드립니다.

cdpark의 이미지

1. SMTP 프로토콜을 구현
2. /usr/sbin/sendmail을 호출
3. /usr/bin/mail 프로그램을 호출 (혹은 /usr/bin/mutt를 호출)

아래로 갈수록 더 간단합니다. 주기적으로 E-mail을 보내는 거라면 3번을 추천합니다.

mousemax의 이미지

cdpark 님 답변에 감사 드리고요 ^^
다시 한번 질문 이요..

인터넷을 찾다보니 밑에 사이트에
http://bluemank.home.uos.ac.kr/moony_home/linux/work/MUA.htm
소스는:
http://bluemank.home.uos.ac.kr/moony_home/linux/work/MUA/mailsend.c
1. SMTP 프로토콜을 구현
방법이 있는것 같은데 프로그램 소스가 이해가 안가는 군요..
2,3 번 방법으로 하면 좋겠는데
제가 linux에서 serial port를 감시 하는 프로그램을 돌리면서
특점 data가 들어오면 mail를 전송하려하거든요 c 프로그램 안에서 sendmail이나 mail를 호출 할수 있나요?
호출 할수 있나면 좀 구체적으로 어떻게 하는건가요,

익명 사용자의 이미지

pipe 를 사용하면 간단하게 sendmail 을 이용하여 바로 보낼 수 있습니다.

좋은 코드는 아니지만..

FILE * fp = NULL;
fp = popen("/usr/lib/sendmail -t -i","w");
	
fprintf(fp,"From:%s\r\n" ,"abcd@efgh.com");
fprintf(fp,"To:%s\r\n" ,"wow@wow.com");
fprintf(fp,"Subject:%s\r\n" ,"메일주소여기 으흐흐");
fprintf(fp,"Content-type: text/html; charset=euc_kr\r\n\r\n");

fprintf(fp,"어쩌구 저쩌구 갑돌아~!<BR><BR>\n");
fprintf(fp,"메일 내용 여기저기 쒈라 쒈라.<BR>\n");

pclose(fp);

가 예가 될 수 있겠죠..

litdream의 이미지

저는 지금까지 임시로 텍스트버퍼에 메세지를 쓴후, exec() 계열로
"mail email@domain" 으로 보냈는데, popen 이라는 좋은 방법이 있었군요.
한수 배우고 갑니다.

삽질의 대마왕...

익명 사용자의 이미지

궁굼한게 잇는데요 위에 소스나 답글내용을 보니 메일만 주고 받을수 잇는것같은데요,,
혹시 이메일에 파일도 첨부해서 보낼수 있나요?
만약에 된다면 용량 어느정도 까지 가능할가요?

답변주시면 정말감사하겠습니다,,,

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.