KevinYAN 发表于 2023-11-18 09:43:11

室内温度波动播报实现



写了好几种逻辑实现室内温度升高或降低之后进行小爱语音播报,这里分享最后用的一版,给大家提供一种实现思路。这种思路逻辑或许在其他场景下也能复用。


结束部分将处理好的播报内容作为payload传输到播报设备。
重点展示函数判断逻辑:


流程过于简单,这里就只放函数代码。
msg.current = Math.floor(msg.payload);
msg.before = global.get("shufangwendu_before") || msg.current;
msg.wencha = msg.current - msg.before;

if( msg.wencha != 0 ){
    if( msg.wencha > 0 ){
      msg.payload = "主人好:\n书房温度升高"+ msg.wencha +"度,当前为:" + msg.payload + "度";
    }else if (msg.wencha < 0 ){
      msg.payload = "主人好:\n书房温度降低"+ Math.abs(msg.wencha) +"度,当前为:" + msg.payload + "度";
    }
    global.set("shufangwendu_before", msg.current);
    return msg;
}else{
   
    global.set("shufangwendu_before", msg.current);
}
math.floor 为向下取整,比如1.6取1 -1.1      
math.abs为绝对值,负温服取正


如果大佬们有更简单的实现逻辑,欢迎交流讨论。

页: [1]
查看完整版本: 室内温度波动播报实现