Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/zurfyx/eddystone-web-bluetooth
Web Bluetooth Eddystone made easier.
https://github.com/zurfyx/eddystone-web-bluetooth
eddystone library physical-web web-bluetooth
Last synced: 17 days ago
JSON representation
Web Bluetooth Eddystone made easier.
- Host: GitHub
- URL: https://github.com/zurfyx/eddystone-web-bluetooth
- Owner: zurfyx
- License: mit
- Created: 2017-06-25T22:03:36.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2017-09-18T22:28:18.000Z (about 7 years ago)
- Last Synced: 2024-10-03T12:38:01.866Z (about 1 month ago)
- Topics: eddystone, library, physical-web, web-bluetooth
- Language: TypeScript
- Homepage: https://zurfyx.github.io/eddystone-web-bluetooth
- Size: 2.55 MB
- Stars: 36
- Watchers: 7
- Forks: 5
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Eddystone Web Bluetooth
> Web Bluetooth Eddystone made easier
[![Build Status](https://travis-ci.org/zurfyx/eddystone-web-bluetooth.svg?branch=master)](https://travis-ci.org/zurfyx/eddystone-web-bluetooth)
[![David](https://david-dm.org/zurfyx/eddystone-web-bluetooth.svg)](https://david-dm.org/zurfyx/eddystone-web-bluetooth)
[![David](https://david-dm.org/zurfyx/eddystone-web-bluetooth/dev-status.svg)](https://david-dm.org/zurfyx/eddystone-web-bluetooth#info=devDependencies)
[![Code Climate](https://codeclimate.com/github/zurfyx/eddystone-web-bluetooth/badges/gpa.svg)](https://codeclimate.com/github/zurfyx/eddystone-web-bluetooth)
Getting started source-code using Physical Web beacons## Features
- [x] Scan Eddystone beacons
- [x] Connect / Disconnect
- [x] Monitor connection status
- [ ] Read Capabilities
- [ ] Read / Write Active Slot
- [x] Read / Write Advertising Interval
- [x] Read / Write Radio Tx Power
- [x] Read / Write Advertised Tx Power
- [x] Read Lock State
- [ ] Write Lock State
- [ ] Read / Write Unlock
- [ ] Read Public ECDH Key
- [ ] Read EID Identity Key
- [x] Read / Write ADV Slot Data
- [x] Write Factory reset
- [ ] Read / Write Remain Connectable## Getting started
```
npm install --save eddystone-web-bluetooth
``````javascript
var eddystone = new Eddystone();
var beacon, service;
eddystone.request() // Scan for Eddystone beacons.
.then((newBeacon) => {
beacon = newBeacon;
return beacon.connect(); // Connect to the Beacon's GATT service.
})
.then((newService) => {
service = newService;
return service.isLocked(); // Check if the beacon is locked.
})
.then((isLocked) => {
if (isLocked) {
return Promise.reject('The beacon is locked. Can\'t write new URL');
}
// Beacon's not locked. We can proceed with the recording of the new URL.
// Keep in mind that the encoded URL must NOT be longer than 18 characters.
return service.writeUrl('https://www.google.com');
})
.then(() => {
beacon.disconnect();
alert('OK!');
});
```See the rest of the services [here](https://github.com/zurfyx/eddystone-web-bluetooth/blob/master/src/beacon/BeaconService.ts).
## Development
Eddystone Web Bluetooth implementation is based on the official specifications:
[https://github.com/google/eddystone/tree/master/configuration-service](https://github.com/google/eddystone/tree/master/configuration-service)
## Contributions
Contributions are very welcome.
## License
MIT © [Gerard Rovira Sánchez](//zurfyx.com)
----
Special thanks to @beaufortfrancois for providing https://github.com/beaufortfrancois/sandbox/blob/gh-pages/web-bluetooth/eddystone-url-config/app.js magnificent example source code.