Tange Cloud for Device
Rev.333 |
make [ARCH=xxxx] [p2p=webrtc]
不指定ARCH参数,将编译为PC上运行。PC端的库在是Ubuntu20上编译,可能与 Ubuntu16和以前系统的工具链不兼容.
交叉编译时,ARCH 参数取值和所用的工具链请查看 ToolChains.mak. 必要时修改此文件中的 CROSS 变量以匹配本地的工具链安装目录.
非linux的设备,通常还要修改 make.priv 文件里的环境变量,指向板级sdk的目录。
如果拿到的是支持webrtc的版本,要加上 p2p=webrtc
参数。
生成的可执行文件为 tg_demo
, 或 webrtc_demo
Usage: tg_demo -u UUID [-t] [-g] [-v N] ] [-d data_directory] [-s]
不带参数运行会打印完整的当前支持参数的信息
初次运行会进入有线添加状态,在app端扫描设备的uuid即完成添加(绑定到用户)。
添加后在工作目录会生成一个 registered.ini 标志文件,删除此文件相当于给设备复位,
重启demo后会解绑。
demo接收命令来模拟事件触发或动态修改参数.
linux系统从console输入, liteos可以在 testcase.ini 的 [setting]里加 input_from_net = 1 来配置成从网络输入.
没有控制台的小系统则是从网络输入。
网络输入使用 jlcmd.c 这个工具。可以自己编译一下。
部分demo支持的命令如下。最新命令在demo下输入 '?' 后命令查看。
命令 | 说明 | 参数 |
---|---|---|
md[1] | 行车记录仪:触发gsensor事件. md1将标志事件为紧急,从而使平台给紧急联系人发消息. 电池摄像机: 触发pir事件 普通摄像机:触发移动侦测事件 | |
md0 | 停止上述事件 | |
snd | 声音事件 | |
snd0 | 声音事件停止 | |
bd | 人形事件 | |
gps | 开始上报gps信息 | |
gps0 | 停止上报gps信息 | |
spdup|spdwn | 加速|减速事件 | |
slp | 进入休眠(wifi, like hi1131) | |
slpa | 进入休眠(4g) | |
bat | 电池电量上报 | 电量,是否电量低,是否正在充电 例: bat 30,0,0 |
qoe | 修改当前电池状态 | 电量,是否正在充电 例: qoe 20,1 |
ring | 门铃事件 | |
setoff|park | 行程开始/停车 事件补录 | |
sdc ok|err | 设置sd卡状态 | |
q | 退出程序 |
demo目录下有一个 testcase.ini 文件。 [features]小节为设备能力集,取值与 设备能力描述 一致。 [setting]小节可以保存其它参数,可以打开文件自行修改
demo程序尽量模拟了一个IPC设备的完整功能,包括实时音视频分发、回放、事件上报和云录像,以及对各种命令的处理和响应。
所有.c文件中,demo.c才是重点,演示示了实现IPC功能需要实现的接口和流程。其它文件都是为了让demo跑起来的辅助性代码。