我的物联网项目(四)订单系统

本文介绍了物联网项目中的订单系统设计与优化过程。从最初用户扫码启动摇摇车的简单需求,到面临设备在线判断错误、启动指令不可靠等问题,通过三次迭代解决了用户体验和数据追踪问题。在优化中,利用阿里云物联网套件和MQTT协议,逐步完善了订单流程,确保了预扣费、设备交互和订单确认的准确性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

订单系统是整个平台的独立的核心业务流程,它本身并不复杂,最初的原始需求如下:

1.用户打开app,登录进入主界面。
2.点击扫码,扫码摇摇车身上的二维码。
3.app显示扣费,摇摇启动。
4.用户订单中心显示消费明细,商家订单中心显示收入明细。

长期写代码形成的思维习惯,脑袋里面立马意淫起来,浮现出一幅画面:
路边有辆摇摇车,用户张三打开app,迫不及待的扫码摇摇车,系统提示,未登录,张三输入手机号码和密码,登录成功,可以扫码了,这个时候系统又提示钱不够,张三只能通过app充值,充值成功后,继续扫码摇摇车,终于app提示扫码成功,消费1元,1秒钟后,摇摇启动了,用户可以在用户中心看到每次都消费明细,商家可以通过微信登录商家中心,查看每天都收入,到达一定的资金量后,可以申请提现。

从这个需求里面,大概知道一个整体流程应该怎么走,下面要做到就是根据具体的业务场景做功能设计,依然是程序员的惯性思维首先想到的是: 用户点击扫码摇摇车,然后摇摇车启动这个过程怎么交互?
其实我前面有说到过,摇摇车信号启动这个过程,已经有人在研究并打通,软件这边只需要发送相关协议即可。由于硬件这边是C语言,两边的通信采用什么方式需要考虑。当然,物联网项目现在也比较成熟,相关的解决方案也大把,我们用的是阿里云的平台,阿里云这边已经提供物联网套件的整个解决方案。我们采用的MQTT协议作为软件和硬件的一个交互中心,光听MQTT名字就大概知道MQTT属于消息中间件了,它和传统的MQ系列产品(如RabbitMQ,ActiveMQ等)稍微不一样,MQTT协议是为大量计算能力有限,且工作在低带宽、不可靠的网络的远程传感器和控制设备通讯而设计的协议,主要用于小型传输,开销很小(固定长度的头部是 2 字节),协议交换最小化,以降低网络流量,像摇摇车(摇摇车身上装了个智能盒子,盒子里面有个2G流量卡,盒子发信号给摇摇车)这里面用的就是2G的流量卡这种业务就非常适合这种。

大概的通信过程就是如此简单:  软件应用层发送协议

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值