import network, time, socket, gc

ssid='SSID'
password='PASSWORD'

def connect():
    wlan=network.WLAN(network.STA_IF)
    wlan.active(True)
    wlan.connect(ssid,password)
    while wlan.isconnected() == False:
        print('Waiting for connection...')
        time.sleep(1)
    ip=wlan.ifconfig()[0]
    print(f'Connected on {ip}')
    return ip

def open_socket(ip):
    address=(ip,80)
    connection=socket.socket()
    connection.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
    connection.bind(address)
    connection.listen(1)
    return connection

opEN='0000'
closED='0'

def serve(connection):
    state=opEN
    gc.collect()
    
    while True:
        client=connection.accept()[0]
        request=client.recv(1024)
        request=str(request)
        print(request)
        try:
            request=request.split()[1]
        except IndexError:
            pass
        msg=state
        client.send(msg)
        client.close()
        #gc.collect()

try:
    ip=connect()
    connection=open_socket(ip)
    serve(connection)
except KeyboardInterrupt:
    pass
