All Downloads are FREE. Search and download functionalities are using the official Maven repository.

eu.hgross.blaubot.bluetooth.rfcommserver Maven / Gradle / Ivy

The newest version!
package eu.hgross.blaubot.bluetooth;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.nio.charset.Charset;

import javax.bluetooth.LocalDevice;
import javax.bluetooth.RemoteDevice;
import javax.bluetooth.UUID;
import javax.microedition.io.Connector;
import javax.microedition.io.StreamConnection;
import javax.microedition.io.StreamConnectionNotifier;

public class rfcommserver {
    java.util.UUID serviceUUid = java.util.UUID.fromString("b03e9d9c-ff1e-11e4-a322-1697f925ec7b");
    UUID uuid = new UUID(serviceUUid.toString().replace("-", ""), false);

    public void startserver() {
        try {
            String url = "btspp://localhost:" + uuid +
                    //  new UUID( 0x1101 ).toString() +
                    ";name=File Server";
            StreamConnectionNotifier service = (StreamConnectionNotifier) Connector.open(url);

            StreamConnection con = service.acceptAndOpen();
            OutputStream dos = con.openOutputStream();
            InputStream dis = con.openInputStream();

            InputStreamReader daf = new InputStreamReader(System.in);
            BufferedReader sd = new BufferedReader(daf);
            RemoteDevice dev = RemoteDevice.getRemoteDevice(con);

            String greeting = "hi";
            dos.write(greeting.getBytes(Charset.forName("utf-8")));
            dos.flush();
            byte buffer[] = new byte[1024];
            int bytes_read = dis.read(buffer);
            String received = new String(buffer, 0, bytes_read, Charset.forName("utf-8"));
            System.out.println
                    ("Message:" + received + "From:"
                            + dev.getBluetoothAddress());
            // con.close();
        } catch (IOException e) {
            System.err.print(e.toString());
        }
    }

    public static void main(String args[]) {
        try {
            LocalDevice local = LocalDevice.getLocalDevice();
            System.out.println("Server Started:\n"
                    + local.getBluetoothAddress()
                    + "\n" + local.getFriendlyName());

            rfcommserver ff = new rfcommserver();
            while (true) {
                ff.startserver();
            } //while
        }  //try
        catch (Exception e) {
            System.err.print(e.toString());
        }
    }
}  //main




© 2015 - 2025 Weber Informatics LLC | Privacy Policy