Todos los productos
Search
Centro de documentos

IoT Platform:CreateSubscribeRelation

Última actualización: Sep 03, 2026

Cree una suscripción del lado del servidor de Message Service (MNS) o Advanced Message Queuing Protocol (AMQP).

Notas de uso

Las suscripciones del lado del servidor se clasifican en dos tipos:

  • Suscripción MNS: envía los mensajes suscritos a las colas de MNS. Las aplicaciones de servidor escuchan las colas de MNS para recibir mensajes de dispositivos. Para obtener más información, consulte Configurar suscripciones del lado del servidor de MNS. Llame a esta operación para crear una suscripción MNS.

  • Suscripción AMQP: envía los mensajes suscritos al servidor mediante el canal AMQP. Para obtener más información, consulte Configurar suscripciones del lado del servidor de AMQP. Para configurar una suscripción AMQP, siga estos pasos:

    1. Llame a la operación CreateConsumerGroup para crear un grupo de consumidores y obtener su ID. Los mensajes se envían al grupo de consumidores. El cliente AMQP incluye el ID del grupo de consumidores al conectarse a IoT Platform. Para obtener más información, consulte Conectar un cliente AMQP a IoT Platform.

    2. Llame a la operación CreateSubscribeRelation para crear una suscripción AMQP.

    3. Opcional. Llame a la operación CreateConsumerGroupSubscribeRelation para agregar un grupo de consumidores a la suscripción AMQP. También puede llamar a la operación DeleteConsumerGroupSubscribeRelation para eliminar un grupo de consumidores de una suscripción AMQP.

    4. Opcional. Llame a la operación QueryConsumerGroupStatus para consultar el estado de un grupo de consumidores, incluida la información de clientes en línea, la tasa de consumo de mensajes, el número de mensajes acumulados y la hora del último consumo. También puede llamar a la operación ResetConsumerGroupPosition para borrar los mensajes acumulados del grupo de consumidores.

Límites de QPS

Puede llamar a esta operación de API hasta cinco veces por segundo por cuenta.

Nota

Los usuarios RAM de una cuenta de Alibaba Cloud comparten la cuota de la cuenta.

Depuración

OpenAPI Explorer calcula automáticamente el valor de la firma. Para su comodidad, le recomendamos que llame a esta operación en OpenAPI Explorer. OpenAPI Explorer genera dinámicamente el código de ejemplo para diferentes SDK.

Parámetros de solicitud

Parámetro Tipo Obligatorio Ejemplo Descripción
Action String Sí CreateSubscribeRelation

La operación que desea ejecutar. Establezca el valor en CreateSubscribeRelation.

ProductKey String Sí a1fyXVF****

El ProductKey del producto especificado para la suscripción.

IotInstanceId String No iot-cn-0pp1n8t****

El ID de la instancia. Puede consultar el ID de la instancia en la página Overview de la consola de IoT Platform.

Importante
  • Si su instancia tiene un ID, debe especificarlo en este parámetro. De lo contrario, la llamada fallará.
  • Si no se genera ninguna página de Overview o ID para su instancia, no es necesario configurar este parámetro.

Para obtener más información, consulte Descripción general.

DeviceDataFlag Boolean No true

Especifique si se deben enviar mensajes ascendentes del dispositivo. Valores válidos:

  • true: sí.
  • false: no. Este es el valor predeterminado.
DeviceStatusChangeFlag Boolean No true

Especifique si se deben enviar mensajes sobre cambios de estado del dispositivo. Valores válidos:

  • true: sí.
  • false: no. Este es el valor predeterminado.
DeviceTopoLifeCycleFlag Boolean No true

Especifique si se deben enviar mensajes sobre cambios en las relaciones topológicas de los dispositivos. Valores válidos:

  • true: sí. Este parámetro solo es válido para productos de puerta de enlace.
  • false: no. Este es el valor predeterminado.
FoundDeviceListFlag Boolean No true

Especifique si se deben enviar mensajes cuando una puerta de enlace detecta nuevos subdispositivos. Valores válidos:

  • true: sí. Este parámetro solo es válido para productos de puerta de enlace.
  • false: no. Este es el valor predeterminado.
ThingHistoryFlag Boolean No true

Especifique si se deben enviar datos históricos ascendentes de Thing Specification Language (TSL). Valores válidos:

  • true: sí.
  • false: no. Este es el valor predeterminado.
DeviceLifeCycleFlag Boolean No true

Especifique si se deben enviar mensajes sobre cambios en el ciclo de vida del dispositivo. Valores válidos:

  • true: sí.
  • false: no. Este es el valor predeterminado.
OtaEventFlag Boolean No true

Especifique si se deben enviar notificaciones sobre el estado de los lotes de actualización over-the-air (OTA). Valores válidos:

  • true: sí.
  • false: no. Este es el valor predeterminado.
DeviceTagFlag Boolean No true

Especifique si se deben enviar mensajes sobre cambios en las etiquetas del dispositivo. Valores válidos:

  • true: sí. Este parámetro solo es válido si establece el parámetro Type en AMQP.
  • false: no. Este es el valor predeterminado.
OtaVersionFlag Boolean No true

Especifique si se deben enviar mensajes sobre los números de versión de los módulos OTA. Valores válidos:

  • true: sí. Este parámetro solo es válido si establece el parámetro Type en AMQP.
  • false: no. Este es el valor predeterminado.
OtaJobFlag Boolean No true

Especifique si se deben enviar notificaciones sobre el estado de los lotes de actualización OTA. Valores válidos:

  • true: sí. Este parámetro solo es válido si establece el parámetro Type en AMQP.
  • false: no. Este es el valor predeterminado.
Type String No AMQP

El tipo de suscripción. Valores válidos:

  • MNS
  • AMQP
ConsumerGroupIds.N RepeatList No nJRaJPn5U1JITGfjBO9l00****

Los ID de los grupos de consumidores creados en la suscripción AMQP. Este parámetro es obligatorio si establece el parámetro Type en AMQP.

Después de llamar a la operación CreateConsumerGroup para crear un grupo de consumidores, se devuelve su ID. Puede llamar a la operación QueryConsumerGroupList para consultar los ID de los grupos de consumidores por nombre. También puede iniciar sesión en la consola de IoT Platform y elegir Message Forwarding > Server-side Subscription > Consumer Groups para ver el ID del grupo de consumidores.

MnsConfiguration String No { "queueName": "mns-test-topic1", "regionName": "cn-shanghai", "role": { "roleArn": "acs:ram::5645***:role/aliyuniotaccessingmnsrole", "roleName": "AliyunIOTAccessingMNSRole" } }

La configuración de la cola de MNS. Si establece el parámetro Type en AMQP, este parámetro es obligatorio.

Para obtener más información, consulte la sección "Definición del parámetro MnsConfiguration".

SubscribeFlags String No { "jt808DeviceDataFlag": true }

Especifique si se deben recibir los mensajes de un producto suscrito específico.

Si se suscribe a productos de puerta de enlace JT/T 808, debe configurar el parámetro SubscribeFlags. Establezca el valor en el siguiente código.

{
    "jt808DeviceDataFlag": true
}
Nota

Debe establecer como mínimo un parámetro relacionado con Flag en

true

.

Definición del parámetro MnsConfiguration

Parámetro

Descripción

queueName

El nombre de la cola de MNS que se utiliza para recibir datos. Debe crear una cola en la consola de MNS y obtener su nombre. Para obtener más información, consulte Crear una cola.

regionName

El código de la región donde se despliega MNS. Ejemplo: cn-shanghai.

role

La información sobre el rol de RAM. Para autorizar a IoT Platform a acceder a MNS, puede asignar un rol de servicio a IoT Platform. El siguiente script muestra la sintaxis de un rol de RAM:

{"roleArn":"acs:ram::5645***:role/aliyuniotaccessingmnsrole","roleName": "AliyunIOTAccessingMNSRole"}

Reemplace 5645*** con su ID de cuenta de Alibaba Cloud. Puede iniciar sesión en la consola de administración de Alibaba Cloud y consultar el ID de la cuenta en la página Security Settings.

AliyunIOTAccessingMNSRole indica un rol vinculado al servicio definido en Resource Access Management (RAM). Este rol se utiliza para autorizar a IoT Platform a acceder a MNS. Puede ir a la página RAM Roles de la consola de RAM para gestionar los roles de RAM.

Ejemplo del parámetro MnsConfiguration

{
    "queueName": "mns-test-topic1",
    "regionName": "cn-shanghai",
    "role": {
        "roleArn": "acs:ram::5645***:role/aliyuniotaccessingmnsrole",
        "roleName": "AliyunIOTAccessingMNSRole"
    }
}

Además de los parámetros de solicitud específicos de la operación anteriores, debe configurar parámetros de solicitud comunes al llamar a esta operación. Para obtener más información sobre los parámetros de solicitud comunes, consulte Parámetros comunes.

Parámetros de respuesta

Parámetro Tipo Ejemplo Descripción
Code String iot.system.SystemException

El código de error que se devuelve si la llamada falla. Para obtener más información sobre los códigos de error, consulte Códigos de error.

ErrorMessage String A system exception occurred.

El mensaje de error que se devuelve si la llamada falla.

RequestId String 21D327AF-A7DE-4E59-B5D1-ACAC8C024555

El ID de la solicitud.

Success Boolean true

Indica si la llamada fue exitosa. Valores válidos:

  • true: La llamada fue exitosa.
  • false: La llamada falló.

Ejemplos

Solicitudes de ejemplo

https://iot.cn-shanghai.aliyuncs.com/?Action=CreateSubscribeRelation
&OtaEventFlag=true
&ProductKey=a1Zkii7****
&Type=AMQP
&ConsumerGroupIds.1=Xs95KifeaSKbi8tKkcoD00****
&<Common request parameters>

Respuestas exitosas de ejemplo

Formato XML

<CreateSubscribeRelationResponse>
        <RequestId>C21DA94F-07D7-482F-8A0C-5BB0E3CC1A82</RequestId>
        <Success>true</Success>
</CreateSubscribeRelationResponse>

Formato JSON

{
    "RequestId": "C21DA94F-07D7-482F-8A0C-5BB0E3CC1A82",
    "Success": true
}

Códigos de error

Para obtener una lista de códigos de error, consulte Códigos de error del servicio.