项目简介
本项目是为模拟飞利浦Hue智能照明系统而开发的,采用C++语言编写。项目借助HTTP请求与服务器进行交互,以此获取并更新灯光状态信息。在实现过程中,使用了libcurl库处理HTTP请求,nlohmann json库处理JSON对象,cmdparser库解析命令行参数。
项目的主要特性和功能
- 参数灵活配置:能够通过命令行参数对服务器地址、端口、超时时间、采样频率、重试次数等信息进行设置。
- 灯光状态模拟:定期向服务器发送请求,获取在线灯光信息,并更新本地灯光状态。
- JSON响应处理:对服务器返回的JSON响应进行解析,提取灯光详细信息,然后与本地状态对比更新。
- 状态清晰展示:程序启动时会打印所有灯光的初始状态,后续仅输出灯光状态的变化。
安装使用步骤
假设已下载项目源码文件
- 编译项目:在项目根目录下,运行
make
命令编译项目。 - 启动模拟服务器:根据需求启动模拟服务器,示例如下:
- 启动模拟器在
localhost:80
:sudo hue - simulator
- 启动模拟器在
localhost:8080
:hue - simulator --port = 8080
- 启动模拟器在
127.0.3.1:80
:sudo ifconfig lo0 alias 127.0.3.1 sudo hue - simulator --hostname = 127.0.3.1
- 启动模拟器在
- 运行程序:运行编译生成的可执行文件,可按需添加命令行参数,示例如下:
- 直接运行:
./HUELightSimulation
- 指定参数运行:
./HUELightSimulation --hostname localhost -s 700 -p 8080
或./HUELightSimulation --samplesPerMinute 30 -r 5
- 直接运行:
运行程序时,请确保控制台应用程序和服务器的端口与主机名匹配。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】