示例#1
0
 def __init__(self):
     """ Initialize variables needed for the connection status methods. """
     self.last_strength = -2
     self.last_state = misc.NOT_CONNECTED
     self.last_reconnect_time = time.time()
     self.last_network = ""
     self.displayed_strength = -1
     self.still_wired = False
     self.network = ''
     self.tried_reconnect = False
     self.connection_lost_counter = 0
     self.reconnecting = False
     self.reconnect_tries = 0
     self.signal_changed = False
     self.iwconfig = ""
     self.trigger_reconnect = False
     self.__lost_dbus_count = 0
     self._to_time = daemon.GetBackendUpdateInterval()
     
     self.add_poll_callback()
     bus = dbusmanager.get_bus()
     bus.add_signal_receiver(self._force_update_connection_status, 
                             "UpdateState", "org.wicd.daemon")
     bus.add_signal_receiver(self._update_timeout_interval,
                             "SignalBackendChanged", "org.wicd.daemon")
示例#2
0
    def __init__(self):
        """Initialize variables needed for the connection status methods."""
        self.last_strength = -2
        self.last_state = misc.NOT_CONNECTED
        self.last_reconnect_time = time.time()
        self.last_network = ""
        self.displayed_strength = -1
        self.still_wired = False
        self.network = ''
        self.tried_reconnect = False
        self.connection_lost_counter = 0
        self.reconnecting = False
        self.reconnect_tries = 0
        self.signal_changed = False
        self.iwconfig = ""
        self.trigger_reconnect = False
        self.__lost_dbus_count = 0
        self._to_time = daemon.GetBackendUpdateInterval()
        self.update_callback = None

        self.add_poll_callback()
        bus = dbusmanager.get_bus()
        bus.add_signal_receiver(self._force_update_connection_status,
                                "UpdateState", "org.wicd.daemon")
        bus.add_signal_receiver(self._update_timeout_interval,
                                "SignalBackendChanged", "org.wicd.daemon")
示例#3
0
def setup_dbus(force=True):
    """ Initialize DBus. """
    global bus, daemon, wireless, wired
    try:
        dbusmanager.connect_to_dbus()
    except DBusException:
        print >> sys.stderr, \
          _("Can't connect to the daemon, trying to start it automatically...")

    try:
           bus = dbusmanager.get_bus()
           dbus_ifaces = dbusmanager.get_dbus_ifaces()
           daemon = dbus_ifaces['daemon']
           wireless = dbus_ifaces['wireless']
           wired = dbus_ifaces['wired']
    except DBusException:
        print >> sys.stderr, \
          _("Can't automatically start the daemon, this error is fatal...")

    if not daemon:
        print 'Error connecting to wicd via D-Bus. ' \
            'Please make sure the wicd service is running.'
        sys.exit(3)

    netentry_curses.dbus_init(dbus_ifaces)
    return True
示例#4
0
def setup_dbus(force=True):
    """ Initialize DBus. """
    global bus, daemon, wireless, wired
    try:
        dbusmanager.connect_to_dbus()
    except DBusException:
        print >> sys.stderr, \
          _("Can't connect to the daemon, trying to start it automatically...")

    try:
        bus = dbusmanager.get_bus()
        dbus_ifaces = dbusmanager.get_dbus_ifaces()
        daemon = dbus_ifaces['daemon']
        wireless = dbus_ifaces['wireless']
        wired = dbus_ifaces['wired']
    except DBusException:
        print >> sys.stderr, \
          _("Can't automatically start the daemon, this error is fatal...")

    if not daemon:
        print 'Error connecting to wicd via D-Bus. ' \
            'Please make sure the wicd service is running.'
        sys.exit(3)

    netentry_curses.dbus_init(dbus_ifaces)
    return True
示例#5
0
文件: gui.py 项目: cbxbiker61/wicd
def setup_dbus(force=True):
    global bus, daemon, wireless, wired, DBUS_AVAIL
    try:
        dbusmanager.connect_to_dbus()
    except DBusException:
        if force:
            print "Can't connect to the daemon, trying to start it automatically..."
            if not misc.PromptToStartDaemon():
                print "Failed to find a graphical sudo program, cannot continue."
                return False
            try:
                dbusmanager.connect_to_dbus()
            except DBusException:
                error(None, "Could not connect to wicd's D-Bus interface.  " +
                      "Check the wicd log for error messages.")
                return False
        else:  
            return False
    prefs.setup_dbus()
    netentry.setup_dbus()
    bus = dbusmanager.get_bus()
    dbus_ifaces = dbusmanager.get_dbus_ifaces()
    daemon = dbus_ifaces['daemon']
    wireless = dbus_ifaces['wireless']
    wired = dbus_ifaces['wired']
    DBUS_AVAIL = True
    
    return True
示例#6
0
文件: gui.py 项目: wmak/wicd
def setup_dbus(force=True):
    """ Initialize DBus. """
    global bus, daemon, wireless, wired, DBUS_AVAIL
    try:
        dbusmanager.connect_to_dbus()
    except DBusException:
        if force:
            print "Can't connect to the daemon, ' + \
                'trying to start it automatically..."

            if not misc.PromptToStartDaemon():
                print "Failed to find a graphical sudo program, ' + \
                    'cannot continue."

                return False
            try:
                dbusmanager.connect_to_dbus()
            except DBusException:
                error(
                    None,
                    _("Could not connect to wicd's D-Bus interface. "
                      "Check the wicd log for error messages."))
                return False
        else:
            return False
    prefs.setup_dbus()
    netentry.setup_dbus()
    bus = dbusmanager.get_bus()
    dbus_ifaces = dbusmanager.get_dbus_ifaces()
    daemon = dbus_ifaces['daemon']
    wireless = dbus_ifaces['wireless']
    wired = dbus_ifaces['wired']
    DBUS_AVAIL = True

    return True
示例#7
0
文件: wicdnet.py 项目: tom5760/wipi
    def setup_dbus(self):
        dbusmanager.connect_to_dbus()
        self.bus = dbusmanager.get_bus()

        dbus_ifaces = dbusmanager.get_dbus_ifaces()
        self.daemon = dbus_ifaces['daemon']
        self.wireless = dbus_ifaces['wireless']
        self.wired = dbus_ifaces['wired']
示例#8
0
def setup_dbus(force=True):
    global bus, daemon, wireless, wired
    try:
        dbusmanager.connect_to_dbus()
    except DBusException:
        print >> sys.stderr, language['cannot_connect_to_daemon']
    bus = dbusmanager.get_bus()
    dbus_ifaces = dbusmanager.get_dbus_ifaces()
    daemon = dbus_ifaces['daemon']
    wireless = dbus_ifaces['wireless']
    wired = dbus_ifaces['wired']

    netentry_curses.dbus_init(dbus_ifaces)
    return True
示例#9
0
def setup_dbus(force=True):
    global bus, daemon, wireless, wired
    try:
        dbusmanager.connect_to_dbus()
    except DBusException:
        print >> sys.stderr, language['cannot_connect_to_daemon']
    bus = dbusmanager.get_bus()
    dbus_ifaces = dbusmanager.get_dbus_ifaces()
    daemon = dbus_ifaces['daemon']
    wireless = dbus_ifaces['wireless']
    wired = dbus_ifaces['wired']

    netentry_curses.dbus_init(dbus_ifaces)
    return True
示例#10
0
def setup_dbus(force=True):
    global bus, daemon, wireless, wired
    try:
        dbusmanager.connect_to_dbus()
    except DBusException:
        wicd = False
    bus = dbusmanager.get_bus()
    dbus_ifaces = dbusmanager.get_dbus_ifaces()
    daemon = dbus_ifaces['daemon']
    wireless = dbus_ifaces['wireless']
    wired = dbus_ifaces['wired']

    if not daemon:
        return Fals

    return True
示例#11
0
def run():
    try:
        dbusmanager.connect_to_dbus()
    except DBusException:
        print >> sys.stderr, 'snooty: wicd: Cannot connect to the daemon.'
        raise

    bus = dbusmanager.get_bus()

    dbus_ifaces = dbusmanager.get_dbus_ifaces()
    this.daemon = dbus_ifaces['daemon']
    this.wired = dbus_ifaces['wired']
    this.wireless = dbus_ifaces['wireless']

    this.prev_state = -1

    bus.add_signal_receiver(status_changed_cb,
                            dbus_interface='org.wicd.daemon',
                            signal_name='StatusChanged')
示例#12
0
def setup_dbus(force=True):
    global bus, daemon, wireless, wired
    try:
        dbusmanager.connect_to_dbus()
    except dbus.DBusException:
        print >> sys.stderr,\
            _("Can't connect to wicd daemon,trying to start it automatically...")
    else:
        bus = dbusmanager.get_bus()
        dbus_ifaces = dbusmanager.get_dbus_ifaces()
        daemon = dbus_ifaces[
            "daemon"]  ## @dbus.service.method('org.wicd.daemon')
        wireless = dbus_ifaces[
            "wireless"]  ## @dbus.service.method('org.wicd.daemon.wireless')
        wired = dbus_ifaces["wired"]  ## @

        if not daemon:
            print("Error connecting to wicd via D-Bus")

    return True
示例#13
0
    def __init__(self, parent = None):
    """ Constructor """
        super(MainWindow, self).__init__(parent)
        # Setting up GUI, and connecting signals
        self.setupUi(self)
        self.scanning = False
        self.connecting = False
        self.connectProgress.setVisible(False)
        self.cancelBut.setVisible(False)
        self.cancelBut.connect(self.cancelBut, SIGNAL('clicked()'), self.cancelClicked)
        self.refreshBut.connect(self.refreshBut, SIGNAL('clicked()'), self.scanClicked)
        self.aboutBut.connect(self.aboutBut, SIGNAL('clicked()'), self.aboutClicked)
        self.disconnectAllBut.connect(self.disconnectAllBut, SIGNAL('clicked()'), self.cancelClicked)
        self.preferencesBut.connect(self.preferencesBut, SIGNAL('clicked()'), self.notImplemented)
        self.quitBut.connect(self.quitBut, SIGNAL('clicked()'), lambda: QApplication.instance().quit())
        self.networkBut.connect(self.networkBut, SIGNAL('clicked()'), self.notImplemented)

        QApplication.instance().connect(QApplication.instance(), SIGNAL('aboutToQuit()'), self.onExit)

        # Settings up dbus-related things
        self.curState = None
        self.daemon = self.wireless = self.wired = None
        self.setupDBus()

        bus = dbusmanager.get_bus()
        #bus.add_signal_receiver(tray_icon.icon_info.wired_profile_chooser,
        #                        'LaunchChooser', 'org.wicd.daemon')
        bus.add_signal_receiver(self.updateStatus,
                                'StatusChanged', 'org.wicd.daemon')
        bus.add_signal_receiver(self.scanEnded, 'SendEndScanSignal',
                                'org.wicd.daemon.wireless')
        bus.add_signal_receiver(self.scanStarted,
                                'SendStartScanSignal', 'org.wicd.daemon.wireless')
        bus.add_signal_receiver(self.handleNoDBus,
                                "DaemonClosing", 'org.wicd.daemon')
        bus.add_signal_receiver(lambda: self.setupDBus(force=False), "DaemonStarting",
                                "org.wicd.daemon")
        self.updateStatus()
        QTimer.singleShot(1000, lambda: self.updateStatus(True))
def setup_dbus(force=True):
    global bus, daemon, wireless, wired
    global manager, objects, adapter, devices

    try:
        dbusmanager.connect_to_dbus()
    except dbus.DBusException:
        print >> sys.stderr,\
            _("Can't connect to wicd daemon,trying to start it automatically...")
    else:
        bus = dbusmanager.get_bus()
        dbus_ifaces = dbusmanager.get_dbus_ifaces()
        daemon = dbus_ifaces[
            "daemon"]  ## @dbus.service.method('org.wicd.daemon')
        wireless = dbus_ifaces[
            "wireless"]  ## @dbus.service.method('org.wicd.daemon.wireless')
        wired = dbus_ifaces["wired"]  ## @

        ### BlueZ
        try:
            proxy_obj = bus.get_object("org.bluez", "/")
            manager = dbus.Interface(proxy_obj,
                                     "org.freedesktop.DBus.ObjectManager")
            objects = manager.GetManagedObjects()

            for path, interfaces in objects.iteritems():
                if "org.bluez.Device1" in interfaces:
                    devices[path] = interfaces[
                        "org.bluez.Device1"]  ## like /org/bluez/hci0/dev_xx_xx_xx_yy_yy_yy

            proxy_obj = bus.get_object("org.bluez", "/org/bluez/hci0")
            adapter = dbus.Interface(proxy_obj, "org.bluez.Adapter1")
        except Exception as e:
            print(str(e))

        if not daemon:
            print("Error connecting to wicd via D-Bus")

    return True
import gobject
import getopt
import time
import os
import wicd
from wicd import dbusmanager
from dbus import DBusException

# connection to DBUS interface
try:
    dbusmanager.connect_to_dbus()
except DBusException:
        print "Cannot connect to WICD daemon, please be sure daemon is started before using wconfig. You can start daemon with /etc/init.d/wicd start, or /etc/rc.d/wicd start, or wicd from root account."
        sys.exit()

bus = dbusmanager.get_bus()
dbus_ifaces = dbusmanager.get_dbus_ifaces()
daemon = dbus_ifaces['daemon']
wireless = dbus_ifaces['wireless']
[state, info] = daemon.GetConnectionStatus()

# CONFIG
output_as = "Text" # default, also XML avaible
autoconnect = False # try to connect if found a unsecured network
extra_debugging = False
network_timeout = 30

def main():
	try:
		opts, args = getopt.getopt(sys.argv[1:], "i:m:e:hdaxsg", ["help", "auto-connect", "xml", "scan", "debug", "--connect-by-id", "--connect-by-mac", "--connect-by-name"]) # output=
示例#16
0
def main(argv):
    """ The main frontend program.

    Keyword arguments:
    argv -- The arguments passed to the script.

    """
    try:
        opts, args = getopt.getopt(
            sys.argv[1:],
            'tnhao',
            ['help', 'no-tray', 'tray', 'no-animate', 'only-notifications']
        )
    except getopt.GetoptError:
        # Print help information and exit
        usage()
        sys.exit(2)

    use_tray = True
    animate = True
    display_app = True
    for opt, a in opts:
        if opt in ('-h', '--help'):
            usage()
            sys.exit(0)
        elif opt in ('-t', '--tray'):
            display_app = False
        elif opt in ('-n', '--no-tray'):
            use_tray = False
        elif opt in ('-a', '--no-animate'):
            animate = False
        elif opt in ('-o', '--only-notifications'):
            print "only displaying notifications"
            use_tray = False
            display_app = False
        else:
            usage()
            sys.exit(2)

    print 'Loading...'
    setup_dbus()
    atexit.register(on_exit)

    if display_app and not use_tray or not ICON_AVAIL:
        gui.appGui(standalone=True)
        mainloop = gobject.MainLoop()
        mainloop.run()
        sys.exit(0)

    # Set up the tray icon GUI and backend
    tray_icon = TrayIcon(animate, displaytray=use_tray, displayapp=display_app)

    # Check to see if wired profile chooser was called before icon
    # was launched (typically happens on startup or daemon restart).
    if DBUS_AVAIL and daemon.GetNeedWiredProfileChooser():
        daemon.SetNeedWiredProfileChooser(False)
        tray_icon.icon_info.wired_profile_chooser()

    bus = dbusmanager.get_bus()
    bus.add_signal_receiver(tray_icon.icon_info.wired_profile_chooser,
                            'LaunchChooser', 'org.wicd.daemon')
    bus.add_signal_receiver(tray_icon.icon_info.update_tray_icon,
                            'StatusChanged', 'org.wicd.daemon')
    bus.add_signal_receiver(tray_icon.tr.tray_scan_ended, 'SendEndScanSignal',
                            'org.wicd.daemon.wireless')
    bus.add_signal_receiver(tray_icon.tr.tray_scan_started,
                            'SendStartScanSignal', 'org.wicd.daemon.wireless')
    bus.add_signal_receiver(
        lambda: (
            handle_no_dbus() or tray_icon.icon_info.set_not_connected_state()
        ),
        "DaemonClosing",
        'org.wicd.daemon'
    )
    bus.add_signal_receiver(lambda: setup_dbus(force=False), "DaemonStarting",
                            "org.wicd.daemon")
    print 'Done loading.'
    mainloop = gobject.MainLoop()
    mainloop.run()
示例#17
0
文件: wicd-client.py 项目: zeph/wicd
def main(argv):
    """ The main frontend program.

    Keyword arguments:
    argv -- The arguments passed to the script.

    """
    try:
        opts, args = getopt.getopt(
            sys.argv[1:], 'tnhao',
            ['help', 'no-tray', 'tray', 'no-animate', 'only-notifications'])
    except getopt.GetoptError:
        # Print help information and exit
        usage()
        sys.exit(2)

    use_tray = True
    animate = True
    display_app = True
    for opt, a in opts:
        if opt in ('-h', '--help'):
            usage()
            sys.exit(0)
        elif opt in ('-t', '--tray'):
            display_app = False
        elif opt in ('-n', '--no-tray'):
            use_tray = False
        elif opt in ('-a', '--no-animate'):
            animate = False
        elif opt in ('-o', '--only-notifications'):
            print("only displaying notifications")
            use_tray = False
            display_app = False
        else:
            usage()
            sys.exit(2)

    print('Loading...')
    setup_dbus()
    atexit.register(on_exit)

    if display_app and not use_tray or not ICON_AVAIL:
        gui.appGui(standalone=True)
        mainloop = gobject.MainLoop()
        mainloop.run()
        sys.exit(0)

    # Set up the tray icon GUI and backend
    tray_icon = TrayIcon(animate, displaytray=use_tray, displayapp=display_app)

    # Check to see if wired profile chooser was called before icon
    # was launched (typically happens on startup or daemon restart).
    if DBUS_AVAIL and daemon.GetNeedWiredProfileChooser():
        daemon.SetNeedWiredProfileChooser(False)
        tray_icon.icon_info.wired_profile_chooser()

    bus = dbusmanager.get_bus()
    bus.add_signal_receiver(tray_icon.icon_info.wired_profile_chooser,
                            'LaunchChooser', 'org.wicd.daemon')
    bus.add_signal_receiver(tray_icon.icon_info.update_tray_icon,
                            'StatusChanged', 'org.wicd.daemon')
    bus.add_signal_receiver(tray_icon.tr.tray_scan_ended, 'SendEndScanSignal',
                            'org.wicd.daemon.wireless')
    bus.add_signal_receiver(tray_icon.tr.tray_scan_started,
                            'SendStartScanSignal', 'org.wicd.daemon.wireless')
    bus.add_signal_receiver(
        lambda:
        (handle_no_dbus() or tray_icon.icon_info.set_not_connected_state()),
        "DaemonClosing", 'org.wicd.daemon')
    bus.add_signal_receiver(lambda: setup_dbus(force=False), "DaemonStarting",
                            "org.wicd.daemon")
    print('Done loading.')
    mainloop = gobject.MainLoop()
    mainloop.run()
示例#18
0
import gobject
import getopt
import time
import os
import wicd
from wicd import dbusmanager
from dbus import DBusException

# connection to DBUS interface
try:
    dbusmanager.connect_to_dbus()
except DBusException:
    print "Cannot connect to WICD daemon, please be sure daemon is started before using wconfig. You can start daemon with /etc/init.d/wicd start, or /etc/rc.d/wicd start, or wicd from root account."
    sys.exit()

bus = dbusmanager.get_bus()
dbus_ifaces = dbusmanager.get_dbus_ifaces()
daemon = dbus_ifaces['daemon']
wireless = dbus_ifaces['wireless']
[state, info] = daemon.GetConnectionStatus()

# CONFIG
output_as = "Text"  # default, also XML avaible
autoconnect = False  # try to connect if found a unsecured network
extra_debugging = False
network_timeout = 30


def main():
    try:
        opts, args = getopt.getopt(sys.argv[1:], "i:m:e:hdaxsg", [