VPN 断开连接时的通知消息

VPN 断开连接时的通知消息

这个问题就像当 VPN 连接时是否可以添加通知消息?答案中的 python 脚本(见下文)在 13.04 上运行良好,但它只会在建立新连接时发出通知,而不会在 VPN 连接断开时发出通知,这一点更为重要,因为它可能随时发生。

有人可以调整一下断开连接的脚本吗?

或者,文件系统中网络连接(用于 VPN)托盘图标保存在哪里,以便我可以更改它 - 微型挂锁太小了,几乎看不见。反转前景/背景颜色会更好。

import gtk  
import pynotify  
import dbus  
from dbus.mainloop.glib import DBusGMainLoop  
def vpn_connection_handler(*args, **keywords):  
    state = args[0].get('State',0)  
    if state == 2:  
        n = pynotify.Notification ("VPN", "Connection established")  
        n.show()  
pynotify.init ("icon-summary-body")  
dbus_loop = DBusGMainLoop()  
system_bus = dbus.SystemBus(mainloop=dbus_loop)  
system_bus.add_signal_receiver(vpn_connection_handler,  
    dbus_interface="org.freedesktop.NetworkManager.VPN.Connection",  
    signal_name="PropertiesChanged")  
gtk.gdk.threads_init()  
gtk.main()  

答案1

其实很简单。您已经知道必须检查stateVPN 何时连接,因此添加一个小的打印语句来查看state断开 VPN 连接时的值。

我明白了4,所以只需添加一个 elif 块:

    elif state == 4:  
        n = pynotify.Notification ("VPN", "Connection lost")  
        n.show()

但是,我已经收到了来自网络管理器本身的通知,你没有吗?

相关内容