Angular web bluetooth写和通知示例

时间:2018-04-04 23:49:26

标签: javascript angular typescript bluetooth web-bluetooth

目前,我正在使用此模块进行角度调整:Angular web bluetooth

我可以找到一个如何阅读特征并让它工作的例子。但是没有样本可以写(或通知)。我很确定这个模块能够执行这个任务see here,但我对Angular(甚至JS?)的了解还不够。

有人知道在哪里可以找到示例或/并且可以提供它们吗?

要读取电池电量的片段:

getBatteryLevel() {
console.log('Getting Battery Service...');

try {
  return this.ble
    .discover$({
      acceptAllDevices: true,
      optionalServices: [BatteryLevelService.GATT_PRIMARY_SERVICE]
    })
    .mergeMap((gatt: BluetoothRemoteGATTServer) => {
      return this.ble.getPrimaryService$(
        gatt,
        BatteryLevelService.GATT_PRIMARY_SERVICE
      );
    })
    .mergeMap((primaryService: BluetoothRemoteGATTService) => {
      return this.ble.getCharacteristic$(
        primaryService,
        BatteryLevelService.GATT_CHARACTERISTIC_BATTERY_LEVEL
      );
    })
    .mergeMap((characteristic: BluetoothRemoteGATTCharacteristic) => {
      return this.ble.readValue$(characteristic);
    })
    .map((value: DataView) => value.getUint8(0));
} catch (e) {
  console.error('Oops! can not read value from %s');
}

}

谢谢。

编辑:感谢Aluan Haddad的帮助,我能够使用正确的服务和特征UUID执行写入请求

            .mergeMap((characteristic: BluetoothRemoteGATTCharacteristic) => {
            let value = new Uint8Array(1);
            value[0] = 2;
          return this.ble.writeValue$(characteristic, value);
        }).subscribe();

0 个答案:

没有答案