ביצוע
קל לארגן דפים בעזרת אוספים
אפשר לשמור ולסווג תוכן על סמך ההעדפות שלך.
ה-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 |
הפקודה המבוקשת לא ידועה, למשל אם לקוח גרסה 2 (clientVersion מוגדר לערך 2 ראו Options) מבקש פקודה שהוצאה משימוש מרמת API 1, הבקשה אמורה להיכשל עם קוד השגיאה הזה. |
disabledCommand |
הפקודה שהרצתם מושבתת כרגע, למשל הפקודה 'TakePicture' מושבתת כאשר
המצלמה במצב וידאו, הפקודה ProcessingPicture מושבתת כשהמצלמה לא תומכת ב-dellProcessing. קוד השגיאה הזה נוסף ברמת 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 ו/או של השותפים העצמאיים שלה.
עדכון אחרון: 2024-08-21 (שעון UTC).
[null,null,["עדכון אחרון: 2024-08-21 (שעון UTC)."],[[["\u003cp\u003eThe \u003ccode\u003e/osc/commands/execute\u003c/code\u003e API allows you to execute commands on the camera, such as adjusting settings or taking pictures.\u003c/p\u003e\n"],["\u003cp\u003eInput requires the command \u003ccode\u003ename\u003c/code\u003e and any necessary \u003ccode\u003eparameters\u003c/code\u003e defined in the OSC API Specification.\u003c/p\u003e\n"],["\u003cp\u003eOutput provides the command \u003ccode\u003ename\u003c/code\u003e, \u003ccode\u003estate\u003c/code\u003e, and may include an \u003ccode\u003eid\u003c/code\u003e, \u003ccode\u003eresults\u003c/code\u003e, \u003ccode\u003eerror\u003c/code\u003e, or \u003ccode\u003eprogress\u003c/code\u003e depending on the command and its execution status.\u003c/p\u003e\n"],["\u003cp\u003ePossible command states include \u003ccode\u003edone\u003c/code\u003e, \u003ccode\u003einProgress\u003c/code\u003e, and \u003ccode\u003eerror\u003c/code\u003e, with further details provided in the output fields.\u003c/p\u003e\n"],["\u003cp\u003eRefer to the OSC API Specification for specific command definitions, parameters, and result formats.\u003c/p\u003e\n"]]],["The `/osc/commands/execute` API triggers commands on a camera, defined by a command `name` and associated `parameters`. The output indicates the command's `state` (`done`, `inProgress`, or `error`), an optional `id` for `inProgress` commands, `results` for completed commands, or `error` details. Possible errors include `unknownCommand`, `disabledCommand`, `missingParameter`, and `invalidParameterValue`. Example requests demonstrate how to set options and take a picture, with the responses showing command completion or ongoing progress.\n"],null,["# Execute\n\nThe `/osc/commands/execute` API executes specified commands on the camera. The output is a command object.\n\nInput\n-----\n\n| Name | Type | Description |\n|--------------|--------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `name` | String | The command to be executed. |\n| `parameters` | Object | Command input parameters according to the command definitions specification. Please refer to [OSC API Specification](/streetview/open-spherical-camera/reference/camera) for examples. |\n\nOutput\n------\n\n| Name | Type | Description |\n|------------|-------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `name` | String | The command to be executed. |\n| `state` | String | State of the command. Should be one of the following: - `done` - Complete, results have been returned in this response. - `inProgress` - Execution is still in progress. - `error` - Failed, see error in the response. |\n| `id` | String (optional) | Command ID. This value is required for commands returning the status`inProgress`. For example, the `camera.takePicture` command takes a few seconds due to the need for stitching. See the \"Status\" section for more details. |\n| `results` | Object (optional) | Command results. This value is required for commands returning state`done` if the command is expected to return results; for example, \"results\" : { \"AAA\": \"BBB\", ... } Please refer to [OSC API Specification](/streetview/open-spherical-camera/reference/camera) for examples. |\n| `error` | Object (optional) | Command error description. This value is required for commands returning state `error;` for example, ```text “error”: { “code”: “missingParameter” } ``` |\n| `progress` | Object (optional) | Command progress description. This value is required for commands returning state `inProgress`; for example, ```text “progress”: { “completion”: 0.8 } ``` |\n\nError\n-----\n\n| Error code | Description |\n|-------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `unknownCommand` | Requested command is unknown, e.g. if a v2 client (clientVersion is set to 2, see [Options](/streetview/open-spherical-camera/reference/options)) requests a deprecated command from API level 1, the request should fail with this error code. |\n| `disabledCommand` | Command executed is currently disabled, e.g. \\`takePicture\\` command is disabled when camera is video mode, processPicture command is disabled when the camera doesn't support delayProcessing. **This error code was added in API level 2.** |\n| `cameraInExclusiveUse` | Camera is already in exclusive use, new session can't be started. **This error code was deprecated in API level 2.** |\n| `missingParameter` | One or more required parameters were not specified. |\n| `invalidParameterName` | One or more input parameter or option name was unrecognized or unsupported. |\n| `invalidParameterValue` | The parameter or option names were recognized, but one or more values is invalid; for example, the value is out of range. |\n\n| Example ------- ||\n|---------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| **Request (API 1)** | ```http 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 } } } ``` |\n| **Request (API 2)** | ```http 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 } } } ``` |\n| **Response** | ```http 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\" } ``` |\n| **Request (API 1)** | ```http 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\" } } ``` |\n| **Request (API 2)** | ```http 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\" } ``` |\n| **Response** | ```http 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 } } ``` |"]]