OpenThread ofrece funcionalidad de cliente y de servidor CoAP, lo que permite que los dispositivos se conecten a recursos en el servidor CoAP y observen cada recurso para detectar un cambio en su estado actual. El agente de CoAP proporcionado en la CLI puede actuar como 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 CLI
Para obtener descripciones y sintaxis de todos los comandos, consulta la Referencia de comandos de CLI.
Los comandos coap
comienzan alfabéticamente con coap cancel.
Ejemplo de uso del servidor CoAP y del comando del cliente
En este ejemplo, se usan 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.
Configura el servidor de CoAP
En el nodo del servidor de CoAP, realiza los siguientes pasos:
Inicia el agente de CoAP.
coap start
DoneCrea un recurso de prueba.
coap resource test-resource
Done
Configura el cliente de CoAP
En el nodo cliente de CoAP, realiza los siguientes pasos:
Inicia el agente de CoAP:
coap start
DoneEjecuta 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: 30La última parte del servidor
response
es el términowith payload:
, seguido de 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 del recurso está configurada en un byte de información de la carga útil con un valor hexadecimal de 0x30. Para obtener más información sobre el uso de la opciónpayload
, consulta la publicación de instrucciones.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 que se envíe un mensaje confiable, que se obtiene a través de un mensaje confirmable (con
), al servidor de CoAP. La configuración predeterminada es enviar un mensaje no confirmable (non-con
).La string
hellothere
es un ejemplo del uso del parámetro opcionalpayload
cuandotype
escon
onon-con
". Para obtener más información, consulta coap put.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 string hellothere
convertida en una secuencia de bytes de código ASCII.