Добавил документацию Pulse Push Gateway

Этот коммит содержится в:
Виктор
2026-05-09 21:34:26 +09:00
родитель 5c6763f8a8
Коммит d2a3698d20
+112
Просмотреть файл
@@ -0,0 +1,112 @@
# Pulse Push Gateway
## Архитектура
```text
Synapse
Pulse Push Gateway
Firebase FCM
Android Pulse
```
## Серверы
- FastPanel reverse proxy: `192.168.0.221`
- Matrix/Core: `192.168.0.141`
## Gateway
Gateway запускается на Matrix/Core сервере:
```text
192.168.0.141:8509
```
## Установка
```bash
cd /opt/swchat
mkdir -p push-gateway
cd push-gateway
```
Скопировать файлы из репозитория:
```text
push-gateway/main.py
push-gateway/requirements.txt
```
Установка зависимостей:
```bash
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
```
## Firebase
В Firebase Console:
- Project settings
- Service accounts
- Generate new private key
Файл сохранить:
```text
/opt/swchat/push-gateway/firebase-service-account.json
```
## Запуск
```bash
cd /opt/swchat/push-gateway
source venv/bin/activate
uvicorn main:app --host 0.0.0.0 --port 8509
```
## Проверка
На VPS/FastPanel:
```bash
curl http://192.168.0.141:8509/health
```
Ожидаемый ответ:
```json
{
"status": "ok",
"service": "pulse-push-gateway"
}
```
## nginx reverse proxy
На FastPanel/nginx:
```nginx
location /_matrix/push/v1/notify {
proxy_pass http://192.168.0.141:8509/_matrix/push/v1/notify;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
```
## Важно
- Не открывать 8509 наружу.
- Доступ к 8509 только из локальной сети.
- SSL остаётся на FastPanel.
- Synapse использует публичный endpoint:
```text
https://matrix.stackworks.ru/_matrix/push/v1/notify
```