diff options
author | Nathan Lasseter <nathan@4574.co.uk> | 2013-05-22 15:34:00 +0100 |
---|---|---|
committer | Nathan Lasseter <nathan@4574.co.uk> | 2013-05-22 15:34:00 +0100 |
commit | cc8ace92f17c8e5aef7d68ff316e5cd038cd36b5 (patch) | |
tree | caad5218a1da276909c71a95c45725651b08d984 /src/user4574/texttransport/SMSReceiver.java |
Initial Commit
Diffstat (limited to 'src/user4574/texttransport/SMSReceiver.java')
-rw-r--r-- | src/user4574/texttransport/SMSReceiver.java | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/src/user4574/texttransport/SMSReceiver.java b/src/user4574/texttransport/SMSReceiver.java new file mode 100644 index 0000000..c313b0f --- /dev/null +++ b/src/user4574/texttransport/SMSReceiver.java @@ -0,0 +1,26 @@ +package user4574.texttransport; + +import org.eclipse.paho.client.mqttv3.MqttException; +import org.eclipse.paho.client.mqttv3.MqttTopic; + +import android.content.BroadcastReceiver; +import android.content.Context; +import android.content.Intent; +import android.os.Bundle; +import android.telephony.SmsMessage; + +public class SMSReceiver extends BroadcastReceiver { + public void onReceive(Context context, Intent intent) { + Bundle pdusBundle = intent.getExtras(); + Object[] pdus = (Object[]) pdusBundle.get("pdus"); + SmsMessage message = SmsMessage.createFromPdu((byte[]) pdus[0]); + try { + if (Start.client != null) { + MqttTopic t = Start.client.getTopic("/texttransport/" + message.getOriginatingAddress().substring(1) + "/received"); + t.publish(message.getMessageBody().getBytes(), 2, false); + } + } catch (MqttException e) { + e.printStackTrace(); + } + } +}
\ No newline at end of file |