我有一个要求,我需要从我的Web应用程序发送短信到印度的任何移动设备。
我从ipipi.com website获得了以下代码:
我想实现此功能,任何人都可以帮助我在这里提供什么值:
String username = "YoureIPIPIUsername";
String password = "YourPassword";
String smtphost = "ipipi.com";
String compression = "Compression Option goes here - find out more";
String from = "YoureIPIPIUsername@ipipi.com";
String to = "DestinationPhoneNumber@sms.ipipi.com";
String body = "Your Message";
SMTPSend.class
import java.io.*;
import java.net.InetAddress;
import java.util.Properties;
import java.util.Date;
import javax.mail.*;
import javax.mail.internet.*;
import javax.activation.*;
public class SMTPSend {
public SMTPSend() {
}
public void msgsend() {
String username = "YoureIPIPIUsername";
String password = "YourPassword";
String smtphost = "ipipi.com";
String compression = "Compression Option goes here - find out more";
String from = "YoureIPIPIUsername@ipipi.com";
String to = "DestinationPhoneNumber@sms.ipipi.com";
String body = "Your Message";
Transport tr = null;
try {
Properties props = System.getProperties();
props.put("mail.smtp.auth", "true");
// Get a Session object
Session mailSession = Session.getDefaultInstance(props, null);
// construct the message
Message msg = new MimeMessage(mailSession);
//Set message attributes
msg.setFrom(new InternetAddress(from));
InternetAddress[] address = {new InternetAddress(to)};
msg.setRecipients(Message.RecipientType.TO, address);
msg.setSubject(compression);
msg.setText(body);
msg.setSentDate(new Date());
tr = mailSession.getTransport("smtp");
tr.connect(smtphost, username, password);
msg.saveChanges();
tr.sendMessage(msg, msg.getAllRecipients());
tr.close();
} catch (Exception e) {
e.printStackTrace();
}
}
public static void main(String[] argv) {
SMTPSend smtpSend = new SMTPSend();
smtpSend.msgsend();
}
}
答案 0 :(得分:1)
如果上述代码链接到将收到的电子邮件转换为外发短信的服务,则可能需要按照Alex K的说明购买信用卡。
发送短信的更好方法是使用SMSLib与蜂窝提供商的SMSC进行交互。然后,您还需要确保提供商能够将SMSes路由到所有蜂窝网络。
答案 1 :(得分:1)
您的问题似乎特定于某些服务提供商/ API。但我想在这里给出一个通用的答案。
发送短信需要SMS网关到SMSC。有两种简单的方法[原因可能更多]。 您可以使用SIM卡[启用短信],也可以使用其他人的SIM卡。 SIM卡通过SMSC服务提供商提供与SMS网关的连接。
无论哪种方式,发送短信都不是免费的。其他人可能会说它是LIKELY免费,但至少必须有广告或长期商业营销策略。
您继续使用的方式是通过他们提供的API使用其他人的SIM卡。由于那些具有专用的批量SMS帐户,它可能更快,多线程,服务。他们应该对您有所帮助以解决您的问题。
如果您要从SIM卡发送短信,则必须将SIM卡连接到计算机并使用标准API来拨打短信功能。 SMSLib
是我的建议。您需要一台硬件才能将SIM卡连接到PC,或者将移动设备连接到PC,或者使用数据调制解调器[简单]并通过COM
端口进行接口。
如果您想尝试自己的短信网关,请尝试使用此代码here。
答案 2 :(得分:0)
首先在ipipi.com
中创建一个帐户,然后点击发送到邮件的激活链接对其进行验证。并将您的用户名作为YoureIPIPIUsername和密码作为YourPassword。
String smtphost = "ipipi.com"
String compression = "Compression Option goes here - find out more";
有一些压缩类型here,如果你不想要任何你可以提及的“无”
String from = "YoureIPIPIUsername@ipipi.com"
String to = "DestinationPhoneNumber@sms.ipipi.com";
目的地ph值应为+91且为10位数
String body = "Your Message";