[Twisted-Python]The problem afer reactor stoped....
李祥曦
lxx1234 at gmail.com
Tue May 6 01:41:44 EDT 2008
Hi,all
I want to write a program that can send some e-mails automaticlly,i
use the code like this:
def sendmail(authenticationUsername, authenticationSecret,fromAddress,
toAddress,messageFile,smtpHost, smtpPort=25):
resultDeferred = Deferred()
senderFactory =
ESMTPSenderFactory(authenticationUsername,authenticationSecret,fromAddress,toAddress,messageFile,resultDeferred,requireTransportSecurity=False)
reactor.connectTCP(smtpHost, smtpPort, senderFactory)
return resultDeferred
def sendComplete(result):
print "Message sent."
reactor.stop()
class EmailUtil:
def __init__(self,popserver,smptserver,username,password):
self.popserver=popserver
self.smtpserver=smptserver
self.username=username
self.password=password
def goSend(self,fromaddr, toaddr, subject, body, filenames):
message = buildMessage(fromaddr, toaddr, subject, body, filenames)
messageData = message.as_string(unixfrom=False)
tempfile=open('temp.mai','wb')
tempfile.write(messageData)
tempfile.close()
print 'Sending.....'
result =
sendmail(self.username,self.password,fromaddr,toaddr,file('temp.mai'),self.smtpserver)
result.addCallbacks(sendComplete,handleError)
reactor.run()
if __name__=='__main__':
f=EmailUtil('','smtp.xxx.com','xxxx','1234')
filenames=['test2.docx']
f.goSend('xxxx at xxx.com','xxx at hotmail.com','testSend','aaaaaaaaaa',filenames)
f.goSend('xxxx at xxx.com','xxx at hotmail.com','testSend','aaaaaaaaaa',filenames)
f.goSend('xxxx at xxx.com','xxx at hotmail.com','testSend','aaaaaaaaaa',filenames)
I try to send the same mail,but after the first mail was sended,the
program deadlock,and i use some tool konws after the first mail
sended,no packets was send to the outside world.I guess maybe the
problem related with the reactor run and stop,but i am sure,any one
can tell me what's problem is?Thanks
More information about the Twisted-Python
mailing list