Java отправляет и получает SMS. Бесплатный SMS-шлюз?
На некоторых вопросах здесь, в SOverflow, я обнаружил ЭТО. Но это говорит о том, что в данный момент это недоступно и, вероятно, никогда не будет доступно.
На основании ЭТОГО я понял, что нет необходимости создавать свой собственный сервис SMS.
Итак, вопрос:
Мое java-приложение должно отправлять SMS-сообщения пользователям и получать SMS-сообщения от пользователей.
Нужно ли платить за SMS-шлюз или есть какой-нибудь бесплатный SMS-шлюз (с некоторыми ограничениями), который я мог бы использовать для тестирования своего приложения?
Simplewire Kit выглядит действительно просто, но демонстрационные примеры не работают, потому что у меня нет учетной записи Simplewire. В документации SimpleWire говорится, что для отправки SMS существует 30-дневная пробная версия. Но это по двум причинам:
"Для двухсторонней демонстрации кредиты недоступны, потому что вам понадобится
собственный номер мобильного телефона, размещенный в сети Simplewires. Simplewire
поддерживает двухсторонние номера для разных стран и областей
коды. Пожалуйста, свяжитесь с Simplewire для получения дополнительной информации. "
Ответы
Ответ 1
FYI Simplewire теперь OpenMarket.com/MXTelecom.com
Существует несколько бесплатных SMS-шлюзов, но все они прикладывают SMS-сообщение в вашем сообщении для оплаты стоимости. ZeepMobile - это тот, о котором я слышу больше всего. Что касается оплаты, есть несколько решений, но все это зависит от ваших потребностей.
Двухсторонняя связь потребует от конечного пользователя подписки на вашу услугу. Есть несколько способов приблизиться к этому:
Короткий код: вы можете получить свой собственный (www.openmarket.com) или поделиться с другими (www.clickatell.com)
Вы можете использовать новую услугу. Www.twilio.com выглядит хорошо, но еще не проверил ее.
Если одностороннее общение - это все, что вам нужно, вы могли бы что-то вроде отправить по электронной почте шлюзу sms, но тогда вам нужно будет знать, пользователь включен.
Ответ 2
Fowiz предлагает бесплатное Android-решение для отправки/получения текстовых сообщений от приложений. Чтобы включить эту услугу, вам необходимо установить Android-приложение на свое устройство, и сообщения отправляются/принимаются на вашем телефоне. Вы можете настроить CallbackUrl для получения мгновенного уведомления о входящих сообщениях. Fowiz также поддерживает короткие коды, управление кампаниями, голосование и т.д.
Пример кода для отправки сообщения через Fowiz:
String myPasscode = 'your passcode';
String myUsername = 'your fowiz username';
String toPhoneNumber = 'recipient phone number';
String myMessage = 'your message';
HttpClient client = new DefaultHttpClient();
HttpGet request = new HttpGet(HTTP_API + "?username="+myUsername
"&phonenumber="+toPhoneNumber
+"&message="+myMessage+"&passcode="+myPasscode);
HttpResponse response = client.execute(request);
BufferedReader rd = new BufferedReader
(new InputStreamReader(response.getEntity().getContent()));
String line = "";
StringBuffer response = new StringBuffer();
while ((line = rd.readLine()) != null) {
response.append(line);
}
System.out.println(response.toString());
Источник: http://cloud.fowiz.com/2help.html
Ответ 3
Да, вы можете создать собственный API в течение 5 минут. Ваш телефон Android может работать как серверный API для отправки и получения SMS-сообщений в вашем коде Java. Это очень просто сделать. Есть несколько основных шагов
- Загрузите приложение Android GSM Modem из игрового магазина на свой телефон GSM модем БЕСПЛАТНЫЕ СМС в JAVA
- Вам также нужен вспомогательный инструмент для отправки или получения SMS без каких-либо помех. Вы также расширяете свои функциональные возможности в Android, а также GSM Modem Helper Tool
Если вы хотите учиться шаг за шагом. есть также руководство и видеоурок. Отправляйте или получайте БЕСПЛАТНЫЕ СМС на Java
public class SMSSender {
public static void main(String[] args) throws Exception{
// TODO Auto-generated method stub
String message = "Junk characters? method sendMultipartTextMessage only send text message. If you want to send non text message, you should look to method sendDataMessage. Below is the code excerpt from android cts. It has example on how to send long messages.";
String phone = "92***********";
String username = "abcd";
String password = "1234";
String address = "http://192.168.1.101";
String port = "8090";
URL url = new URL(
address+":"+port+"/SendSMS?username="+username+"&password="+password+
"&phone="+phone+"&message="+URLEncoder.encode(message,"UTF-8"));
URLConnection connection = url.openConnection();
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(connection.getInputStream()));
String inputLine;
while((inputLine = bufferedReader.readLine()) !=null){
System.out.println(inputLine);
}
bufferedReader.close();
}
}