177 lines
3.9 KiB
Markdown
177 lines
3.9 KiB
Markdown
# Webhook para apagar PC - Guía completa
|
|
|
|
## 🔗 URL del Webhook
|
|
|
|
```
|
|
http://185.187.169.109:8123/api/webhook/apagar-pc-juanjo
|
|
```
|
|
|
|
**NO requiere autenticación.** Cualquiera con la URL puede ejecutarlo.
|
|
|
|
---
|
|
|
|
## ✅ Qué hace el webhook
|
|
|
|
Cuando se llama, ejecuta automáticamente:
|
|
|
|
1. Apaga la luz "barras" (comando de voz a Alexa)
|
|
2. Espera 2 segundos
|
|
3. Apaga la luz "cuartillo" (comando de voz a Alexa)
|
|
|
|
**No apaga el PC** - solo las luces. Para apagar el PC completo, ejecutar el script Python local.
|
|
|
|
---
|
|
|
|
## 🎯 Formas de usarlo
|
|
|
|
### 1. Desde el PC (PowerShell/CMD)
|
|
|
|
```powershell
|
|
curl -X POST http://185.187.169.109:8123/api/webhook/apagar-pc-juanjo
|
|
```
|
|
|
|
o
|
|
|
|
```powershell
|
|
python -c "import requests; requests.post('http://185.187.169.109:8123/api/webhook/apagar-pc-juanjo')"
|
|
```
|
|
|
|
### 2. Desde el móvil (navegador)
|
|
|
|
Simplemente abre esta URL en el navegador:
|
|
```
|
|
http://185.187.169.109:8123/api/webhook/apagar-pc-juanjo
|
|
```
|
|
|
|
### 3. Desde Alexa (rutina)
|
|
|
|
**Crear rutina en la app de Alexa:**
|
|
|
|
1. Abre la app de Alexa
|
|
2. Menú → **Rutinas** → **+** (crear nueva)
|
|
3. **Cuando esto ocurra:**
|
|
- **Voz** → Escribe: "Alexa, apaga las luces del ordenador"
|
|
4. **Añadir acción:**
|
|
- **Personalizado** → "apaga barras"
|
|
5. **Añadir acción:**
|
|
- **Personalizado** → "apaga cuartillo"
|
|
6. Guarda la rutina
|
|
|
|
**Uso:**
|
|
```
|
|
"Alexa, apaga las luces del ordenador"
|
|
```
|
|
|
|
### 4. Desde Telegram (opcional)
|
|
|
|
Si quisieras ejecutarlo desde Telegram, crear un bot que haga:
|
|
```python
|
|
import requests
|
|
requests.post('http://185.187.169.109:8123/api/webhook/apagar-pc-juanjo')
|
|
```
|
|
|
|
### 5. Desde iOS/Android (Shortcuts/Tasker)
|
|
|
|
**iOS Shortcuts:**
|
|
1. Crear nuevo Shortcut
|
|
2. Añadir acción "Obtener contenido de URL"
|
|
3. URL: `http://185.187.169.109:8123/api/webhook/apagar-pc-juanjo`
|
|
4. Método: POST
|
|
5. Añadir al Home Screen o decir "Siri, apaga las luces del PC"
|
|
|
|
**Android Tasker:**
|
|
1. Nueva tarea
|
|
2. Net → HTTP POST
|
|
3. Server:Port: `185.187.169.109:8123`
|
|
4. Path: `/api/webhook/apagar-pc-juanjo`
|
|
|
|
---
|
|
|
|
## 🔐 Seguridad
|
|
|
|
**IMPORTANTE:**
|
|
- El webhook NO requiere autenticación
|
|
- Cualquiera con la URL puede apagar las luces
|
|
- La URL contiene un ID único (`apagar-pc-juanjo`) que actúa como "contraseña"
|
|
- **NO compartir la URL públicamente**
|
|
|
|
Si necesitas más seguridad, se puede:
|
|
1. Añadir autenticación al webhook
|
|
2. Usar VPN para acceder al VPS
|
|
3. Cambiar el webhook_id a uno más largo/aleatorio
|
|
|
|
---
|
|
|
|
## 🛠️ Mantenimiento
|
|
|
|
### Ver logs del webhook en Home Assistant
|
|
|
|
1. Settings → System → Logs
|
|
2. Buscar: `webhook`
|
|
|
|
### Editar el script
|
|
|
|
SSH al VPS:
|
|
```bash
|
|
ssh -i C:\Users\juanm\Documents\GitHub\contabo root@185.187.169.109
|
|
nano /opt/homeassistant/config/scripts.yaml
|
|
```
|
|
|
|
Después de editar:
|
|
```bash
|
|
docker restart homeassistant
|
|
```
|
|
|
|
### Cambiar el webhook_id
|
|
|
|
Editar `/opt/homeassistant/config/automations.yaml` y cambiar:
|
|
```yaml
|
|
webhook_id: apagar-pc-juanjo
|
|
```
|
|
|
|
Por:
|
|
```yaml
|
|
webhook_id: mi-nuevo-webhook-secreto-12345
|
|
```
|
|
|
|
La nueva URL será:
|
|
```
|
|
http://185.187.169.109:8123/api/webhook/mi-nuevo-webhook-secreto-12345
|
|
```
|
|
|
|
---
|
|
|
|
## 📋 Troubleshooting
|
|
|
|
### El webhook no responde (timeout)
|
|
|
|
Verificar que Home Assistant esté corriendo:
|
|
```bash
|
|
ssh -i C:\Users\juanm\Documents\GitHub\contabo root@185.187.169.109 "docker ps | grep homeassistant"
|
|
```
|
|
|
|
### Las luces no se apagan
|
|
|
|
1. Verificar que el Echo Dot esté online
|
|
2. Probar manualmente: "Alexa, apaga barras"
|
|
3. Revisar logs en Home Assistant
|
|
|
|
### Error 404
|
|
|
|
El webhook_id es incorrecto o la automation no está cargada. Reiniciar Home Assistant.
|
|
|
|
---
|
|
|
|
## 🚀 Próximos pasos (opcional)
|
|
|
|
Si quieres que el webhook **también apague el PC** (no solo las luces):
|
|
|
|
1. Instalar Home Assistant en el PC local
|
|
2. O montar un servicio HTTP en el PC que escuche comandos
|
|
3. O usar Wake-on-LAN inverso (shutdown remoto)
|
|
|
|
Por ahora, para apagar TODO (luces + PC):
|
|
```powershell
|
|
python C:\Users\juanm\Documents\Github\INFRAESTRUCTURA\scripts\protocolo_apagado_final.py
|
|
```
|