2016-07-29 7 views
0

Ich versuche eine Webanwendung zu erstellen, die SMS sendet und empfängt. Ich habe bereits ein lokales SMS-Gateway kontaktiert und die Verbindung funktioniert.Wie erhalten Sie SMS in einer Webanwendung in Java?

Ich benutze Jsmpp als die Bibliothek und ich bin in der Lage zu senden und SMS über eine Beispielanwendung zu empfangen, die ich mit Java SE erstelle.

Jetzt muss ich diese Funktion zu Web-Anwendung migrieren. Senden von SMS sollte in Ordnung sein. Aber wie kann ich einen Listener hinzufügen, um das SMSC über meine Webanwendung zu hören? Ich benutze Spring und j2ee.

Die SMSC stellt keine Web-API und nicht die Möglichkeit, SMS an eine API zu senden, die ich aussetze. Die einzige Möglichkeit, die sie ermöglichen, ist die Kommunikation über das SMPP-Protokoll.

Dank Im Voraus.

Antwort

0

haben Sie das Programm im Link - http://www.java-samples.com/showtutorial.php?tutorialid=22?

Wenn Sie nach einer Bulk-SMS-Lösung suchen, können Sie APIs verwenden, die von Anbietern wie https://www.textlocal.in/ oder einem anderen Anbieter bereitgestellt werden, je nachdem, was machbar ist.

Wenn Sie ein Gateway-Setup für sich selbst suchen, können Sie eine Lösung überprüfen wie http://www.ozekisms.com/

Früher gab es Netzwerk-Anbieter bereitgestellt Gateway, die Sie frei verwenden können, jetzt gibt es kein solches Gateway Sie frei verwenden können.

Weitere Links https://www.quora.com/How-can-I-send-a-SMS-with-a-Java-code http://www.airtel.in/aes/Global+Business/Global+Voice/Enterprise+Voice+Solutions/Mobility+Solutions/Enterprise+VAS/Bulk+SMS+Solutions

+0

Hallo Narendran, Danke für die Antwort. Ich habe tatsächlich eine Vereinbarung mit einem lokalen SMS-Gateway. Das Problem ist, dass sie nur das smpp-Protokoll unterstützen. Sie haben keine Möglichkeit, eine von unserer Anwendung angezeigte URL aufzurufen, wenn sie eine SMS erhalten. Ich werde nach einer Möglichkeit suchen, den Smsc von einer Webanwendung zu hören. –

1

SMS erhalten Sie für virtuelle Nummer gehen müssen, die 10-stellige virtuelle Mobilnummer oder Kurzwahlnummer sein kann.

Virtuelle Nummer kann mit einer HTTP-URL mit Parametern als Abfragezeichenfolge Ex konfiguriert werden. example.com/ receivesms.jsp? from =% Nummer% & smstext =% text%

Alle Nachrichten, die auf virtuellen Nummer empfangen wird konfiguriert URL ausgelöst werden, so dass Sie es weiter verarbeiten kann (Bsp. Speichern von Antworten auf DB oder Senden einer Textnachricht als Antwort) in Ihrem Skript nach Bedarf.

Virtuelle Handynummer (2-Wege-SMS-Nummer) kann mit jedem SMS-Dienstanbieter konfiguriert werden. Spring Edge

0

Nach viel Versuch und Irrtum gelang es mir, eine Lösung für die Frage zu finden.

Die Art und Weise, wie ich es implementiert habe, war eine eigenständige Java-Anwendung als Linux-Dienst auszuführen, der das SMSC abhören würde. Als Basis habe ich das Beispielprojekt SMSRouter (https://smsrouter.org/) verwendet. Die Apache camel sppp-Komponente wurde in diesem Beispielprojekt für das Senden und Empfangen von SMS verwendet.

Ich erstellte dann Warteschlangen innerhalb Jboss Anwendungsserver für Posteingang und Postausgang, um eingehende und ausgehende SMS-Nachrichten zu speichern.

Sobald eine SMS von SMSRouter empfangen wurde, wird JMS verwendet, um die SMS-Nachricht der Posteingangswarteschlange innerhalb von Jboss hinzuzufügen, die eine nachrichtengesteuerte Bean auslöst, die weiter auf die Posteingangswarteschlange wartet.

Wenn die Webanwendung eine SMS senden muss, fügt sie der Outbox-Warteschlange eine JMS-Nachricht hinzu, die dann den SMSRouter auslöst, der die Outbox-Warteschlange abhört. SMSRouter verwendet Apache Camel, um die SMS an das SMSC zu senden.

Verwandte Themen