1. Descripción general
SmartWeb es una aplicación de servidor puente local que se ejecuta en dispositivos Android.
Sus principales funciones son las siguientes:
- Verifica el estado de autenticación de SmartThings y facilita las llamadas a la API relacionadas.
- Proporciona funcionalidad general de proxy HTTP.
- Permite abrir una página en una WebView (navegador) para leer el HTML final.
- Actúa como intermediario para los controladores de SmartThings Edge, páginas web locales y scripts de automatización.
2. Información básica
- Puerto predeterminado: 8088
- Formato de dirección predeterminado: http://direcciónIPdeldispositivo:8088
Ejemplo:
- http://192.168.219.137:8088
3. Diseño de pantalla
3.1 Pestaña Servidor
En la pestaña Servidor, puede verificar el estado del servidor puente y cómo usar las API principales.
Ejemplos de contenido mostrado:
- Dirección del servidor puente
- Formato de uso de /api/forward
- Formato de uso de /api/web
- API de verificación del estado de autenticación de SmartThings
- API de ejecución de WebView en segundo plano
3.2 Pestaña Configuración
En la pestaña Configuración, puede verificar la configuración del entorno y el estado necesarios para usar la aplicación.
Ejemplos:
- Estado de excepción de optimización de batería
- Estado de permisos de notificación
- Ver/copiar registros
- Información de la versión de la aplicación
4. API clave
4.1 POST /api/ping
Descripción: Verifica brevemente el estado del servidor puente y el estado de autenticación de SmartThings.
Método:
- Solo POST
Ejemplo:
POST http://deviceIP:8088/api/ping
Ejemplo de respuesta:
{
"battery": 86,
"bridgeDevice": "phone",
"bridgeVersion": "Version: 2026.05.15",
"serverStartTime": "05/14 03:00",
"stOauthConnected": true,
"accessTokenExpiresAt": 1778773965000,
"accessTokenMinutesLeft": 1332
}
4.2 GET /api/smartthings/devices
Descripción:
Devuelve una lista de dispositivos SmartThings en un formato sencillo.
Método:
- Solo GET
Ejemplo:
GET http://deviceIP:8088/api/smartthings/devices
Ejemplo de respuesta:
{
"items": [
{
"deviceId": "...",
"label": "Minibiblioteca de Google Home",
"name": "Google Home"
}
]
}
Usos:
- Para encontrar el ID del dispositivo a partir de su nombre
- Para buscar nombres de altavoces
- Para seleccionar dispositivos según sus etiquetas
4.3 GET /api/forward?url=origin_address
Descripción:
Un proxy HTTP estándar.
Método:
- Solo GET
Ejemplo:
GET http://deviceIP:8088/api/forward?url=https://api.smartthings.com/v1/devices
Usos:
- Llamadas a la API JSON
- Lectura de páginas HTML estáticas
- Llamadas a la API REST de SmartThings
Características:
- Transmite la mayoría de los encabezados de solicitud
- Utiliza automáticamente las credenciales si falta el encabezado de autorización al llamar a las API de SmartThings
- No ejecuta JavaScript
- Puede ser vulnerable a las páginas de validación de Cloudflare/navegador
Precaución:
- No apto para sitios que requieren la ejecución de JavaScript
4.4 GET o POST /api/web?url=dirección_origen
Descripción: Abre la página en una WebView y devuelve el HTML final.
Método:
- GET o POST
Uso:
- Sitios que requieren ejecución de JavaScript
- Páginas de validación de Cloudflare
- Sitios que no se cargan a través de /api/forward
Ejemplo:
GET http://deviceIP:8088/api/web?url=https://
O:
POST http://deviceIP:8088/api/web
Content-Type: application/json
{
"url": "https://",
"timeoutMs": 20000
}
Respuesta:
- Cuerpo HTML final (text/html) si la operación es exitosa
- Mensaje de error si falla
Características:
- Abre la página como un navegador real
- Permite la ejecución de JavaScript
- Lento pero robusto
Parámetros de tiempo de espera:
- timeout: segundos
- timeoutSeconds: segundos
- timeoutMs: milisegundos
Ejemplo:
- ?timeout=20
- ?timeoutSeconds=20
- ?timeoutMs=20000
Nota:
- La respuesta es el cuerpo HTML, no JSON.
- Quien realiza la llamada debe analizar el HTML para obtener los valores necesarios.
4.5 GET o POST /api/webview/run
Descripción:
Ejecuta una página en segundo plano en una WebView durante un período de tiempo determinado.
Método:
- GET o POST
Usos:
- Mantener una página específica ejecutándose en segundo plano durante un período de tiempo determinado.
- Mantener en ejecución las operaciones de JavaScript o la página.
Ejemplo:
GET http://deviceIP:8088/api/webview/run?url=http://hubaddress:port&timeout=60
Características:
- Ejecuta hasta 5 páginas simultáneamente.
- Las solicitudes excedentes se almacenan en una cola.
4.6 GET /api/webview/stop
Descripción:
Detiene la ejecución de una WebView en segundo plano.
Método:
- Actualmente se usa como GET
5. Diferencia entre /api/forward y /api/web
/api/forward
- Proxy HTTP estándar
- Rápido
- Adecuado para llamadas JSON/API
- No ejecuta JavaScript
- Adecuado para páginas estáticas/API generales
/api/web
- Lectura del navegador basada en WebView
- Lento pero robusto
- JavaScript ejecutable
- Compatible con Cloudflare/páginas de validación del navegador
- Adecuado para páginas que requieren un navegador
Criterios recomendados:
- API generales/páginas estáticas: /api/forward
- Páginas que deben abrirse en un navegador: /api/web
6. Resumen de métodos permitidos
Solo POST
- /api/ping
- /api/smartthings/token
- /api/smartthings/access-token
Solo GET
- /api/smartthings/devices
- /api/forward
GET o POST
- /api/web
- /api/webview/run
Para detener
- /api/webview/stop
7. Explicación del valor de bridgeDevice
El valor de bridgeDevice para /api/ping es uno de los siguientes:
- TV
- Tableta
- Teléfono
Criterios de determinación:
- TV: Dispositivos Android TV / Leanback
- Tableta: smallestScreenWidthDp >= 600
- Teléfono: Otros
8. Ejemplos de uso
8.1 Comprobar el estado del servidor
POST /api/ping
8.2 Consultar la lista de dispositivos
GET /api/smartthings/devices
8.3 Proxy API general
GET /api/forward?url=https://api.smartthings.com/v1/devices
8.4 Leer sitios que requieren un navegador
GET /api/web?url=https://
9. Resumen
SmartWeb es un servidor puente local que se ejecuta en dispositivos Android.
Puntos clave:
- Verificar el estado de autenticación de SmartThings
- API sencilla para listar dispositivos
- Proxy HTTP estándar (/api/forward)
- Lectura de navegador basada en WebView (/api/web)
- Ejecutar WebView en segundo plano (/api/webview/run)
En particular, la función /api/web permite leer páginas que son difíciles de leer mediante solicitudes HTTP estándar, utilizando un método de navegador real.
Última Versión
2026.07.12Presentado por
သူရိရ
Requisitos
Android 5.0+
Categoría
Gratis Herramientas APPClasificación de contenido
Everyone
Informe de seguridad
Verificar ahora
Reportar
Marcar como inapropiadoLast updated on 13/07/2026
Minor bug fixes and improvements. Install or update to the newest version to check it out!