Webkamera
Webkamera na letišti fotí po 5 minutách. Z důvodu technického omezení těchto stánek je obraz z kamery dostupný ZDE
Kamera je ve zkušebním provozu, její umístění bude do budoucna jiné. Obraz se skládá ze dvou polovin, jsou to 2 kamery v 1. U fotky jsou reklamy, protože využívám tarifu zdarma.
Pokud ti bude prohlížeč psát něco ze zabezpečení, nebo podezřelých stránkách, dejte mi vědět, přenos není šifrovaný a některým prohlížečům to může vadit.
Martin G
Technické detaily(i pro mě, až to jednou nepojede).
[PTZ Tuya Kamera s onvif a RTSP] --> [Android telefon + Termux] --> [FTP webzdarma.cz]
Skript v Termuxu:
Vytvoření skriptu snapshot.sh
v Termuxu:
nano ~/snapshot.sh
Obsah v snapshot.sh:
#!/data/data/com.termux/files/usr/bin/sh#!/data/data/com.termux/files/usr/bin/bash
# === Nastavení ===
CAMERA_RTSP="rtsp://admin:admin@192.168.1.167/streamtype=0"
FTP_URL="ftp://kameralmkhalenkovice.unas.cz:********@ftp5.webzdarma.cz/web"
IMAGE_NAME="snapshot.jpg"
LOG_FILE="$HOME/snapshot_upload.log"
MAX_RETRIES=3
DELAY_BETWEEN_RETRIES=10
# === Dočasný soubor ===
TEMPFILE="/data/data/com.termux/files/home/$IMAGE_NAME"
# === Funkce pro logování ===
log() {
echo "[$(date '+%Y-%m-%d %H:%M:%S')] $1" >> "$LOG_FILE"
}
log "=== Spouštím skript ==="
# === Pokus o získání snímku ===
RETRIES=0
SUCCESS=0
while [ $RETRIES -lt $MAX_RETRIES ]; do
log "Pokus č. $((RETRIES+1)): Stahuji snímek z kamery..."
ffmpeg -y -rtsp_transport tcp -i "$CAMERA_RTSP" -frames:v 1 -update 1 "$TEMPFILE" > /dev/null 2>&1
if [ $? -eq 0 ]; then
log "Snímek úspěšně získán."
SUCCESS=1
break
else
log "Nepodařilo se získat snímek, zkusím znovu za ${DELAY_BETWEEN_RETRIES}s."
sleep $DELAY_BETWEEN_RETRIES
RETRIES=$((RETRIES+1))
fi
done
# === Kontrola úspěšnosti ===
if [ $SUCCESS -ne 1 ]; then
log "Kamera není dostupná ani po $MAX_RETRIES pokusech. Končím."
exit 1
fi
# === Odesílání na FTP ===
log "Nahrávám snímek na FTP..."
curl -T "$TEMPFILE" "$FTP_URL" --silent --show-error --ftp-pasv
if [ $? -eq 0 ]; then
log "Snímek úspěšně nahrán na FTP."
else
log "Chyba při nahrávání na FTP."
exit 1
fi
log "=== Hotovo ==="
Jak skript spustit:
Ujisti se, že má práva ke spuštění:
chmod +x ~/snapshot.sh
Spustit ho ručně pro test:
./snapshot.sh
Automatické spuštění:
V Termuxu spusť:
pkg update && pkg install termux-api termux-tools
pkg install cronie
Nainstaluj Termux:Boot
Připrav boot
skript: Termux:Boot spouští všechny skripty, které jsou umístěné v:
~/.termux/boot/
Vytvoř adresář a skript:
mkdir -p ~/.termux/boot
nano ~/.termux/boot/start_snapshot.sh
A vlož do něj:
#!/data/data/com.termux/files/usr/bin/bash
# Čekej chvíli, než naběhne síť sleep 20
zajistí, že telefon má čas připojit se k Wi-Fi.
sleep 20
/data/data/com.termux/files/home/snapshot.sh >> /data/data/com.termux/files/home/snapshot_boot.log 2>&1
Ulož CTRL+O
, ukonči CTRL+X
.
Udělej skript spustitelným:
chmod +x ~/.termux/boot/start_snapshot.sh
chmod +x ~/snapshot.sh
spouštění každých 15 minut, použij crontab -e
a přidej:
*/05 * * * * /data/data/com.termux/files/home/snapshot_upload.sh >> /data/data/com.termux/files/home/snapshot_cron.log 2>&1
A spustit cron démona:
crond