我想使用我的java程序发送短信。场景是我有一个运行管理程序(用Java编写)的服务器。用户可以在服务器上发布问题。我希望当有人在服务器上发布他们的问题时,我的java程序会向用户手机号码生成一条短信,表明您的问题已经提交。 我搜索了Google,发现您可以使用Java Mail API向用户发送短信。我尝试了这个link
上给出的程序我使用了这些参数
......
public void msgSend() {
String gmailUserName = "xxxx@gmail.com";
String gmailPassword = "xxxx";
String smtpHost = "smtp.gmail.com";
String compression = "My Sms Compression information";
String from = "Basit@smtp.gmail.com";
String to = "03072525725@sms.smtp.gmail.com";
String body = "Hi how r u";
Transport myTransport = null;
...
...
使用此功能后,我在Gmail帐户中收到了一封电子邮件 跟随错误
交付给以下收件人永久失败:
03072525725@sms.smtp.gmail.com
永久性故障的技术细节:DNS错误:域名不是 结果
我想也许我没有为手机配置我的Gmail帐户,这就是我收到此错误的原因。但我想问一下,我是否有可能使用Java Mail API发送短信?
答案 0 :(得分:4)
错误消息显示问题:
DNS Error: Domain name not found
sms.smtp.google.com
没有DNS条目。它与您的设置无关。谷歌不提供公共短信网关(发送短信通常需要花钱)。
例如,您可以尝试Amazon Simple Notification Service。
答案 1 :(得分:1)
可以使用电子邮件使用SMS gateway通过短信发送消息。但它确实要求您知道收件人电话号码的运营商。
例如:
使用上面链接中维基百科文章中的图表,如果电话号码是7675431234且运营商是AT& T,则使用的电子邮件地址将是7675431234@txt.att.net
。