接続されたデバイス名を正規表現で表現して、Bluetooth接続通知を抑制します。

接続されたデバイス名を正規表現で表現して、Bluetooth接続通知を抑制します。

i3をウィンドウマネージャとしてmanjaroシステムを起動しますblueman-applet

私が職場にいる間、近所のコンピュータは私のコンピュータに絶えず接続され、切断されたときに接続/切断を知らせる迷惑なポップアップが表示されます。

アプレットを介してこれらのコンピュータをブロックして信頼しないようにしましたが、まだこれらの通知が表示されます。

dbusまたは、他のメカニズムを介して名前がbluetoothctl特定の先行文字セットで始まるすべてのデバイス(すべてのデバイス名は文字列で始まるMWAI)からすべてのBluetooth通知をブロックする方法はありますか?

設定ファイルをハッキングするか、シェルスクリプトを実行してこれを実行し、最善の進行方法の方向を見つけたいと思います。

答え1

i3を実行し、blueman-appletを使用するManjaroシステムで特定のデバイスのBluetooth通知を抑制するには、dbusとシェルスクリプトの組み合わせを使用できます。これを行う一般的な方法は次のとおりです。

Bluetoothデバイス識別:まず、問題を引き起こしているBluetoothデバイスを特定する必要があります。 bluetoothctlを使用すると、ペアリングされたすべてのデバイスと詳細を一覧表示できます。

Bluetoothイベントモニタリング:dbus-monitorを使用してBluetoothイベントを監視できます。このツールはD-Busメッセージバスシステムを受信し、特定の条件を満たすメッセージを出力します。

通知フィルタリング:これらのBluetoothイベントを監視し、デバイス名が「MWAI」で始まることを確認するスクリプトを作成します。その場合は、通知をキャンセルしてください。

スクリプトの基本的な概要は次のとおりです。

#!/bin/bash

dbus-monitor --system "type='signal',interface='org.freedesktop.DBus.Properties',member='PropertiesChanged'" |
while read -r line; do
    if echo "$line" | grep -q "MWAI"; then
        # This is where you'll handle the suppression of notifications
        # Depending on how your system is set up, you might need to 
        # interact with your notification system or the Bluetooth service
        echo "Suppressed notification from device starting with MWAI"
    fi
done

関連情報