jens62/FAAC-E145-Gate-Connect
GitHub: jens62/FAAC-E145-Gate-Connect
FAAC E145 大门控制器的 Python 网关,通过 Web 界面、MQTT 和 REST API 实现远程监控与家庭自动化集成。
Stars: 2 | Forks: 0
# FAAC E145 大门网关
[](LICENSE)
[](https://python.org)
用于 FAAC E145 大门控制器的开源 Python 网关,支持 MQTT、OpenHAB 和 Home Assistant 集成。

## 功能
- 通过串口连接控制 FAAC E145 大门
- 实时位置监控(两个门扇均为 0-100%)
- 带有实时更新的 Web 界面
- 用于家庭自动化的 **MQTT 集成**
- 用于基于 HTTP 的控制和监控的 **REST API**
- 命令:打开、关闭、停止、位置 (0-100%)
- 状态发布:位置、状态、可用性
- 兼容 Home Assistant 和 OpenHAB
## 快速开始
### 基本用法(仅限 Web UI)
```
pip install -r requirements.txt
python3 faac_gateway_standalone.py
```
在浏览器中打开 http://localhost:5000。
### 启用 MQTT 支持
```
pip install -r requirements.txt
cp config/config.yaml.example config/config.yaml
# 使用您的 MQTT broker 设置编辑 config.yaml
python3 faac_gateway_mqtt.py -c config/config.yaml
```
## MQTT 主题
订阅状态更新:
- `faac/gate/status` - 完整状态 (JSON)
- `faac/gate/state` - 大门状态 (OPEN/CLOSED/MOVING/STOPPED)
- `faac/gate/wing1` - 门扇 1 位置 (0-100%)
- `faac/gate/wing2` - 门扇 2 位置 (0-100%)
- `faac/gate/availability` - 连接状态 (online/offline)
发布命令:
- `faac/gate/command` - 发送命令:`open`、`close`、`stop`

有关详细的集成指南,请参阅 [MQTT 文档](docs/MQTT.md)。
## REST API
用于控制大门的简单 HTTP endpoint:
```
# 获取状态
curl http://localhost:5000/api/status
# 发送命令
curl -X POST http://localhost:5000/api/command \
-H "Content-Type: application/json" \
-d '{"command": "open"}'
# 健康检查
curl http://localhost:5000/api/health
```
有关完整的 API 参考、身份验证和示例,请参阅 [REST API 文档](docs/REST_API.md)。
## 文档
- **[REST API 指南](docs/REST_API.md)** - 用于大门控制和状态的 RESTful HTTP API
- **[FAAC 软件指南](docs/FAAC_SOFTWARE.md)** - 官方 FAAC 软件下载、VirtualHere 设置、部署选项
- **[USB 设置指南](USB_SETUP.md)** - FAAC E145 控制器的 USB 驱动配置
- **[安装指南](scripts/README.md)** - Systemd 服务设置和日志管理
- **[MQTT 设置](MQTT_SETUP.md)** - MQTT broker 配置
- **[OpenHAB 集成](openhab/README.md)** - OpenHAB 配置和使用
- **[Home Assistant 集成](homeassistant/README.md)** - Home Assistant 配置和仪表盘卡片
- [MQTT 集成指南](docs/MQTT.md) - 适用于各种平台的通用 MQTT 集成
- [完整文档](docs/)
## 示例
```
# 测试 MQTT 功能
python3 examples/mqtt_test.py
# 简单状态订阅者
python3 examples/mqtt_simple.py
# 通过 MQTT 发送命令
mosquitto_pub -t 'faac/gate/command' -m 'open'
```
## 相关项目
- [gatecontrol](https://github.com/owahlen/gatecontrol) - 用于 FAAC E124 的大门控制解决方案(与 E145 的协议兼容性未知)
标签:Home Assistant, Python, REST API, 无后门, 智能家居, 物联网, 网络调试, 自动化, 逆向工具, 门禁控制