2013-10-22 87 views
0

我有一個運行python腳本的cronjob,用於定期向我發送狀態更新的電子郵件。在週末我更喜歡通過文本工作,所以我把它發送到[email protected]。這工作正常,除了'從'地址是不正確的,當它去電話。當它被髮送到一個普通的電子郵件地址時它會正確顯示。出於某種原因,當它通過文本時,它會將「發件人」地址顯示爲「[email protected]」。這可能只是一個verizon文本消息的具體事情,但如果可能我想弄清楚如何解決它,因爲我希望爲這個工具添加一些回覆功能。通過sendmail發送的郵件當通過短信發送時顯示錯誤的「發件人」地址

腳本所在的機器正在運行Ubuntu 12.04。

下面是簡單的Python功能我有發送電子郵件:

def sendMail(to,text): 
    msg = MIMEMultipart('alternative') 
    msg['Subject'] = "Weekend Report" 
    msg['From'] = '[email protected]' 
    msg['To'] = to 
    msg.attach(MIMEText(text,'plain')) 
    p = Popen(["/usr/sbin/sendmail", "-t"], stdin=PIPE) 
    p.communicate(msg.as_string()) 

我會過得更好使用像和的smtplib Gmail帳戶什麼的吧?

+0

看起來像IPv6相關。只是一個提示/猜測:-) – Tarik

回答

1

的Sendmail:設置信封發件人

您可以嘗試設置「信封發件人」地址(在SMTP會話中使用的發件人地址)。

p=Popen(["/usr/sbin/sendmail","-t","-i","[email protected]"],stdin=PIPE) 

評論:我已經加入失蹤無關,設置信封發件人-i命令行選項。