Espruino:Справочник по API/Класс BluetoothRemoteGATTCharacteristic/startNotifications(): различия между версиями
Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску
Нет описания правки |
Myagkij (обсуждение | вклад) Нет описания правки |
||
Строка 62: | Строка 62: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
{{Примечание1|Эта функция доступна только для [[NRF52]]-устройств (вроде [[Puck.js]], [[Pixl.js]], [[Bangle.js]] и [[MDBT42Q]]).}} | |||
=См.также= | =См.также= |
Текущая версия от 19:12, 27 мая 2023
Перевод: Максим Кузьмин
Проверка/Оформление/Редактирование: Мякишев Е.А.
Функция BluetoothRemoteGATTCharacteristic.startNotifications()[1]
Синтаксис
BluetoothRemoteGATTCharacteristic.startNotifications()
Параметры
Нет.
Возвращаемое значение
- Промис (Promise) с состоянием «выполнено успешно» (или «выполнено с ошибкой») вместе с данными.
Описание
Запускает уведомления – при каждом изменении значения в характеристике будет генерироваться событие characteristicvaluechanged, а в characteristic.value будет сохранено новое значение в виде DataView.
var device;
NRF.connect(device_address).then(function(d) {
device = d;
return d.getPrimaryService("service_uuid");
}).then(function(s) {
console.log("Сервис ",s);
return s.getCharacteristic("characteristic_uuid");
}).then(function(c) {
c.on('characteristicvaluechanged', function(event) {
console.log("-> "+event.target.value);
});
return c.startNotifications();
}).then(function(d) {
console.log("Ожидание уведомлений");
}).catch(function() {
console.log("Что-то пошло не так.");
});
Например, чтобы прослушать данные на сервисе NUS в Puck.js, можно воспользоваться вот этим кодом:
var gatt;
NRF.connect("pu:ck:js:ad:dr:es random").then(function(g) {
gatt = g;
return gatt.getPrimaryService("6e400001-b5a3-f393-e0a9-e50e24dcca9e");
}).then(function(service) {
return service.getCharacteristic("6e400003-b5a3-f393-e0a9-e50e24dcca9e");
}).then(function(characteristic) {
characteristic.on('characteristicvaluechanged', function(event) {
console.log("RX: "+JSON.stringify(event.target.value.buffer));
});
return characteristic.startNotifications();
}).then(function() {
console.log("Готово!");
});
См.также
Внешние ссылки