lottnuebibza/dafthack

GitHub: lottnuebibza/dafthack

基于 Node.js 的 Eddystone 蓝牙信标扫描与协议解析库,支持实时发现、追踪和测距。

Stars: 0 | Forks: 0

# dafthack 使用 Node.js 扫描 [Eddystone 信标](https://github.com/google/eddystone) 使用 [noble](https://github.com/sandeepmistry/noble) 进行 BLE 外围设备扫描,然后尝试使用 [Eddystone 协议规范](https://github.com/google/eddystone/blob/master/protocol-specification.md) 解析发现的外围设备。 ## 设置 ``` npm install eddystone-beacon-scanner ``` ## 示例 查看 [examples](examples) 文件夹。 ## 用法 ``` var EddystoneBeaconScanner = require('eddystone-beacon-scanner'); ``` ### 注册事件处理程序 #### Found 首次发现信标时触发。 ``` EddystoneBeaconScanner.on('found', function(beacon) { // ... }); ``` #### Updated 检测到信标广播时触发。 ``` EddystoneBeaconScanner.on('updated', function(beacon) { // ... }); ``` #### Lost 当信标在 5 秒内未被检测到时触发。 ``` EddystoneBeaconScanner.on('lost', function(beacon) { // ... }); ``` 根据帧类型,```beacon``` 对象将具有以下属性: ##### URL * ```type``` - Eddystone 类型 * ```txPower``` - 在 0 米处测得的接收功率 (dBm) * ```url``` - 信标正在广播的(展开后的)URL * ```tlm``` - TLM 数据,仅当信标使用交错广播时出现 * ```rssi``` - 发现的信标的 RSSI * ```distance``` - 距离信标的近似距离 ##### UID * ```type``` - Eddystone 类型 * ```txPower``` - 在 0 米处测得的接收功率 (dBm) * ```namespace``` - 10 字节的 ID Namespace * ```instance``` - 6 字节的 ID Instance * ```tlm``` - TLM 数据,仅当信标使用交错广播时出现 * ```rssi``` - 发现的信标的 RSSI * ```distance``` - 距离信标的近似距离 ##### TLM * ```tlm``` * ```version``` - TLM 版本 * ```vbatt``` - 电池电压 * ```temp``` - 温度 * ```advCnt``` - 广播 PDU 计数 * ```secCnt``` - 开机或重启后的时间 * ```rssi``` - 发现的信标的 RSSI * ```distance``` - 距离信标的近似距离 ### 开始扫描 开始扫描 Eddystone 信标,您可以指定是否允许重复(默认为 false)。 ``` EddystoneBeaconScanner.startScannning(allowDuplicates); ``` __注意:__ 仅当 ```allowDuplicates``` 设置为 true 时,才会触发 ```lost``` 事件。 ### 停止扫描 停止扫描 Eddystone 信标。 ``` EddystoneBeaconScanner.stopScannning(); ```
标签:Active Directory, Beacon, BLE, Eddystone, GNU通用公共许可证, IoT, IPv6, MITM代理, Node.js, OpenCanary, Plaso, PowerShell, 低功耗蓝牙, 信号扫描, 凭据访问, 域渗透, 密码喷洒, 数据可视化, 爆破攻击, 电子数据取证, 网络安全, 自定义脚本, 自定义脚本, 自定义脚本, 蓝牙, 隐私保护