コード例 #1
0
def httpserver_init():
    global server
    server = MicroWebSrv(webPath='www/')
    server.MaxWebSocketRecvLen = 256
    server.WebSocketThreaded = False
    server.AcceptWebSocketCallback = _acceptWebSocketCallback
    server.Start(threaded=False)
コード例 #2
0
ファイル: networking.py プロジェクト: JoshuaRiddell/botslib
def setup_web_server(accept_socket_cb):
    "Setup http webserver."

    mws = MicroWebSrv()
    mws.MaxWebSocketRecvLen = 256
    mws.WebSocketThreaded = False
    mws.AcceptWebSocketCallback = accept_socket_cb
    mws.Start()
コード例 #3
0
ファイル: main_www.py プロジェクト: tobbad/micropython_lib
def main():
    ap = AccessPoint()
    srv = MicroWebSrv(webPath='www/')
    srv.MaxWebSocketRecvLen = 256
    srv.WebSocketThreaded = False
    srv.AcceptWebSocketCallback = _acceptWebSocketCallback
    srv.Start()

    del ap
コード例 #4
0
def main():
    import uos
    import json
    import time
    import _thread

    import network
    from m5stack import lcd, buttonA
    from microWebSrv import MicroWebSrv
    from micropython import const

    def wifiCheck():
        sta_if = network.WLAN(network.STA_IF)
        if sta_if.active() == False:
            sta_if.active(True)
            wifi = json.load(open('/flash/etc/wlan.json', 'r'))
            ssid = wifi['wifi']['ssid']
            pwd = wifi['wifi']['password']
            sta_if.connect(ssid, pwd)
            while sta_if.ifconfig()[0] == '0.0.0.0':
                time.sleep(.5)

            lcd.println('Connect to WLAN.')

    def __acceptWebSocketCallback(webSocket, httpClient):
        print("WS ACCEPT")
        webSocket.SendText(json.dumps(['login', 'SyncSyncSync']))
        webSocket.RecvTextCallback = __recvTextCallback
        # webSocket.RecvBinaryCallback = self.__recvBinaryCallback
        # webSocket.ClosedCallback = self.__closedCallback

    def __recvTextCallback(webSocket, msg):
        msg = eval(msg)
        # ['command', 'parameter']
        cmd = msg[0]
        para = msg[1]
        print('Receive command: %s' % cmd)
        if cmd == 'ls':
            webSocket.SendText(json.dumps(['ls', uos.listdir()]))
        elif cmd == 'cd':
            uos.chdir(para)
            webSocket.SendText(json.dumps(['cd', uos.listdir()]))
        elif cmd == 'get':
            with open(para, 'r') as o:
                webSocket.SendText(json.dumps(['get', o.read()]))
        elif cmd == 'post':
            with open(para, 'w') as o:
                o.write(msg[2])
            webSocket.SendText(json.dumps(['post', 1]))

    wifiCheck()
    ws = MicroWebSrv(port=8000)
    ws.MaxWebSocketRecvLen = 256
    # ws.WebSocketThreaded = False
    ws.AcceptWebSocketCallback = __acceptWebSocketCallback
    ws.Start(threaded=False)
コード例 #5
0
def start():    
    global gUart
    gUart = machine.UART(1, rx=14, tx=12)

    srv = MicroWebSrv(webPath='www/')

    #srv = MicroWebSrv(routeHandlers=routeHandlers, webPath='/www/')
    srv.MaxWebSocketRecvLen     = 256
    srv.WebSocketThreaded		= True #False
    srv.AcceptWebSocketCallback = _acceptWebSocketCallback
    srv.Start()
コード例 #6
0
def start_server(_relay=None, _dht11=None, _debugMode=False):
    """Run server at configured device"""
    print('Starting regular server...')

    global relay
    global dht11
    global srv
    global DEBUG_MODE

    if (_relay!=None and _dht11!=None):
        relay = _relay
        dht11 = _dht11
    DEBUG_MODE = _debugMode
    
    srv = MicroWebSrv(webPath='www/')
    srv.MaxWebSocketRecvLen = 256
    srv.WebSocketThreaded = True
    srv.AcceptWebSocketCallback = _acceptWebSocketCallback
    srv.Start(threaded=True)
コード例 #7
0
ファイル: main.py プロジェクト: manfeel/MicroWebSrv
def _recvTextCallback(webSocket, msg):
    print("WS RECV TEXT : %s" % msg)
    webSocket.SendText("Reply for %s" % msg)


def _recvBinaryCallback(webSocket, data):
    print("WS RECV DATA : %s" % data)


def _closedCallback(webSocket):
    print("WS CLOSED")


# ----------------------------------------------------------------------------

# routeHandlers = [
#	( "/test",	"GET",	_httpHandlerTestGet ),
#	( "/test",	"POST",	_httpHandlerTestPost )
# ]

p = 80 if sys.platform == 'linux' else 8080
srv = MicroWebSrv(port=p, webPath='www/')
srv.MaxWebSocketRecvLen = 256
srv.WebSocketThreaded = True
srv.AcceptWebSocketCallback = _acceptWebSocketCallback
srv.Start(threaded=True)
while True:
    time.sleep(72000)

# ----------------------------------------------------------------------------
コード例 #8
0
    dict['internal'] = machine.internal_temp()[1]  # Read ESP32 internal temp
    dict['time'] = rtc.now()  # Record current time
    # Convert data to JSON and send
    websocket.SendText(json.dumps(dict))


def cb_accept_ws(webSocket, httpClient):
    print("WS ACCEPT")
    webSocket.RecvTextCallback = cb_receive_text
    webSocket.RecvBinaryCallback = cb_receive_binary
    webSocket.ClosedCallback = cb_closed
    # Use lambda to pass websocket to timer callback
    cb = lambda timer: cb_timer(timer, webSocket)
    # Init and start timer to poll temperature sensor
    tm.init(period=3000, callback=cb)


mws = MicroWebSrv()  # TCP port 80 and files in /flash/www
mws.MaxWebSocketRecvLen = 256  # Default is set to 1024
mws.WebSocketThreaded = True  # WebSockets with new threads
mws.WebSocketStackSize = 4096
mws.AcceptWebSocketCallback = cb_accept_ws  # Function to receive WebSockets
mws.Start(threaded=False)  # Blocking call (CTRL-C to exit)

print('Cleaning up and exiting.')
mws.Stop()
tm.deinit()
rtc.clear()
ds.deinit()
ow.deinit()
コード例 #9
0
ファイル: webSocket.py プロジェクト: dhkabayel/Micropython
  print("WS RECV TEXT : %s" % msg)
  webSocket.SendText("Reply for %s" % msg+ str(t))
  global wsflag
  global ws
  ws = webSocket
  wsflag = True

def _recvBinaryCallback(webSocket, data) :
  print("WS RECV DATA : %s" % data)

def _closedCallback(webSocket) :
  print("WS CLOSED")
  

mws = MicroWebSrv()                                    # TCP port 80 and files in /flash/www
mws.MaxWebSocketRecvLen     = 256                      # Default is set to 1024
mws.WebSocketThreaded       = False                    # WebSockets without new threads
mws.AcceptWebSocketCallback = _acceptWebSocketCallback# Function to receive WebSockets
mws.Start() 

t=0
while not wsflag : pass 

while True:
  print(t)
  if  not ws.IsClosed() : ws.SendText(str(t))
  utime.sleep_ms(100)
  t+=1


コード例 #10
0
ファイル: main.py プロジェクト: camlee/power-meter
def ws_close_callback(ws):
    # print("Web socket closed")
    open_web_sockets.remove(ws)


mws = MicroWebSrv(port=80, webPath="static")
mws.LetCacheStaticContentLevel = 0  # Disable cache headers for now as they aren't fully functional
mws.StaticCacheByPath = [
    ("static/data/", 0),
    ("static/index.html", 0),
    ("static/logs/", 0),
    ("static/", 2),
]
mws.StaticHeaders = {"Access-Control-Allow-Origin": "*"}
mws.AcceptWebSocketCallback = ws_accept_callback
mws.Start(threaded=True)
print("Web server started.")


def check_for_reboot():
    if reboot_now:
        print("Rebooting in 1 second...")
        time.sleep(1)
        print("now!")
        machine.reset()
        print("Should never get here!!")


# while time.ticks_ms() < 3000:
#     check_for_reboot()