#!/bin/sh

# --- 配置区 ---
WATCHDOG_BIN="/app/bin/lq10_watchdog.sh"
APP_NAME="lq10_link"

start() {
    # 检查是否已启动
    if pidof lq10_watchdog.sh > /dev/null; then
        echo "LQ10 Daemon is already running."
        return 0
    fi

    echo "Starting LQ10 Daemon..."
    if [ -f "$WATCHDOG_BIN" ]; then
        chmod +x "$WATCHDOG_BIN"
        # 启动守护脚本
        $WATCHDOG_BIN &
        echo "Done."
    else
        echo "Error: $WATCHDOG_BIN not found."
        return 1
    fi
}

stop() {
    echo "Stopping LQ10 Daemon and Application..."
    
    # 1. 杀掉守护脚本
    killall -9 lq10_watchdog.sh 2>/dev/null
    
    # 2. 杀掉主进程
    killall $APP_NAME 2>/dev/null
    
    # 3. 等待清理
    WAIT=3
    while [ $WAIT -gt 0 ]; do
        if ! pidof "$APP_NAME" > /dev/null; then
            break
        fi
        sleep 1
        WAIT=$((WAIT - 1))
    done
    
    # 4. 强制杀掉残留
    if pidof "$APP_NAME" > /dev/null; then
        killall -9 "$APP_NAME" 2>/dev/null
    fi
    echo "LQ10 Stopped."
}

restart() {
    stop
    sleep 1
    start
}

# --- 处理参数 ---
case "$1" in
    start)
        start
        ;;
    stop)
        stop
        ;;
    restart)
        restart
        ;;
    *)
        echo "Usage: $0 {start|stop|restart}"
        exit 1
        ;;
esac

