基于 GoLang 编写的 IOT 物联网在线直播抓娃娃企业级项目

2024-06-23 15:20

本文主要是介绍基于 GoLang 编写的 IOT 物联网在线直播抓娃娃企业级项目,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

大家好,我是码农先森。

引言

前几年,娱乐物联网的热度很高。我当时所在的公司启动了一个将线下娃娃机的玩法,迁移到线上的项目,因此公司决定开发一个在线直播抓娃娃的项目。近来,娱乐物联网的领域已经进入资本的寒冬,很多相关的行业都已经濒临倒闭,我们之前的公司也不例外。目前公司大势已去,所以我将相关非关键的项目代码开源,仅供大家参考学习。

项目介绍

这是一个基于 GoLang 编写的 IOT 物联网企业级项目,主要提供的功能是:在线直播抓娃娃的一个娱乐型项目。

  • 用户端

用户基于微信公众号的 H5 页面进行游戏,功能包括:画面直播、弹幕评论、基于富友支付的微信充值功能。

  • 商家端

商家进行设备的管理、用户的管理、充值流水的查看、数据统计、游戏房间管理。

  • 平台端

平台主要是对商家的管理,例如:创建商家、编辑商家信息。

  • 设备端

一个基于安卓主板的娃娃机硬件设备,服务端通过 Mqtt 协议与安卓主板进行通信,进而控制娃娃机爪子的行为动作。

架构图

image

服务介绍

  • DollBarrage

通过 WebSocket 协议实现娃娃机弹幕服务,主要提供:游戏房间内评论弹幕的即时交互的功能。

  • DollMerchant

基于 Gin 框架提供娃娃机商户平台 Restful Api 服务,可支持自动生成 Swagger Api 文档。

  • DollMqtt

服务端通过 Mqtt 协议与娃娃机设备进行通信,从而控制娃娃机设备爪子的行为动作。

  • DollPlatform

基于 Gin 框架提供娃娃机运营平台 Restful Api 服务,可支持自动生成 Swagger Api 文档。

  • DollRpc

Rpc 服务,主要提供了富友支付(微信支付)的功能。

  • DollUnique

主要提供了生成唯一 ID 的功能。

  • DollUser

基于 Gin 框架提供微信用户端的 Restful Api 服务,可支持自动生成 Swagger Api 文档。

  • DollWechat

主要提供微信菜单配置、微信授权登录、微信扫码登录并关注公众的功能。

  • LiveServer

主要为娃娃机直播设备与微信用户端 H5 页面进行直播推流的一个中间服务。

结尾

本项目为企业级项目,仅供参考学习,目前数据库文件已经遗失。
Github 地址:https://github.com/yxhsea/dollmachine 欢迎 Star。


欢迎关注、分享、点赞、收藏、在看,我是微信公众号「码农先森」作者。

这篇关于基于 GoLang 编写的 IOT 物联网在线直播抓娃娃企业级项目的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1087536

相关文章

解决Maven项目idea找不到本地仓库jar包问题以及使用mvn install:install-file

《解决Maven项目idea找不到本地仓库jar包问题以及使用mvninstall:install-file》:本文主要介绍解决Maven项目idea找不到本地仓库jar包问题以及使用mvnin... 目录Maven项目idea找不到本地仓库jar包以及使用mvn install:install-file基

Android实现在线预览office文档的示例详解

《Android实现在线预览office文档的示例详解》在移动端展示在线Office文档(如Word、Excel、PPT)是一项常见需求,这篇文章为大家重点介绍了两种方案的实现方法,希望对大家有一定的... 目录一、项目概述二、相关技术知识三、实现思路3.1 方案一:WebView + Office Onl

springboot项目如何开启https服务

《springboot项目如何开启https服务》:本文主要介绍springboot项目如何开启https服务方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录springboot项目开启https服务1. 生成SSL证书密钥库使用keytool生成自签名证书将

将Java项目提交到云服务器的流程步骤

《将Java项目提交到云服务器的流程步骤》所谓将项目提交到云服务器即将你的项目打成一个jar包然后提交到云服务器即可,因此我们需要准备服务器环境为:Linux+JDK+MariDB(MySQL)+Gi... 目录1. 安装 jdk1.1 查看 jdk 版本1.2 下载 jdk2. 安装 mariadb(my

JS+HTML实现在线图片水印添加工具

《JS+HTML实现在线图片水印添加工具》在社交媒体和内容创作日益频繁的今天,如何保护原创内容、展示品牌身份成了一个不得不面对的问题,本文将实现一个完全基于HTML+CSS构建的现代化图片水印在线工具... 目录概述功能亮点使用方法技术解析延伸思考运行效果项目源码下载总结概述在社交媒体和内容创作日益频繁的

Node.js 数据库 CRUD 项目示例详解(完美解决方案)

《Node.js数据库CRUD项目示例详解(完美解决方案)》:本文主要介绍Node.js数据库CRUD项目示例详解(完美解决方案),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考... 目录项目结构1. 初始化项目2. 配置数据库连接 (config/db.js)3. 创建模型 (models/

springboot项目中常用的工具类和api详解

《springboot项目中常用的工具类和api详解》在SpringBoot项目中,开发者通常会依赖一些工具类和API来简化开发、提高效率,以下是一些常用的工具类及其典型应用场景,涵盖Spring原生... 目录1. Spring Framework 自带工具类(1) StringUtils(2) Coll

Spring Boot项目部署命令java -jar的各种参数及作用详解

《SpringBoot项目部署命令java-jar的各种参数及作用详解》:本文主要介绍SpringBoot项目部署命令java-jar的各种参数及作用的相关资料,包括设置内存大小、垃圾回收... 目录前言一、基础命令结构二、常见的 Java 命令参数1. 设置内存大小2. 配置垃圾回收器3. 配置线程栈大小

Spring Boot项目中结合MyBatis实现MySQL的自动主从切换功能

《SpringBoot项目中结合MyBatis实现MySQL的自动主从切换功能》:本文主要介绍SpringBoot项目中结合MyBatis实现MySQL的自动主从切换功能,本文分步骤给大家介绍的... 目录原理解析1. mysql主从复制(Master-Slave Replication)2. 读写分离3.

golang获取当前时间、时间戳和时间字符串及它们之间的相互转换方法

《golang获取当前时间、时间戳和时间字符串及它们之间的相互转换方法》:本文主要介绍golang获取当前时间、时间戳和时间字符串及它们之间的相互转换,本文通过实例代码给大家介绍的非常详细,感兴趣... 目录1、获取当前时间2、获取当前时间戳3、获取当前时间的字符串格式4、它们之间的相互转化上篇文章给大家介