02-ago: [proyecto] Sistema vigilancia Tapo con deteccion movimiento/persona + notificacion Telegram/Alexa

This commit is contained in:
minguezsanzjuanjose
2026-08-02 11:02:05 +02:00
parent 3a38e889db
commit 496c2bb9bc
9 changed files with 240 additions and 0 deletions

35
vigilancia/camara.py Normal file
View File

@@ -0,0 +1,35 @@
import cv2
import time
class CamaraRTSP:
def __init__(self, url, nombre):
self.url = url
self.nombre = nombre
self.cap = None
self._conectar()
def _conectar(self):
self.cap = cv2.VideoCapture(self.url)
self.cap.set(cv2.CAP_PROP_OPEN_TIMEOUT_MSEC, 5000)
self.cap.set(cv2.CAP_PROP_READ_TIMEOUT_MSEC, 5000)
def leer_frame(self):
if self.cap is None or not self.cap.isOpened():
print(f"[{self.nombre}] Reconectando...")
try:
self._conectar()
except Exception as e:
print(f"[{self.nombre}] Error al reconectar: {e}")
self.cap = None
time.sleep(2)
return None
ok, frame = self.cap.read()
if not ok:
print(f"[{self.nombre}] Frame perdido, reintentando...")
self.cap.release()
self.cap = None
return None
return frame