Example #1
0
def test(addr='tcp://127.0.0.1:11060', host=None):
    import wsrpc
    import pizco
    from tornado.ioloop import IOLoop
    logger.debug("Connecting to proxy")
    p = pizco.Proxy(addr)
    logger.debug("adding __wsrpc__ to control")
    base.add_wsrpc_to_proxy(p, 'control')
    logger.debug("connecting to motion")
    cfg = p.config()
    m = pizco.Proxy(cfg['motion']['addr'])
    logger.debug("adding __wsrpc__ to motion")
    base.add_wsrpc_to_proxy(m, 'motion')
    logger.debug("Connecting to cameras")
    cs = [pizco.Proxy(c['addr']) for c in cfg['cameras']]
    logger.debug("adding __wsrpc__ to cameras")
    [base.add_wsrpc_to_proxy(c, 'camera') for c in cs]
    logger.debug("connecting to montager")
    mo = pizco.Proxy(cfg['montager']['addr'])
    logger.debug("adding __wsrpc__ to montager")
    base.add_wsrpc_to_proxy(mo, 'montager')
    comp = pizco.Proxy(cfg['compute']['addr'])
    logger.debug("adding __wsrpc__ to compute")
    base.add_wsrpc_to_proxy(comp, 'compute')
    microscope = pizco.Proxy(cfg['scope']['addr'])
    logger.debug("adding __wsrpc__ to scope")
    base.add_wsrpc_to_proxy(microscope, 'scope')
    logger.debug("adding __wsrpc__ to tape")
    t = pizco.Proxy(cfg['tape']['addr'])
    base.add_wsrpc_to_proxy(t, 'tape')
    logger.debug("adding __wsrpc__ to tapecamera")
    tc = pizco.Proxy(cfg['tapecamera']['addr'])
    base.add_wsrpc_to_proxy(tc, 'tapecamera')
    logger.debug("Clearing IOLoop")
    if hasattr(IOLoop, '_instance'):
        del IOLoop._instance
    logger.debug("Registering control")
    wsrpc.serve.register(build_spec(p, 'control'))
    logger.debug("Registering compute")
    wsrpc.serve.register(compute.build_spec(comp, 'compute'))
    logger.debug("Registering scope")
    wsrpc.serve.register(scope.build_spec(microscope, 'scope'))
    logger.debug("Registering motion")
    wsrpc.serve.register(motion.build_spec(m, 'motion'))
    logger.debug("Registering montager")
    wsrpc.serve.register(montager.build_spec(mo, 'montager'))
    logger.debug("Registering cameras")
    for (ci, c) in enumerate(cs):
        wsrpc.serve.register(camera.build_spec(c, 'cam{}'.format(ci)))
    logger.debug("Registering tape")
    wsrpc.serve.register(tape.build_spec(t, 'tape'))
    logger.debug("Registering tapecamera")
    wsrpc.serve.register(tapecamera.build_spec(tc, 'tapecamera'))
    logger.debug("Serving")
    # add default route
    wsrpc.serve.serve(address=host,
                      debug=True,
                      default_route='/control/templates/control.html')
Example #2
0
def proxy(cfg):
    logger.debug("Creating proxy from %s", cfg)
    ncfg = copy.deepcopy(cfg)
    addr = ncfg.pop('addr')
    node = pizco.Proxy(addr)
    node.config(ncfg)
    logger.info("Proxy[%s] created for address %s: %s", node, addr, ncfg)
    return node
Example #3
0
def test(addr='tcp://127.0.0.1:11010'):
    import wsrpc
    import pizco
    from tornado.ioloop import IOLoop
    p = pizco.Proxy(addr)
    base.add_wsrpc_to_proxy(p, 'motion')
    if hasattr(IOLoop, '_instance'):
        del IOLoop._instance
    wsrpc.serve.register(build_spec(p, 'motion'))
    wsrpc.serve.serve()
Example #4
0
def test(addr='tcp://127.0.0.1:21212'):  # REALADDRESS
    import wsrpc
    import pizco
    from tornado.ioloop import IOLoop
    p = pizco.Proxy(addr)
    base.add_wsrpc_to_proxy(p, 'compute')
    if hasattr(IOLoop, '_instance'):
        del IOLoop._instance
    wsrpc.serve.register(build_spec(p, 'compute'))
    wsrpc.serve.serve()
Example #5
0
def run_proxy_ui(name, addr, klass):
    p = pizco.Proxy(addr)
    register_proxy(p, name, klass)
    run()
Example #6
0
#!/usr/bin/env python

import socket

import ionode.base
import ionode.ui.base

import pizco
from start_ionode import PiCameraNode, port

host_ip = socket.gethostbyname(socket.gethostname() + '.local')
proxy_addr = 'tcp://%s:%s' % (host_ip, port)

spec = {'template': open('template.html', 'r').read()}

print("Use Ctrl-C in this terminal window to stop the ui and server")
p = pizco.Proxy(proxy_addr)
ionode.ui.register_proxy(p, 'tapecamera', PiCameraNode, spec)
ionode.ui.run(address=host_ip, debug=True)
Example #7
0
def connect(node_type, cfg=None):
    node_cfg = resolve_config(node_type, cfg=cfg)
    return pizco.Proxy(node_cfg['addr'])
Example #8
0
#!/usr/bin/env python

import json
import webbrowser

import ionode.base
import ionode.ui.base

import pizco
from start_ionode import MyIONode

spec = {
    'template': open('template.html', 'r').read()
}

url = 'http://127.0.0.1:5000/base'
config = json.load(open('config.json', 'r'))
print("Use Ctrl-C in this terminal window to stop the ui and server")
webbrowser.open(url)
p = pizco.Proxy(config['addr'])
ionode.ui.register_proxy(p, 'base', MyIONode, spec)
ionode.ui.run(debug=True)