twBlueScan

BlueTooth Device Sensor for TWSNMP series.

View on GitHub

twBlueScan

TWSNMP FC 用の Bluetooth デバイスセンサー

English

Godoc Reference Go Report Card

概要

Linux マシンで周辺にある Bluetooth デバイスの情報を収集し、syslog または MQTT で TWSNMP FC などに送信するためのセンサープログラムです。

収集する情報は以下の通りです:

状態

ビルド

ビルドは GoReleaser または Make で行います。

GoReleaser によるビルド

goreleaser release --snapshot --clean

Make によるビルド

$ make

以下のターゲットが指定できます:

実行ファイルは dist ディレクトリに作成されます。

実行方法

使用方法

Usage of ./twBlueScan:
  -active
        アクティブスキャンモード
  -adapter string
        モニタリングする Bluetooth アダプター (デフォルト "hci0")
  -addr string
        アドレスからベンダーへのマップを作成
  -all
        すべての詳細を報告(プライベートアドレスを含む)
  -code string
        会社コードからベンダーへのマップを作成
  -debug
        デバッグモード
  -interval int
        syslog 送信間隔(秒) (デフォルト 600)
  -mqtt string
        MQTT ブローカーの宛先 (例: tcp://192.168.1.1:1883)
  -mqttClientID string
        MQTT クライアント ID (デフォルト "twBlueScan")
  -mqttPassword string
        MQTT パスワード
  -mqttTopic string
        MQTT トピック (デフォルト "twBlueScan")
  -mqttUser string
        MQTT ユーザー名
  -syslog string
        syslog 送信先リスト(カンマ区切り、例: 192.168.1.1:514)

環境変数による設定

各フラグは、TWBLUESCAN_ をプレフィックスとした環境変数でも設定可能です(例: TWBLUESCAN_SYSLOG)。

動作環境

Linux 環境で bluez パッケージが必要です。

$ sudo apt update
$ sudo apt install bluez

Bluetooth デバイスが利用可能であることを確認してください:

# hcitool dev
Devices:
	hci0	00:E9:3A:89:8D:FE

起動例

# syslog 送信
./twBlueScan -adapter hci0 -syslog 192.168.1.1

# MQTT 送信 (アクティブスキャン有効)
./twBlueScan -active -mqtt tcp://192.168.1.1:1883 -mqttTopic myhome/ble

著作権

詳細は ./LICENSE を参照してください。

Copyright 2021-2026 Masayuki Yamai