2011-11-24 61 views
2

我想用我的java程序發送短信。該方案是,我有一個管理程序(寫入Java)正在運行的服務器。用戶可以將他們的問題發佈到服務器上。我希望當有人在服務器上發佈他們的問題時,我的java程序會生成一條短信給您的問題已提交的用戶手機號碼。 我搜索了Google,發現您可以使用Java Mail API向用戶發送短信。我想在這個link使用java發送短信需要幫助

給出的方案,我用這些參數

...... 

public void msgSend() { 

     String gmailUserName = "[email protected]"; 
     String gmailPassword = "xxxx"; 
     String smtpHost = "smtp.gmail.com"; 
     String compression = "My Sms Compression information"; 
     String from = "[email protected]"; 
     String to = "[email protected]"; 
     String body = "Hi how r u"; 
     Transport myTransport = null; 
     ... 
     ... 

使用此之後,我收到一封電子郵件,在我的Gmail帳戶與 以下錯誤

Delivery to the following recipient failed permanently:

[email protected]

Technical details of permanent failure: DNS Error: Domain name not found

我想,也許我沒有配置我的移動Gmail帳戶,這就是爲什麼我得到這個錯誤。但我想問是否有可能使用Java Mail API發送短信?

+0

我認爲問題是這個DNS sms.smtp.gmail.com不存在!但我不知道我應該如何使它與SMS一起工作...... – user850287

回答

4

錯誤消息顯示你到底問題:

 
DNS Error: Domain name not found 

沒有爲sms.smtp.google.com沒有DNS條目。它與你的設置沒有任何關係。谷歌不提供公共短信網關(通常發送短信費用)。例如,您可以嘗試Amazon Simple Notification Service

1

可以使用電子郵件通過短信使用SMS gateway發送消息。但確實需要您瞭解收件人電話號碼的運營商。

例如:

在上面的鏈接維基百科的文章中使用的圖表,如果電話號碼是7675431234和載體是AT & T,那麼使用的電子郵件地址會[email protected]

+0

感謝您的回答! 我不明白你的收件人電話號碼的承運人是什麼意思,你可以給我一個例子 – 2011-11-25 11:58:30

+1

如果電話號碼是7675431234,承運人是AT&T,那麼使用的電子郵件地址是[email protected]。根據我鏈接到的維基百科文章中的圖表。 – laz