Iot: Use English description

This commit is contained in:
Terrence
2025-05-19 10:06:05 +08:00
parent 425f46df4b
commit c3e488e744
4 changed files with 18 additions and 18 deletions

View File

@@ -15,16 +15,16 @@ private:
bool discharging_ = false; bool discharging_ = false;
public: public:
Battery() : Thing("Battery", "电池管理") { Battery() : Thing("Battery", "The battery of the device") {
// 定义设备的属性 // 定义设备的属性
properties_.AddNumberProperty("level", "当前电量百分比", [this]() -> int { properties_.AddNumberProperty("level", "Current battery level", [this]() -> int {
auto& board = Board::GetInstance(); auto& board = Board::GetInstance();
if (board.GetBatteryLevel(level_, charging_, discharging_)) { if (board.GetBatteryLevel(level_, charging_, discharging_)) {
return level_; return level_;
} }
return 0; return 0;
}); });
properties_.AddBooleanProperty("charging", "是否充电中", [this]() -> int { properties_.AddBooleanProperty("charging", "Whether the battery is charging", [this]() -> int {
return charging_; return charging_;
}); });
} }

View File

@@ -32,21 +32,21 @@ private:
} }
public: public:
Lamp() : Thing("Lamp", "一个测试用的灯"), power_(false) { Lamp() : Thing("Lamp", "A test lamp"), power_(false) {
InitializeGpio(); InitializeGpio();
// 定义设备的属性 // 定义设备的属性
properties_.AddBooleanProperty("power", "灯是否打开", [this]() -> bool { properties_.AddBooleanProperty("power", "Whether the lamp is on", [this]() -> bool {
return power_; return power_;
}); });
// 定义设备可以被远程执行的指令 // 定义设备可以被远程执行的指令
methods_.AddMethod("TurnOn", "打开灯", ParameterList(), [this](const ParameterList& parameters) { methods_.AddMethod("turn_on", "Turn on the lamp", ParameterList(), [this](const ParameterList& parameters) {
power_ = true; power_ = true;
gpio_set_level(gpio_num_, 1); gpio_set_level(gpio_num_, 1);
}); });
methods_.AddMethod("TurnOff", "关闭灯", ParameterList(), [this](const ParameterList& parameters) { methods_.AddMethod("turn_off", "Turn off the lamp", ParameterList(), [this](const ParameterList& parameters) {
power_ = false; power_ = false;
gpio_set_level(gpio_num_, 0); gpio_set_level(gpio_num_, 0);
}); });

View File

@@ -13,22 +13,22 @@ namespace iot {
// 这里仅定义 Screen 的属性和方法,不包含具体的实现 // 这里仅定义 Screen 的属性和方法,不包含具体的实现
class Screen : public Thing { class Screen : public Thing {
public: public:
Screen() : Thing("Screen", "这是一个屏幕,可设置主题和亮度") { Screen() : Thing("Screen", "A screen that can set theme and brightness") {
// 定义设备的属性 // 定义设备的属性
properties_.AddStringProperty("theme", "主题", [this]() -> std::string { properties_.AddStringProperty("theme", "Current theme", [this]() -> std::string {
auto theme = Board::GetInstance().GetDisplay()->GetTheme(); auto theme = Board::GetInstance().GetDisplay()->GetTheme();
return theme; return theme;
}); });
properties_.AddNumberProperty("brightness", "当前亮度百分比", [this]() -> int { properties_.AddNumberProperty("brightness", "Current brightness percentage", [this]() -> int {
// 这里可以添加获取当前亮度的逻辑 // 这里可以添加获取当前亮度的逻辑
auto backlight = Board::GetInstance().GetBacklight(); auto backlight = Board::GetInstance().GetBacklight();
return backlight ? backlight->brightness() : 100; return backlight ? backlight->brightness() : 100;
}); });
// 定义设备可以被远程执行的指令 // 定义设备可以被远程执行的指令
methods_.AddMethod("SetTheme", "设置屏幕主题", ParameterList({ methods_.AddMethod("set_theme", "Set the screen theme", ParameterList({
Parameter("theme_name", "主题模式, light 或 dark", kValueTypeString, true) Parameter("theme_name", "Valid string values are \"light\" and \"dark\"", kValueTypeString, true)
}), [this](const ParameterList& parameters) { }), [this](const ParameterList& parameters) {
std::string theme_name = static_cast<std::string>(parameters["theme_name"].string()); std::string theme_name = static_cast<std::string>(parameters["theme_name"].string());
auto display = Board::GetInstance().GetDisplay(); auto display = Board::GetInstance().GetDisplay();
@@ -37,8 +37,8 @@ public:
} }
}); });
methods_.AddMethod("SetBrightness", "设置亮度", ParameterList({ methods_.AddMethod("set_brightness", "Set the brightness", ParameterList({
Parameter("brightness", "0到100之间的整数", kValueTypeNumber, true) Parameter("brightness", "An integer between 0 and 100", kValueTypeNumber, true)
}), [this](const ParameterList& parameters) { }), [this](const ParameterList& parameters) {
uint8_t brightness = static_cast<uint8_t>(parameters["brightness"].number()); uint8_t brightness = static_cast<uint8_t>(parameters["brightness"].number());
auto backlight = Board::GetInstance().GetBacklight(); auto backlight = Board::GetInstance().GetBacklight();

View File

@@ -11,16 +11,16 @@ namespace iot {
// 这里仅定义 Speaker 的属性和方法,不包含具体的实现 // 这里仅定义 Speaker 的属性和方法,不包含具体的实现
class Speaker : public Thing { class Speaker : public Thing {
public: public:
Speaker() : Thing("Speaker", "扬声器") { Speaker() : Thing("AudioSpeaker", "The audio speaker of the device") {
// 定义设备的属性 // 定义设备的属性
properties_.AddNumberProperty("volume", "当前音量值", [this]() -> int { properties_.AddNumberProperty("volume", "Current audio volume value", [this]() -> int {
auto codec = Board::GetInstance().GetAudioCodec(); auto codec = Board::GetInstance().GetAudioCodec();
return codec->output_volume(); return codec->output_volume();
}); });
// 定义设备可以被远程执行的指令 // 定义设备可以被远程执行的指令
methods_.AddMethod("SetVolume", "设置音量", ParameterList({ methods_.AddMethod("set_volume", "Set the audio volume", ParameterList({
Parameter("volume", "0到100之间的整数", kValueTypeNumber, true) Parameter("volume", "An integer between 0 and 100", kValueTypeNumber, true)
}), [this](const ParameterList& parameters) { }), [this](const ParameterList& parameters) {
auto codec = Board::GetInstance().GetAudioCodec(); auto codec = Board::GetInstance().GetAudioCodec();
codec->SetOutputVolume(static_cast<uint8_t>(parameters["volume"].number())); codec->SetOutputVolume(static_cast<uint8_t>(parameters["volume"].number()));