我有需要发送电子邮件和短信的应用程序。它可以很好地发送电子邮件,但是当我尝试使用电子邮件网关(对于 verizon,xxxyyyzzzz@vtext.com)发送短信时,我什么也得不到。我已经使用我的 gmail 帐户通过电子邮件网关给电话发了短信,所以我知道它可以工作。我只是认为从我的应用程序的角度来看,我只是在发送另一封电子邮件。知道为什么这不起作用吗?或者我能做些什么来解决它?
我还应该注意,我是通过本地计算机上的 Rails 应用程序执行此操作的……这并不重要。
我有需要发送电子邮件和短信的应用程序。它可以很好地发送电子邮件,但是当我尝试使用电子邮件网关(对于 verizon,xxxyyyzzzz@vtext.com)发送短信时,我什么也得不到。我已经使用我的 gmail 帐户通过电子邮件网关给电话发了短信,所以我知道它可以工作。我只是认为从我的应用程序的角度来看,我只是在发送另一封电子邮件。知道为什么这不起作用吗?或者我能做些什么来解决它?
我还应该注意,我是通过本地计算机上的 Rails 应用程序执行此操作的……这并不重要。
也许 Verizon 有软件可以识别从软件而不是人类发送的电子邮件,并拒绝你的?
尝试让您的软件添加普通电子邮件客户端会添加的所有相同标题(例如 X-Mailer)。
Verizon 可以将反向 DNS 查询作为简单的垃圾邮件检查。您的 ISP 的信息可能会在此查找过程中显示,而不是您的电子邮件包含的返回地址信息,因此可能会被阻止。
要解决此问题,请确保您使用的返回电子邮件地址来自 ISP 电子邮件帐户。
这是在 Linux 上调试它的方法。使用 strace 运行 Rails 应用程序服务器:
strace -s99999 -e connect,read,write,close -o strace.log script/server
然后检查strace.log
并查看 Rails 应用程序连接到哪个 SMTP 服务器,以及它读取和写入的内容。
然后用你最喜欢的邮件客户端做同样的事情(推荐:mutt,因为 Thunderbird 的 strace 很慢)。
尝试从 Rails 发送与您的邮件客户端发送的字节完全相同的字节。
我过去使用SMS_Fu发送短信。它工作得非常好。
我已经为 Ruby 编写了一个用于发送 SMS 的客户端应用程序,请参阅http://freebiesms.blogspot.com/2009/07/send-free-sms-from-ruby.html以下载完整的源代码。
问候
担