import network
import webrepl
import time
from machine import Pin
try:
import usocket as socket
except:
import socket
AUTH_OPEN = 0
AUTH_WEP = 1
AUTH_WPA_PSK = 2
AUTH_WPA2_PSK = 3
AUTH_WPA_WPA2_PSK = 4
SSID = "Makerfabs" #Modify here with SSID
PASSWORD = "20160704" #Modify here with PWD
infrared=Pin(14,Pin.IN)
def web_page():
html = """
Makefabs Web Server
Is the toilet occupied ?
"""
return html
def do_connect(ssid,psw):
wlan = network.WLAN(network.STA_IF)
wlan.active(True)
s = wlan.config("mac")
mac = ('%02x:%02x:%02x:%02x:%02x:%02x').upper() %(s[0],s[1],s[2],s[3],s[4],s[5])
print("Local MAC:"+mac) #get mac
wlan.connect(ssid, psw)
if not wlan.isconnected():
print('connecting to network...' + ssid)
wlan.connect(ssid, psw)
start = time.ticks_ms() # get millisecond counter
while not wlan.isconnected():
time.sleep(1) # sleep for 1 second
if time.ticks_ms()-start > 20000:
print("connect timeout!")
break
if wlan.isconnected():
print('network config:', wlan.ifconfig())
return wlan
def connect():
do_connect(SSID,PASSWORD)
def app():
connect()
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind(('', 80))
s.listen(5)
while True:
conn, addr = s.accept()
print('Got a connection from %s' % str(addr))
request = conn.recv(1024)
request = str(request)
print('Content = %s' % request)
Det = request.find('/?detect')
if Det == 6:
if (infrared.value() == 0):
State="Occupied"
if (infrared.value() == 1):
State="No one"
else:
State=" "
response = web_page() % State
conn.send('HTTP/1.1 200 OK\n')
conn.send('Content-Type: text/html\n')
conn.send('Connection: close\n\n')
conn.sendall(response)
conn.close()
app()