اختبار الاتصال بمورّد بروتوكول التطبيق المشروط (CoAP) باستخدام واجهة سطر الأوامر في الوقت الفعلي (OT CLI)

الاطّلاع على المصدر على GitHub

يوفر OpenThread وظائف كل من خادم CoAP والعميل، ما يتيح للأجهزة الاتصال بالموارد على خادم CoAP ومراقبة كل مورد لملاحظة حدوث تغيير في حالته الحالية. يمكن لوكيل CoAP المقدَّم في CLI أن يعمل إما كعميل أو خادم CoAP.

أوامر CoAP

للحصول على قائمة بأوامر coap، اكتب help:

coap help
help
cancel
delete
get
observe
parameters
post
put
resource
set
start
stop
Done

مرجع أوامر واجهة سطر الأوامر

للحصول على أوصاف وبنية جميع الأوامر، يُرجى الرجوع إلى مرجع أوامر واجهة سطر الأوامر. تبدأ أوامر coap أبجديًا بعبارة إلغاء النصوص البرمجية.

مثال على استخدام خادم CoAP وأوامر العميل

يستخدم هذا المثال أوامر CLI الأساسية لبدء خادم وعميل CoAP، وإنشاء مورد اختبار على خادم CoAP، وجعل عميل CoAP يتفاعل مع المورد. يتم استخدام بيانات العينة لأغراض التوضيح.

إعداد خادم CoAP

في عقدة خادم CoAP، نفِّذ الخطوات التالية:

  1. ابدأ تشغيل وكيل CoAP.

    coap start
    Done
    
  2. إنشاء مورد اختبار.

    coap resource test-resource
    Done
    

إعداد عميل CoAP Client

في عقدة عميل CoAP، نفِّذ الخطوات التالية:

  1. بدء وكيل CoAP:

    coap start
    Done
    
  2. شغِّل الأمر 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 في المثال إلى أن الحمولة الحالية للمورد مضبوطة على بايت واحد من معلومات الحمولة بقيمة سداسية عشرية 0x30. لمزيد من المعلومات حول استخدام الخيار payload، يمكنك مراجعة المشاركة المختصرة.

  3. يمكنك تعديل هذا المرجع باستخدام الأمر 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.