I'm using the WMADemo from the J2ME samples to send and receive SMS.
If I send one SMS from the SMSSend MIDlet for one device that doesn't have SMSReceive MIDlet installed the message goes to the inbox.
Is there any way to prevent this from happening?
Thanks.
I assume you want the message to be received by the MIDlet if it's present, and to be discarded if it's not installed, is that right?
There's nothing you can do about that, it's down to the individual handset. Some handsets (e.g. Nokia S40) will silently discard an SMS sent to a port number if there is no MIDlet listening for the message, whereas others will just display it as if it were a regular SMS.
Related
How to get info about the app/process sending the notification using notify-send. say I want to record the name of all the app/process using notification service in current session. What should be the best way to implement this behaviour in a notification daemon if possible ?
As far as I know, this isn't possible with notify-send. notify-send is a program only for sending desktop notifications. Since notifications are usually sent via dbus, dbus recorder programs may point you to the right direction. You may want to check this out https://github.com/victronenergy/dbus-recorder
I'm developing an application in javaME and I'm trying to receive incoming sms but there is a way to catch them that is working only with ports and there must be two applications but I want to send sms in a phone without using javame application to other phone that hasn't javame application.
I want to receive incoming sms without using port. How can I do this, is it possible?
In Java ME, You can't read SMS from inbox. There is a way to read SMS from Inbox, but it is for symbian phone like S60 series ( Nokia E72,E5 ) etc only.
In S60 series phone using API Bridge jar file, you can achieve your requirement. Please check out http://www.developer.nokia.com/Resources/Tools_and_downloads/Other/APIBridge/ page for more details.
I need to send a pattern like "username,password,0,1,1,1,0,1,0" using sms from j2me app to a gsm modem that is not in my control. It is used to reserve foods.
If anyone send a sms to provided number of the gsm modem using any mobile phone normally (like how you send sms to anyone), it will reply an answer.
My problem is sms sent from my j2me app is received by any java phone, but the gsm modem doesn't get it (as I didn't receive the reply and the food is not reserved). Same as gsm modem android phones don't receive my sms.
I used the typical j2me libraries to send sms. I tried TextMessage, no luck. Then I tried BinaryMessage, it didn't received by gsm modem but android received it!
Another thing is that I couldn't find any complete source, documentation or examples about sms pdu. Is the binary payLoad all the full sms format sent using BinaryMessage?
At the end I would now is it possible to send normal text sms using BinaryMessage? Any examples?
Thanks in advance.
Regards, Ali.
You should try to send sms by AT commands, compose message and send it sending by commands: (AT+CMGS, AT+CMSS)
Here is tutorial for it
At the bottom you have full list of topics about AT commands and SMS sending.
For using AT commands tutorial for AT commands in java me
That's basically my question, I have written the code for sending/receiving SMS but it's basically a "server/client" so I can't get the SMS that are sent directly to the phone number instead of through the j2me program. Is it even possible?
It is quite possible to write an app that receives an incoming SMS, extracts the message and sends it to server through a HTTP call. You can then make that server send that SMS to another phone.
Using the Wireless Messaging API (JSR 120) you can receive SMS to a JavaME application. However, you must register to receive SMS on a particular port, and you cannot read SMS from the phone's standard inbox.
Register:
import javax.wireless.messaging.MessageConnection;
MessageConnection connection =
(MessageConnection) javax.microedition.io.Connector.open("sms://:1234");
There are 2 different methods of receiving SMS:
event-driven using javax.wireless.messaging.MessageListener
using blocking method javax.wireless.messaging.MessageConnection.receive()
I want to a Java ME application that transfers any SMS received to a PC using bluetooth. The PC can then direct the Java ME application via bluetooth to send a response SMS. Is there library available for this architecture or I have to design it myself?
Is this approach correct or a better one exists? I want to use bluetooth as then I will not have dependency on the cable.
You'll need to create this yourself, however you'll find that you can't do what you want with J2ME.
J2ME can't access any old SMS that the handset receives, only ones sent to a specific port upon which the MIDlet is listening. So to get all the other SMSes, create a bluetooth serial/dial-up connection to your handset in the way I've described in this answer.
Create a PC client which repeatedly issues AT+CGML commands (as described in the AT command set document linked to in the answer above), to see when an SMS has been received. Use AT+CGMR to read and parse the message text. Then use AT+CGMS to sent a response. This can all be done over bluetooth.
It's better to use the serial connection to send a response, because a MIDlet cannot usually be triggered to open based on incoming bluetooth data.
Hope this helps.
You may have already achieved your task, anyway for the reference I think it is much better if you try using Gammu . I'm using it for the same task (Send / receive SMS through PC ) with a simple bat file I have written, works like a charm.
Anyway you don't need any J2me program for this.
Wammu takes care of making the connection to phone and sending AT commands.