注册

2021年度28个开箱即用的MQTT开源项目合集【附源码】

随着云通讯行业持续增长,5G建设逐步推进、音视频技术快速迭代,都是为了满足人与人、设备与人、设备与设备之间的消息传输。这无疑是一个消息传输的时代。在这个时代中,所有的协议、配置都在于恰到好处。正如MQTT消息传输协议基于物联网,但又不局限于物联网,同样可以在移动互联网中承担多种功能。

MQTT是一个极其轻量级的发布/订阅消息传输协议,它解除时间与空间耦合,可以在应用内实现推送、通知等功能;它简约、轻量,极小的SDK空间占用,适用于嵌入Android、iOS、RTOS等多端平台;它数据包小、功耗低,适用于低带宽、高延迟或不可靠的网络环境。

环信MQTT消息云的产品定位就是充分发挥MQTT协议优势,为开发者提供应用与应用之间、设备与应用之间、应用与平台之间的消息传输服务。为了让大家更深入了解MQTT协议优势,环信举办了首届MQTT创意编程挑战赛,通过编程实战实际感受MQTT协议在应用间消息传输的优势。

经过1个多月的实战开发,首届环信MQTT创意编程挑战赛最终产生28个参赛作品,覆盖多领域多平台,生动有趣的展示了开发者们天马行空的创造力。下面我们一起看看那些优秀的开源作品吧~!

 

作品1:音乐广播神器 - 一起听

一起听是一款在线音频共享收听软件,用户可以快速创建一个包含音频播放器的网页,与众多好友实时在线点播收听和赏析歌曲。


一起听主播端截图

【一起听】终端用户分类两类 a.主播端用户(默认用户) b. 听众端用户(通过广播链接进入页面的用户)。主播角色用户登入一起听页面后,将系统自动生成的广播地址分享给好友,好友即听众端,通过该链接与主播角色进入同一个频道,进行歌曲播放,收听,进度同步。

一起听通过环信MQTT实现了以下功能:
(1)实时数据同步:包括歌曲播放同步、快进同步、切歌同步;
(2)控制指令:传输“我想听XXX”格式消息,可点播歌曲,“上一首/下一首”可控制切歌;
(3)实时消息传输:实现大型聊天室即时聊天功能;
(4)在线人数:获取好友上下线动态,实时更新在线人数;


该作品作为一款共享音乐神器,通过MQTT消息实现实时消息传输,控制命令,实时在线人数等功能,充分发挥了MQTT消息体小、实时传输、一对多广播等特性,同时支持数百万级客户端同时接入,消息毫秒级到达,并且可以灵活复制到共享音视频、在线直播、在线教学(云教室)等场景。


预览地址:https://www.easemob.com/product/mqtt/demo/musicplayer


作品2:手速王——在线PK - 趣味应用小游戏

手速王是一款与在线用户拼手速,实时PK的小游戏。


该小游戏基于环信MQTT实现实时在线人数的心跳连接,实时广播当前在线用户以及用户点击屏幕次数,点击态给与爱心动画展示增加趣味性,通过图表的方式实时刷新当前点击次数,依赖MQTT广播该数据,汇总当前在线人数的点击速度,同步更新排名结果,冠军会有对应的动画以鼓励。

手速王通过环信MQTT实现了以下功能:
(1)实时数据同步:实现更新排名;
(2)控制指令:点击时触发爱心动画;
(3)实时消息传输:实时传输用户点击屏幕次数;
(4)在线人数:获取好友上下线动态,实时更新在线人数;
该作品主要实现实时图表更新功能,通过MQTT消息实现高频高并发消息传输,并通过发送控制命令触发动画特效,增强了趣味性。



作品3:在线打击乐

在线打击乐是一款基于mikutap的高颜值多人互动网页游戏,用户在开始游戏后,通过敲击键盘,拖拽鼠标等操作,实现打击乐的效果,并可与同时在线用户同步音效。


(在线打击乐demo演示)


在线打击乐通过环信MQTT实现了以下功能:
(1)实时同步:实时同步用户敲击键盘的音效;
通过MQTT消息实现了不同设备间的音效同步,达到很好的互动效果。
(2)控制指令:实时发送鼠标点击或敲击键盘等控制动作消息,从而触发不同的音效。

预览地址:https://www.easemob.com/product/mqtt/demo/onlinecombat



作品4:小说阅读室

小说阅读室是一款基于环信MQTT实现的多人在线阅读App,可与阅读同一本书的用户同步阅读进度,切换章节,同步小说的字体与背景等操作,同时基于环信MQTT实现了实时在线阅读的同时进行即时IM沟通,通过读书遇到志同道合的人,为阅读增加了趣味性和社交属性。



(小说阅读室demo演示)

小说阅读室App内置4部本地小说,同时支持从服务端下载并缓存小说,进入指定小说之后可依据个人阅读习惯,设置字体,背景,同时支持章节快速切换,退出阅读记忆上次位置等。

小说阅读室通过环信MQTT实现了以下功能:
(1)实时数据同步:同步阅读进度;
(2)控制指令:切换章节,小说的字体与背景等操作;
(3)实时消息传输:支持在线聊天功能;
(4)更新好友动态:获取好友上下线动态;
该作品基于小说阅读室,通过MQTT实现控制指令、更新好友上下线动态、在线聊天等功能,增强了阅读场景中的社交属性,提高了阅读趣味性。



作品5:互动画板

互动画板是一款多人在线实时绘画的小工具。



(互动画板demo演示)

互动画板的用户数据存储到每个客户端上,通过环信mqtt绘制实时同步,画笔每条路径通过mqtt通知到其他客户端,路径中包含当前用户数据,同时可以同步线上用户数量。除此外,清除功能也采用环信mqtt发送控制指令,对应的用户作图立即清除。

互动画板通过环信MQTT实现了以下功能:
(1)实时数据同步:同步绘画轨迹;
(2)控制指令:清空画板指令;
(3)在线人数:获取好友上下线动态,实时更新在线人数;
该作品主要实现实时互动功能,通过MQTT消息小,延迟低,高频高并发等特性,实现了多人多端绘画轨迹0延迟同步,提升了互动绘画体验。



除以上作品外,还有很多优秀作品由于篇幅原因无法一一呈现,感兴趣的小伙伴可以前往官方Github仓库进行查看哦~

区块链空气币
多人实时位置共享APP
实时图表
在线选座
im聊天室(作者林鹏 - linpeng)
实时互动
热搜话题聊天室
在线点餐
基于Electron开发的喝水提醒
基于环信mqtt服务的shell远程命令执行
喝水提醒
基于环信MQTT的Serverless任务看板


Github地址:https://github.com/easemob/Creative-Challenge-MQTT
Gitee地址:
https://gitee.com/huanxin666
环信MQTT官方地址:
https://www.easemob.com/product/mqtt


1 个评论

学到了!!!

要回复文章请先登录注册