New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 610393 link

Starred by 1 user

Issue metadata

Status: Verified
Owner:
Closed: May 2016
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Chrome
Pri: 1
Type: Bug



Sign in to add a comment

Implement notifications.

Project Member Reported by r...@chromium.org, May 9 2016

Issue description

The current GATT server API and underlying code does not support notifications for hosted attributes. This requires a remote central to keep polling versus requesting a notification when the value changes.

This involves,
.) Adding a method to the Chrome Bluetooth API which allows an app to send a value changed notification to the remote central.
.) Wiring up the StartNotifying/StopNotifying DBus calls and remembering the notifying state.
.) Sending a signal to BlueZ when the user requests a send notification on an attribute value (if the remote central has requested notifications).


 
Project Member

Comment 1 by bugdroid1@chromium.org, May 12 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/1cd8d446e0fb6a9aea498c604967305ef8033688

commit 1cd8d446e0fb6a9aea498c604967305ef8033688
Author: rkc <rkc@chromium.org>
Date: Thu May 12 22:43:19 2016

Implement DBus changes needed for notifications.

This implements the code we need to be able to receive the start notifications
and stop notifications calls from BlueZ and the rest of the code needed to
send a value update notification to BlueZ.

This is part 1 of 2 CLs.
https://codereview.chromium.org/1974633002 <<<
https://codereview.chromium.org/1973703002

R=xiyuan@chromium.org
BUG= 610393 

Review-Url: https://codereview.chromium.org/1974633002
Cr-Commit-Position: refs/heads/master@{#393382}

[modify] https://crrev.com/1cd8d446e0fb6a9aea498c604967305ef8033688/device/bluetooth/dbus/bluetooth_gatt_application_service_provider.cc
[modify] https://crrev.com/1cd8d446e0fb6a9aea498c604967305ef8033688/device/bluetooth/dbus/bluetooth_gatt_application_service_provider.h
[modify] https://crrev.com/1cd8d446e0fb6a9aea498c604967305ef8033688/device/bluetooth/dbus/bluetooth_gatt_application_service_provider_impl.cc
[modify] https://crrev.com/1cd8d446e0fb6a9aea498c604967305ef8033688/device/bluetooth/dbus/bluetooth_gatt_application_service_provider_impl.h
[modify] https://crrev.com/1cd8d446e0fb6a9aea498c604967305ef8033688/device/bluetooth/dbus/bluetooth_gatt_application_service_provider_unittest.cc
[modify] https://crrev.com/1cd8d446e0fb6a9aea498c604967305ef8033688/device/bluetooth/dbus/bluetooth_gatt_attribute_value_delegate.h
[modify] https://crrev.com/1cd8d446e0fb6a9aea498c604967305ef8033688/device/bluetooth/dbus/bluetooth_gatt_characteristic_delegate_wrapper.cc
[modify] https://crrev.com/1cd8d446e0fb6a9aea498c604967305ef8033688/device/bluetooth/dbus/bluetooth_gatt_characteristic_delegate_wrapper.h
[modify] https://crrev.com/1cd8d446e0fb6a9aea498c604967305ef8033688/device/bluetooth/dbus/bluetooth_gatt_characteristic_service_provider_impl.cc
[modify] https://crrev.com/1cd8d446e0fb6a9aea498c604967305ef8033688/device/bluetooth/dbus/bluetooth_gatt_characteristic_service_provider_impl.h
[modify] https://crrev.com/1cd8d446e0fb6a9aea498c604967305ef8033688/device/bluetooth/dbus/bluetooth_gatt_descriptor_delegate_wrapper.h
[modify] https://crrev.com/1cd8d446e0fb6a9aea498c604967305ef8033688/device/bluetooth/dbus/bluetooth_gatt_descriptor_service_provider_impl.cc
[modify] https://crrev.com/1cd8d446e0fb6a9aea498c604967305ef8033688/device/bluetooth/dbus/bluetooth_gatt_descriptor_service_provider_impl.h
[modify] https://crrev.com/1cd8d446e0fb6a9aea498c604967305ef8033688/device/bluetooth/dbus/bluetooth_gatt_service_service_provider_impl.cc
[modify] https://crrev.com/1cd8d446e0fb6a9aea498c604967305ef8033688/device/bluetooth/dbus/bluetooth_gatt_service_service_provider_impl.h
[modify] https://crrev.com/1cd8d446e0fb6a9aea498c604967305ef8033688/device/bluetooth/dbus/fake_bluetooth_gatt_application_service_provider.cc
[modify] https://crrev.com/1cd8d446e0fb6a9aea498c604967305ef8033688/device/bluetooth/dbus/fake_bluetooth_gatt_application_service_provider.h
[modify] https://crrev.com/1cd8d446e0fb6a9aea498c604967305ef8033688/device/bluetooth/dbus/fake_bluetooth_gatt_characteristic_service_provider.cc
[modify] https://crrev.com/1cd8d446e0fb6a9aea498c604967305ef8033688/device/bluetooth/dbus/fake_bluetooth_gatt_characteristic_service_provider.h

Project Member

Comment 2 by bugdroid1@chromium.org, May 12 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/d1e6dc42512184286e5275eb05a4fb7c8f062aa4

commit d1e6dc42512184286e5275eb05a4fb7c8f062aa4
Author: rkc <rkc@chromium.org>
Date: Thu May 12 23:12:47 2016

Implement //device/bt changes for notifications.

This CL implements the changes to the device::Bluetooth* classes and the
changes to the BlueZ implementations of them for supporting notifications.

Vincent, since this changes device::Bluetooth code and adds tests, an
OWNERs review is needed.

This is part 2 of of 2 CLs
https://codereview.chromium.org/1974633002
https://codereview.chromium.org/1973703002 <<<

R=scheib@chromium.org, xiyuan@chromium.org
BUG= 610393 

Review-Url: https://codereview.chromium.org/1973703002
Cr-Commit-Position: refs/heads/master@{#393388}

[modify] https://crrev.com/d1e6dc42512184286e5275eb05a4fb7c8f062aa4/chrome/browser/extensions/api/bluetooth_low_energy/bluetooth_low_energy_event_router.cc
[modify] https://crrev.com/d1e6dc42512184286e5275eb05a4fb7c8f062aa4/chrome/browser/extensions/api/bluetooth_low_energy/bluetooth_low_energy_event_router.h
[modify] https://crrev.com/d1e6dc42512184286e5275eb05a4fb7c8f062aa4/device/bluetooth/bluetooth_local_gatt_characteristic.h
[modify] https://crrev.com/d1e6dc42512184286e5275eb05a4fb7c8f062aa4/device/bluetooth/bluetooth_local_gatt_characteristic_unittest.cc
[modify] https://crrev.com/d1e6dc42512184286e5275eb05a4fb7c8f062aa4/device/bluetooth/bluetooth_local_gatt_service.h
[modify] https://crrev.com/d1e6dc42512184286e5275eb05a4fb7c8f062aa4/device/bluetooth/bluez/bluetooth_adapter_bluez.cc
[modify] https://crrev.com/d1e6dc42512184286e5275eb05a4fb7c8f062aa4/device/bluetooth/bluez/bluetooth_adapter_bluez.h
[modify] https://crrev.com/d1e6dc42512184286e5275eb05a4fb7c8f062aa4/device/bluetooth/bluez/bluetooth_local_gatt_characteristic_bluez.cc
[modify] https://crrev.com/d1e6dc42512184286e5275eb05a4fb7c8f062aa4/device/bluetooth/bluez/bluetooth_local_gatt_characteristic_bluez.h
[modify] https://crrev.com/d1e6dc42512184286e5275eb05a4fb7c8f062aa4/device/bluetooth/dbus/bluetooth_gatt_characteristic_delegate_wrapper.cc
[modify] https://crrev.com/d1e6dc42512184286e5275eb05a4fb7c8f062aa4/device/bluetooth/test/bluetooth_test.cc
[modify] https://crrev.com/d1e6dc42512184286e5275eb05a4fb7c8f062aa4/device/bluetooth/test/bluetooth_test.h
[modify] https://crrev.com/d1e6dc42512184286e5275eb05a4fb7c8f062aa4/device/bluetooth/test/bluetooth_test_bluez.cc
[modify] https://crrev.com/d1e6dc42512184286e5275eb05a4fb7c8f062aa4/device/bluetooth/test/bluetooth_test_bluez.h
[modify] https://crrev.com/d1e6dc42512184286e5275eb05a4fb7c8f062aa4/device/bluetooth/test/test_bluetooth_local_gatt_service_delegate.cc
[modify] https://crrev.com/d1e6dc42512184286e5275eb05a4fb7c8f062aa4/device/bluetooth/test/test_bluetooth_local_gatt_service_delegate.h

Project Member

Comment 3 by bugdroid1@chromium.org, May 13 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/eac4477142e8b6671468891d40fa9f2c2d83cd68

commit eac4477142e8b6671468891d40fa9f2c2d83cd68
Author: rkc <rkc@chromium.org>
Date: Fri May 13 20:43:49 2016

Implement the notifyCharacteristicValueChanged API.

This CL adds the implementation and tests for the
notifyGetCharacteristicValueChanged API.

R=xiyuan@chromium.org
BUG= 610393 

Review-Url: https://codereview.chromium.org/1972353002
Cr-Commit-Position: refs/heads/master@{#393628}

[modify] https://crrev.com/eac4477142e8b6671468891d40fa9f2c2d83cd68/chrome/browser/extensions/api/bluetooth_low_energy/bluetooth_low_energy_api.cc
[modify] https://crrev.com/eac4477142e8b6671468891d40fa9f2c2d83cd68/chrome/browser/extensions/api/bluetooth_low_energy/bluetooth_low_energy_apitest_chromeos.cc
[add] https://crrev.com/eac4477142e8b6671468891d40fa9f2c2d83cd68/chrome/test/data/extensions/api_test/bluetooth_low_energy/notify_characteristic_value_changed/manifest.json
[add] https://crrev.com/eac4477142e8b6671468891d40fa9f2c2d83cd68/chrome/test/data/extensions/api_test/bluetooth_low_energy/notify_characteristic_value_changed/runtest.js
[add] https://crrev.com/eac4477142e8b6671468891d40fa9f2c2d83cd68/chrome/test/data/extensions/api_test/bluetooth_low_energy/notify_characteristic_value_changed_error_conditions/manifest.json
[add] https://crrev.com/eac4477142e8b6671468891d40fa9f2c2d83cd68/chrome/test/data/extensions/api_test/bluetooth_low_energy/notify_characteristic_value_changed_error_conditions/runtest.js

Comment 4 by r...@chromium.org, May 13 2016

Status: Fixed (was: Started)
Status: Verified (was: Fixed)
bulk verify of io>bluetooth gatt server bugs

Sign in to add a comment