API /osc/commands/execute
دستورات مشخص شده را روی دوربین اجرا می کند. خروجی یک شی فرمان است.
نام | تایپ کنید | شرح |
---|
name | رشته | دستوری که باید اجرا شود. |
parameters | هدف - شی | پارامترهای ورودی فرمان را با توجه به مشخصات تعاریف فرمان. لطفاً برای مثال به مشخصات OSC API مراجعه کنید. |
خروجی
نام | تایپ کنید | شرح |
---|
name | رشته | دستوری که باید اجرا شود. |
state | رشته | وضعیت فرماندهی باید یکی از موارد زیر باشد:-
done - کامل، نتایج در این پاسخ برگردانده شده است. -
inProgress - اجرا هنوز در حال انجام است. -
error - ناموفق، خطا را در پاسخ ببینید.
|
id | رشته (اختیاری) | شناسه فرمان این مقدار برای دستورهایی که وضعیت را برمی گرداند لازم است در حال پیش رفت . برای مثال دستور camera.takePicture به دلیل نیاز به دوخت چند ثانیه طول می کشد. برای جزئیات بیشتر به بخش "وضعیت" مراجعه کنید. |
results | شی (اختیاری) | نتایج فرمان این مقدار برای دستورهایی که حالت را برمیگردانند لازم است در صورتی انجام می شود که انتظار می رود فرمان نتایج را برگرداند. برای مثال، "نتایج" : { "AAA": "BBB"، ... } لطفاً برای مثال به مشخصات OSC API مراجعه کنید. |
error | شی (اختیاری) | شرح خطای فرمان این مقدار برای دستورهایی که error; به عنوان مثال،“error”: {
“code”: “missingParameter”
} |
progress | شی (اختیاری) | شرح پیشرفت فرمان این مقدار برای دستورهایی که حالت inProgress را برمیگردانند لازم است. به عنوان مثال،“progress”: {
“completion”: 0.8
} |
خطا
کد خطا | شرح |
---|
unknownCommand | دستور درخواست شده ناشناخته است، به عنوان مثال اگر یک کلاینت v2 (clientVersion روی 2 تنظیم شده است، به گزینه ها مراجعه کنید) یک دستور منسوخ شده از سطح 1 API را درخواست کند، درخواست باید با این کد خطا شکست بخورد. |
disabledCommand | فرمان اجرا شده در حال حاضر غیرفعال است، به عنوان مثال دستور "takePicture" زمانی که دوربین در حالت ویدئو است غیرفعال است، دستور processPicture زمانی که دوربین از delayProcessing پشتیبانی نمی کند غیرفعال می شود. این کد خطا در سطح 2 API اضافه شده است. |
cameraInExclusiveUse | دوربین از قبل در حال استفاده انحصاری است، جلسه جدید را نمی توان شروع کرد. این کد خطا در سطح 2 API منسوخ شده است. |
missingParameter | یک یا چند پارامتر مورد نیاز مشخص نشده است. |
invalidParameterName | یک یا چند پارامتر ورودی یا نام گزینه شناسایی نشد یا پشتیبانی نشد. |
invalidParameterValue | نام پارامتر یا گزینه شناسایی شد، اما یک یا چند مقدار نامعتبر است. به عنوان مثال، مقدار خارج از محدوده است. |
مثال |
---|
درخواست (API 1) | POST /osc/commands/execute HTTP/1.1
Host: [camera ip address]:[httpPort]
Content-Type: application/json;charset=utf-8
Accept: application/json
Content-Length: {CONTENT_LENGTH}
X-XSRF-Protected: 1
{
"name": "camera.setOptions",
"parameters": {
"sessionId": "12ABC3",
"options": {
"iso": 200,
"exposureCompensation": -2
}
}
} |
درخواست (API 2) | POST /osc/commands/execute HTTP/1.1
Host: [camera ip address]:[httpPort]
Content-Type: application/json;charset=utf-8
Accept: application/json
Content-Length: {CONTENT_LENGTH}
X-XSRF-Protected: 1
{
"name": "camera.setOptions",
"parameters": {
"options": {
"iso": 200,
"exposureCompensation": -2
}
}
} |
واکنش | HTTP/1.1 200 OK
Content-Type: application/json;charset=utf-8
Content-Length: {CONTENT_LENGTH}
X-Content-Type-Options: nosniff
{
"name": "camera.setOptions",
"state": "done"
} |
درخواست (API 1) | POST /osc/commands/execute HTTP/1.1
Host: [camera ip address]:[httpPort]
Content-Type: application/json;charset=utf-8
Accept: application/json
Content-Length: {CONTENT_LENGTH}
X-XSRF-Protected: 1
{
"name": "camera.takePicture",
"parameters": {
"sessionId": "12ABC3"
}
} |
درخواست (API 2) | POST /osc/commands/execute HTTP/1.1
Host: [camera ip address]:[httpPort]
Content-Type: application/json;charset=utf-8
Accept: application/json
Content-Length: {CONTENT_LENGTH}
X-XSRF-Protected: 1
{
"name": "camera.takePicture"
} |
واکنش | HTTP/1.1 200 OK
Content-Type: application/json;charset=utf-8
Content-Length: {CONTENT_LENGTH}
X-Content-Type-Options: nosniff
{
"name": "camera.takePicture",
"state": "inProgress",
"id": "90ABCD",
"progress": {
"completion": 0
}
} |