0.5.1 • Published 9 years ago

bleacon v0.5.1

Weekly downloads
33
License
MIT
Repository
github
Last release
9 years ago

node-bleacon

Gitter

A Node.js library for creating, discovering, and configuring iBeacons

Prerequisites

Install

npm install bleacon

Usage

var Bleacon = require('bleacon');

Start advertising

"Create" an iBeacon

var uuid = 'e2c56db5dffb48d2b060d0f5a71096e0';
var major = 0; // 0 - 65535
var minor = 0; // 0 - 65535
var measuredPower = -59; // -128 - 127 (measured RSSI at 1 meter)

Bleacon.startAdvertising(uuid, major, minor, measuredPower);

Stop advertising

Stop your iBeacon

Bleacon.stopAdvertising();

Start scanning

var uuid = 'e2c56db5dffb48d2b060d0f5a71096e0';
var major = 0; // 0 - 65535
var minor = 0; // 0 - 65535

Bleacon.startScanning([uuid], [major], [minor]);

Examples

Bleacon.startScanning(); // scan for any bleacons

Bleacon.startScanning(uuid); // scan for bleacons with a particular uuid

Bleacon.startScanning(uuid, major); // scan for bleacons with a particular uuid and major

Bleacon.startScanning(uuid, major, minor); // scan for bleacons with a particular uuid. major, and minor

Stop scanning

Bleacon.stopScanning();

Events

Bleacon.on('discover', function(bleacon) {
    // ...
});

bleacon properties:

  • uuid
    • advertised uuid
  • major
    • advertised major
  • minor
    • advertised minor
  • measuredPower
    • advertised measured RSSI at 1 meter away
  • rssi
    • current RSSI
  • accuracy
    • +/- meters, based on measuredPower and RSSI
  • proximity
    • current proximity ('unknown', 'immediate', 'near', or 'far')

Configuring

iBeacon Advertisement format

Note: not official, determined using noble, and the AirLocate example.

Following data is in the manufacturer data section of the advertisment data

<company identifier (2 bytes)> <type (1 byte)> <data length (1 byte)> <uuid (16 bytes)> <major (2 bytes)> <minor (2 bytes)> <RSSI @ 1m>

Example:

4C00 02 15 585CDE931B0142CC9A1325009BEDC65E 0000 0000 C5
  • Apple Company Identifier (Little Endian)
  • data type, 0x02 => iBeacon
  • data length, 0x15 = 21
  • uuid: 585CDE931B0142CC9A1325009BEDC65E
  • major: 0000
  • minor: 0000
  • meaured power at 1 meter: 0xc5 = -59

Analytics

0.5.1

9 years ago

0.5.0

9 years ago

0.4.0

10 years ago

0.3.0

10 years ago

0.2.3

10 years ago

0.2.2

10 years ago

0.2.1

10 years ago

0.2.0

12 years ago

0.2.7

12 years ago

0.1.2

12 years ago

0.1.1

12 years ago

0.1.0

12 years ago

0.0.2

12 years ago

0.0.1

12 years ago