diff --git a/headscale-auto-register.sh b/headscale-auto-register.sh index ac11cce..606f483 100755 --- a/headscale-auto-register.sh +++ b/headscale-auto-register.sh @@ -490,6 +490,43 @@ show_final_info() { # 약국 자동 등록 함수들 # ================================ +# 장비 타입 및 정보 자동 감지 +detect_device_info() { + echo -e "${BLUE}장비 정보 감지 중...${NC}" + + # hostname 수집 + DEVICE_HOSTNAME=$(hostname) + + # Proxmox 호스트 감지 + if [ -f /etc/pve/local/pve-ssl.pem ] || command -v pveversion >/dev/null 2>&1; then + DEVICE_TYPE="proxmox_host" + DEVICE_NAME="${PHARMACY_NAME} Proxmox Host" + echo -e "${GREEN}✓ Proxmox VE 호스트 감지됨${NC}" + + # Windows (WSL 환경) + elif grep -qi microsoft /proc/version 2>/dev/null; then + DEVICE_TYPE="windows_pc" + DEVICE_NAME="${PHARMACY_NAME} Windows PC" + echo -e "${GREEN}✓ Windows PC (WSL) 감지됨${NC}" + + # macOS + elif [ "$(uname -s)" = "Darwin" ]; then + DEVICE_TYPE="mac" + DEVICE_NAME="${PHARMACY_NAME} Mac" + echo -e "${GREEN}✓ macOS 감지됨${NC}" + + # Linux 서버 (일반) + else + DEVICE_TYPE="linux_server" + DEVICE_NAME="${PHARMACY_NAME} Linux Server" + echo -e "${GREEN}✓ Linux 서버 감지됨${NC}" + fi + + echo -e "${CYAN} 장비명: $DEVICE_NAME${NC}" + echo -e "${CYAN} 장비 타입: $DEVICE_TYPE${NC}" + echo -e "${CYAN} 호스트명: $DEVICE_HOSTNAME${NC}" +} + # 약국 정보 수집 collect_pharmacy_info() { echo -e "${CYAN}━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━${NC}" @@ -541,7 +578,7 @@ get_assigned_vpn_ip() { create_pharmacy_via_api() { echo -e "${BLUE}약국 등록 중 (farmq.db)...${NC}" - # JSON 데이터 구성 + # JSON 데이터 구성 (장비 정보 포함) JSON_DATA=$(cat <