Shelly ofrece una amplia variedad de API para sus devices, lo que permite una integración flexible. Cada device puede programarse individualmente y funcionar como una unidad independiente sin Shelly Cloud o mediante una API segura en la nube para el control remoto.
Con estas API puedes gestionar devices Shelly: ejecutar comandos (pero no cambiar la configuración de los devices), recibir eventos en tiempo real sobre cambios en el estado de los devices y habilitar funciones de monitorización y automatización.
El objetivo de este artículo es describir, a muy alto nivel, la diferencia entre Shelly Cloud API, Integrator API y Shelly Fleet Manager - SFM (SaaS). Aunque los 3 son servicios en la nube, existen diferencias entre ellos y sirven para distintos propósitos.
Glosario rápido:
-
WebSocket : WebSocket es un protocolo de comunicación que proporciona una conexión (canal) permanentemente abierta y comunicación bidireccional mediante una única conexión del Protocolo de control de transmisión. En lo que respecta a la gestión de devices Shelly, Shelly Cloud puede enviar datos mediante WebSocket, mientras que la API basada en HTTP sigue el principio de solicitud y respuesta (sondeo); después, la conexión se cierra.
-
Cloud Control API: API segura para controlar devices Shelly a través de Shelly Cloud, a nivel de cada account de usuario. Permite controlar mediante programación los devices de un solo account. Es necesario gestionar las credenciales de cada account. Se proporciona acceso a todos los devices del account.
Cloud Control API tiene 2 métodos de comunicación:-
Control y estado mediante API HTTP - API destinada a proveedores de servicios que ofrecen servicios de valor añadido para la integración a nivel de un solo account de usuario desde Shelly Cloud Control mediante una comunicación HTTP sin estado.
-
Control y eventos en tiempo real mediante WebSocket: API destinada a proveedores de servicios que ofrecen servicios de valor añadido para la integración a nivel de un solo account de usuario desde Shelly Cloud Control, pero la autenticación se realiza mediante OAuth. El token de acceso tiene una duración prolongada y se invalida al cambiar la contraseña.
Esta es una comunicación en tiempo real mediante WebSocket.
-
-
API de integrador - API de Cloud a Cloud para la integración, el control y la recopilación de actualizaciones del estado de los devices Shelly de los accounts de varios usuarios de Shelly. Diseñada para casos de uso B2B y grandes entornos industriales.
-
Shelly Fleet Manager: solución SAAS ofrecida por Shelly o solución de código abierto autogestionada, que no depende de Shelly Cloud, para gestionar flotas de devices Shelly.
El sencillo diagrama lógico que aparece a continuación ofrece una visualización rápida de los conceptos explicados en detalle más adelante en este artículo.
Control de devices desde un único account de Shelly: Cloud Control API
Control y estado mediante la API HTTP
| Destinada a la gestión de | Devices de un único account de usuario de Shelly |
| Tipo de API | a través de HTTP |
| Destinada a | Un número reducido de devices o uso DIY o POC |
Esta es una API segura para controlar devices Shelly a través de Shelly cloud. Con ella puedes ejecutar comandos (pero no cambiar los ajustes de los devices) y recuperar el estado de los devices para un único Shelly Cloud Account.
Se puede utilizar para casos de uso básicos y avanzados, y permite controlar mediante programación los devices dentro de un único account. La comunicación se realiza mediante HTTPS y el intercambio de datos utiliza estructuras JSON.
Puedes utilizar el control directo mediante la API sin la Shelly Control App.
Puedes generar una clave de autorización en la aplicación, en Ajustes de usuario->Clave de autorización de cloud
Esta clave permite controlar los devices de un único account de Shelly.
Nota: la clave cambiará si cambias la contraseña.
Un account de usuario está asociado a un servidor de nuestra infraestructura de Shelly cloud que procesa las solicitudes. Para utilizar esta API es necesario conocer el host en el que el usuario es inquilino. El host puede cambiar y no está garantizado, ya que las consideraciones de capacidad podrían llevar a trasladar a los inquilinos entre hosts de la nube.
Aquí encontrarás información detallada sobre el control a nivel de un único account: https://shelly-api-docs.shelly.cloud/cloud-control-api/
Control y eventos en tiempo real mediante WebSocket
| Destinado a la gestión de: | Devices de un único account de usuario de Shelly |
| Tipo de API: | A través de WebSocket |
| Destinado a: | Un número reducido de devices o uso DIY o POC |
Caso de uso: gestionar las API de los devices Shelly por account de usuario en Shelly cloud. La autenticación se realiza mediante OAuth.
Esta API está destinada a soluciones para pequeñas empresas con un volumen reducido de devices.
API destinada a proveedores de servicios que ofrecen servicios de valor añadido para la integración a nivel de un único account de usuario desde Shelly Cloud Control. El token de acceso tiene una duración prolongada y se invalida al cambiar la contraseña.
Conexión: se establece una conexión WebSocket mediante las credenciales de OAuth de account. Shelly cloud envía notificaciones de estado de devices en tiempo real y también se pueden emitir comandos de control de devices. La API ofrece una forma sencilla para que un integrador supervise los estados de los devices asociados con un único account de Shelly cloud.
Nota: cada conexión de account administrada requiere credenciales de OAuth.
Para uso no profesional, utiliza shelly-diy como ID de cliente. Los tokens obtenidos con el ID de cliente shelly-diy PUEDEN estar sujetos a restricciones de frecuencia.
Puede encontrar información detallada aquí: https://shelly-api-docs.shelly.cloud/cloud-control-api/real-time-events
Control de devices desde múltiples cuentas de usuario de Shelly. (Casos de uso empresariales)
API del integrador
| Destinado a la gestión de: | devices Shelly de múltiples cuentas de usuario |
| Tipo de API: | A través de WebSocket |
| Destinado a: | Un gran número de devices de múltiples cuentas y grandes casos de uso industriales |
Caso de uso: gestionar las API de los devices Shelly pertenecientes a múltiples cuentas de usuario en Shelly Cloud. Esta API está destinada a soluciones B2B para grandes volúmenes de devices y grandes casos de uso industriales.
Admite múltiples WebSockets de eventos en tiempo real, abiertos desde un único punto de servicio, y está centrada en la nube.
Esta es una API de Cloud a Cloud para la integración, el control y la recopilación de datos de nuestros devices. Está destinada a integradores externos que deseen supervisar y controlar devices Shelly conectados a nuestros sistemas en la nube. Permite transmitir de forma centralizada los datos de estado de muchas cuentas de Shelly a un único punto de ingesta de datos. También es posible realizar un control básico de los devices.
Debe crearse una cuenta de integrador que contenga los endpoints de comunicación del integrador. Para crear la cuenta del integrador y obtener una licencia, contáctenos en support@shelly.cloud o complete este formulario. No se proporcionan licencias para uso personal y Shelly tiene derecho a rechazar solicitudes que no sean razonables.
Consentimiento del usuario: los propietarios de devices que deseen utilizar un servicio deben iniciar sesión en su cuenta de Shelly Cloud y dar su consentimiento para compartir sus devices con un integrador. El alcance del consentimiento y el consentimiento en sí pueden ser modificados o revocados unilateralmente por el usuario en cualquier momento. El consentimiento se concede por device y puede ser de solo lectura o de lectura y control.
Puede encontrar información detallada aquí: https://shelly-api-docs.shelly.cloud/integrator-api/
Solución de gestión de devices para controlar flotas de devices con o sin cuentas de Shelly
Shelly Fleet Manager
| Destinado a la gestión de: | devices Shelly con cuentas de usuario de Shelly (únicas o múltiples) o sin ellas |
| Tipo de API: | a través de WebSocket |
| Destinado a: | Casos de uso industriales |
Caso de uso: gestionar devices Shelly independientemente de Shelly Cloud y de las cuentas.
Los objetivos de Shelly Fleet Manager como producto son supervisar, gestionar y controlar flotas de devices inteligentes Shelly en múltiples ubicaciones.
Proporciona una plataforma centralizada para la adquisición de datos en tiempo real, el control remoto, la automatización y la elaboración de informes.
Estos devices pueden estar vinculados a cuentas de Shelly Cloud o no. Esto lo hace muy flexible, ya que puede añadir devices listos para usar sin ninguna configuración e incluso añadirlos de forma masiva con Shelly FMA (Shelly Fleet Manager Assistant).
Shelly Fleet Manager (SFM) es una solución SaaS independiente de Shelly y completamente independiente de Shelly Cloud para los usuarios finales. Es una solución en la nube de Shelly que proporciona gestión de devices. SFM cuenta con una interfaz de usuario basada en navegador (y un complemento de Chrome) similar, aunque diferente, a la aplicación Shelly Cloud Control (diseñada para usuarios finales).
SFM está diseñado y desarrollado como una solución de back-office para casos en los que se necesita un controlador de automatización local por motivos de seguridad o porque el diseño del sistema lo requiere.
SFM puede utilizarse como una solución en la nube de Shelly o instalarse como software independiente (es un proyecto de código abierto) y los clientes pueden seguir desarrollándolo y personalizándolo por su cuenta.
Con SFM no necesita una cuenta de Shelly Cloud (como los usuarios habituales) para controlar los devices; solo necesita connectarlos a SFM.
La incorporación masiva de devices Shelly es posible mediante las aplicaciones móviles de Shelly para iOS y Android: Shelly FMA (Shelly Fleet Manager Assistant).
La aplicación permite poner en servicio los devices Shelly en una instancia de SFM y añade funciones de configuración y mantenimiento para diagnósticos locales.
Escaneará mediante Bluetooth todos los devices new cercanos y los añadirá a la instancia de SFM preconfigurada. Los perfiles de configuración pueden enviarse a los devices, lo que permite colocarlos en grupos preconfigurados (por ejemplo, según su ubicación física) con ajustes, Wi-Fi, etc. preconfigurados.
Google Play Store: https://play.google.com/store/apps/details?id=com.shelly.fleetassistant&hl=en
Apple Store: https://apps.apple.com/bg/app/shelly-fma/id6526479868
Conexión con el backend: Los devices utilizan WebSocket saliente para establecer la conexión con Fleet Manager.
Nota: SFM solo funciona con devices Gen2+. Si los devices ya están conectados a Shelly Cloud Control, conectarlos a SFM no los desconectará de la nube de Shelly, ya que se trata de conexiones independientes.
Puede encontrar información detallada aquí: https://fleet.shelly.com/
¡Valoramos sus comentarios!
¡Gracias por tomarse el tiempo de leer nuestro artículo! ¿Le resultó útil o interesante?
Sus comentarios pueden ayudarnos a mejorar. Agradeceríamos cualquier opinión. Si tiene un momento,
compártalo con nosotros en el siguiente correo electrónico:

