Getting Started
이 플러그인에 대한 설치 단계와 전체 마크다운 가이드를 포함한 설정 명령어를 복사하세요.
Set up this Capacitor plugin in the project.
Use the package manager already used by the project.
Install these package(s): `@capgo/capacitor-stream-call`, `@capgo/capacitor-streamcall`
Run the required Capacitor sync/update step after installation.
Read this markdown guide for the full setup steps: https://raw.githubusercontent.com/Cap-go/website/refs/heads/main/apps/docs/src/content/docs/docs/plugins/streamcall/getting-started.mdx
Use that guide for platform-specific steps, native file edits, permissions, config changes, imports, and usage setup.
If that guide references other docs pages, read them too.
설치
설치 제목AI-Assisted Setup을 사용하여 플러그인을 설치할 수 있습니다. AI 도구에 Capgo 기능을 추가하려면 다음 명령어를 사용하세요:
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-plugins그다음에 다음 명령어를 사용하세요:
Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-stream-call` plugin in my project.만들기 옵션을 선호하시면, 다음 명령어를 실행하여 플러그인을 설치하고 아래의 플랫폼별 지침을 따르십시오.
bun add @capgo/capacitor-stream-callbunx cap syncImport
Import 섹션import { StreamCall } from '@capgo/capacitor-stream-call';API 개요
API 개요 섹션login
로그인스트림 비디오 서비스 로그인
import { StreamCall } from '@capgo/capacitor-stream-call';
await StreamCall.login({ token: 'your-token', userId: 'user-123', name: 'John Doe', apiKey: 'your-api-key'});logout
로그아웃Stream Video 서비스에서 로그아웃하세요
import { StreamCall } from '@capgo/capacitor-stream-call';
await StreamCall.logout();call
“call” 제목의 섹션다른 사용자에게 전화 걸기
import { StreamCall } from '@capgo/capacitor-stream-call';
await StreamCall.call({ userId: 'user-456', type: 'video', ring: true});endCall
“endCall” 제목의 섹션현재 전화 끊기
import { StreamCall } from '@capgo/capacitor-stream-call';
await StreamCall.endCall();joinCall
“joinCall” 제목의 섹션있는 전화에 참가하기
import { StreamCall } from '@capgo/capacitor-stream-call';
await StreamCall.joinCall({ callId: 'call001', callType: 'default' });setMicrophoneEnabled
“setMicrophoneEnabled” 제목의 섹션마이크를 사용하거나 비활성화하세요
import { StreamCall } from '@capgo/capacitor-stream-call';
await StreamCall.setMicrophoneEnabled({ enabled: false });setCameraEnabled
카메라 사용을 설정하는 섹션카메라를 사용하거나 비활성화하세요
import { StreamCall } from '@capgo/capacitor-stream-call';
await StreamCall.setCameraEnabled({ enabled: false });enableBluetooth
블루투스 사용을 활성화하는 섹션블루투스 오디오를 사용하세요
import { StreamCall } from '@capgo/capacitor-stream-call';
await StreamCall.enableBluetooth();acceptCall
전화 수락하는 섹션입장 전화 수락하세요
import { StreamCall } from '@capgo/capacitor-stream-call';
await StreamCall.acceptCall();rejectCall
전화 거절하는 섹션받는 전화 거절
import { StreamCall } from '@capgo/capacitor-stream-call';
await StreamCall.rejectCall();isCameraEnabled
카메라 사용 가능 여부카메라 사용 가능 여부 확인
import { StreamCall } from '@capgo/capacitor-stream-call';
const isCameraEnabled = await StreamCall.isCameraEnabled();console.log(isCameraEnabled);getCallStatus
전화 상태 가져오기클립보드 복사
import { StreamCall } from '@capgo/capacitor-stream-call';
const callStatus = await StreamCall.getCallStatus();console.log(callStatus);getRingingCall
클립보드 복사화면 전환 토글
import { StreamCall } from '@capgo/capacitor-stream-call';
const ringingCall = await StreamCall.getRingingCall();console.log(ringingCall);toggleViews
클립보드 복사가용 비디오 레이아웃을 순환합니다.
import { StreamCall } from '@capgo/capacitor-stream-call';
const { newLayout } = await StreamCall.toggleViews();console.log(`Layout switched to ${newLayout}`);setSpeaker
setSpeaker스피커폰을 설정합니다.
import { StreamCall } from '@capgo/capacitor-stream-call';
await StreamCall.setSpeaker({ name: 'speaker' });switchCamera
switchCamera카메라를 전환합니다.
import { StreamCall } from '@capgo/capacitor-stream-call';
await StreamCall.switchCamera({ camera: 'back' });getCallInfo
getCallInfo전화 중인 활성 전화에 대한 자세한 정보를 포함한 호출자 정보를 가져옵니다.
import { StreamCall } from '@capgo/capacitor-stream-call';
await StreamCall.getCallInfo({} as { callId: string });setDynamicStreamVideoApikey
setDynamicStreamVideoApikey동적 스트림 비디오 API 키를 설정하세요. 이 키는 정적 키를 덮어씁니다.
import { StreamCall } from '@capgo/capacitor-stream-call';
await StreamCall.setDynamicStreamVideoApikey({ apiKey: 'new-api-key' });getDynamicStreamVideoApikey
getDynamicStreamVideoApikey현재 설정된 동적 스트림 비디오 API 키를 가져옵니다.
import { StreamCall } from '@capgo/capacitor-stream-call';
const result = await StreamCall.getDynamicStreamVideoApikey();if (result.hasDynamicKey) { console.log('Dynamic API key:', result.apiKey);} else { console.log('Using static API key from resources');}getCurrentUser
getCurrentUser현재 사용자의 정보를 가져옵니다.
import { StreamCall } from '@capgo/capacitor-stream-call';
const currentUser = await StreamCall.getCurrentUser();console.log(currentUser);타입 참조
로그인 옵션LoginOptions
클립보드에 복사export interface LoginOptions { /** Stream Video API token */ token: string; /** User ID for the current user */ userId: string; /** Display name for the current user */ name: string; /** Optional avatar URL for the current user */ imageURL?: string; /** Stream Video API key */ apiKey: string; /** ID of the HTML element where the video will be rendered */ magicDivId?: string; pushNotificationsConfig?: PushNotificationsConfig;}SuccessResponse
성공 응답export interface SuccessResponse { /** Whether the operation was successful */ success: boolean; callId?: string;}CallOptions
호출 옵션export interface CallOptions { /** User ID of the person to call */ userIds: string[]; /** Type of call, defaults to 'default' */ type?: CallType; /** Whether to ring the other user, defaults to true */ ring?: boolean; /** Team name to call */ team?: string; /** Whether to start the call with video enabled, defaults to false */ video?: boolean; /** Custom data to be passed to the call */ custom?: Record< string, | string | boolean | number | null | Record<string, string | boolean | number | null> | string[] | boolean[] | number[] >;}CallEvent
호출 이벤트export interface CallEvent { /** ID of the call */ callId: string; /** Current state of the call */ state: CallState; /** User ID of the participant in the call who triggered the event */ userId?: string; /** Reason for the call state change, if applicable */ reason?: string; /** Information about the caller (for incoming calls) */ caller?: CallMember; /** List of call members */ members?: CallMember[];
custom?: Record< string, | string | boolean | number | null | Record<string, string | boolean | number | null> | string[] | boolean[] | number[] >;
count?: number;}IncomingCallPayload
IncomingCallPayloadexport interface IncomingCallPayload { /** Full call CID (e.g. default:123) */ cid: string; /** Event type (currently always "incoming") */ type: 'incoming'; /** Information about the caller */ caller?: CallMember; /** Custom data to be passed to the call */ custom?: Record< string, | string | boolean | number | null | Record<string, string | boolean | number | null> | string[] | boolean[] | number[] >;
/** * Get the native Capacitor plugin version * * @returns {Promise<{ id: string }>} an Promise with version for this device * @throws An error if the something went wrong */ getPluginVersion(): Promise<{ version: string }>;}CameraEnabledResponse
카메라 사용 가능 응답export interface CameraEnabledResponse { enabled: boolean;}StreamCallLayout
스트림 호출 레이아웃export type StreamCallLayout = 'grid' | 'spotlight' | 'dynamic' | 'fullScreen' | 'fullscreen';DynamicApiKeyResponse
동적 API 키 응답export interface DynamicApiKeyResponse { /** The dynamic API key if set, null if not */ apiKey: string | null; /** Whether a dynamic key is currently set */ hasDynamicKey: boolean;}CurrentUserResponse
현재 사용자 응답export interface CurrentUserResponse { /** User ID of the current user */ userId: string; /** Display name of the current user */ name: string; /** Avatar URL of the current user */ imageURL?: string; /** Whether the user is currently logged in */ isLoggedIn: boolean;}PushNotificationsConfig
푸시 알림 구성export interface PushNotificationsConfig { pushProviderName: string; voipProviderName: string;}CallType
호출 유형export type CallType = 'default' | 'audio' | 'audio_room' | 'livestream' | 'development';CallState
호출 상태export type CallState = // User-facing states | 'idle' | 'ringing' | 'joining' | 'reconnecting' | 'joined' | 'leaving' | 'left' // Event-specific states | 'created' | 'session_started' | 'rejected' | 'participant_counts' | 'missed' | 'accepted' | 'ended' | 'camera_enabled' | 'camera_disabled' | 'speaker_enabled' | 'speaker_disabled' | 'microphone_enabled' | 'microphone_disabled' | 'outgoing_call_ended' | 'unknown';실제 원천
실제 원천이 페이지는 플러그인의 src/definitions.ts. 업스트림의 API이 변경되었을 때 다시 싱크를 실행하세요.
Getting Started에서 계속
Getting Started에서 계속하기Getting Started Getting Started을 사용하여 대시보드와 __CAPGO_KEEP_0__를 계획하고 운영하고 싶다면 Getting Started을 사용하여 대시보드와 API를 계획하고 운영하고 싶다면 Using @capgo/capacitor-stream-call Using @capgo/capacitor-stream-call API Overview API Overview 소개 implementation 설명을 위한 Introduction에서 API 키 implementation 설명을 위한 API 키, 및 기기 implementation 설명을 위한 기기.