菊风云为开发者提供专业稳定的实时音视频通信云服务。开发者通过集成 Juphoon Cloud SDK(JC SDK),即可轻松快速实现全行业多场景应用,应用领域覆盖社交、直播、教育、智能硬件、金融、医疗、政企、会议、呼叫中心等。
JC SDK 在音视频编解码、图像处理、回声消除等方面具有独特的技术优势,为开发者带来高清流畅的通话体验的同时,极大简化了音视频会话应用开发的研发过程。开发者只需调用相应的 API,便能快速开发具有优异性能的音视频应用。
在这里您将学习如何集成 JC SDK。让我们开启音视频集成开发之旅吧!
Juphoon Cloud SDK (JC SDK) - Usable, Simple, Elegant !
ohpm install @juphoon/jcsdk
import {
JCClient,
JCCall,
JCMediaDevice,
JCMediaChannel,
} from 'JCSDK';
方法 | 描述 |
---|---|
JCClient.create | 创建 JCClient 对象 |
JCClient.destroy | 销毁 JCClient 对象 |
JCClient.getAppkey | 获取Appkey |
JCClient.setForeground | 设置是否为前台 |
JCClient.getState | 获取当前状态 |
JCClient.login | 登录 Juphoon Cloud 平台 |
JCClient.logout | 登出 Juphoon Cloud 平台 |
事件 | 描述 |
---|---|
JCClientCallback.onLogin | 登录结果回调 |
JCClientCallback.onLogout | 登出回调 |
JCClientCallback.onClientStateChange | 登录状态变化通知 |
方法 | 描述 |
---|---|
JCClient.setDisplayName | 设置昵称 |
JCClient.getDisplayName | 获取昵称 |
JCClient.getCreateParam | 获取创建参数 |
JCClient.getLoginParam | 获取登录参数 |
JCClient.getUserId | 获得用户标识 |
方法 | 描述 |
---|---|
JCClient.sendOnlineMessage | 发送在线消息 |
方法 | 描述 |
---|---|
JCClientCallback.onOnlineMessageSendResult | 在线消息发送结果 |
JCClientCallback.onOnlineMessageReceive | 收到在线消息 |
方法 | 描述 |
---|---|
JCClientCallback.onServerMessageReceive | 收到订阅消息 |
事件 | 描述 |
---|---|
JCMediaDevice.create | 创建 JCMediaDevice 对象 |
JCMediaDevice.destroy | 销毁 JCMediaDevice 对象 |
方法 | 描述 |
---|---|
JCMediaDevice.isSpeakerOn | 扬声器是否已打开 |
JCMediaDevice.isAudioStart | 音频是否已打开 |
JCMediaDevice.startAudio | 启动音频 |
JCMediaDevice.stopAudio | 停止音频 |
JCMediaDevice.enableSpeaker | 开启关闭扬声器 |
JCMediaDevice.getAudioRouteType | 音频路由类型 |
事件 | 描述 |
---|---|
JCMediaDeviceCallback.onAudioOutputTypeChange | 音频输出类型变化 |
JCCallCallback.onEarlyMediaReceived | 收到早期媒体的回调 |
JCCallCallback.onSipRingInfoReceived | 收到早期媒体的回调收到sip振铃信息 |
方法 | 描述 |
---|---|
JCMediaDevice.isCameraOpen | 摄像头是否已打开 |
JCMediaDevice.getCamera | 获取当前的摄像头 |
JCMediaDevice.getCameras | 获取摄像头列表 |
JCMediaDevice.startCamera | 开启摄像头 |
JCMediaDevice.stopCamera | 关闭摄像头 |
JCMediaDevice.switchCameraBetweenFrontAndBack() | 切换摄像头 |
JCMediaDevice.switchCamera | 切换摄像头(指定摄像头) |
JCMediaDevice.getCameraType | 获得摄像头类型 |
JCMediaDevice.setVideoFrameCallback | 设置视频观测器对象 |
事件 | 描述 |
---|---|
JCMediaDeviceCallback.onCameraUpdate | 摄像头变化 |
JCMediaDeviceCallback.onRenderReceived | 收到第一帧数据 |
JCMediaDeviceCallback.onRenderStart | 渲染开始 |
方法 | 描述 |
---|---|
JCCall.create | 创建 JCCall 对象 |
JCCall.destroy | 销毁 JCCall 对象 |
JCCall.call | 发起一对一呼叫 |
JCCall.term | 挂断 |
JCCall.answer | 接听 |
JCCall.mute | 静音 |
JCCall.muteSpeaker | 音频输出静音 |
JCCall.muteMicrophone | 音频输入静音 |
JCCall.setMicScale | 麦克风声音放大 |
JCCall.hold | 呼叫保持 |
JCCall.becomeActive | 切换活跃通话 |
JCCall.getCallItems | 获得通话对象列表 |
JCCall.getActiveCallItem | 获得当前活跃的通话 |
JCCall.getStatistics | 获得当前通话统计信息 |
事件 | 描述 |
---|---|
JCCallCallback.onCallItemAdd | 新增通话回调 |
JCCallCallback.onCallItemRemove | 移除通话回调 |
JCCallCallback.onCallItemUpdate | 通话状态更新回调 |
JCCallCallback.onMissedCallItem | 上报服务器拉取的未接来电 |
方法 | 描述 |
---|---|
JCCall.audioRecord | 语音通话录音 |
JCCall.videoRecord | 视频通话录制 |
方法 | 描述 |
---|---|
JCCall.sendDtmf | 发送DTMF信息 |
方法 | 描述 |
---|---|
JCCallCallback.onDtmfReceived | 通话中收到DTMF回调 |
方法 | 描述 |
---|---|
JCCall.sendMessage | 通过通话建立的通道发送数据 |
方法 | 描述 |
---|---|
JCCallCallback.onMessageReceive | 通话中收到消息的回调 |
方法 | 描述 |
---|---|
JCCall.updateMediaConfig | 更新媒体参数 |
JCCall.getMediaConfig | 获得当前的媒体参数 |
方法 | 描述 |
---|---|
JCCall.enableUploadVideoStream | 开启关闭视频流发送 |
方法 | 描述 |
---|---|
JCMediaChannel.create | 创建 JCMediaChannel 对象 |
JCMediaChannel.destroy | 销毁 JCMediaChannel 对象 |
JCMediaChannel.getChannelUri | 获得频道 Uri |
JCMediaChannel.getChannelId | 获得频道标识 |
JCMediaChannel.getPassword | 获得频道密码 |
JCMediaChannel.getChannelNumber | 获得频道号 |
JCMediaChannel.getTitle | 返回频道标题 |
JCMediaChannel.getState | 返回当前在频道中的状态 |
JCMediaChannel.query | 查询频道相关信息 |
JCMediaChannel.join | 加入频道 |
JCMediaChannel.leave | 离开频道 |
JCMediaChannel.stop | 关闭频道 |
JCMediaChannel.setCustomProperty | 设置频道自定义属性 |
JCMediaChannel.getCustomProperty | 获取自定义频道属性 |
JCMediaChannel.setCustomRole | 设置自定义角色 |
JCMediaChannel.getCustomRole | 获得自定义角色 |
JCMediaChannel.setCustomState | 设置自定义状态 |
JCMediaChannel.getCustomState | 获得自定义状态 |
JCMediaChannel.getSelfParticipant | 获得自身 JCMediaChannelParticipant 对象 |
事件 | 描述 |
---|---|
JCMediaChannelCallback.onMediaChannelStateChange | 自身状态变化回调 |
JCMediaChannelCallback.onMediaChannelPropertyChange | 属性变化回调 |
JCMediaChannelCallback.onJoin | 加入频道结果回调 |
JCMediaChannelCallback.onLeave | 离开频道结果回调 |
JCMediaChannelCallback.onStop | 解散频道结果回调 |
JCMediaChannelCallback.onQuery | 查询频道信息结果回调 |
方法 | 描述 |
---|---|
JCMediaChannel.getAudioOutput | 获取音频是否输出 |
JCMediaChannel.enableUploadVideoStream | 开启关闭发送本地视频流 |
JCMediaChannel.enableAudioOutput | 开启关闭音频输出 |
JCMediaChannel.requestVideo | 请求频道中其他用户的视频流 |
JCMediaChannel.getStatistics | 获取统计信息 |
JCMediaChannel.enableSelfVideoRatio | 设置自身视频宽高比 |
JCMediaChannel.getMaxResolution | 获得频道最大分辨率 |
事件 | 描述 |
---|---|
JCMediaChannel.getParticipants | 获得所有频道中的成员 |
JCMediaChannel.getParticipant | 获取频道成员 |
JCMediaChannel.kick | 将成员踢出会议 |
JCMediaChannel.subscribeParticipantAudio | 订阅或取消订阅指定用户的声音 |
事件 | 描述 |
---|---|
JCMediaChannel.enableCdn | 开关Cdn推流 |
JCMediaChannel.getCdnState | 获得cdn推流状态 |
事件 | 描述 |
---|---|
JCMediaChannel.enableRecord | 开关视频录制 |
JCMediaChannel.getRecordState | 获取视频录制状态 |
事件 | 描述 |
---|---|
JCMediaChannel.getUploadLocalAudio | 获取本地音频数据是否在上传 |
事件 | 描述 |
---|---|
JCMediaChannel.getUploadLocalVideo | 获取本地视频数据是否在上传 |
事件 | 描述 |
---|---|
JCMediaChannel.sendMessage | 发送消息 |
JCMediaChannel.sendCommand | 发送指令 |
JCMediaChannel.sendCommandToDelivery | 发送命令给推流或录制器 |
事件 | 描述 |
---|---|
JCMediaChannelCallback.onChannelMessageReceive | 接收频道消息的回调 |
事件 | 描述 |
---|---|
JCMediaChannel.requestScreenVideo | 请求屏幕共享的视频流 |
JCMediaChannel.enableScreenShare | 开关屏幕分享 |
JCMediaChannel.getScreenRenderId | 获取屏幕共享渲染标识 |
JCMediaChannel.getScreenUserId | 获取开启屏幕共享的用户标识 |
JCMediaChannel.startScreenShareVideo | 启动屏幕共享视频渲染 |
在下述版本验证通过:
DevEco Studio: NEXT Release(5.0.3.900), SDK: API12 (5.0.0.71)
|----JCSDK
| |---- libs # SDK库文件夹
| |---- cpp # c/c++接口
| |---- ets # 接口声明
| |---- index.ets # 对外接口
| |---- README.md # 安装使用方法
| |---- CHANGELOG.md # SDK更新说明