ביצוע
קל לארגן דפים בעזרת אוספים
אפשר לשמור ולסווג תוכן על סמך ההעדפות שלך.
ה-API של /osc/commands/execute
מריץ פקודות מסוימות במצלמה. הפלט הוא אובייקט פקודה.
שם |
תיאור |
התיאור |
name |
מחרוזת |
הפקודה שצריך לבצע. |
parameters |
אובייקט |
פרמטרי קלט של פקודה בהתאם למפרט של הגדרות הפקודות. תוכלו למצוא דוגמאות לכך במפרט OSC API. |
פלט
שם |
תיאור |
התיאור |
name |
מחרוזת |
הפקודה שצריך לבצע. |
state |
מחרוזת |
מצב הפקודה. היא צריכה להיות אחת מהאפשרויות הבאות:
done – הושלמה, התוצאות הוחזרו בתגובה הזו.
inProgress - הביצוע עדיין מתבצע.
error – הפעולה נכשלה. אפשר לראות את השגיאה בתשובה.
|
id |
מחרוזת (אופציונלי) |
מזהה הפקודה. הערך הזה נדרש לפקודות שמחזירה את הסטטוס
inProgress . לדוגמה, הפקודה camera.takePicture נמשכת מספר שניות עקב הצורך בחיבור חיבור. מידע נוסף זמין בקטע 'סטטוס'. |
results |
אובייקט (אופציונלי) |
תוצאות הפקודה. הערך הזה נדרש לפקודות שמחזירה את המצב
done אם הפקודה צפויה להחזיר תוצאות. לדוגמה,
“results” : {
“AAA”: “BBB”,
...
}
ניתן לעיין בדוגמאות שמופיעות במפרט OSC API. |
error |
אובייקט (אופציונלי) |
תיאור של שגיאה בפקודה. הערך הזה נדרש לפקודות שמחזירה את המצב error; , לדוגמה,“error”: {
“code”: “missingParameter”
} |
progress |
אובייקט (אופציונלי) |
תיאור ההתקדמות בפקודה. הערך הזה נדרש לפקודות שמחזירה את המצב inProgress ; לדוגמה,“progress”: {
“completion”: 0.8
} |
שגיאה
קוד שגיאה |
התיאור |
unknownCommand |
הפקודה המבוקשת אינה ידועה. למשל, אם לקוח v2 (clientVersion מוגדר ל-2, ראו Options) מבקש פקודה שהוצאה משימוש מרמת API 1, הבקשה אמורה להיכשל עם קוד השגיאה הזה. |
disabledCommand |
הפקודה המופעלת מושבתת כרגע. למשל, הפקודה 'takepicture' מושבתת כשהמצלמה נמצאת במצב וידאו, והפקודה methodpicture מושבתת כשהמצלמה לא תומכת בעיכוב עיבוד. קוד השגיאה הזה התווסף ברמת API 2. |
cameraInExclusiveUse |
המצלמה כבר נמצאת בשימוש בלעדי, לא ניתן להתחיל סשן חדש. קוד השגיאה הזה הוצא משימוש ברמת API 2. |
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
}
} |
אלא אם צוין אחרת, התוכן של דף זה הוא ברישיון Creative Commons Attribution 4.0 ודוגמאות הקוד הן ברישיון Apache 2.0. לפרטים, ניתן לעיין במדיניות האתר Google Developers. Java הוא סימן מסחרי רשום של חברת Oracle ו/או של השותפים העצמאיים שלה.
עדכון אחרון: 2023-12-01 (שעון UTC).
[{
"type": "thumb-down",
"id": "missingTheInformationINeed",
"label":"חסרים לי מידע או פרטים"
},{
"type": "thumb-down",
"id": "tooComplicatedTooManySteps",
"label":"התוכן מורכב מדי או עם יותר מדי שלבים"
},{
"type": "thumb-down",
"id": "outOfDate",
"label":"התוכן לא עדכני"
},{
"type": "thumb-down",
"id": "translationIssue",
"label":"בעיה בתרגום"
},{
"type": "thumb-down",
"id": "samplesCodeIssue",
"label":"בעיה בדוגמאות/בקוד"
},{
"type": "thumb-down",
"id": "otherDown",
"label":"סיבה אחרת"
}]
[{
"type": "thumb-up",
"id": "easyToUnderstand",
"label":"התוכן קל להבנה"
},{
"type": "thumb-up",
"id": "solvedMyProblem",
"label":"התוכן עזר לי לפתור בעיה"
},{
"type": "thumb-up",
"id": "otherUp",
"label":"סיבה אחרת"
}]