forked from xiaozhi/xiaozhi-esp32
29 lines
695 B
C++
29 lines
695 B
C++
#ifndef PRESS_TO_TALK_MCP_TOOL_H
|
||
#define PRESS_TO_TALK_MCP_TOOL_H
|
||
|
||
#include "mcp_server.h"
|
||
#include "settings.h"
|
||
|
||
// 可复用的按键说话模式MCP工具类
|
||
class PressToTalkMcpTool {
|
||
private:
|
||
bool press_to_talk_enabled_;
|
||
|
||
public:
|
||
PressToTalkMcpTool();
|
||
|
||
// 初始化工具,注册到MCP服务器
|
||
void Initialize();
|
||
|
||
// 获取当前按键说话模式状态
|
||
bool IsPressToTalkEnabled() const;
|
||
|
||
private:
|
||
// MCP工具的回调函数
|
||
ReturnValue HandleSetPressToTalk(const PropertyList& properties);
|
||
|
||
// 内部方法:设置press to talk状态并保存到设置
|
||
void SetPressToTalkEnabled(bool enabled);
|
||
};
|
||
|
||
#endif // PRESS_TO_TALK_MCP_TOOL_H
|