アマチュア無線にはずっと魅力を感じていますが、ノイズだらけの警察スキャナーを聞きながら何か面白いことが起きるのを待つのは疲れます。AIが代わりに聞いてくれて、何か起きたらテキストを送ってくれたら?
目標
安価なRTL-SDR USBドングルで地元の非暗号化緊急周波数をスキャン。生の音声をOpenClawにフィードしてローカル文字起こしとNLP分析。AIがキーワード(例:「火災」「事故」「出動」)を検出したら、構造化アラートをTelegramに自動送信。
1. ハードウェア部品リスト
総費用?まともなレストランの食事より安い。
- RTL-SDR V4ドングル: Amazon約29ドル(基本的なダイポールアンテナ付属)。
- ホストマシン: すでにMac Mini M2でhomeのOpenClawインスタンスを運用中。
- ソフトウェア: CLIチューニング用rtl_fm、新しい非同期Audio APIパイプライン用OpenClaw v1.4+。
2. ソフトウェアパイプライン
これを接続するにはbashスクリプトが少し必要でした。rtl_fmを使って地元の出動周波数(154.250 MHz)にロックし、スケルチされた音声をOpenClawが理解できる形式に直接パイプします。
#!/bin/bash
# Listen to 154.250MHz and pipe raw audio data
rtl_fm -M fm -f 154.250M -s 22050 -l 10 | \
sox -t raw -r 22050 -e signed -b 16 -c 1 - -t wav - | \
claw pipe --agent "Radio Analyst" --continuousバージョン1.4で音声パイプライン用--continuousフラグが導入されました。2秒の無音まで音声をバッファリングし、ローカルWhisperにチャンクして文字起こし。
3. エージェントプロンプトの作成
魔法はシステムプロンプトにあります。速度違反で止められるたびにテキストを受け取りたくない——重大なインシデントだけを。
Analyze the transcript. If you detect a major incident (Structure Fire, Multi-vehicle collision, Pursuits, or Active Threats), output JSON:
{ "type": "[Incident Type]", "location": "[Extracted Address]", "severity": 1-10 }
If routine traffic, output EXACTLY: "ROUTINE".
4. Telegramインターセプト
OpenClawにウェブフックを設定しました。「ラジオアナリスト」エージェントがJSONブロックを出力するたびに(つまり通常の交通でない場合)、cURL経由でTelegram Bot APIにペイロードを転送。
結果
先週火曜日の午前2時、眠っている間にスマホが振動しました。
🚨 アラート:建物火災 場所:エルム通り1200番地ブロック 深刻度:8/10 音声文字起こし:「出動、Engine 4がエルム通りの現場に到着。2階から大量の煙。2アラームに格上げ。」
完璧に機能しました。文字起こしとNLP分析はすべて100%ローカルで完了。クラウドAPI費用ゼロ、プライバシー懸念なし。
再現したいですか?
完全なOpenClawワークフローJSON、bashスクリプト、エージェント個性テンプレートをGitHubリポジトリからダウンロード。