ב-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 בסיסיות ב-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:
ואחריו כל הבייטים של המטען הייעודי (payload) בפורמט של ספרות הקסדצימליות. לכן, בדוגמהwith payload: 30
מצוין שהמטען הייעודי (payload) הנוכחי של המשאב מוגדר לבייט אחד של פרטי מטען ייעודי (payload) עם ערך הקסדצימלי של 0x30. מידע נוסף על השימוש באפשרותpayload
זמין בפוסט קו תחתון.אפשר לשנות את המשאב באמצעות הפקודה
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
." למידע נוסף, קראו את המאמר coapput.השרת מגיב באמצעות כתובת ה-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
שהומרה לרצף של בייטים עם קוד ASCII.