Files
zyt/install_video_call.bat
T
2026-03-04 15:32:30 +08:00

180 lines
4.9 KiB
Batchfile
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
@echo off
chcp 65001 >nul
setlocal enabledelayedexpansion
:: 音视频通话功能安装脚本 (Windows)
:: 使用方法: install_video_call.bat
echo ==========================================
echo 音视频通话功能安装脚本
echo ==========================================
echo.
:: 检查是否在项目根目录
if not exist "admin" (
echo [错误] 请在项目根目录执行此脚本
pause
exit /b 1
)
if not exist "server" (
echo [错误] 请在项目根目录执行此脚本
pause
exit /b 1
)
echo [步骤 1/5] 安装前端依赖
cd admin
if exist "package.json" (
echo 正在安装 @tencentcloud/call-uikit-vue...
call npm install @tencentcloud/call-uikit-vue
if !errorlevel! equ 0 (
echo [成功] 前端依赖安装成功
) else (
echo [失败] 前端依赖安装失败
pause
exit /b 1
)
) else (
echo [错误] 未找到 package.json 文件
pause
exit /b 1
)
cd ..
echo.
echo [步骤 2/5] 创建数据库表
echo 请手动执行以下命令创建数据库表:
echo mysql -u root -p your_database ^< server/sql/tcm_call_record.sql
echo.
pause
echo.
echo [步骤 3/5] 配置腾讯云 TRTC
echo.
echo 请访问腾讯云控制台获取配置信息:
echo https://console.cloud.tencent.com/trtc
echo.
set /p SDK_APP_ID="请输入 SDKAppID: "
set /p SECRET_KEY="请输入 SecretKey: "
:: 创建或更新 .env 文件
set ENV_FILE=server\.env
if exist "%ENV_FILE%" (
findstr /C:"TRTC_SDK_APP_ID" "%ENV_FILE%" >nul
if !errorlevel! equ 0 (
echo [提示] 检测到已存在 TRTC 配置,正在更新...
powershell -Command "(gc '%ENV_FILE%') -replace 'TRTC_SDK_APP_ID=.*', 'TRTC_SDK_APP_ID=%SDK_APP_ID%' | Out-File -encoding ASCII '%ENV_FILE%'"
powershell -Command "(gc '%ENV_FILE%') -replace 'TRTC_SECRET_KEY=.*', 'TRTC_SECRET_KEY=%SECRET_KEY%' | Out-File -encoding ASCII '%ENV_FILE%'"
powershell -Command "(gc '%ENV_FILE%') -replace 'TRTC_ENABLE=.*', 'TRTC_ENABLE=true' | Out-File -encoding ASCII '%ENV_FILE%'"
) else (
echo [提示] 正在添加 TRTC 配置...
echo. >> "%ENV_FILE%"
echo # 腾讯云实时音视频(TRTC)配置 >> "%ENV_FILE%"
echo TRTC_SDK_APP_ID=%SDK_APP_ID% >> "%ENV_FILE%"
echo TRTC_SECRET_KEY=%SECRET_KEY% >> "%ENV_FILE%"
echo TRTC_ENABLE=true >> "%ENV_FILE%"
)
echo [成功] 配置文件更新成功
) else (
echo [错误] 未找到 .env 文件
pause
exit /b 1
)
echo.
echo [步骤 4/5] 验证文件完整性
echo.
:: 检查关键文件是否存在
set ALL_EXISTS=1
if exist "admin\src\components\video-call\index.vue" (
echo [√] admin\src\components\video-call\index.vue
) else (
echo [×] admin\src\components\video-call\index.vue (缺失)
set ALL_EXISTS=0
)
if exist "admin\src\api\tcm.ts" (
echo [√] admin\src\api\tcm.ts
) else (
echo [×] admin\src\api\tcm.ts (缺失)
set ALL_EXISTS=0
)
if exist "server\app\adminapi\controller\tcm\DiagnosisController.php" (
echo [√] server\app\adminapi\controller\tcm\DiagnosisController.php
) else (
echo [×] server\app\adminapi\controller\tcm\DiagnosisController.php (缺失)
set ALL_EXISTS=0
)
if exist "server\app\adminapi\logic\tcm\DiagnosisLogic.php" (
echo [√] server\app\adminapi\logic\tcm\DiagnosisLogic.php
) else (
echo [×] server\app\adminapi\logic\tcm\DiagnosisLogic.php (缺失)
set ALL_EXISTS=0
)
if exist "server\app\common\model\tcm\CallRecord.php" (
echo [√] server\app\common\model\tcm\CallRecord.php
) else (
echo [×] server\app\common\model\tcm\CallRecord.php (缺失)
set ALL_EXISTS=0
)
if exist "server\config\trtc.php" (
echo [√] server\config\trtc.php
) else (
echo [×] server\config\trtc.php (缺失)
set ALL_EXISTS=0
)
if exist "server\sql\tcm_call_record.sql" (
echo [√] server\sql\tcm_call_record.sql
) else (
echo [×] server\sql\tcm_call_record.sql (缺失)
set ALL_EXISTS=0
)
if !ALL_EXISTS! equ 0 (
echo.
echo [错误] 部分文件缺失,请检查
pause
exit /b 1
)
echo.
echo [步骤 5/5] 构建前端项目
set /p BUILD_CHOICE="是否立即构建前端项目? (y/n): "
if /i "%BUILD_CHOICE%"=="y" (
cd admin
call npm run build
if !errorlevel! equ 0 (
echo [成功] 前端构建成功
) else (
echo [失败] 前端构建失败
)
cd ..
)
echo.
echo ==========================================
echo 安装完成!
echo ==========================================
echo.
echo 后续步骤:
echo 1. 确保已执行数据库迁移
echo 2. 在后台管理系统中配置权限: tcm.diagnosis/video-call
echo 3. 重启后端服务
echo 4. 访问诊断列表页面测试视频通话功能
echo.
echo 详细文档请查看:
echo - TRTC_SETUP_GUIDE.md (完整配置指南)
echo - admin\README_VIDEO_CALL.md (功能说明)
echo.
echo [注意] 请确保使用 HTTPS 协议或 localhost 访问
echo.
pause