#!/bin/bash # # 贾维斯 Bot WhatsApp配置辅助脚本 # # 此脚本帮助您: # 1. 获取您的WhatsApp手机号 # 2. 计算授权用户的SHA-256哈希 # 3. 生成配置文件 # 4. 生成环境变量文件 set -e # 颜色定义 RED='\033[0;31m' GREEN='\033[0;32m' YELLOW='\033[1;33m' BLUE='\033[0;34m' CYAN='\033[0;36m' NC='\033[0m' # No Color echo -e "${BLUE}========================================${NC}" echo -e "${BLUE} 贾维斯 Bot WhatsApp配置向导${NC}" echo -e "${BLUE}========================================${NC}" echo # 步骤1: 获取WhatsApp手机号 echo -e "${GREEN}步骤1: 您的WhatsApp手机号${NC}" echo echo -e "${CYAN}重要说明:${NC}" echo "1. 手机号必须使用E.164国际格式(包含国家代码)" echo "2. 中国大陆: +86 开头(如:+8613800138000)" echo "3. 不要包含空格、破折号或其他符号" echo "4. 这个手机号将是唯一能控制Bot的账号" echo echo -e "${YELLOW}示例:${NC}" echo " 中国: +8613800138000" echo " 美国: +11234567890" echo " 英国: +447700900000" echo echo -n "请输入您的WhatsApp手机号(E.164格式): " read -r PHONE_NUMBER # 验证手机号格式 if [[ -z "$PHONE_NUMBER" ]]; then echo -e "${RED}错误: 手机号不能为空${NC}" exit 1 fi # 验证是否以+开头 if [[ ! "$PHONE_NUMBER" =~ ^\+[0-9]+$ ]]; then echo -e "${RED}错误: 手机号格式不正确${NC}" echo "必须以 + 开头,后面只能是数字" echo "示例: +8613800138000" exit 1 fi # 验证长度(一般11-15位) PHONE_LENGTH=${#PHONE_NUMBER} if [[ $PHONE_LENGTH -lt 11 ]] || [[ $PHONE_LENGTH -gt 15 ]]; then echo -e "${YELLOW}警告: 手机号长度($PHONE_LENGTH)可能不正确${NC}" echo "一般应为11-15位(含+号)" echo -n "是否继续?(y/n): " read -r CONFIRM if [[ "$CONFIRM" != "y" ]] && [[ "$CONFIRM" != "Y" ]]; then echo "已取消" exit 1 fi fi echo -e "${GREEN}✓${NC} 手机号: $PHONE_NUMBER" # 步骤2: 计算SHA-256哈希 echo echo -e "${GREEN}步骤2: 计算授权哈希${NC}" # 兼容不同的sha256命令 if command -v sha256sum &> /dev/null; then AUTHORIZED_HASH=$(echo -n "$PHONE_NUMBER" | sha256sum | cut -d' ' -f1) elif command -v openssl &> /dev/null; then AUTHORIZED_HASH=$(echo -n "$PHONE_NUMBER" | openssl sha256 | awk '{print $NF}') else echo -e "${RED}错误: 无法计算SHA-256哈希(sha256sum和openssl都不可用)${NC}" exit 1 fi echo "授权哈希: $AUTHORIZED_HASH" echo -e "${CYAN}(此哈希用于安全验证,请勿泄露)${NC}" # 步骤3: 创建配置目录 echo echo -e "${GREEN}步骤3: 创建配置目录${NC}" CONFIG_DIR="$HOME/.clawdbot" mkdir -p "$CONFIG_DIR" chmod 700 "$CONFIG_DIR" echo "配置目录: $CONFIG_DIR" # 步骤4: 生成配置文件 echo echo -e "${GREEN}步骤4: 生成配置文件${NC}" CONFIG_FILE="$CONFIG_DIR/clawdbot.json" cat > "$CONFIG_FILE" < "$ENV_FILE" <