Pruebe la conectividad a un recurso de protocolo de aplicaciones restringido (CoAP) con la CLI de OT

Ver código fuente en GitHub

OpenThread ofrece servidor CoAP y funcionalidad de cliente, lo que permite que los dispositivos para conectarse a los recursos en el servidor de CoAP y observar cada recurso un cambio en su estado actual. El agente de CoAP proporcionado en la CLI puede actuar como el cliente o servidor de CoAP.

Comandos de CoAP

Para obtener una lista de comandos coap, escribe help:

coap help
help
cancel
delete
get
observe
parameters
post
put
resource
set
start
stop
Done

Referencia de comandos de la CLI

Para obtener descripciones y sintaxis de todos los comandos, consulta la Referencia de comandos de la CLI. Los comandos coap comienzan alfabéticamente con coap cancel (cancelación de coap).

Ejemplo de uso de comandos del servidor y el cliente de CoAP

Este ejemplo utiliza comandos básicos de la CLI para iniciar un servidor y un cliente de CoAP, crear un recurso de prueba en el servidor de CoAP y hacer que el cliente de CoAP interactúe con el recurso Los datos de muestra se utilizan con fines ilustrativos.

Cómo configurar el servidor de CoAP

En el nodo del servidor de CoAP, sigue estos pasos:

  1. Iniciar el agente de CoAP

    coap start
    Done
    
  2. Crea un recurso de prueba.

    coap resource test-resource
    Done
    

Cómo configurar el cliente de CoAP

En el nodo cliente de CoAP, realiza los siguientes pasos:

  1. Inicia el agente de CoAP:

    coap start
    Done
    
  2. Ejecuta el comando get para obtener información sobre el recurso:

    coap get fdde:ad00:beef:0:d395:daee:a75:3964 test-resource
    Done
    coap response from [fdde:ad00:beef:0:2780:9423:166c:1aac] with payload: 30
    

    La última parte del servidor response es el término with payload:, seguido por todos los bytes de carga útil en formato de dígitos hexadecimales. Por lo tanto, en el ejemplo, with payload: 30 indica que la carga útil actual para el recurso está configurada en un byte de información de carga útil con un valor hexadecimal de 0x30. Para obtener más información sobre el uso de la opción payload, consulta publicación de coap.

  3. Puedes modificar el recurso con el comando put:

    coap put fdde:ad00:beef:0:2780:9423:166c:1aac test-resource con hellothere
    Done
    coap response from [fdde:ad00:beef:0:2780:9423:166c:1aac]
    

    En este ejemplo, con significa que quieres un mensaje confiable, que es que se obtiene con un mensaje confirmable (con), que se enviará al servidor de CoAP. La configuración predeterminada es enviar un mensaje no confirmable (non-con).

    La cadena hellothere es un ejemplo de uso del payload opcional. cuando el type es con o non-con. Para obtener más información, consulta colocar el coap.

    El servidor responde con su dirección IPv6 para indicar que se manejó la solicitud.

Respuestas enviadas al servidor de CoAP

En el servidor, el resultado de este ejemplo sería similar al siguiente:

coap request from [fdde:ad00:beef:0:b3:e3f6:2dcc:4b79] GET
coap response sent
coap request from [fdde:ad00:beef:0:b3:e3f6:2dcc:4b79] PUT with payload: 68656c6c6f7468657265
coap response sent

El valor payload de 68656c6c6f7468657265 es la cadena hellothere convertida a la secuencia de bytes del código ASCII.