Tel: (06 52) 532 731
Ozeki NG SMS gateway
SMS szoftver vállalatok számára
 JAVA SMS Megoldások | Termékek | Tartalomjegyzék | Kapcsolat  
  Kezdőlap
  SMS technológia
  Megoldások
  Irodai felhasználás
  Automatizált SMS küldés
  SMS szolgáltatói rendszerek
  Szoftver fejlesztés
  JAVA SMS
  PHP SMS
  C# SMS
  VB.Net SMS
  ASP SMS
  Delphi SMS
  Termékek
  Kapcsolat
  Tartalomjegyzék

Ajánló

Tekintse meg az Ozeki NG SMS Gateway, professzionális SMS szoftver angol nyelvű weboldalát az alábbi linkre kattintva:

Ozeki NG SMS Gateway
www.ozekisms.com

SMS küldés és fogadás JAVA programnyelvben

Ezen az oldalon néhány példát fog találni arra, hogyan küldhet és fogadhat SMS üzenetet JAVA programnyelvben az Ozeki NG SMS Gateway segítségével. A bemutatott példák segítségére lehetnek abban, hogy megtalálja az Önnek legmegfelelőbb SMS küldési módot JAVA programnyelvet használva.

SMS küldés és fogadás JAVA programnyelvből adatbázis használatával

Ha egy olyan SMS megoldást keres, amely pontosságot, biztonságos működést és kitűnő hatékonyságot biztosít akkor az adatbázison alapuló JAVA megoldás a lehető legjobb választás az Ön számára. Az SMS küldés és fogadás szempontjából ez a megoldás egy adatbázis server használatára épül (úgy, mint Oracle, MySQL, Java DB, MS SQL, stb). Ez a megoldás ajánlott, ha a Java alkalmazása már eredetileg is egy adatbázist használ az adatok tárolására.

Ábra 1 - SMS küldés és fogadás Java-ból adatbázison keresztül.

Az 1. ábra illusztrálja a megoldás működését. Ha SMS-t akar küldeni, akkor az üzenetet el kell mentenie egy külön erre a célra létrehozott adatbázis táblába. A telepített SMS szoftver rendszeresen ellenőrzi ezt az adatbázis táblát. Ha talál még el nem küldött üzenetet, akkor kiküldi őket a megfelelő címzetteknek, majd frissíti a bejegyzések állapotát. Ezáltal mindig tudhatja, hogy üzenetét elküldte-e a rendszer vagy sem. Az üzenet fogadás hasonlóan működik. A bejövő üzenetek egy erre a célra létrehozott adatbázis táblába kerülnek. A Java alkalmazása ellenőrzi, hogy van-e új bejövő üzenet. Ezen megoldás nagy előnye, hogy az üzenetei automatikusan tárolódnak, így Ön könnyen felügyelheti és nyomon követheti kimenő és bejövő üzenetei státuszát.

A megoldás megvalósítása a következő egyszerű lépésekből áll: miután telepítette a szükséges alkalmazásokat (Java és adatbázis), létre kell hoznia két adatbázis táblát az adatbázisban. Egyet a bejövő üzenetek számára (ozekimessagein) és egyet a kimenő üzenetek számára (ozekimessageout). Ez után telepítenie és konfigurálnia kell az Ozeki NG SMS Gateway szoftvert, hogy támogassa ezt a megoldást.

A megoldás telepítése során szüksége lesz az alábbi fájlra: java-sms-example-db-with-source.zip

Forráskód példa:

package hu.ozeki;

import java.sql.*;

public class Java_example_db_insert {

        public static void main(String[] args) {

        try {
        Class.forName("com.mysql.jdbc.Driver").newInstance();

        Statement smnt     = null;;
        String dbHost      = "localhost";
        String database    = "ozeki";
        String dbUsername  = "ozekiuser";
        String dbPassword  = "ozekipass";
        String smsReceiver = "+441112222222";
        String message           = "Hello world, this is my first SMS message";

        String dbUrl = "jdbc:mysql://"+ dbHost +"/" + database +"";

        Connection conn = DriverManager.getConnection(dbUrl, dbUsername, dbPassword);
        smnt = conn.createStatement();

        String sqlInsert =
                "INSERT INTO "+
        "ozekimessageout (receiver,msg,status) "+
        "VALUES "+
        "('" + smsReceiver + "','"+ message +"','send')";

                if(smnt.executeUpdate(sqlInsert) != 0)
                {
                        System.out.println("OK");

                }
                else
                {
                        System.out.println("ERROR");
                }

                smnt.close();
                conn.close();
        }
        catch(Exception ex)
        {
                System.out.println("Exception: " + ex.getMessage());
        }
        }

}
        


A következő részleteket kell megváltoztatnia: dbHost, database, dbUsername, dbPassword. Továbbá változtassa meg a telefonszámot és az üzenet szövegét arra, amit szeretne elküldeni.

SMS küldés és fogadás Java-ból HTTP használatával

Ez a megoldás ideális azoknak a fejlesztőknek, akik a HTTP kéréseket részesítik előnyben SMS küldés céljából. Mivel a Java alkalmazások beépített HTTP funkcióval rendelkeznek, ez a megoldás egy egyszerű és hatékony módja az üzenetek továbbításának a mobil hálózatba. A HTTP kérések esetében lehetőség van titkosított csatorna használatára (HTTPS), így nemcsak nagy teljesítményt, de magas biztonsági szintet is elérhet ezzel a megoldással.

Egy telepített SMS szoftver segítségével könnyen küldhet SMS üzenetet mobil készülékekre, illetve SMS-t fogadhat mobiltelefonról a számítógépén. Ehhez az SMS üzeneteket HTTP kérések segítségével tudja eljuttatni az SMS szoftverbe, amely feldolgozza és kiküldi az Ön üzeneteit (Ábra 2). Az ábrán látható, hogy a Java alkalmazás az üzenetet közvetlenül az SMS szoftvernek küldi HTTP kérés (HTTP request) segítségével. A bejövő üzenetek esetében a következő folyamatok lehetségesek: A Java alkalmazás időközönként ellenőrzi, hogy van-e bejövő üzenet, ha igen, akkor letölti azt; vagy ha képes bejövő HTTP kérést fogadni, akkor az SMS szoftver a telepített HTTP kliens segítségével továbbküldi a bejövő üzenetet a Java alkalmazásnak HTTP-n keresztül.

Ábra 2 - SMS küldés és fogadás Java-ból HTTP-n keresztül.

A megoldás alkalmazásához telepíteni kell az Ozeki NG SMS Gateway-t és be kell konfigurálnia erre a funkcióra. Ezt úgy teheti meg, ha telepít és beállít egy HTTP felhasználót a szoftverben. Amikor létrehozza ezt a felhasználót, meg kell adnia egy felhasználó nevet és jelszót az új felhasználónak. Ezt a megadott jelszót és felhasználónevet helyettesítse be az alábbi forráskódban.

A megoldás implementálása során szüksége lesz a következő fájlra: send-sms-java-http.zip

Forráskód példa

package hu.ozeki;

import java.net.*;

public class Java_example_httprequest {

        public static void main(String[] args) {
        try {
                String recipient = "06205555555";
                String message = "Hello World";
                String username = "admin";
                String password = "abc123";
                String originator = "06201234567";

                String requestUrl  = "http://127.0.0.1:9501/api?action=sendmessage&" +
    "username=" + URLEncoder.encode(username, "UTF-8") +
    "&password=" + URLEncoder.encode(password, "UTF-8") +
    "&recipient=" + URLEncoder.encode(recipient, "UTF-8") +
    "&messagetype=SMS:TEXT" +
    "&messagedata=" + URLEncoder.encode(message, "UTF-8") +
    "&originator=" + URLEncoder.encode(originator, "UTF-8") +
    "&serviceprovider=GSMModem1" +
    "&responseformat=html";



                URL url = new URL(requestUrl);
                HttpURLConnection uc = (HttpURLConnection)url.openConnection();

                System.out.println(uc.getResponseMessage());

                uc.disconnect();

        } catch(Exception ex) {
                System.out.println(ex.getMessage());

        }
        }

}


SMS küldés és fogadás Java-ból Ozeki Java SMS SDK használatával

A legpraktikusabb és legjobb mód az SMS küldésre Java-ból, ha az Ozeki Java SMS SDK-t használja. Ez az SDK biztosít egy programkönyvtárat, amely TCP/IP socket segítségével kommunikál az SMS szoftverrel. Ez a megoldás azért olyan kiváló, mert gyors és hatékony működést eredményez, továbbá lehetővé teszi az aszinkronikus eseménykezelést. Ez azt jelenti, hogy képes Önt informálni a kézbesítési jelentésekről és a bejövő üzenetekről egyaránt. A 3. ábra bemutatja, hogyan működik ez a megoldás. Az SMS üzenetek TCP kapcsolaton keresztül az Ozeki NG SMS Gateway-nek továbbítódnak. Az SMS szoftver egyenesen a mobil hálózatnak továbbítja az üzeneteket, és TCP csatornát használ a kézbesítési jelentések küldéséhez a Java alkalmazás számára.


Ábra 3 - SMS küldés és fogadás Java-ból Ozeki Java SMS SDK-n keresztül.

A megoldás alkalmazásához töltse le a következő fájlokat:
ozeki-java-sms-sdk.zip

OzekiSmsClient.jar

Forráskód példa

//MyOzSmsClient.java

package hu.ozekisms;

import java.io.*;
import java.util.*;
import hu.ozeki.*;

public class MyOzSmsClient extends OzSmsClient{

public MyOzSmsClient(String host, int port) throws IOException, InterruptedException {
        super(host, port);
        // TODO Auto-generated constructor stub
}


@Override
public void doOnMessageAcceptedForDelivery(OzSMSMessage sms) {
        Date now = new Date();
        System.out.println(now.toString() + " Message accepted for delivery. ID: " +
        sms.messageId);
}

@Override
public void doOnMessageDeliveredToHandset(OzSMSMessage sms) {
        Date now = new Date();
        System.out.println(now.toString() + " Message delivered to handset. ID: " +
        sms.messageId);
}

@Override
public void doOnMessageDeliveredToNetwork(OzSMSMessage sms) {
        Date now = new Date();
        System.out.println(now.toString() + " Message delivered to network. ID: " +
        sms.messageId);
}

@Override
public void doOnMessageDeliveryError(OzSMSMessage sms) {
        Date now = new Date();
        System.out.println(now.toString() + " Message could not be delivered. ID: " +
        sms.messageId + " Error message: " + sms.errorMessage + "\r\n");
}

@Override
public void doOnMessageReceived(OzSMSMessage sms) {
        Date now = new Date();
        System.out.println(now.toString() + " Message received. Sender address: " +
        sms.sender + " Message text: " + sms.messageData);
}


@Override
public void doOnClientConnectionError(String errorCode, String errorMessage) {
        Date now = new Date();
        System.out.println(now.toString() + " Message code: " + errorCode +
        ", Message: " + errorMessage);
}



}




//TestTcpSms.java

package hu.ozekisms;

import java.io.*;
import java.util.Scanner;

public class TestTcpSms {

        /**
         * @param args
         */
        public static void main(String[] args) {
                try {
                        String host = "localhost";
                        int port = 9500;
                        String username = "admin";
                        String password = "abc123";

                        MyOzSmsClient osc = new MyOzSmsClient(host, port);
                        osc.login(username, password);

                        Scanner sc = new Scanner(System.in);
                        String line = new String();

                        System.out.println("SMS message:");

                        if(osc.isLoggedIn()) {
                                while((line = sc.nextLine()).length() > 0)
                                        osc.sendMessage("+001122334455", line);

                                osc.logout();
                        }


                } catch (IOException e) {
                        System.out.println(e.toString());
                        e.printStackTrace();
                } catch (InterruptedException e) {
                        System.out.println(e.toString());
                        e.printStackTrace();
                }
        }
}

Amennyiben szeretné alkalmazni ezt a megoldást vállalati rendszerében, látogassa meg termékoldalunkat, ahol letöltheti az Ozeki NG SMS Gateway szoftvert.

> Megoldások > Szoftver fejlesztés > JAVA SMS
Telefon: 06 52 532 731, Fax: 06 52 532 732, E-mail: info@ozeki.hu
Ozeki Informatikai Kft, 1095 Budapest, Viola u. 20-24/B, Debreceni iroda: 4032 Debrecen, Füredi út 76.
Forrás: http://www.ozeki-sms-gateway.hu/p-60-sms.html