十分钟实现呼叫场景,只需一个融云 CallKit
受全球疫情影响,音视频通讯从便捷应用变为市场刚需;通讯技术的发展和 5G 基础设施的建设,使得移动设备进行音视频通讯成为可能;而流量成本的降低,更是进一步推动了音视频通讯的普及。
对于想要低成本、快速集成音视频通信能力的用户来说,融云的 CallKit SDK 绝对是不二之选。
本文将重点介绍融云 CallKit SDK 的优势特点,及其使用指南。
完整性
① 状态完整:融云提供完整的 CallKit 呼叫功能方案,包括连接、呼叫、接听、拒接、挂断、呼叫状态通知等。
② 封装彻底:将音视频的底层能力封装到 CallKit 内部,用户只需使用最少的接口,即可实现呼叫需求。
③ 场景全面:可以同时满足单人呼叫和多人呼叫场景。
④ 一站式链路:功能上下游完整,比如:
状态回调:给用户提供所有的操作状态反馈回调,方便用户自己做二次处理;
云端录制:提供音视频云端录制功能,方便用户录制通话内容,供后续业务查看使用;
数据审核:提供音视频审核服务,为用户的业务安全保驾护航。
⑤ 全平台支持:支持 iOS、Android、Web、小程序、React Native、uni-app 等众多平台。
易用性
① 开箱即用:融云提供了完整的 CallKit SDK,将呼叫包装为底层能力,直接为开发者绘制了呼叫界面,可以开箱即用。
② 快速实现:使用融云的 CallKit SDK 方法简便,10 分钟即可实现呼叫场景。
③ 灵活定制:提供 CallKit 开源源码,用户可以根据自己的需要,在原界面基础上定制 UI,方便灵活。
集成便捷性
只需三步,即可完成呼叫服务接入:
① 在融云开发者后台开通音视频服务;
② 导入开发包 CallKit,支持 pod/maven/npm 便捷导入和包管理;
③ 便捷使用:初始化 – 连接 – 发起呼叫。
受篇幅限制,此处仅展示iOS和Android的示例代码。iOS 代码示例:
// AppKey 设置
[[RCIMClient sharedRCIMClient] initWithAppKey:@"请在开发者平台获取AppKey"];
// RongCallKit初始化
[RCCall sharedRCCall];
初始化
// 连接 IM 服务
[[RCIMClient sharedRCIMClient] connectWithToken:@"开发者的 server 通过请求 server api 获取到的 token 值"
dbOpened:^(RCDBErrorCode code) {}
success:^(NSString *userId) {}
error:^(RCConnectErrorCode status) {}
tokenIncorrect:^{}];
连接
[[RCCall sharedRCCall] startSingleCall:@"被叫端UserId" mediaType:RCCallMediaVideo];
发起呼叫(单人呼叫)
[[RCCall sharedRCCall] startMultiCallViewController:ConversationType_GROUP
targetId:@"群组ID"
mediaType:RCCallMediaVideo
userIdList:@[@"被叫用户A", @"被叫用户B", @"被叫用户C"]];
发起呼叫(多人呼叫)
Android 代码示例:
RongIMClient.init(this,"请在开发者平台获取AppKey",false);
初始化
RongIMClient.connect("用户Token", new RongIMClient.ConnectCallback() {
连接
Conversation.ConversationType conversationType = Conversation.ConversationType.PRIVATE;
String targetId = "001";
List<String> userIds = new ArrayList<>();
userIds.add(targetId);
RongCallCommon.CallMediaType mediaType = RongCallCommon.CallMediaType.VIDEO;
String extra = "";
RongCallClient.getInstance().startCall(conversationType, targetId, userIds, null, mediaType, extra);
发起呼叫(单人呼叫)
Conversation.ConversationType conversationType = Conversation.ConversationType.GROUP;
//群组ID
String targetId = "group1";
//群组内的用户ID集合
List<String> userIds = new ArrayList<>();
userIds.add("001");
userIds.add("002");
RongCallCommon.CallMediaType mediaType = RongCallCommon.CallMediaType.VIDEO;
String extra = "";
RongCallClient.getInstance().startCall(conversationType, targetId, userIds, null, mediaType, extra);
发起呼叫(多人呼叫)
稳定性
① 连接稳定性:CallKit 底层连接基于融云 IMLib 实现,IM 通道实现了 100% 可靠必达的音视频呼叫信令能力,保证连接安全可靠。融云 IM SDK 已为全球 30W+ 客户提供 IM 消息发送服务,采用海量并发框架,日消息峰值达 2218 亿条,稳定性有保障。
② 通话稳定性:CallKit 底层通话基于融云 RTCLib 实现,音频抗丢包 80%,视频抗丢包 40%,并有抗弱网策略,保证通话清晰稳定。融云 RTC SDK 可以实现多用户同时进行音视频通话、会议、直播功能,为客户提供更多底层能力。
案例场景多样性
融云具有丰富的支持经验,已经帮助众多开发者实现业务场景,涉及多个行业。
① 面试:适应于直接发起呼叫进行面试,或约定好时间进入面试间进行面试的场景。
② 医疗:满足远程问诊、远程医疗培训、远程病理分析、手术示教等场景。
③ 远程服务:满足远程售后、远程面签、远程维修、远程控制等场景。
④ 智能硬件:为智能手表、智能眼镜、智能音响、智能电视等智能设备提供低功耗、高质量的音频、视频、消息、信令通信能力。
⑤ 金融:满足银行、证券、保险领域客户的底层安全通信需求,实现业务办理、开户、转账等场景需求。
⑥ 房地产:用于管家服务、微聊、VR 看房等场景,覆盖物业、房地产、中介各领域。
⑦ 海关:为海关巡逻和安检系统提供解决方案,巡逻人员可基于融云技术能力,向控制中心报告安检情况。
⑧ 公检法:助力公检法部门实现情指行督一体化、社区矫正沟通、远程审讯等场景。
⑨ 企业会议:实现企业内部的快速会议,助力企业高效完成内部沟通事项。
⑩ 相亲:满足音视频相亲,或者一对一、多对多音视频约聊场景。
融云 CallKit 已服务众多企业客户,服务质量遥遥领先,主要通过文档、工单、技术群等手段和方式,辅助开发者的开发与集成工作,并持续提供后续维护服务。
以上就是融云 CallKit SDK 的全部特性和适用场景,最后让我们用一张图来总结回顾一下吧 👇。如果您也需要将您的业务和音视频通信能力快速结合起来,请联系融云,为您量身定制专属技术解决方案,助力您的业务增长。