diff --git a/ui/main/templates/home.html b/ui/main/templates/home.html
index 8befc22..f5d7062 100644
--- a/ui/main/templates/home.html
+++ b/ui/main/templates/home.html
@@ -13,7 +13,9 @@
$.get("/led/"+ led +"/", function (data) {
console.log(data);
if (led < 6 && led > 0) {
- $("#but"+led).text(data);
+ if (data == "off"){
+ $("#but"+led).text("Turn off "+led)
+ }
}
});
}
@@ -23,6 +25,34 @@
$("#photo").attr("src", "static/photo.jpg?"+d.getTime());
});
}
+
+
+ function button_painter(pin, x, y, w, h) {
+ var canvas = document.getElementById("miCanvas");
+ var ctx = canvas.getContext("2d");
+ $.get("/button/"+pin, function (data) {
+ if (data == 1) {
+ ctx.strokeStyle = "#FFFFFF"; // Color blanco
+ console.log("Abriendo puerta " + pin)
+ } else {
+ ctx.strokeStyle = "#FF0000"; // Color negro
+ console.log("Cerrando puerta " + pin)
+ }
+
+ ctx.strokeRect(x, y, w, h); // Puerta
+ });
+ }
+
+ // Establecer la cantidad de segundos (en milisegundos) entre cada ejecuciĆ³n
+ var segundos = 2; // Cambia a la cantidad de segundos deseada
+
+ // Llamar a la funciĆ³n cada X segundos
+
+ setInterval(button_painter, segundos * 1000, 7, 300, 100, 1, 75);
+ setInterval(button_painter, segundos * 1000, 8, 350, 4, 100, 1);
+ setInterval(button_painter, segundos * 1000, 9, 350, 596, 100, 1);
+ setInterval(button_painter, segundos * 1000, 10, 500, 400, 1, 75);
+
{% if user.is_authenticated %}
@@ -87,17 +117,24 @@
ctx.fillText("Sala", 200, 450);
ctx.fillText("Cocina", 600, 150);
+ ctx.strokeStyle = "#FF0000"; // Color negro
+ ctx.strokeRect(300, 100, 1, 75); // Puerta 1
- var imagen = new Image();
+ ctx.strokeRect(350, 4, 100, 1); // Puerta trasera
+ ctx.strokeRect(350, 596, 100, 1); // Puerta tdelanteearasera
- // Definir la ruta de la imagen que deseas cargar
- imagen.src = "https://www.freepngimg.com/thumb/light/78155-icons-light-idea-computer-lighting-incandescent-bulb.png"
+ ctx.strokeRect(500, 400, 1, 75); // Puerta 2
- // Esperar a que la imagen se cargue antes de dibujarla
- imagen.onload = function () {
- // Dibujar la imagen en el canvas
- ctx.drawImage(imagen, 20, 100, 80, 80); // (imagen, x, y)
- };
+ // var imagen = new Image();
+
+ // // Definir la ruta de la imagen que deseas cargar
+ // imagen.src = "https://www.freepngimg.com/thumb/light/78155-icons-light-idea-computer-lighting-incandescent-bulb.png"
+
+ // // Esperar a que la imagen se cargue antes de dibujarla
+ // imagen.onload = function () {
+ // // Dibujar la imagen en el canvas
+ // ctx.drawImage(imagen, 20, 100, 80, 80); // (imagen, x, y)
+ // };
diff --git a/ui/main/urls.py b/ui/main/urls.py
index 6a4ce80..89818c9 100644
--- a/ui/main/urls.py
+++ b/ui/main/urls.py
@@ -1,9 +1,10 @@
from django.urls import path
-from .views import home, led, take_photo
+from .views import home, led, take_photo, button_detect
urlpatterns = [
path("", home, name="home"),
path("led//", led, name="leds"),
path("photo/", take_photo),
+ path("button//", button_detect),
]
diff --git a/ui/main/views.py b/ui/main/views.py
index 316054f..50f94fa 100644
--- a/ui/main/views.py
+++ b/ui/main/views.py
@@ -18,7 +18,11 @@ leds_gpio = {
2: 6,
3: 13,
4: 19,
- 5: 26
+ 5: 26,
+ 7: 21,
+ 8: 20,
+ 9: 16,
+ 10: 12,
}
def home(request):
@@ -56,4 +60,8 @@ def toggle_led(led, turn_on):
else:
pin_control.turn_on_pin(gpio_pin)
leds_state[led] = not turn_on
- return HttpResponse("on" if turn_on else f"Turn on {led}")
\ No newline at end of file
+ return HttpResponse("on" if turn_on else "off")
+
+
+def button_detect(request, pin):
+ return HttpResponse(pin_control.probe_pin(leds_gpio[pin]))
\ No newline at end of file