100 lines
2.7 KiB
Markdown
100 lines
2.7 KiB
Markdown
# PC MQTT
|
||
|
||
## 介绍
|
||
|
||
PC MQTT 是一个用于远程监控设备状态的工具。它通过 MQTT 协议将设备状态信息发送到 Home Assistant 服务器,方便进行远程管理和监控。
|
||
|
||
## 多平台编译
|
||
|
||
### amd64 架构
|
||
|
||
#### Windows
|
||
|
||
在 Windows 平台上,使用以下命令编译:
|
||
|
||
```cmd
|
||
go build -o mqtt-client.exe client.go
|
||
```
|
||
|
||
#### Linux
|
||
|
||
在 Linux 平台上,使用以下命令编译:
|
||
|
||
```shell
|
||
GOOS=linux GOARCH=amd64 go build -o mqtt-client client.go
|
||
```
|
||
|
||
### armv7 架构
|
||
|
||
#### Linux
|
||
|
||
在 ARMv7 架构的 Linux 平台上,使用以下命令编译:
|
||
|
||
```shell
|
||
GOARM=7 GOOS=linux GOARCH=arm CC=/path/to/your/arm-none-linux-gnueabihf-gcc go build -o mqtt-client client.go
|
||
```
|
||
|
||
请将 `/path/to/your/arm-none-linux-gnueabihf-gcc` 替换为你实际的交叉编译器路径。
|
||
|
||
## 运行
|
||
|
||
在编译完成后,可以使用生成的可执行文件来运行 PC MQTT 客户端。确保 `.env` 文件配置正确,然后根据你的操作系统和架构运行相应的可执行文件。
|
||
|
||
## 配置
|
||
|
||
确保 `.env` 文件包含正确的配置,如下所示:
|
||
|
||
```env
|
||
MQTT_BROKER=tcp://broker.example.com:1883
|
||
MQTT_CLIENT_ID=your-client-id
|
||
MQTT_TOPIC=your/topic
|
||
```
|
||
|
||
## Home Assistant 自定义配置
|
||
|
||
要将 PC MQTT 数据集成到 Home Assistant,你需要在 Home Assistant 的配置文件中添加 MQTT 传感器。以下是一个自定义配置案例:
|
||
|
||
### 示例配置
|
||
|
||
```yaml
|
||
mqtt:
|
||
broker: broker.example.com
|
||
port: 1883
|
||
client_id: home_assistant
|
||
username: your-username
|
||
password: your-password
|
||
|
||
sensor:
|
||
- platform: mqtt
|
||
name: "CPU Usage"
|
||
state_topic: "your/topic"
|
||
value_template: "{{ value_json.cpu_usage }}"
|
||
unit_of_measurement: "%"
|
||
|
||
- platform: mqtt
|
||
name: "Memory Usage"
|
||
state_topic: "your/topic"
|
||
value_template: "{{ value_json.mem_usage }}"
|
||
unit_of_measurement: "%"
|
||
```
|
||
|
||
### 说明
|
||
|
||
- `mqtt.broker`:设置为你的 MQTT 代理服务器地址。
|
||
- `sensor`:配置 MQTT 传感器,`state_topic` 应与 PC MQTT 工具发布的主题一致。
|
||
- `value_template`:解析 JSON 数据并提取 CPU 和内存占用信息。
|
||
|
||
将上述配置添加到你的 Home Assistant `configuration.yaml` 文件中,并重启 Home Assistant 以应用更改。
|
||
|
||
## 常见问题
|
||
|
||
### 如何调试 MQTT 连接问题?
|
||
|
||
检查 MQTT 代理服务器的日志,确保连接信息和主题配置正确。如果使用的是本地 MQTT 代理,可以尝试使用 MQTT
|
||
客户端工具(如 `mqtt-explorer`)测试连接。
|
||
|
||
### 如何处理权限问题?
|
||
|
||
确保运行 PC MQTT 工具的用户具有读取 `.env` 文件的权限,并且网络权限允许访问 MQTT 代理服务器。
|
||
|
||
如果有其他问题或需要帮助,请随时联系支持团队。 |