[BluetoothLE] add rssi attribute 65/84565/3
authorLukasz Bardeli <l.bardeli@samsung.com>
Wed, 24 Aug 2016 10:09:11 +0000 (12:09 +0200)
committerLukasz Bardeli <l.bardeli@samsung.com>
Wed, 24 Aug 2016 10:09:11 +0000 (12:09 +0200)
[Verification] checked in console
   var adapter = tizen.bluetooth.getLEAdapter();
   adapter.startScan(
   function onsuccess(device) {
     console.log("[Found device] address: " + device.address);
     console.log("[Found device] rssi: " + device.rssi);}
   );

Change-Id: Ie507d36eb3a270c5acbcf7f51af465845ae1df7c
Signed-off-by: Lukasz Bardeli <l.bardeli@samsung.com>
src/bluetooth/bluetooth_api.js
src/bluetooth/bluetooth_le_device.cc

index c1c1864c1c9c9f4c18b93517dbeaf7d1015e56ee..bebe73e3a22052a6af86b6fbaad31d790ea2fca8 100755 (executable)
@@ -559,7 +559,7 @@ BluetoothSocket.prototype.close = function() {
 //class BluetoothLEDevice ////////////////////////////////////////////////////
 var BluetoothLEDevice = function(data) {
     var address = "", name = null, txpowerlevel = null, appearance = null, uuids = null,
-        solicitationuuids = null, serviceData = null, manufacturerData = null;
+        solicitationuuids = null, serviceData = null, manufacturerData = null, rssi = null;
 
     if (data) {
       address = data.address;
@@ -576,6 +576,9 @@ var BluetoothLEDevice = function(data) {
       if (data.manufacturerData) {
         manufacturerData = new tizen.BluetoothLEManufacturerData(data.manufacturerData);
       }
+      if (data.rssi) {
+        rssi = data.rssi;
+      }
     }
 
     Object.defineProperties(this, {
@@ -604,7 +607,8 @@ var BluetoothLEDevice = function(data) {
         manufacturerData : {
             value: manufacturerData,
             writable: false,
-            enumerable: true}
+            enumerable: true},
+        rssi : {value: rssi, writable: false, enumerable: true}
     });
 };
 
index 2c5716071b0a6a032bf05375aa05a581e817798c..a4f27dc8533423ba96724eb76de4961ab8e89c61 100755 (executable)
@@ -48,6 +48,7 @@ const std::string kManufacturerData = "manufacturerData";
 const std::string kId = "id";
 const std::string kData = "data";
 const std::string kAction = "action";
+const std::string kRSSI = "rssi";
 
 const std::string kOnConnected = "onconnected";
 const std::string kOnDisconnected = "ondisconnected";
@@ -305,6 +306,10 @@ PlatformResult BluetoothLEDevice::ToJson(
     g_free(manufacturer_data);
   }
 
+  le_device->insert(
+      std::make_pair(kRSSI,
+                     picojson::value(static_cast<double>(info->rssi))));
+
   return PlatformResult(ErrorCode::NO_ERROR);
 }