上周,鱼哥和几个移动开发者吃饭闲聊,都聊到如今开发音视频产品,门槛较之前大大降低。2021年初,随着马斯克在应用 Clubhouse 中开麦输出,谈比特币,谈火星移民,谈脑机接口。Clubhouse 这款语聊房应用迅速在中国市场掀起一股浪潮。在创业公司打拼的老马,一直做的 Android 应用开发。老板希望把类似 Clubhouse 的玩法,作为他们新业务线。他开始了漫漫选型路。

其实,在国内得益于通信云服务商的底层建设,即使没有相关垂直经验,想要做一款语聊房产品切入这个市场也不是天方夜谭。难的是,怎么能达到老板对速度的要求。

语聊房产品要用到IM(即时通讯)RTC(实时音视频) 两大能力,面对的是几百个语焉不详的API。光是集成这两个模块,就已经耗尽了心力、掉光了头发。

不过,老马还能出来跟我们侃大山,是因为他已经找到了捷径,他正对接一家服务商,顺利的话一周就能“完成KPI,奖金到手来”了。

鱼哥以为他吹牛,因为我印象中的音视频业务总体还是很复杂,各种麦位管理,声音实时性,低延时等要求。其实并不怎么相信~

详细追问下,我才了解到是集成了PaaS厂商融云的SDK。说起融云,我是很有印象的,他的创始团队都是以前开发“飞信”的核心人物,在通信领域那是杠杠的。融云基于强大的 IM 和 RTC 优势,很早就推出了封装基础通信能力的SDK,并且在持续打磨精进。为了降低广大开发者的使用难度,融云投入大量资源,开发了针对热门场景的一揽子解决方案。把复杂的事情简单化。

融云语聊房SDK,就是老马选用的解决方案,满足了语聊房场景绝大多数的需求,还覆盖一系列衍生场景的实际需求。【融云全球互联网通信云】公众号有写:

“11月初时,融云基于场景化的语聊房Demo & SDK 2.0正式上线,新增了连麦PK和语音电台二大主流场景,以及房间浮窗显示、滑动切换房间、发送语音消息、礼物全服广播和设置房间屏蔽词等实用功能,覆盖时下所有热门语聊房场景。”

来给大家看看效果是什么样的?

我去他们官网研究了下,的确非常简单,大大降低了开发的时间成本和资金成本。能快速实现业务需求。

比如,第一步直接集成语聊房SDK就行,不用单独集成IM 和 RTC

再比如,核心API不超过20个,核心回调不超过5个;

又比如:可以直接在融云的开发者后台找到“开启审核”配置,点击配置,意味着一键接入第三方专业内容审核平台,从根本上杜绝了恶意传播非法内容的可能。

功能强大对开发者来说只是满足了最基本的需要。而最引起鱼哥关注的是“7天上线”。这个速度,简直不可想象。

为此,鱼哥与融云场景化研发负责人臧其龙深入地聊了聊。

臧其龙介绍说,融云可以帮助开发者抢跑赛道的关键点在于,不仅开放源码,还在这之上将混杂无章的源码按语聊房场景的业务逻辑封装成SDK,并提供直观的API接口。这样,开发者无需理解底层技术逻辑,只要对这个业务有基本了解,知道什么是创建房间,离开房间;什么是上麦、什么是下麦,就能够快速完成开发。

鱼哥调看了下融云的开发文档,创建房间的代码是这样的,的确简洁易懂。示例代码如下:

/// 创建一个 RCVoiceRoomInfo 实例
RCVoiceRoomInfo rcVoiceRoomInfo = new RCVoiceRoomInfo();
/// 设置房间名称
rcVoiceRoomInfo.setRoomName(roomName);
/// 设置麦位数量
rcVoiceRoomInfo.setSeatCount(9);
///设置上麦模式(ture是自由上麦 false为申请上麦)
rcVoiceRoomInfo.setFreeEnterSeat(false);
///设置全麦锁座
rcVoiceRoomInfo.setLockAll(false);
///设置全麦锁麦
rcVoiceRoomInfo.setMuteAll(false);
// roomId 是您的业务服务器返回的
RCVoiceRoomEngine.getInstance().createAndJoinRoom(roomId, rcVoiceRoomInfo, new  RCVoiceRoomCallback() {@Overridepublic void onSuccess() {//创建成功,自动加入房间}@Overridepublic void onError(int code, String message) {//创建失败}
});

对于开发者最为关心的,一款语聊房如何实现,以及功能的好坏,其关键技术点有三个:KV聊天室属性信令SDKAPI设计,鱼哥也请臧其龙进行了详细解答。

KV聊天室属性

KV聊天室属性,提供麦位状态的云端存储和通知的同步能力,可在20-40毫秒内,快速同步任何数据库的增删改查,满足包括直播室连麦、语音聊天室连麦、游戏连麦等各种语聊场景中,不同麦位对应不同角色的同步能力,以及随时切换的时序能力。

信令SDK

信令SDK,保证有序性。在邀请和请求上麦场景中,既能避免因频繁上下麦所产生的杂乱,也能保证申请上麦的先来先上,后到后上,使用户体验更顺畅。

这两点,对自研开发者来说难度都较大,却是一个语聊房产品能否研发成功的关键技术点。

而语聊房产品研发出来,到底好不好用,API设计是第三个关键技术点,臧其龙称其为“产品门面”。

API设计

API设计:核心在于符合用户的使用习惯,最自然的才是最合理的。例如:上麦就应该可以发语音,而下麦则只能听语音。

为了方便使用,融云一方面精简SDK,将API总数控制在20个以内,从而降低用户的学习成本。另一方面,在模型的设计上给予了用户极大自由度的扩展属性,从而满足用户的各种创意十足的需求,使功能的强大性和覆盖场景的多样性,二者兼得。

鱼哥发现,自今年6月融云语聊房1.0推出以来,市场上已经开始出现不同名称,但本质趋同的产品形态,比如voice Demo、k歌房Demo等。

对于开发者来说,又该如何评判和选择呢?融云还有优势吗?鱼哥仔细查看了这些Demo的实现逻辑,发现融云还是有一定优势的。在开发难度上,“第三代 SDK 只需理解产品概念即可,无论是基于 SDK 开发,还是基于样例开发,都能轻松掌握。”

意思就是说,融云的场景化语聊房 SDK 是第三代解决方案,最大的特点就是:将与场景相关的所有能力集合封装,不用再分别调用IMRTC SDK。

而第二代解决方案,是目前其他厂商在用的方式,开发难度上,是需要开发者先理解IM 和RTC的底层逻辑,然后还要面对几百个API,在源码基础上再进行二次开发。

在实现逻辑上,第三代比第二代更简单,省去了大量的对底层逻辑学习的过程。

鱼哥还了解到一个真实的小案例:

“开发者先用某厂提供的第二代方案进行二开,过程中却发现很多问题难以解决,切换成融云语聊房 SDK 2.0,结果,之前将近三个月都没搞定的项目,只用两周就完成了产品上线。”

臧其龙说,语聊房1.0上线以来,短短5个月的时间里,对接的20家客户中,就有10款APP应用交付上线。他自己每天都在技术支持群里与开发者交流,最大的欣慰是开发者的反馈:

“只阅读注释和 API的名字,就能基本掌握用法,学习成本真的很低,开发效率真的很高。”

融云语聊房3.0还将有哪些新功能?

接下来,融云语聊房3.0还将有哪些新功能?大家搬好小板凳坐好,鱼哥现在可以“透露”下~ 与上半界面麦位用户相关的发送礼物、发送表情、聊天室信息接收等相关功能,会进一步完善,推出一系列高性能的Kit组件,比如礼物Kit、异步渲染的聊天室Kit。

这里重点可以关注下融云自研的聊天室全异步渲染框架,利用这个框架,可以保证在非常低端的手机上也能跑满帧,带给用户非常流畅的APP使用交互体验。出海的开发者要考虑不同区域的终端用户手机的差异会非常大,如果在不发达国家,低端手机占有率比较高,那么全异步渲染框架会是一个很好的选择。

未来6个月内,融云还将开源8-10个高性能的UI框架,同时满足iOS端和Android端,让开发者可以更方便地对接场景化SDK,快速构建高质量的产品。

除了语聊房3.0之外,会议Meeting、1V1在线陪聊、在线教育的场景化SDK 都在融云下一阶段的产品路线图上。

最后,如果让鱼哥用一个词总结这样的开发体验,那就是“搭积木”。融云提供源码及之上封装好的SDK,相当于提供的积木,让开发者可以真正实现“开箱,即插即用”,从0-1,最短7天,一般三周也可以上线一款功能完整的语聊房产品。

开发者,尤其是中小企业的开发者,不必自建,不再为复杂的逻辑架构绞尽脑汁,更无需把时间耗费在反复的写代码、改Bug中。一句话,天空飘来五个字,coding不是事儿。

有兴趣的开发者可以免费注册体验。扫码即可体验~

小白7天上线语聊房产品,鱼哥惊呆了~相关推荐

  1. 如何 30 分钟搭建语聊房

    一个拥有 1-2 年经验的开发者,从 0 到 1 上线应用只要 7 天.一个刚起步的程序员,可以 30 分钟内完成一个 Demo. 这不是天方夜谭,而是融云场景化 SDK 带给行业的创变.[关注 融云 ...

  2. 语聊房 SDK,下一代场景化解决方案新范式

    [关注 融云全球互联网通信云]近日,融云语聊房 SDK 2.0 实力上线.在 1.0 的实时连麦.百万并发.音频管理等核心功能基础上,2.0 新增跨房间 PK 和语音电台两大场景,及房间浮窗显示.滑动 ...

  3. 程序员的硬核浪漫 — 女友专属语聊房(内附源码)

    人人都说找个程序猿做男朋友就是好,钱多话少 over 早. 额...估计小编把文章发布出去后就要被公司的程序猿同胞们疯狂逮捕挨打了. 虽然日常生活中大家对程序猿的标签大多是呆板.木讷.不懂浪漫,格子衫 ...

  4. WICC 2021 技术分论坛 “开箱即用”语聊房Demo成亮点

    7月24日,第三届全球互联网通信云大会(WICC 2021)在北京成功召开,数千开发者共赴通信云技术盛宴.本次会议中,"开发者服务生态"被作为重要议题引起了全产业链的广泛关注.作为 ...

  5. 即构语聊房解决方案,让社交“有声”升级

    去年下半年起,音乐社交产品音遇.语音社交产品吱呀.音乐+地图社交产品spot等多款APP的亮眼表现,让我们看到了"语音+社交"的魔力.2019年春,语音社交迎来了发展的新阶段,创新 ...

  6. 语聊房app的开发以及运营思路

    语聊房app是一种基于实时语音交流的社交应用,用户可以通过该应用结识新朋友.交流经验.分享兴趣爱好等,因此备受年轻用户的青睐.以下是语聊房app的开发以及运营思路: 一.开发思路 功能设计 语聊房ap ...

  7. 语聊房app源码及架构设计

    语音社交产品技术架构设计 语音社交产品的技术架构设计是产品开发中非常重要的一环.在设计时需要考虑产品的功能.性能.可靠性等多个方面,同时也需要与产品策划与设计相协调.以下是语音社交产品技术架构设计的主 ...

  8. 从语聊房 SDK 的诞生,看 PaaS 服务的演进过程

    [关注 融云全球互联网通信云]展开讨论之前,我们先来看一段 Javascript 伪代码. // 加⼊聊天室,获取收发消息和信令能⼒ IMClient.shared.join(roomId, (isS ...

  9. 程序猿七夕礼物-如何30分钟给女友快速搭建专属语聊房

    1 语聊房应用场景说明 七夕礼物准备好了吗?程序猿七夕礼物标配,给女友搭建专属语聊房,既浪漫又硬核! 语聊房在社交场景中使用比较广泛,社交APP中的语聊房场景的实现,主要由业务系统和移动/Web 客户 ...

最新文章

  1. Docker 使用 supervisord 管理 lumen队列与crontab
  2. 引领潮流云电视机遇与挑战并现
  3. Hadoop2.0 YARN
  4. 动图 + 源码,演示 Java 中常用数据结构执行过程及原理
  5. OSI模型和TCP/IP协议族
  6. 监听手指是否离开屏幕android_Flutter事件监听
  7. yum install rpm包时报错
  8. greenplum查询超时_greenplum 集群故障(Sorry,too many clients already )排查:
  9. Jmeter远程启动负载机
  10. 完全掌握1级日本与能力考试语法问题对策
  11. 如何完成知识问答环节中的前期设置,题目准备及现场操作等主要流程?
  12. 时间序列预测 | Python实现GAN时间序列数据生成建模
  13. 安防摄像头移动侦测和遮挡侦测基本原理
  14. 知道为什么HTML页面在电脑上和手机上的布局不同吗?这篇文章带你走进Element UI的简单适配
  15. 生物信息学分析 | 物种间的同源基因的批量注释
  16. 城市数据大脑:小汽车儿堵成翔?NONONO!
  17. Android 头像更换从相册选取崩溃
  18. sql语句中带有中文怎么办
  19. 技术管理进阶——团队合并、解散怎么办?
  20. devise 自定义手机号登录

热门文章

  1. tp6.0文档解析(简介+安装)
  2. 建模大神带你全方位解读科幻枪械模型制作,硬表面建模材质全析
  3. python 角点检测_python 实现Harris角点检测算法
  4. CAD制图查询CAD图纸中的点坐标
  5. TCP三次握手过程,如果两次握手会怎么样?
  6. 走出误区戳穿XP的经典谣言
  7. 谷歌浏览器自动打印并关闭当前页
  8. 访问者模式(例子+类图+实现)
  9. 2021-10-24 解决8080端口占用、软件开机自启、C盘清理
  10. BugKu 妹子的陌陌 [MISC]