Envoi de messages depuis un PC via un téléphone mobile à l'aide de java


Je travaille sur une application, utilisant java, qui a les fonctionnalités suivantes:

  • L'utilisateur connecte son mobile à un PC à l'aide d'un câble USB ou Bluetooth.

  • L'utilisateur tape un message sur son PC (dans le champ de texte fourni par mon logiciel).

  • L'utilisateur saisit un numéro de téléphone (dans une zone de texte fournie par mon logiciel).

  • L'Utilisateur clique sur le bouton envoyer.

Ensuite, le logiciel doit envoyer le message au numéro de téléphone spécifié et des frais appropriés devraient être appliqués à mon solde mobile. En d'autres termes, je dirige mon mobile via mon logiciel pour envoyer un message à un numéro spécifié.

Comment dois-je faire cela? Core java est-il suffisant à cette fin ou je dois utiliser j2me ou existe-t-il un framework java particulier qui conviendrait à cela?

Author: Mike Hay, 2011-09-19

2 answers

Une option consiste à connecter le téléphone au PC en utilisant serial link (COM). Besoin de configurer le téléphone connecté physiquement par USB ou Bluetooth afin d'apparaître dans un port COM (série).

Ensuite, vous devez créer une application pour PC (Java ou tout ce qui peut ouvrir des ports série) qui ouvre le port COM utilisé par le téléphone et envoie les commandes AT appropriées. Port série peut être ouvert par JavaComm 2.0 Win32 ou, plus récemment, RxTx.

Ouvrez le port série et écrivez et lire la commande en écrivant et en lisant des octets, de la même manière qu'un socket.

Ensuite, créez une application visuelle qui permet à l'utilisateur de définir les informations telles que le numéro de téléphone pour la destination, le texte...

Vous avez besoin de Java SE ou de tout langage qui vous permet de créer des applications visuelles et d'ouvrir des ports série (Java,. NET, Python...).

Quelques liens sur ces commandes par le port série dans Windows: 1, 2, 3.

Une autre option pourrait utiliser l'API native de le système d'exploitation mobile via une prise, mais semble complexe et l'utilisation des commandes AT et du port série devrait fonctionner pour tous les téléphones et le seul problème est de connecter le téléphone en série via USB ou BlueTooth et de gérer le port série.

 1
Author: David Oliván Ubieto, 2011-09-19 14:55:34

Cela dépend fortement du système d'exploitation mobile que vous utilisez. Utilisez-vous Windows Mobile, Android OS, BlackBerry OS?

Si vous utilisez Android, vous devez utiliser le SmsManager pour faire ça. Le SmsManager peut faire ce qui suit:

Gère les opérations SMS telles que l'envoi de données, de texte et de messages SMS pdu.

Mise à jour:

Puisque vous utilisez Symbian OS, consultez la documentation pour plus d'informations sur l'envoi de SMS messages . Je suppose que vous pouvez deviner le reste (c'est à dire comment obtenir les champs de texte pour le numéro et le message, etc.)

Voici un exemple de la documentation de Symbian OS:

public boolean sendSms(String number, String message){
    boolean result = true;
    try {
      //sets address to send message
      String addr = "sms://"+number;
      // opens connection
      MessageConnection conn = (MessageConnection) Connector.open(addr);
      // prepares text message
      TextMessage msg =
      (TextMessage)conn.newMessage(MessageConnection.TEXT_MESSAGE);
      //set text
      msg.setPayloadText(message);
      // send message
      conn.send(msg);
      conn.close();
    } catch (SecurityException se) {
        // probably the user has not allowed to send sms
        // you may want to handle this differently
        result = false;
    } catch (Exception e) {
        result = false;
    }
    return result;
  }

L'extrait ci-dessus provient du guide sur "Comment envoyer du texte SMS en Java ME"

 0
Author: Kiril, 2011-09-19 14:31:26