帮助开发者在 Web 视频场景中快速接入 Zoom 预置 React 通话界面。
复制安装指令,让 AI 自动完成配置 · 推荐新手
请帮我安装 askskill 上的 "ui-toolkit/web" 技能: 1. 下载 https://raw.githubusercontent.com/anthropics/knowledge-work-plugins/main/partner-built/zoom-plugin/skills/ui-toolkit/SKILL.md 2. 保存为 ~/.claude/skills/ui-toolkit/SKILL.md 3. 装好后重载技能,告诉我可以用了
我正在做一个 Web 视频通话页面,想用 Zoom Video SDK UI Toolkit 的 React 预置界面,而不是从零开发。请告诉我接入步骤、依赖安装方式,以及最小可运行示例。
提供接入流程、安装命令、React 示例代码和初始化说明。
我原本打算基于 Video SDK 自定义实现会议界面,现在想改用 UI Toolkit。请比较两种方案的开发成本、灵活性和适用场景,并给出迁移建议。
输出方案对比、优缺点分析,以及是否适合迁移的建议。
请为一个基于 React 的网页视频会议工作流设计接入方案:路由进入视频页面后,使用 Zoom Video SDK UI Toolkit 完成入会、音视频控制和离会流程。
给出页面流程设计、关键组件说明和典型交互节点。
Background reference for the prebuilt Zoom Video SDK UI Toolkit on web. Prefer choose-zoom-approach first when the user might still need Meeting SDK instead.
Official Documentation: https://developers.zoom.us/docs/video-sdk/web/ui-toolkit/ API Reference: https://marketplacefront.zoom.us/sdk/uitoolkit/web/ NPM Package: https://www.npmjs.com/package/@zoom/videosdk-zoom-ui-toolkit Live Demo: https://sdk.zoom.com/videosdk-uitoolkit
New to UI Toolkit? Follow this path:
Having issues?
The Zoom Video SDK UI Toolkit is a pre-built video UI library that renders complete video conferencing experiences with minimal code. Unlike the raw Video SDK, the UI Toolkit provides:
When to use UI Toolkit:
When to use raw Video SDK instead:
npm install @zoom/videosdk-zoom-ui-toolkit jsrsasign
npm install -D @types/jsrsasign
Note: React support depends on the UI Toolkit version. Check the package peer dependencies for your installed version (React 18 is commonly required).
import uitoolkit from "@zoom/videosdk-zoom-ui-toolkit";
import "@zoom/videosdk-ui-toolkit/dist/videosdk-zoom-ui-toolkit.css";
const container = document.getElementById("sessionContainer");
const config = {
videoSDKJWT: "your_jwt_token",
sessionName: "my-session",
userName: "John Doe",
sessionPasscode: "",
features: ["video", "audio", "share", "chat", "users", "settings"],
};
uitoolkit.joinSession(container, config);
uitoolkit.onSessionJoined(() => {
console.log("Session joined");
});
uitoolkit.onSessionClosed(() => {
console.log("Session closed");
});
'use client';
import { useEffect, useRef } from 'react';
export default function VideoSession({ jwt, sessionName, userName }) {
const containerRef = useRef<HTMLDivElement>(null);
const uitoolkitRef = useRef<any>(null);
useEffect(() => {
let isMounted = true;
const init = async () => {
const uitoolkitModule = await import('@zoom/videosdk-zoom-ui-toolkit');
const uitoolkit = uitoolkitModule.default;
uitoolkitRef.current = uitoolkit;
// If TypeScript complains about CSS imports, configure your app to allow them
// (for example via a global `declare module \"*.css\";`), or import the CSS from
// a global entrypoint (Next.js layout/_app) instead of inlining here.
…
围绕客户问题进行多来源调研与溯源,快速整理背景并支持准确回复。
帮助开发者在网页中集成实时音视频、共享屏幕、录制与字幕能力。