OpenThread udostępnia funkcje serwera i klienta CoAP, umożliwiając łączyć się z zasobami na serwerze CoAP i obserwować poszczególne zasoby i bieżącego stanu. Agent CoAP udostępniony w interfejsie wiersza poleceń może wykonać jako klient lub serwer CoAP.
Polecenia CoAP
Aby zobaczyć listę poleceń coap
, wpisz help
:
coap help
help
cancel
delete
get
observe
parameters
post
put
resource
set
start
stop
Done
Odniesienie do polecenia interfejsu wiersza poleceń
Opisy i składnię wszystkich poleceń znajdziesz w dokumentacji poleceń interfejsu wiersza poleceń.
Polecenia coap
zaczynają się alfabetycznie od
coap cancel.
Przykład użycia poleceń serwera i klienta CoAP
W tym przykładzie użyto podstawowych poleceń interfejsu wiersza poleceń, aby uruchomić serwer i klienta CoAP, utworzyć zasób testowy na serwerze CoAP i umożliwić klientowi CoAP interakcję z tym zasobem. Przykładowe dane służą do celów poglądowych.
Konfigurowanie serwera CoAP
W węźle serwera CoAP wykonaj te czynności:
Uruchom agenta CoAP.
coap start
DoneUtwórz zasób testowy.
coap resource test-resource
Done
Konfigurowanie klienta CoAP
W węźle klienta CoAP wykonaj te czynności:
Uruchom agenta CoAP:
coap start
DoneUruchom polecenie
get
, aby uzyskać informacje o zasobie: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: 30Ostatnia część serwera
response
to hasłowith payload:
, obserwowane według wszystkich bajtów ładunku w formacie szesnastkowym. Dlatego w tym przykładziewith payload: 30
wskazuje, że bieżący ładunek dla zasobu jest ustawiony na jeden bajt informacji ładunku z wartością szesnastkową 0x30. Więcej informacji o korzystaniu z opcjipayload
znajdziesz tutaj: Coap post.Możesz zmodyfikować zasób za pomocą polecenia
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]W tym przykładzie
con
oznacza, że oczekujesz wiarygodnego komunikatu, który jest uzyskane za pomocą możliwej do potwierdzenia wiadomości (con
) wysłanej do serwera CoAP. Domyślnie wysyłana jest wiadomość, której nie można potwierdzić (non-con
).Ciąg
hellothere
jest przykładem użycia opcjonalnegopayload
gdytype
ma wartośćcon
lubnon-con
”. Więcej informacji: Coap put.W odpowiedzi serwer podaje swój adres IPv6, wskazując, że żądanie zostało wykonane.
Odpowiedzi wysłane do serwera CoAP
Na serwerze dane wyjściowe z tego przykładu będą wyglądać tak:
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
Wartość payload
z 68656c6c6f7468657265
to ciąg znaków przekonwertowany hellothere
na sekwencję bajtów kodu ASCII.