代码之家  ›  专栏  ›  技术社区  ›  Raja

如何在Tasmota编译时设置规则

  •  0
  • Raja  · 技术社区  · 4 年前

    我想要一条规则,当长按按钮时启动Wifi管理器。我在web控制台或串行上输入以下规则,它运行良好:

    Rule 1 on button1#state=3 do wificonfig 2 endon
    

    要启用该规则:

    Rule1 1
    

    我试图在编译时将此规则烘焙到我的构建中:

    #undef USER_RULE1
    #define USER_RULE1 "on button1#state=3 do wificonfig 2 endon"
    

    这行不通。所以我的问题是:

    1. 我应该在命令字符串中也包含单词“rule1”吗?也就是说,

      #define USER_RULE1“RULE1 on button1#state=3 do wificonfig 2 endon”

    2. 我是否也应该在此字符串中启用该规则。我不确定将“Rule1 1”部分放在哪里以启用它。它可以是这样的吗:

      #define USER_RULE1“RULE1 on button1#state=3 do wiiconfig 2 endon RULE1 1”

    在我看来,他们两个都没有说服力。 有人能给我指一下编译时规则的文档/示例吗?

    0 回复  |  直到 4 年前
        1
  •  1
  •   ouflak    4 年前

    我也有同样的问题。
    答案似乎在这里: https://tasmota.github.io/docs/Compile-your-build/#advanced-customization

    在您的情况下,应该是:

    #define USER_BACKLOG "Rule1 1"
    
        2
  •  0
  •   Fiso    4 年前

    我有点迷路了。 当我在我的规则中编译并在USER_BACKLOG中激活此规则1时,我在闪烁后的日志中看到,该规则已激活,但不会执行,因为它在再次启动期间从某个进程中被停用。如果我再次手动激活它,规则会像预期的那样工作,只是不会在闪烁后直接激活。

    推荐文章