Example #1
0
def twisted():
    app = web.Application([
        (r'/', IndexHandler),
        (r'/ws', SocketHandler),
        (r'/data', JsonHandler),
        (r'/api/channel/([0-9]+)', ChannelAPIHandler),
        (r'/api/group/([0-9]+)', GroupAPIHandler),
        (r'/api/conference/', ConferenceAPIHandler),
        (r'/api/auth_token', webRTCTokenHandler),
        (r'/static/(.*)', web.StaticFileHandler, {'path': config.app_dir('static')})
    ])
    # https://github.com/tornadoweb/tornado/issues/2308
    asyncio.set_event_loop(asyncio.new_event_loop())
    app.listen(config.web_port())
    ioloop.PeriodicCallback(SocketHandler.ws_dump, 50).start()
    ioloop.IOLoop.instance().start()
def twisted():
    app = web.Application([
        (r'/', IndexHandler),
        # (r'/ws', SocketHandler),
        (r'/data', JsonHandler),
        (r'/api/preset', PresetHandler),
        (r'/api/preset_select', PresetChooser),
        (r'/static/(.*)', web.StaticFileHandler, {
            'path': config.app_dir('static')
        })
    ])
    # https://github.com/tornadoweb/tornado/issues/2308
    asyncio.set_event_loop(asyncio.new_event_loop())
    app.listen(config.web_port())
    ioloop.PeriodicCallback(SocketHandler.ws_dump, 50).start()
    ioloop.IOLoop.instance().start()
Example #3
0
def twisted():
    app = web.Application([(r'/', IndexHandler), (r'/about', AboutHandler),
                           (r'/ws', SocketHandler),
                           (r'/data.json', JsonHandler),
                           (r'/api/group', GroupUpdateHandler),
                           (r'/api/slot', SlotHandler),
                           (r'/static/(.*)', web.StaticFileHandler, {
                               'path': config.app_dir('static')
                           }),
                           (r'/bg/(.*)', web.StaticFileHandler, {
                               'path': config.get_gif_dir()
                           })])
    # https://github.com/tornadoweb/tornado/issues/2308
    asyncio.set_event_loop(asyncio.new_event_loop())
    app.listen(config.web_port())
    ioloop.PeriodicCallback(SocketHandler.ws_dump, 50).start()
    ioloop.IOLoop.instance().start()
Example #4
0
def discover():
    dcid_restore_from_file(config.app_dir('dcid.json'))
    sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM, socket.IPPROTO_UDP)
    # sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
    sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEPORT, 1)  #mac fix
    sock.bind(
        (MCAST_GRP, MCAST_PORT))  # use MCAST_GRP instead of '' to listen only
    # to MCAST_GRP, not all groups on MCAST_PORT
    mreq = struct.pack("4sl", socket.inet_aton(MCAST_GRP), socket.INADDR_ANY)

    sock.setsockopt(socket.IPPROTO_IP, socket.IP_ADD_MEMBERSHIP, mreq)
    while True:
        data, (ip, _) = sock.recvfrom(1024)
        data = data.decode('UTF-8', errors="ignore")
        try:
            process_discovery_packet(ip, data)
        except:
            pass
Example #5
0
def discover():
    dcid_restore_from_file(config.app_dir('dcid.json'))
    sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM, socket.IPPROTO_UDP)
    # sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
    sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEPORT, 1) #mac fix
    sock.bind(('', MCAST_PORT))  # use MCAST_GRP instead of '' to listen only
                                 # to MCAST_GRP, not all groups on MCAST_PORT
    mreq = struct.pack("4sl", socket.inet_aton(MCAST_GRP), socket.INADDR_ANY)

    sock.setsockopt(socket.IPPROTO_IP, socket.IP_ADD_MEMBERSHIP, mreq)
    while True:
        data, (ip, _) = sock.recvfrom(1024)
        data = data.decode('UTF-8',errors="ignore")
        # print(data)
        type = rx_type(data)
        dcid = dcid_find(data)
        if type is not '':
            device = dcid_get(dcid)
            channels = RX_CHANNEL_MAP[device['model']]
            if __name__ == '__main__':
                print('RX: {} at: {} DCID: {} BAND: {} CHANNELS: {}'.format(type,ip,dcid,device['band'],channels))

            add_rx(ip,type,channels)
Example #6
0
 def get(self):
     self.render(config.app_dir("index.html"))
Example #7
0
 def get(self):
     self.render(config.app_dir('static/about.html'))
Example #8
0
 def get(self):
     self.render(config.app_dir('demo.html'))