OpenThread هم عملکرد سرور CoAP و هم عملکرد کلاینت را ارائه می دهد و دستگاه ها را قادر می سازد به منابع روی سرور CoAP متصل شوند و هر منبع را برای تغییر در وضعیت فعلی آن مشاهده کنند. عامل CoAP ارائه شده در CLI می تواند به عنوان مشتری یا سرور CoAP عمل کند.
دستورات CoAP
برای لیستی از دستورات coap
، help
را تایپ کنید:
coap help
help
cancel
delete
get
observe
parameters
post
put
resource
set
start
stop
Done
مرجع فرمان CLI
برای توضیحات و نحو تمام دستورات، به مرجع فرمان CLI مراجعه کنید. دستورات coap
بر اساس حروف الفبا با coap cancel شروع می شوند.
مثالی از استفاده از سرور CoAP و فرمان مشتری
این مثال از دستورات اولیه CLI برای راهاندازی یک سرور CoAP و کلاینت، ایجاد یک منبع آزمایشی در سرور CoAP و تعامل مشتری CoAP با منبع استفاده میکند. داده های نمونه برای مقاصد توضیحی استفاده می شود.
سرور CoAP را راه اندازی کنید
در گره سرور CoAP، مراحل زیر را انجام دهید:
عامل CoAP را راه اندازی کنید.
coap start
Doneیک منبع آزمایشی ایجاد کنید.
coap resource test-resource
Done
مشتری CoAP را راه اندازی کنید
در گره مشتری CoAP، مراحل زیر را انجام دهید:
عامل CoAP را راه اندازی کنید:
coap start
Doneدستور
get
را برای به دست آوردن اطلاعات در مورد منبع اجرا کنید: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آخرین بخش از
response
سرور عبارتwith payload:
است و به دنبال آن تمام بایت های بار در قالب رقم هگزا دسیمال آمده است. بنابراین، در مثال،with payload: 30
نشان می دهد که بار فعلی برای منبع روی یک بایت اطلاعات payload با مقدار هگزا دسیمال 0x30 تنظیم شده است. برای اطلاعات بیشتر در مورد استفاده از گزینهpayload
به پست coap مراجعه کنید.می توانید منبع را با استفاده از دستور
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]در این مثال،
con
به این معنی است که شما می خواهید یک پیام قابل اعتماد، که با استفاده از یک پیام قابل تایید (con
) به دست می آید، به سرور CoAP ارسال شود. پیشفرض ارسال یک پیام غیرقابل تأیید (non-con
) است.رشته
hellothere
نمونهای از استفاده از پارامترpayload
اختیاری است کهtype
con
یاnon-con
است." برای اطلاعات بیشتر، به coap put مراجعه کنید.سرور با آدرس IPv6 خود پاسخ می دهد تا نشان دهد درخواست رسیدگی شده است.
پاسخ ها به سرور CoAP ارسال می شود
در سرور، خروجی از این مثال مشابه موارد زیر خواهد بود:
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
مقدار payload
68656c6c6f7468657265
رشته hellothere
است که به دنباله بایت کد اسکی تبدیل شده است.