الولاية

تعرض واجهة برمجة التطبيقات /osc/state سمات state للكاميرا. يكمن الفرق بين ذلك وواجهة برمجة التطبيقات info في أنّ state يحتوي على قيم قابلة للتغيير تمثّل حالة الكاميرا (مثل batteryLevel)، في حين تحتوي info على سمات ثابتة فقط للكاميرا (مثل manufacturer أو السمات التي لا تتغيّر كثيرًا مثل firmwareVersion).

إدخال

  • لا يأخذ هذا الأمر أي إدخال.

الناتج

الاسم النوع الوصف
fingerprint سلسلة بصمة الإصبع (المعرّف الفريد) لحالة الكاميرا الحالية
state الكائن عنصر JSON يحتوي على حالة حالات الكاميرا المختلفة اطّلِع على الجدول التالي.

كائن "state"

ويوفّر كائن JSON هذا حالة الحالات المختلفة للكاميرا. يمكن للشركات المصنّعة توفير حالات مخصّصة جديدة يجب أن تسبقها شرطة سفلية ( _ ) لمنع تضاربات مساحات الاسم.

الاسم النوع الوصف
sessionId سلسلة رقم تعريف الجلسة الحالية. تم إيقاف هذا الحقل نهائيًا في المستوى 2 من واجهة برمجة التطبيقات.
batteryLevel العدد يتم التعبير عنها كقيمة النقطة العائمة للبطارية المتبقية، مثلاً 0.5
storageChanged منطقي صحيح في حالة إدراج/إزالة نوع جديد من التخزين (على سبيل المثال، بطاقة SD أو محرك أقراص USB). تم إيقاف هذا الحقل نهائيًا في المستوى 2 من واجهة برمجة التطبيقات.
storageUri سلسلة معرّف فريد للتفريق بين مساحات التخزين المختلفة ويتم استخدامه لمعرفة ما إذا كانت سعة التخزين قد تغيرت أم لا. تمّت إضافة هذا الحقل في المستوى 2 من واجهة برمجة التطبيقات.
_vendorSpecific [النوع](اختياري) حالة إضافية خاصة بالمورّد بشأن الكاميرا ابدأ بشرطة سفلية ( _ ) لمنع تضاربات مساحة الاسم.

خطأ

  • لا يعرض هذا الأمر أي أخطاء.

مثال

طلب
POST /osc/state HTTP/1.1
Host: [camera ip address]:[httpPort]
Accept: application/json
X-XSRF-Protected: 1
الردّ
HTTP/1.1 200 OK
Content-Type: application/json;charset=utf-8
Content-Length: {CONTENT_LENGTH}
X-Content-Type-Options: nosniff

{
    "fingerprint": "12EGA33",
    "state": {
        "sessionId": "12ABC3",
        "batteryLevel": 0.5,
        "storageChanged": false
    }
}