ctucx.git: nixfiles

ctucx' nixfiles

1 
2 
3 
4 
5 
6 
7 
8 
9 
10 
11 
12 
13 
14 
15 
16 
17 
18 
19 
20 
21 
22 
23 
24 
25 
26 
27 
28 
29 
30 
31 
32 
33 
34 
35 
36 
37 
38 
39 
40 { inputs, config, ... }:

{

  age.secrets.telegraf-env = {
    file  = ./. + "/../../../secrets/${config.networking.hostName}/telegraf/secrets.env.age";
    owner = "telegraf";
  };

  services.telegraf = {
    enable = true;
    environmentFiles = [ config.age.secrets.telegraf-env.path ];
    extraConfig = {
      inputs = {
        mqtt_consumer = {
          servers     = [ "tcp://[::1]:1883" ];
          topics      = [
            "zigbee2mqtt/tuya_sensor_fridge"
            "zigbee2mqtt/tuya_sensor_bathroom"
            "zigbee2mqtt/tuya_sensor_sleepingroom"
            "zigbee2mqtt/tuya_sensor_l2"
          ];
          data_format = "json";
          fielddrop   = [ "newBatt" "weakBatt" ];
        };
      };
      outputs = {
        influxdb_v2 = [
          {
            urls         = [ "http://${toString config.services.influxdb2.settings.http-bind-address}/" ];
            organization = "smarthome";
            bucket       = "mqttData";
            token        = "\${INFLUX_TOKEN_MQTTDATA}";
          }
        ];
      };
    };
  };

}