تعرض واجهة برمجة التطبيقات /osc/state سمات state للكاميرا. الفرق
بين هذه الواجهة وواجهة برمجة التطبيقات info، وهي أنّ state يحتوي على قيم قابلة للتغيير.
تمثّل حالة الكاميرا (batteryLevel، على سبيل المثال)، في حين أنّ السمة info
يحتوي فقط على سمات ثابتة للكاميرا (على سبيل المثال، manufacturer أو
السمات التي لا تتغير كثيرًا مثل firmwareVersion).
الإدخال
لا يتطلب هذا الأمر إدخالاً.
الناتج
الاسم
النوع
الوصف
fingerprint
سلسلة
بصمة الإصبع (المعرّف الفريد) لحالة الكاميرا الحالية
state
الكائن
كائن JSON يحتوي على حالة حالات الكاميرا المختلفة اطّلِع على الجدول التالي.
عنصر واحد (state)
يعرض كائن JSON هذا حالة الحالات المختلفة للكاميرا. يمكن للشركات المصنّعة
توفير حالات مخصصة جديدة يجب أن تسبقها شرطة سفلية ( _ )
لمنع تضاربات مساحة الاسم.
الاسم
النوع
الوصف
sessionId
سلسلة
رقم تعريف الجلسة الحالية تم إيقاف هذا الحقل في المستوى 2 من واجهة برمجة التطبيقات.
batteryLevel
العدد
ويتم التعبير عنها كقيمة النقطة العائمة للبطارية المتبقية، مثال: 0.5
storageChanged
منطقي
True في حالة إدخال/إزالة نوع جديد من التخزين (مثل بطاقة 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.1200 OK Content-Type: application/json;charset=utf-8 Content-Length:{CONTENT_LENGTH} X-Content-Type-Options: nosniff
تاريخ التعديل الأخير: 2024-08-21 (حسب التوقيت العالمي المتفَّق عليه)
[null,null,["تاريخ التعديل الأخير: 2024-08-21 (حسب التوقيت العالمي المتفَّق عليه)"],[[["The `/osc/state` API provides mutable camera status values like battery level, unlike the `/osc/info` API which returns static camera attributes."],["Camera state is represented by a `fingerprint` that uniquely identifies it and changes whenever a tracked state is modified."],["The `state` object contains various camera status details, including `batteryLevel`, storage information, and vendor-specific data."],["Manufacturers can introduce custom states within the `state` object using an underscore (_) prefix to avoid conflicts."]]],["The `/osc/state` API retrieves mutable camera status attributes. It outputs a `fingerprint`, a unique identifier for the current camera state, and a `state` object. The `state` object includes `batteryLevel`, `storageUri` and optional vendor-specific states prefixed with an underscore. It also contained `sessionId` and `storageChanged` which have been deprecated. The API uses POST and the response has a `200 OK` HTTP status with a content-type of `application/json`. The fingerprint changes with any tracked state change.\n"]]