BBBUG音乐聊天室的开发故事和架构设计

1,297 阅读4分钟

办公室有个小伙伴喜欢拿音响放歌,然而总放一些动次打次的广场舞DJ曲目,同事听了都头大,每次让人家切歌又不方便

于是某同事吐槽:“我们点啥你放啥?”

一天之后……

“张三你刚说放啥来着?”

“卧槽,我说的是刘德华的17岁,你这放的是谁的版本?”

“17岁QQ音乐要会员,放不了。” ……

我实在看不下去了,要不写一个点歌平台?

说干就干,第一版俩小时搞定:

一个点歌端,爬虫爬各大平台,包括一些VIP歌曲也给爬下来,只能搜索,点歌。

一个导播端,可以看大伙点了什么歌,导播端可以插队播放,删除。

好,上线。

两天后……

老板:“卧槽你们当办公室KTV呢?开音响听歌???”

好吧,所有人默默带上了耳机,但点歌端不能播放音乐,只能点歌,这一版宣告凉凉。

……

那就升级吧:

这一版,不区分点歌端和导播端,所有端都一样,做一个共享队列,大伙点,大伙自己带耳机听。

image.png

一天后……

“你能不能让大家听到的歌进度保持一致?我还在听上一首,他们先进去的都已经自动播下一首了……”

OK,继续升级,加歌曲同步。

image.png

好家伙这一次,跟KTV没啥区别了。

这一版有点意思,还加上了“送啤酒”这个小互动,是不是更像KTV了?

好吧我承认,这种小互动貌似没什么用,于是后来的版本掐掉了。

然而好景不长:

“大厅这群人有毒吧?跟五条人杠上了?”

“我实在是不敢恭维在座各位的歌单”

“这都点的什么玩意歌啊……”

“Mojito我实在是听得要吐了……”

好吧,那就安排,自己开房间听歌。

于是有了多房间的版本,每个人都可以创建自己的房间,听自己的歌。

顺便加上一个二级域名和独立域名的绑定功能,于是有了下面的设计图:

image.png

这就很棒了,大伙都可以在大厅一起听,也可以去自己房间里点歌听。

好好好景不长,需求又来了~

“自己的房间,能不能不点歌,自动播放自己点过的歌?”

安安安排!

那就来一个电台模式吧,设置了就自动播放自己的歌,有人点歌的话让他排队吧。

这下可以了吧?

安安稳稳听歌一周后……

“好无聊啊,光听歌,能让我听听相声小品吗?”

安安安安安排!

爬谁呢,就蜻蜓FM吧。

上线了小说故事模式……

好好好好好景还是不长

“这个UI好丑啊,能换换吗?”

我也这么觉得,那就改吧,于是改成了这样

image.png

“白色是不是太晃了,出个暗黑模式呗?”

“我TM……”

安安安安安安安排!

image.png

感觉还挺棒,

本以为故事到这里就基本结束了,然而,嗯。

“网页好烦人啊,能出个Windows客户端吗?”

安安安安安P,等下,C#我快忘干净了。

花俩小时回忆了下C#,又花俩小时学习了下

WTF……

安安安安安安安排!

于是有了这个Windows客户端

image.png

好家伙,写完了,发布了,实际统计了下使用数据,使用人数不超过3,WTF????

“你这大部分是程序员在用,要不出个vscode的插件呗。”

我……

image.png

故事快结束了吗?

天真。

“出个APP吧!”

我……

好,安排,就拿Uniapp整一套吧。

image.png

体验还挺不错,不过因为音乐版权问题,这里就没上架AppStore。

“App下载好麻烦,整一套小程序吧?”

安安安安安安安安安安安安排!

整!

image.png

故事到这里就基本结束了,心累。

一口气把所有端的代码都开源了,欢迎有兴趣的小伙子给点点小星星呀。

Github github.com/HammCn

Gitee gitee.com/bbbug_com

顺便附上整体的架构设计图

image.png

体验一下 www.bbbug.com

WWWWWWTF?让我写项目部署手册?????????

2024-03-28 补充

因版权和监管原因,本项目,卒。