

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Agente MQTT 5 (EMQX)
<a name="mqtt-broker-emqx-component"></a>

El componente agente MQTT de EMQX (`aws.greengrass.clientdevices.mqtt.EMQX`) gestiona los mensajes MQTT entre los dispositivos de cliente y un dispositivo principal de Greengrass. Este componente proporciona una versión modificada del [agente EMQX MQTT 5.0.](https://www.emqx.com/en/mqtt/mqtt5) Implemente el agente MQTT para usar las características de MQTT 5 en la comunicación entre los dispositivos de cliente y el dispositivo principal. Para más información sobre cómo elegir un agente MQTT, consulte [Elección de un agente MQTT](choose-local-mqtt-broker.md).

Este agente implementa el protocolo MQTT 5.0. Incluye compatibilidad con intervalos de expiración de sesiones y mensajes, propiedades de usuario, suscripciones compartidas, alias de temas y más. MQTT 5 es compatible con versiones anteriores de MQTT 3.1.1, por lo que si ejecuta [el agente Moquette MQTT 3.1.1](mqtt-broker-moquette-component.md), puede reemplazarlo con el agente EMQX MQTT 5 y los dispositivos de cliente pueden continuar conectándose y funcionando normalmente.

<a name="note-local-mqtt-broker-mqtt-5-features"></a>

**nota**  <a name="client-device-component-context"></a>
Los dispositivos de cliente son dispositivos IoT locales que se conectan a un dispositivo principal de Greengrass para enviar mensajes MQTT y datos para su procesamiento. Para obtener más información, consulte [Interacción con dispositivos IoT locales](interact-with-local-iot-devices.md).

**Topics**
+ [Versiones](#mqtt-broker-emqx-component-versions)
+ [Tipo](#mqtt-broker-emqx-component-type)
+ [Sistema operativo](#mqtt-broker-emqx-component-os-support)
+ [Requisitos](#mqtt-broker-emqx-component-requirements)
+ [Dependencias](#mqtt-broker-emqx-component-dependencies)
+ [Configuración](#mqtt-broker-emqx-component-configuration)
+ [Archivo de registro local](#mqtt-broker-emqx-component-log-file)
+ [Licencias](#mqtt-broker-emqx-component-licenses)
+ [Registros de cambios](#mqtt-broker-emqx-component-changelog)

## Versiones
<a name="mqtt-broker-emqx-component-versions"></a>

Este componente tiene las siguientes versiones:
+ 2.0.x
+ 1.2.x
+ 1.1.x
+ 1.0.x

## Tipo
<a name="mqtt-broker-emqx-component-type"></a>

<a name="public-component-type-generic"></a>Este <a name="public-component-type-generic-phrase"></a>componente es un componente genérico (`aws.greengrass.generic`). El [núcleo de Greengrass](greengrass-nucleus-component.md) ejecuta los scripts del ciclo de vida del componente.

<a name="public-component-type-more-information"></a>Para obtener más información, consulte [Tipos de componentes](develop-greengrass-components.md#component-types).

## Sistema operativo
<a name="mqtt-broker-emqx-component-os-support"></a>

Este componente se puede instalar en los dispositivos principales que ejecutan los siguientes sistemas operativos:
+ Linux
+ Windows

## Requisitos
<a name="mqtt-broker-emqx-component-requirements"></a>

Este componente tiene los siguientes requisitos:
+ El dispositivo principal debe poder aceptar conexiones en el puerto en el que opera el agente MQTT. Este componente ejecuta el agente MQTT en el puerto 8883 de forma predeterminada. O puede especificar un puerto diferente al configurar este componente.

  <a name="mqtt-broker-configuration-mqtt-bridge-requirement"></a>Si especifica un puerto diferente y utiliza el [componente de puente MQTT](mqtt-bridge-component.md) para retransmitir mensajes MQTT a otros intermediarios, debe utilizar el puente de MQTT versión 2.1.0 o posterior. Configúrelo para que use el puerto en el que opera el agente MQTT.

  <a name="mqtt-broker-configuration-ip-detector-requirement"></a>Si especifica un puerto diferente y utiliza el [componente IP detector](ip-detector-component.md) para administrar los puntos de conexión del agente MQTT, debe utilizar la versión 2.1.0 o posterior del detector IP. Configúrelo para que informe el puerto en el que opera el agente MQTT.
+ En los dispositivos principales de Linux, Docker se instala y configura en el dispositivo principal:
  + <a name="docker-engine-requirement"></a>Versión 1.9.1 o posterior de [Docker Engine](https://docs.docker.com/engine/) instalada en el dispositivo principal de Greengrass. La versión 20.10 es la última versión que se ha comprobado que funciona con el software AWS IoT Greengrass Core. Debe instalar Docker directamente en el dispositivo principal antes de implementar componentes que ejecuten contenedores de Docker.
  + <a name="docker-daemon-requirement"></a>El daemon de Docker se inició y se ejecutó en el dispositivo principal antes de implementar este componente. 
  + El usuario del sistema que ejecuta este componente debe tener permisos de administrador o raíz. Como alternativa, puede ejecutar este componente como usuario del sistema en el grupo `docker` y configurar la opción `requiresPrivileges` de este componente `false` para ejecutar el agente MQTT de EQMX sin privilegios.
+ Se admite la ejecución del componente agente MQTT de EMQX en una VPC.
+ No se admite el componente agente MQTT de EMQX en la plataforma `armv7`.

## Dependencias
<a name="mqtt-broker-emqx-component-dependencies"></a>

Al implementar un componente, AWS IoT Greengrass también despliega versiones compatibles de sus dependencias. Esto significa que debe cumplir los requisitos del componente y de todas sus dependencias para poder implementar el componente correctamente. En esta sección, se enumeran las dependencias de las [versiones publicadas](#mqtt-broker-emqx-component-changelog) de este componente y las restricciones de las versiones semánticas que definen las versiones de los componentes para cada dependencia. También puede ver las dependencias de cada versión del componente en la [consola de AWS IoT Greengrass](https://console.aws.amazon.com//greengrass). En la página de detalles del componente, busque la lista de **Dependencias**.

------
#### [ 2.0.2 – 2.0.3 ]

En la siguiente tabla, se muestran las dependencias de las versiones 2.0.2 y 2.0.3 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Autenticación del dispositivo de cliente](client-device-auth-component.md) | >=2.2.0 <2.6.0 | Flexible | 

------
#### [ 2.0.1 ]

En la siguiente tabla, se muestran las dependencias de la versión 2.0.1 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Autenticación del dispositivo de cliente](client-device-auth-component.md) | >=2.2.0 <2.6.0 | Rígido | 

------
#### [ 2.0.0 ]

En la siguiente tabla, se muestran las dependencias de la versión 2.0.0 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Autenticación del dispositivo de cliente](client-device-auth-component.md) | >=2.2.0 <2.5.0 | Rígido | 

------
#### [ 1.2.2 – 1.2.3 ]

En la siguiente tabla, se muestran las dependencias de las versiones 1.2.2 a 1.2.3 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Autenticación del dispositivo de cliente](client-device-auth-component.md) | >=2.2.0 <2.5.0 | Rígido | 

------
#### [ 1.2.0 and 1.2.1 ]

En la siguiente tabla, se muestran las dependencias de las versiones 1.2.0 y 1.2.1 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Autenticación del dispositivo de cliente](client-device-auth-component.md) | >=2.2.0 <2.4.0 | Rígido | 

------
#### [ 1.0.0 and 1.1.0 ]

En la siguiente tabla, se muestran las dependencias de las versiones 1.0.0 y 1.1.0 de este componente.


| Dependencia | Versiones compatibles | Tipo de dependencia | 
| --- | --- | --- | 
| [Autenticación del dispositivo de cliente](client-device-auth-component.md) | >=2.2.0 <2.3.0 | Rígido | 

------

Para obtener más información sobre las dependencias del componente, consulte la [referencia de receta de componentes](component-recipe-reference.md#recipe-reference-component-dependencies).

## Configuración
<a name="mqtt-broker-emqx-component-configuration"></a>

------
#### [ 2.0.0 - 2.0.3 ]

Este componente ofrece los siguientes parámetros de configuración que puede personalizar cuando implemente el componente.

**importante**  
Si utiliza la versión 2 del componente agente MQTT 5 (EMQX), debe actualizar el archivo de configuración. Los archivos de configuración de la versión 1 no funcionan con la versión 2.

emqxConfig  
 (Opcional) La configuración del agente [EMQX MQTT](https://www.emqx.io/docs/en/v5.1/configuration/configuration.html) que se va a utilizar. Puede configurar las opciones de configuración de EMQX en este componente.  
Cuando se utiliza el agente EMQX, Greengrass utiliza una configuración predeterminada. Esta configuración se utiliza a menos que la modifique mediante este campo.  
La modificación de los siguientes ajustes de configuración provoca el reinicio del componente agente EMQX. Se aplican otros cambios de configuración sin reiniciar el componente.  
+ `emqxConfig/cluster`
+ `emqxConfig/node`
+ `emqxConfig/rpc`
`aws.greengrass.clientdevices.mqtt.EMQX` permite configurar opciones sensibles a la seguridad. Estas incluyen la configuración de TLS, la autenticación y los proveedores de autorización. Recomendamos la configuración predeterminada que utiliza la autenticación TLS mutua y el proveedor de autenticación de dispositivos de cliente Greengrass.

**Example Ejemplo: configuración predeterminada**  
El siguiente ejemplo muestra los valores predeterminados establecidos para el agente MQTT 5 (EMQX). Puede anular estos parámetros mediante el ajuste de configuración `emqxConfig`.  

```
{
  "authorization": {
    "no_match": "deny",
    "sources": []
  },
  "node": {
    "cookie": "{{<placeholder>}}"
  }, 
  "listeners": {
     "ssl": {
       "default": {
         "ssl_options": {
           "keyfile": "{work:path}\\data\\key.pem",
           "certfile": "{work:path}\\data\\cert.pem",
           "cacertfile": null,
           "verify": "verify_peer",
           "versions": ["tlsv1.3", "tlsv1.2"],
           "fail_if_no_peer_cert": true
         }
       }
     },
     "tcp": {
       "default": {
         "enabled": false
       }
     },
     "ws": {
       "default": {
         "enabled": false
       }
     },
     "wss": {
       "default": {
         "enabled": false
       }
     }
  },
  "plugins": {
    "states": [{"name_vsn": "gg-1.0.0", "enable": true}],
    "install_dir": "plugins"
  }
}
```

authMode  
(Opcional) Establece el proveedor de autorización del agente. Puede ser uno de los siguientes valores:  
+ `enabled`: (predeterminado) utilice el proveedor de autenticación y autorización de Greengrass.
+ `bypass_on_failure`: utilice el proveedor de autenticación de Greengrass y, a continuación, utilice los demás proveedores de autenticación de la cadena de proveedores de EMQX si Greengrass deniega la autenticación o la autorización.
+ `bypass`: el proveedor de Greengrass está deshabilitado. La cadena de proveedores de EMQX gestiona la autenticación y la autorización.

`requiresPrivilege`  
(Opcional) En los dispositivos principales de Linux, puede especificar que se ejecute el agente de MQTT EMQX sin privilegios de administrador o raíz. Si establece esta opción en `false`, el usuario del sistema que ejecute este componente debe ser miembro del grupo `docker`.  
Valor predeterminado: `true`

`startupTimeoutSeconds`  
(Opcional) El tiempo máximo en segundos para que se inicie el agente de MQTT EMQX. El estado del componente cambia a `BROKEN` si supera este tiempo de espera.  
Valor predeterminado: `90`

`ipcTimeoutSeconds`  
(Opcional) El tiempo máximo en segundos que tarda el componente en esperar a que el núcleo de Greengrass responda a las solicitudes de comunicación entre procesos (IPC). Aumente este número si este componente informa de errores de tiempo de espera al comprobar si un dispositivo de cliente está autorizado.  
Valor predeterminado: `5`

`crtLogLevel`  
(Opcional) El nivel de registro de la biblioteca AWS Common Runtime (CRT).  
El valor predeterminado es el nivel de registro del agente de MQTT EMQX (`log.level` en `emqx`).

`restartIdentifier`  
(Opcional) Configure esta opción para reiniciar el agente de MQTT EMQX. Cuando este valor de configuración cambia, este componente reinicia el agente de MQTT. Puede utilizar esta opción para forzar la desconexión de los dispositivos de cliente.

`dockerOptions`  
(Opcional) Configure esta opción solo en los sistemas operativos Linux para agregar parámetros a la línea de comandos de Docker. Por ejemplo, para asignar puertos adicionales, utilice el parámetro `-p` de Docker:  

```
"-p 1883:1883"
```

**Example Ejemplo: actualizar un archivo de configuración de la versión 1.x a la versión 2.x**  
El siguiente ejemplo muestra los cambios necesarios para actualizar un archivo de configuración de la versión 1.x a la versión 2.x.  
El archivo de configuración de la versión 1.x:  

```
{
    "emqx": {
        "listener.ssl.external": "443",
        "listener.ssl.external.max_connections": "1024000",
        "listener.ssl.external.max_conn_rate": "500",
        "listener.ssl.external.rate_limit": "50KB,5s",
        "listener.ssl.external.handshake_timeout": "15s",
        "log.level": "warning"
    },
    "mergeConfigurationFiles": {
        "etc/plugins/aws_greengrass_emqx_auth.conf": "auth_mode=enabled\n use_greengrass_managed_certificates=true\n"
    }
}
```
El archivo de configuración equivalente para la versión 2:  

```
{
    "emqxConfig": {
        "listeners": {
            "ssl": {
                "default": {
                   "bind": "8883",
                   "max_connections": "1024000",
                   "max_conn_rate": "500",
                   "ssl_options": {
                        "handshake_timeout": "15s"
                   }
                }
            }
        },
        "log": {
            "console": {
              "enable": true,
              "level": "warning"
            }
        }
    },
    "authMode": "enabled"
}
```
No hay ningún equivalente a la entrada `listener.ssl.external.rate_limit` de configuración. La opción `use_greengrass_managed_certificates` de configuración se ha eliminado.

**Example Ejemplo: establecer un puerto nuevo para el agente**  
El siguiente ejemplo cambia el puerto en el que opera el agente de MQTT del 8883 predeterminado al puerto 1234. Si utiliza Linux, incluya el campo `dockerOptions`.  

```
{
  "emqxConfig": {
    "listeners": {
      "ssl": {
        "default": {
          "bind": 1234
        }
      }
    }
  },
  "dockerOptions": "-p 1234:1234"
}
```

**Example Ejemplo: ajustar el nivel de registro del agente de MQTT**  
El siguiente ejemplo cambia el nivel de registro del agente de MQTT a `debug`. Puede elegir entre los siguientes niveles de registro:  
+ `debug`
+ `info`
+ `notice`
+ `warning`
+ `error`
+ `critical`
+ `alert`
+ `emergency`
El nivel de registro predeterminado es `warning`.  

```
{
  "emqxConfig": {
    "log": {
      "console": {
         "level": "debug"
      }
    }
  }
}
```

**Example Ejemplo: habilitar el panel de EMQX**  
El siguiente ejemplo habilita el panel de EMQX para que pueda monitorear y administrar su agente. Si utiliza Linux, incluya el campo `dockerOptions`.   

```
{
  "emqxConfig": {
    "dashboard": {
      "listeners": {
        "http": {
          "bind": 18083
        }
      }
    }
  },
  "dockerOptions": "-p 18083:18083"
}
```

------
#### [ 1.0.0 - 1.2.2 ]

Este componente ofrece los siguientes parámetros de configuración que puede personalizar cuando implemente el componente.

`emqx`  
(Opcional) La configuración del agente [EMQX MQTT](https://www.emqx.io/docs/en/v4.4/configuration/configuration.html) que se va a utilizar. Puede configurar un subconjunto de opciones de configuración de EMQX en este componente.  
Este objeto contiene la siguiente información:    
`listener.ssl.external`  
(Opcional) El puerto en el que opera el agente de MQTT.  
<a name="mqtt-broker-configuration-mqtt-bridge-requirement"></a>Si especifica un puerto diferente y utiliza el [componente de puente MQTT](mqtt-bridge-component.md) para retransmitir mensajes MQTT a otros intermediarios, debe utilizar el puente de MQTT versión 2.1.0 o posterior. Configúrelo para que use el puerto en el que opera el agente MQTT.  
<a name="mqtt-broker-configuration-ip-detector-requirement"></a>Si especifica un puerto diferente y utiliza el [componente IP detector](ip-detector-component.md) para administrar los puntos de conexión del agente MQTT, debe utilizar la versión 2.1.0 o posterior del detector IP. Configúrelo para que informe el puerto en el que opera el agente MQTT.
Valor predeterminado: `8883`  
`listener.ssl.external.max_connections`  
(Opcional) el número máximo de conexiones simultáneas que admite el agente MQTT.  
Valor predeterminado: `1024000`  
`listener.ssl.external.max_conn_rate`  
(Opcional) El número máximo de conexiones nuevas por segundo que puede recibir el agente de MQTT.  
Valor predeterminado: `500`  
`listener.ssl.external.rate_limit`  
(Opcional) El límite de ancho de banda para todas las conexiones al agente de MQTT. Especifique el ancho de banda y la duración de ese ancho de banda separados por una coma (`,`) en el siguiente formato: `bandwidth,duration`. Por ejemplo, puede especificar `50KB,5s` para limitar el agente de MQTT a 50 kilobytes (KB) de datos cada 5 segundos.  
`listener.ssl.external.handshake_timeout`  
(Opcional) El tiempo que espera el agente de MQTT para terminar de autenticar una nueva conexión.  
Valor predeterminado: `15s`  
`mqtt.max_packet_size`  
(Opcional) El tamaño máximo de un mensaje MQTT.  
Predeterminado: `268435455` (256 MB menos 1)  
`log.level`  
(Opcional) El nivel de registro del agente de MQTT. Puede elegir entre las siguientes opciones:  
+ `debug`
+ `info`
+ `notice`
+ `warning`
+ `error`
+ `critical`
+ `alert`
+ `emergency`
El nivel de registro predeterminado es `warning`.

`requiresPrivilege`  
(Opcional) En los dispositivos principales de Linux, puede especificar que se ejecute el agente de MQTT EMQX sin privilegios de administrador o raíz. Si establece esta opción en `false`, el usuario del sistema que ejecute este componente debe ser miembro del grupo `docker`.  
Valor predeterminado: `true`

`startupTimeoutSeconds`  
(Opcional) El tiempo máximo en segundos para que se inicie el agente de MQTT EMQX. El estado del componente cambia a `BROKEN` si supera este tiempo de espera.  
Valor predeterminado: `90`

`ipcTimeoutSeconds`  
(Opcional) El tiempo máximo en segundos que tarda el componente en esperar a que el núcleo de Greengrass responda a las solicitudes de comunicación entre procesos (IPC). Aumente este número si este componente informa de errores de tiempo de espera al comprobar si un dispositivo de cliente está autorizado.  
Valor predeterminado: `5`

`crtLogLevel`  
(Opcional) El nivel de registro de la biblioteca AWS Common Runtime (CRT).  
El valor predeterminado es el nivel de registro del agente de MQTT EMQX (`log.level` en `emqx`).

`restartIdentifier`  
(Opcional) Configure esta opción para reiniciar el agente de MQTT EMQX. Cuando este valor de configuración cambia, este componente reinicia el agente de MQTT. Puede utilizar esta opción para forzar la desconexión de los dispositivos de cliente.

`dockerOptions`  
(Opcional) Configure esta opción solo en los sistemas operativos Linux para agregar parámetros a la línea de comandos de Docker. Por ejemplo, para asignar puertos adicionales, utilice el parámetro `-p` de Docker:  

```
"-p 1883:1883"
```

`mergeConfigurationFiles`  
(Opcional) Configure esta opción para agregar o anular los valores predeterminados de los archivos de configuración de EMQX especificados. Para obtener información sobre los archivos de configuración y sus formatos, consulte [Configuración](https://www.emqx.io/docs/en/v4.4/configuration/configuration.html) en la *documentación de EMQX 4.0*. Los valores que especifique se adjuntan al archivo de configuración.   
El siguiente ejemplo actualiza el archivo `etc/emqx.conf`.  

```
"mergeConfigurationFiles": {
    "etc/emqx.conf": "broker.sys_interval=30s\nbroker.sys_heartbeat=10s"
},
```
Además de los archivos de configuración compatibles con EMQX, Greengrass admite un archivo que configura el complemento de autenticación de Greengrass para EMQX llamado `etc/plugins/aws_greengrass_emqx_auth.conf`. Hay dos opciones compatibles: `auth_mode` y `use_greengrass_managed_certificates`. Para usar otro proveedor de autenticación, defina la opción `auth_mode` en una de las siguientes opciones:  
+ `enabled`: (predeterminado) utilice el proveedor de autenticación y autorización de Greengrass.
+ `bypass_on_failure`: utilice el proveedor de autenticación de Greengrass y, a continuación, utilice los demás proveedores de autenticación de la cadena de proveedores de EMQX si Greengrass deniega la autenticación o la autorización.
+ `bypass`: el proveedor de Greengrass está deshabilitado. La cadena de proveedores de EMQX gestiona la autenticación y la autorización.
Si `use_greengrass_managed_certificates` es `true`, esta opción indica que Greengrass administra los certificados TLS del agente. Si `false`, indica que proporciona los certificados a través de otro origen.  
En el siguiente ejemplo, se actualizan los valores predeterminados del archivo `etc/plugins/aws_greengrass_emqx_auth.conf` de configuración.  

```
"mergeConfigurationFiles": {
    "etc/plugins/aws_greengrass_emqx_auth.conf": "auth_mode=enabled\n use_greengrass_managed_certificates=true\n"
  },
```
`aws.greengrass.clientdevices.mqtt.EMQX` permite configurar opciones sensibles a la seguridad. Estas incluyen la configuración de TLS, la autenticación y los proveedores de autorización. La configuración recomendada es la configuración predeterminada que utiliza autenticación TLS mutua y el proveedor de autenticación de dispositivo de cliente de Greengrass.

`replaceConfigurationFiles`  
(Opcional) Configure esta opción para reemplazar los archivos de configuración de EMQX especificados. Los valores que especifique reemplazan todo el archivo de configuración existente. No puede especificar el archivo `etc/emqx.conf` en esta sección. Debe usar `mergeConfigurationFile` para modificar `etc/emqx.conf`.

**Example Ejemplo: actualización de la combinación de configuraciones**  
El siguiente ejemplo de configuración especifica el funcionamiento del agente de MQTT en el puerto 443.  

```
{
  "emqx": {
    "listener.ssl.external": "443",
    "listener.ssl.external.max_connections": "1024000",
    "listener.ssl.external.max_conn_rate": "500",
    "listener.ssl.external.rate_limit": "50KB,5s",
    "listener.ssl.external.handshake_timeout": "15s",
    "log.level": "warning"
  },
  "requiresPrivilege": "true",
  "startupTimeoutSeconds": "90",
  "ipcTimeoutSeconds": "5"
}
```

------

## Archivo de registro local
<a name="mqtt-broker-emqx-component-log-file"></a>

Este componente usa el siguiente archivo de registro.

------
#### [ Linux ]

```
{{/greengrass/v2}}/logs/aws.greengrass.clientdevices.mqtt.EMQX.log
```

------
#### [ Windows ]

```
{{C:\greengrass\v2}}\logs\aws.greengrass.clientdevices.mqtt.EMQX.log
```

------

**Visualización de los registros de este componente**
+ Ejecute el siguiente comando en el dispositivo de núcleo para ver el archivo de registro de este componente en tiempo real. Sustituya `{{/greengrass/v2}}` o {{C:\\greengrass\\v2}} por la ruta a la carpeta AWS IoT Greengrass raíz.

------
#### [ Linux ]

  ```
  sudo tail -f {{/greengrass/v2}}/logs/aws.greengrass.clientdevices.mqtt.EMQX.log
  ```

------
#### [ Windows (PowerShell) ]

  ```
  Get-Content {{C:\greengrass\v2}}\logs\aws.greengrass.clientdevices.mqtt.EMQX.log -Tail 10 -Wait
  ```

------

## Licencias
<a name="mqtt-broker-emqx-component-licenses"></a>

En los sistemas operativos Windows, este software incluye código distribuido según los [términos de licencia del software de Microsoft: Microsoft Visual Studio Community 2022](https://visualstudio.microsoft.com/license-terms/vs2022-ga-community). Al descargar este software, acepta los términos de licencia del código.

<a name="component-core-software-license"></a>Este conector se publica en el [Contrato de Licencia de Software de Greengrass Core](https://greengrass-release-license.s3.us-west-2.amazonaws.com/greengrass-license-v1.pdf).

## Registros de cambios
<a name="mqtt-broker-emqx-component-changelog"></a>

En la siguiente tabla, se describen los cambios en cada versión del componente.

------
#### [ v2.x ]


|  **Versión**  |  **Cambios**  | 
| --- | --- | 
| 2.0.3 |  [See the AWS documentation website for more details](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/mqtt-broker-emqx-component.html)  | 
| 2.0.2 |  [See the AWS documentation website for more details](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/mqtt-broker-emqx-component.html)  | 
| 2.0.1 | Versión actualizada para la versión 2.5.0 de [autenticación de dispositivos de cliente](client-device-auth-component.md). | 
| 2.0.0 | Esta versión del agente MQTT 5 (EMQX) espera parámetros de configuración diferentes a los de la versión 1.x. Si utiliza una configuración no predeterminada para la versión 1.x, debe actualizar la configuración del componente para la versión 2.x. Para obtener más información, consulte [Configuración](#mqtt-broker-emqx-component-configuration).[See the AWS documentation website for more details](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/mqtt-broker-emqx-component.html) | 

------
#### [ v1.x ]


|  **Versión**  |  **Cambios**  | 
| --- | --- | 
| 1.2.3 |  [See the AWS documentation website for more details](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/mqtt-broker-emqx-component.html)  | 
| 1.2.2 | Versión actualizada para la versión 2.4.0 de [autenticación de dispositivos de cliente](client-device-auth-component.md). | 
| 1.2.1 |  [See the AWS documentation website for more details](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/mqtt-broker-emqx-component.html)  | 
| 1.2.0 | Se agregó compatibilidad con las cadenas de certificados. | 
| 1.1.0 | <a name="changelog-emqx-1.1.0"></a>[See the AWS documentation website for more details](http://docs.aws.amazon.com/es_es/greengrass/v2/developerguide/mqtt-broker-emqx-component.html) | 
| 1.0.1 | Corrige un problema durante el protocolo de enlace TLS que provocaba que algunos clientes MQTT no pudieran conectarse. | 
| 1.0.0 | Versión inicial. | 

------