如何使用Adobe AIR发送电子邮件?

时间:2010-11-05 09:34:17

标签: air adobe sendmail

我已经搜索了如何使用adobe air发送电子邮件..但我找不到一个好的。他们只显示adobe亚麻...有些代码包含一些库。

我不明白如何使用它..有人可以帮忙吗?

1 个答案:

答案 0 :(得分:2)

查看Thibault Imbert的SMTP Mailerdownload (latest version 0.9)包括源文件,库.swc和Flash的示例应用程序(带框架脚本)。

更新

这是SMTP邮件程序0.9版本中包含的框架脚本:

import org.bytearray.smtp.mailer.SMTPMailer;
import org.bytearray.smtp.encoding.JPEGEncoder;
import org.bytearray.smtp.encoding.PNGEnc;
import org.bytearray.smtp.events.SMTPEvent;
import flash.utils.ByteArray;
import flash.display.BitmapData;
import flash.display.Bitmap;
import flash.events.*;

// create the socket connection to any SMTP socket
// use your ISP SMTP

var myMailer:SMTPMailer = new SMTPMailer (smtp_txt.text, 25);

// register events
// event dispatched when mail is successfully sent
myMailer.addEventListener(SMTPEvent.MAIL_SENT, onMailSent);
// event dispatched when mail could not be sent
myMailer.addEventListener(SMTPEvent.MAIL_ERROR, onMailError);
// event dispatched when SMTPMailer successfully connected to the SMTP server
myMailer.addEventListener(SMTPEvent.CONNECTED, onConnected);
// event dispatched when SMTP server disconnected the client for different reasons
myMailer.addEventListener(SMTPEvent.DISCONNECTED, onDisconnected);
// event dispatched when the client has authenticated successfully
myMailer.addEventListener(SMTPEvent.AUTHENTICATED, onAuthSuccess);
// event dispatched when the client could not authenticate
myMailer.addEventListener(SMTPEvent.BAD_SEQUENCE, onAuthFailed);

// take the snapshot
var myBitmap:BitmapData = new BitmapData ( stage.stageWidth, stage.stageHeight );

// encode as JPEG with quality 100
var myEncoder = new JPEGEncoder( 100 );

send_btn.addEventListener (MouseEvent.CLICK, onClick);

message_txt.text = "<img src='http://www.google.com/images/logo_sm.gif'</img><br><b>Picture file attached ! :)</b>";

function onClick ( pEvt:MouseEvent )

{

    // replace this by any DisplayObject
    myBitmap.draw ( this );

    var myCapStream:ByteArray = myEncoder.encode ( myBitmap );

    // sends HTML email
    //myMailer.sendHTMLMail ( from_txt.text, to_txt.text, subject_txt.text, "<img src='http://www.google.com/images/logo_sm.gif'</img><br><b>Picture from HTML :)</b>");

    // send HTML email with picture file attached
    myMailer.sendAttachedMail ( from_txt.text, to_txt.text, subject_txt.text, message_txt.text, myCapStream, "image.jpg");

}

function onAuthFailed ( pEvt:SMTPEvent ):void

{

    status_txt.htmlText = "Authentication Error";

}

function onAuthSuccess ( pEvt:SMTPEvent ):void

{

    status_txt.htmlText = "Authentication OK !";

}

function onConnected ( pEvt:SMTPEvent ):void 

{

    status_txt.htmlText = "Connected : \n\n" + pEvt.result.message;
    status_txt.htmlText += "Code : \n\n" + pEvt.result.code;

}

function onMailSent ( pEvt:SMTPEvent ) 

{

    // when data available, read it
    status_txt.htmlText = "Mail sent :\n\n" + pEvt.result.message;
    status_txt.htmlText += "Code : \n\n" + pEvt.result.code;

}

function onMailError ( pEvt:SMTPEvent ):void 

{

    status_txt.htmlText = "Error :\n\n" + pEvt.result.message;
    status_txt.htmlText += "Code : \n\n" + pEvt.result.code;

}

function onDisconnected ( pEvt:SMTPEvent ):void 

{

    status_txt.htmlText = "User disconnected :\n\n" + pEvt.result.message;
    status_txt.htmlText += "Code : \n\n" + pEvt.result.code;

}


function socketErrorHandler ( pEvt:IOErrorEvent ) 

{

    // when data available, read it
    status_txt.htmlText = "Connection error !";

}