def open(self):
        logger.info("NetworkTables websocket opened")

        self.ioloop = IOLoop.current()
        self.nt = NetworkTable.getGlobalTable()
        NetworkTable.addGlobalListener(self.on_nt_change, immediateNotify=True)
        self.nt.addConnectionListener(self, immediateNotify=True)
 def __init__(self, update_callback):
     """
     :param update_callback: A callable with signature ```callable(update)``` for processing outgoing updates
     formatted as strings.
     """
     self.update_callback = update_callback
     self.nt = NetworkTable.getGlobalTable()
     NetworkTable.addGlobalListener(self._nt_on_change,
                                    immediateNotify=True)
     self.nt.addConnectionListener(self._nt_connected, immediateNotify=True)
    def __init__(self, update_callback):
        """
        :param update_callback: A callable with signature ```callable(update)``` for processing outgoing updates
        formatted as strings.
        """
        self.update_callback = update_callback
        self.nt = NetworkTable.getGlobalTable()
        NetworkTable.addGlobalListener(self._nt_on_change, immediateNotify=True)

        class Empty:
            pass
        self.conn_listener = Empty()
        self.conn_listener.connected = self._nt_connected
        self.conn_listener.disconnected = self._nt_disconnected

        self.nt.addConnectionListener(self.conn_listener, immediateNotify=True)
#

import sys
import time
from networktables import NetworkTable

# To see messages from networktables, you must setup logging
import logging
logging.basicConfig(level=logging.DEBUG)

if len(sys.argv) != 2:
    print("Error: specify an IP to connect to!")
    exit(0)

ip = sys.argv[1]

NetworkTable.setIPAddress(ip)
NetworkTable.setClientMode()
NetworkTable.initialize()


def valueChanged(key, value, isNew):
    print("valueChanged: key: '%s'; value: %s; isNew: %s" %
          (key, value, isNew))


NetworkTable.addGlobalListener(valueChanged)

while True:
    time.sleep(1)
Exemple #5
0
import sys
import time

import logging
logging.basicConfig(level=logging.DEBUG)

NetworkTable.setIPAddress("127.0.0.1")
NetworkTable.setClientMode()
NetworkTable.initialize()

def foo(value):
    print("foo", value)

def bar(value):
    print("bar", value)

def valueChanged(key, value, isNew):
    print("valueChanged: %s = %s" % (key, value) )

NetworkTable.addGlobalListener(valueChanged)

cc = ChooserControl("control_preset",
                    foo,
                    bar)
sd = NetworkTable.getTable("SmartDashboard")

while True:
    time.sleep(1)

    def open(self):

        self.ioloop = IOLoop.current()
        self.nt = NetworkTable.getGlobalTable()
        NetworkTable.addGlobalListener(self.valueChanged, immediateNotify=True)