IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Java Discussion :

Envoit des SMS avec SMSLib


Sujet :

Java

  1. #1
    Membre éclairé
    Homme Profil pro
    Ingénieur de construction de réseaux
    Inscrit en
    Août 2012
    Messages
    406
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Ingénieur de construction de réseaux
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2012
    Messages : 406
    Par défaut Envoit des SMS avec SMSLib
    Bonjour je souhaite utiliser smslib pour l'envoit des SMS. J'ai parcouru le tuto suivant:
    http://blog.harshadura.net/2011/10/s...46776668048406
    mais j'ai l'exception suivante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    -----------------------------
    *** SMS-DURA - GSM MODEM SMS API WRAPPER ***
    www.harshadura.com
    -----------------------------
    Example: Send message from a serial gsm modem.
    SMSLib: A Java API library for sending and receiving SMS via a GSM modem or other supported gateways.
    This software is distributed under the terms of the Apache v2.0 License.
    Web Site: http://smslib.org
    Version: 3.5.2
    log4j:WARN No appenders could be found for logger (smslib).
    log4j:WARN Please initialize the log4j system properly.
    log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
    Exception in thread "main" org.smslib.GatewayException: Comm library exception: java.lang.RuntimeException: javax.comm.PortInUseException: Port currently owned by Unknown Windows Application
    	at org.smslib.modem.SerialModemDriver.connectPort(SerialModemDriver.java:102)
    	at org.smslib.modem.AModemDriver.connect(AModemDriver.java:114)
    	at org.smslib.modem.ModemGateway.startGateway(ModemGateway.java:189)
    	at org.smslib.Service$1Starter.run(Service.java:276)
    j(utilise un motorola L7 comme modem, et une liaison Bluetooth voilà mon code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     package logic;
     
    import com.harshadura.gsm.smsdura.GsmModem;
    public class TestSMS {
        private static String port = "COM5"; //Modem Port.
        private static int bitRate = 115200; //this is also optional. leave as it is.
        private static String modemName = "Motorola L6"; //this is optional.
        private static String modemPin = "0000"; //Pin code if any have assigned to the modem.
        private static String SMSC = "+23790764181"; //Message Center Number ex. Mobitel
    	public static void main(String[] args) throws Exception {
            GsmModem gsmModem = new GsmModem();
            GsmModem.configModem(port, bitRate, modemName, modemPin, SMSC);
            gsmModem.Sender("+23794140369", "Test Message"); // (tp, msg)        
    	}
    }
    Deuxième problème j'aimerais que dans mon application se soit une seule machine connectée au modem qui puisse envoyé les sms.
    Merci

  2. #2
    Membre éclairé
    Homme Profil pro
    Ingénieur de construction de réseaux
    Inscrit en
    Août 2012
    Messages
    406
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Ingénieur de construction de réseaux
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2012
    Messages : 406
    Par défaut
    Bon là j'ai découvert d'où venait mon problème le port était déjà occupé par le logiciel du téléphone que j'utilisai. Il fallait juste que je l’arrête mais j'ai un autre problème j’envoie le message une fois mais la deuxième fois j'ai la même exception sauf que l'utilisateur du port c'est smslib:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    org.smslib.GatewayException: Comm library exception: java.lang.RuntimeException: javax.comm.PortInUseException: Port currently owned by org.smslib
    	at org.smslib.modem.SerialModemDriver.connectPort(SerialModemDriver.java:102)
    	at org.smslib.modem.AModemDriver.connect(AModemDriver.java:114)
    	at org.smslib.modem.ModemGateway.startGateway(ModemGateway.java:189)
    	at org.smslib.Service$1Starter.run(Service.java:276)
    Pour envoyé un autre message je suis obligé de sortir de relancer eclipse pour que sa marche
    S'il vous plaie y a t-il un moyen de libérer le port une fois le message envoyé?

  3. #3
    Membre éclairé
    Homme Profil pro
    Ingénieur de construction de réseaux
    Inscrit en
    Août 2012
    Messages
    406
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Ingénieur de construction de réseaux
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2012
    Messages : 406
    Par défaut
    Bon j'ai trouvé une solution qui me satisfait j'espere que sa vas vous aider. Voilà la solution créer l'objet au lancement de l'application et utiliser le même objet pendant que l'application fonctionne voilà la nouvelle classe customisé:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    package get.sms;
    import java.io.IOException;
     
    import org.smslib.AGateway;
    import org.smslib.GatewayException;
    import org.smslib.IOutboundMessageNotification;
    import org.smslib.OutboundMessage;
    import org.smslib.SMSLibException;
    import org.smslib.Service;
    import org.smslib.TimeoutException;
    import org.smslib.modem.SerialModemGateway;
     
    public class Envoit_Sms {
    	static String port="modem.com5";
    	static String port_number="COM5";
    	static int rate=115200;
    	static String modem_name="Motorola";
    	static String model="L71";
    	static SerialModemGateway gateway=null;
    	static String pin="0000";
    	static String number="+23793930372";
    	Service service;
    	OutboundMessage msg=null;
    	public Envoit_Sms() throws TimeoutException, SMSLibException, IOException, InterruptedException {		
    		gateway = new SerialModemGateway(port,port_number,rate,modem_name,model);
    		System.out.println("initialisation...");
    		gateway.setInbound(true);
    		gateway.setOutbound(true);
    		gateway.setSimPin(pin);
    		gateway.setSmscNumber(number);		
    		Service.getInstance().addGateway(gateway);
    		Service.getInstance().startService();
    		System.out.println("demarrage du service...");
    		service=Service.getInstance();
    	}
    		public void Envoit(String numero, String message) throws TimeoutException, GatewayException, SMSLibException, IOException, InterruptedException{
    			msg=new OutboundMessage("237"+numero,message);
    			//service=Service.getInstance();
    			//service.sendMessage(msg);			
    			service.queueMessage(msg,gateway.getGatewayId());
    			System.out.println("envoit du sms");
    			service.stopService();
    			System.out.println("arret du service...");
    		}
    		public class OutboundNotification implements IOutboundMessageNotification
    		{
    			public void process(AGateway gateway, OutboundMessage msg)
    			{
    				System.out.println("Outbound handler called from Gateway: " + gateway.getGatewayId());
    				System.out.println(msg);
    			}
    		}
    }

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [WD17] envoyer des sms avec windev
    Par sororoger dans le forum WinDev
    Réponses: 6
    Dernier message: 14/01/2013, 11h45
  2. [WD16] Envoyer des sms avec WinDev
    Par Eric1962 dans le forum WinDev
    Réponses: 3
    Dernier message: 11/09/2012, 08h09
  3. problème d'envoi des sms avec Linux
    Par ja1985va dans le forum Linux
    Réponses: 20
    Dernier message: 05/08/2011, 15h56
  4. Réponses: 1
    Dernier message: 31/05/2010, 11h35
  5. envoyer des sms avec un modem GPRS
    Par solo190 dans le forum API, COM et SDKs
    Réponses: 7
    Dernier message: 18/01/2010, 17h49

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo