// SPDX-License-Identifier: GPL-2.0-or-later #pragma once #include #include #include class Utils { public: static uint32_t getChipId(); static uint64_t generateDtuSerial(); static int getTimezoneOffset(); static bool checkJsonAlloc(const JsonDocument& doc, const char* function, const uint16_t line); static void removeAllFiles(); /* OpenDTU-OnBatter-specific utils go here: */ template static std::pair getJsonValueByPath(JsonDocument const& root, String const& path); template static std::optional getNumericValueFromMqttPayload(char const* client, std::string const& src, char const* topic, char const* jsonPath); };