#!/system/bin/sh
# Kiosco CCTV — DMSS 16 / Vesta / Ojo RTSP (arranque automatico persistente)

LOG=/data/local/tmp/cctv-kiosk.log
CONF=/data/local/tmp/cctv-app.conf
[ -f "$CONF" ] && . "$CONF"
APP="${CCTV_APP:-Ojo}"

log_msg() {
  echo "$(date '+%Y-%m-%d %H:%M:%S') $1" >> "$LOG"
  log -t cctv_kiosk "$1"
}

launch_cctv() {
  case "$APP" in
    Vesta|vesta) sh /data/local/tmp/launch-vesta.sh ;;
    Ojo|ojo) sh /data/local/tmp/launch-ojo.sh ;;
    *) sh /data/local/tmp/dmss-play-16.sh ;;
  esac
}

is_cctv_foreground() {
  fg=$(dumpsys activity activities 2>/dev/null | grep mResumedActivity)
  case "$APP" in
    Vesta|vesta) echo "$fg" | grep -q 'vestaadvanced' ;;
    Ojo|ojo) echo "$fg" | grep -q 'it.danieleverducci.ojo' ;;
    *) echo "$fg" | grep -q 'PlayActivity' ;;
  esac
}

log_msg "boot-kiosk inicio APP=$APP"

while [ "$(getprop sys.boot_completed)" != "1" ]; do sleep 2; done
sleep 8

if [ -x /data/local/tmp/accel-cctv-rk3528.sh ]; then
  log_msg "Plataforma RK3528 detectada — menu omitido"
else
  [ -x /data/local/tmp/boot-menu.sh ] && sh /data/local/tmp/boot-menu.sh
fi
[ -f "$CONF" ] && . "$CONF"
APP="${CCTV_APP:-Ojo}"
log_msg "App seleccionada: $APP"

if [ -x /data/local/tmp/accel-cctv-rk3528.sh ]; then
  sh /data/local/tmp/accel-cctv-rk3528.sh
elif [ -x /data/local/tmp/accel-cctv-on-device.sh ]; then
  sh /data/local/tmp/accel-cctv-on-device.sh
fi
settings put global policy_control immersive.full=*

launch_cctv
log_msg "Primera lanzada completada"

while true; do
  sleep 50
  if ! is_cctv_foreground; then
    log_msg "Guardia: relanzando $APP"
    launch_cctv
  fi
done
