Bluetooth adapter
Set bluetooth adapter parameters:
// turn it on
stbBluetooth.enable = true;
// set it discoverable
stbBluetooth.visible = true;
// set custom name
stbBluetooth.name = 'My set top box';
Get bluetooth adapter address:
console.log(stbBluetooth.address);
Set all event handlers before discovery process:
stbBluetooth.onDiscoveryStart = function ( config ) {
console.log('onDiscoveryStart event');
console.log(config);
};
stbBluetooth.onDiscoveryStop = function () {
console.log('onDiscoveryStop event');
};
stbBluetooth.onDeviceFound = function ( device ) {
console.log('onDeviceFound event');
console.log(device);
};
stbBluetooth.onDeviceRemoved = function ( device ) {
console.log('onDeviceRemoved event');
console.log(device);
};
It's also possible to use stbBluetooth.addEventListener
and stbBluetooth.removeEventListener
methods:
stbBluetooth.addEventListener('discoveryStart', function ( config ) {
console.log('discoveryStart listener');
console.log(config);
});
stbBluetooth.addEventListener('discoveryStop', function () {
console.log('discoveryStop listener');
});
stbBluetooth.addEventListener('deviceFound', function ( device ) {
console.log('deviceFound listener');
console.log(device);
});
stbBluetooth.addEventListener('deviceRemoved', function ( device ) {
console.log('deviceRemoved listener');
console.log(device);
});
Start searching for devices:
// scan for specific time - 1.28s * 20
stbBluetooth.startDiscovery({duration: 20});
Get all discovered devices list:
console.log(stbBluetooth.devices);
Discovered device
Let's work with one of the found devices:
var device = stbBluetooth.devices[0];
Get device detailed information:
// MAC address
console.log(device.address);
// discoverable name
console.log(device.name);
// BR/EDR or BLE
console.log(device.type);
// vendor identifier
console.log(device.vendorId);
// product identifier
console.log(device.productId);
// connection state - true in case at least one profile is connected
console.log(device.active);
// paired state
console.log(device.paired);
// available profiles
console.log(device.profiles);
Set all event handlers:
device.onPinProvide = function ( pin ) {
console.log('onPinProvide event');
console.log(pin);
};
device.onAuthentication = function ( status ) {
console.log('onAuthentication event');
console.log(status);
};
device.onChange = function ( name, value ) {
console.log('onChange event');
console.log(name, value);
};
It's also possible to use stbBluetoothDevice.addEventListener
and stbBluetoothDevice.removeEventListener
methods:
device.addEventListener('pinProvide', function ( pin ) {
console.log('pinProvide listener');
console.log(pin);
});
device.addEventListener('authentication', function ( status ) {
console.log('authentication listener');
console.log(status);
});
device.addEventListener('change', function ( name, value ) {
console.log('change listener');
console.log(name, value);
});
Disconnect and unpair the device and remove it from the paired devices list:
device.forget();
Device profile
Let's work with one of the available profiles:
var profile = device.profiles.HID;
Get profile connection state:
console.log(profile.active);
Set all event handlers:
profile.onOpen = function () {
console.log('onOpen event');
};
profile.onClose = function () {
console.log('onClose event');
};
It's also possible to use stbBluetoothProfile.addEventListener
and stbBluetoothProfile.removeEventListener
methods:
profile.addEventListener('open', function () {
console.log('open listener');
});
profile.addEventListener('close', function () {
console.log('close listener');
});
Open connection:
profile.open();
Close connection:
profile.close();