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 startDoneUtwórz zasób testowy.
coap resource test-resourceDone
Konfigurowanie klienta CoAP
W węźle klienta CoAP wykonaj te czynności:
Uruchom agenta CoAP:
coap startDoneUruchom polecenie
get, aby uzyskać informacje o zasobie:coap get fdde:ad00:beef:0:d395:daee:a75:3964 test-resourceDone coap response from [fdde:ad00:beef:0:2780:9423:166c:1aac] with payload: 30Ostatnia część serwera
responseto hasłowith payload:, obserwowane według wszystkich bajtów ładunku w formacie szesnastkowym. Dlatego w tym przykładziewith payload: 30wskazuje, że bieżący ładunek dla zasobu jest ustawiony na jeden bajt informacji ładunku z wartością szesnastkową 0x30. Więcej informacji o korzystaniu z opcjipayloadznajdziesz 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 hellothereDone coap response from [fdde:ad00:beef:0:2780:9423:166c:1aac]W tym przykładzie
conoznacza, ż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
hellotherejest przykładem użycia opcjonalnegopayloadgdytypema wartośćconlubnon-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.