2012-08-07 78 views
0

我通过使用每个移动电话运营商的地址(例如,verizon是'[email protected]')通过电子邮件发送短信。使用django发送SMS短信send_mail

但是,这里有两个问题:

1)send_mail需要一个 '主题' 和 '从电子邮件'。当收到文本时,主题不必要,只消耗邮件中的珍贵字符,就会出现在邮件正文前面的文本消息的括号内。我试图设置主题=无,但是我只是把(无)作为主题。任何想法如何摆脱这个问题或使用send_mail发送时不使用它?

2)from_email会导致SMS消息报告它来自'bounces + 246181 -....',我假设它是因为它不知道如何处理from_email字段,或者因为它不' t匹配。如果我直接从我的电子邮件客户端发送短信,它会正确报告发件人。任何想法如何摆脱的“反弹......”

这里有一个例子:

from django.core.mail import send_mail 
subject = None 
message = 'testing 123' 
from_email = '[email protected]' 
to = '4041111111' 

send_mail(subject,message,from_email,to,fail_silently=False) 

谢谢!

*新信息

我发现与“反弹”字符串中的问题与使用sendgrid发送电子邮件,并送他们到Verizon的运营商之间的冲突。 Sendgrid默认与发送者信息混杂在一起(这可以被禁用)。这就搞乱了接收文本上显示的“来自”信息。用sendgrid禁用这个问题解决了这个问题。

+0

你有没有考虑过直接发送短信给电话号码?我使用了[django-sendms](https://github.com/stefanfoulis/django-sendsms)以及[Twilio](https://www.twilio.com/)帐户。虽然Twilio不是免费的(没有“水印”) – 2012-08-07 14:18:21

+0

我一直在使用twilio,而我离开它的原因是因为它不是免费的。 – mb52089 2012-08-07 14:33:44

回答

1

我测试了以下

from django.core.mail import send_mail 
send_mail('','test','',['[email protected]']) 

,我收到这样的文字:

FRM:[email protected] 
MSG:test 

所以,你可以保持主题为空字符串,以保持主体无法显示。

+0

啊哈!非常感谢! – mb52089 2012-08-07 15:49:21