VPN 接続が確立されたときに実行される Python コードを開発する必要があり、VPN は NetworkManager から制御されます。これに NM DBUS イベントを使用する方法を理解しようとしています。
「dbus-monitor --system」を使用して、接続信号を特定できました。
signal sender=:1.1 -> dest=(null destination) serial=464 path=/org/freedesktop/NetworkManager/ActiveConnection/3; interface=org.freedesktop.NetworkManager.VPN.Connection; member=PropertiesChanged
array [
dict entry(
string "VpnState"
variant uint32 5
)
dict entry(
string "State"
variant uint32 2
)
]
ここで、対応するシグナル ハンドラーの呼び出しシグネチャを特定する必要があります。
bus.add_signal_receiver(
handler_name_in_your_program,
"signal_name",
"interface_name",
"connection_name",
"object_name"
)
誰かが dbus-monitor トレース出力を bus sginal handler の対応する関数値に変換するのを手伝ってくれますか?