Отправьте текстовое сообщение на электронную почту, используя смс с телефона j2me - PullRequest
3 голосов
/ 01 февраля 2010

Я занимаюсь разработкой приложения j2me, и мне было интересно, знает ли кто-нибудь, как отправить смс-сообщение на адрес электронной почты. Мне нужно использовать смс, так как я пытаюсь отправить через него данные, используя неограниченный текстовый план вместо неограниченного тарифного плана.

Я изменил пример кода с http://freecode -freecode.blogspot.com / 2008/06 / how-to-send-sms-in-j2me.html , но я не могу отправить сообщение на электронную почту. Соответствующий код выглядит следующим образом ...

  MessageConnection smsCon= (MessageConnection) Connector.open("sms://email@emailprovider.com:25");
  TextMessage txtmessage = (TextMessage) smsCon.newMessage(MessageConnection.TEXT_MESSAGE);
  txtmessage.setAddress("sms://email@emailprovider.com:25");// !!
  txtmessage.setPayloadText("Hello from j2me sms api");
  smsconn.send(txtmessage);

но это не работает. Я понятия не имею, как подойти к этому. Я отправил текстовое сообщение вручную с помощью встроенного в телефон текстового сообщения на электронную почту, но я не могу сделать это в коде.

Ответы [ 3 ]

3 голосов
/ 05 февраля 2010

Любая трубка, поддерживающая JSR 205 , должна быть в состоянии сделать это примерно следующим образом (не скомпилировано или протестировано !!):

 MessageConnection emailCon = (MessageConnection) Connector.open("mms://email@emailprovider.com");
 MultipartMessage email = (MultipartMessage) emailCon.newMessage(MessageConnection.MULTIPART_MESSAGE);
 email.setSubject("Hello from j2me WMA 2.0 api");
 // add some MessageParts in here...
 emailCon.send(email);

В спецификации для URL-адреса MMS указано, что адрес электронной почты является допустимым адресатом MMS.

1 голос
/ 04 февраля 2010

Вы не можете отправлять электронную почту в виде SMS-сообщений, если у вас нет специальной поддержки ни в организации, получающей SMS, ни в Центре обслуживания SMS.

Возможно, ваш оператор / оператор поддерживает отправку электронной почты через сервисный центр SMS. Обычно это достигается отправкой SMS на определенный номер получателя и кодированием адреса электронной почты в теле сообщения, окруженного соответствующими маркерами (*, #, цифры). Я отправлял смс на факс, но это было более 10 лет назад ...

Если у вашего оператора / оператора такой поддержки нет, возможно, вы найдете другую услугу отправки SMS-сообщений по электронной почте, которая работает аналогичным образом.

Обновление: Найдена услуга: http://www.visualtron.com/sms2email.htm

Вы также можете создать свой собственный шлюз для отправки SMS-сообщений в мидлет J2me, работающий на устройстве с неограниченным тарифом на передачу данных. Затем вам нужно отправить ваши SMS-сообщения на определенный порт, который слушает ваш шлюз MIDlet. Фактическое электронное письмо должно быть отправлено через SMTP или HTTP соединение. Это не решение, которое я бы рекомендовал, так как оно довольно хрупкое.

Обратите внимание, что JSR-120 и JSR-205 (два JSR с беспроводными сообщениями) определяют только поддержку сообщений SMS и MMS, но реализация МОЖЕТ добавить другие схемы обмена сообщениями. Из моего быстрого взгляда на спецификации я не смог найти способ определить, какие схемы поддерживаются конкретным устройством. Следует также отметить, что MMS также требует подключения для передачи данных, но операторы / операторы часто используют отдельные подключения и цены для MMS и других данных. Поэтому, даже если ваше устройство поддерживает схему «email: //», для его работы потребуется подключение для передачи данных.

0 голосов
/ 04 февраля 2010

Я не думаю, что это доступно с текущей спецификацией WMA. Если вы хотите создать такой сервис, я предлагаю вам создать шлюз SMS, который получил SMS, в сочетании с приложением J2SE / J2EE, которое подключается к Интернету. Шлюз SMS анализирует содержимое SMS для адреса электронной почты, отправляет его в приложение J2SE / J2EE, и это приложение создает электронную почту на основе параметра, какой адрес электронной почты и остальное содержимое SMS.

...