/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 देखें) जो एपीआई लेवल 1 से अब काम नहीं करने वाले निर्देश का अनुरोध करता है, तो अनुरोध इस गड़बड़ी कोड के साथ पूरा नहीं होना चाहिए. |
disabledCommand |
फ़िलहाल, चलाया गया निर्देश बंद है, जैसे कि `takeपिक्चर` कमांड बंद होने पर,
कैमरा, वीडियो मोड है. अगर कैमरा पिछले संसाधन को प्रोसेस करने में मदद नहीं करता है, तो यह निर्देश नहीं मिलता है. गड़बड़ी का यह कोड, एपीआई लेवल 2 में जोड़ा गया था. |
cameraInExclusiveUse |
कैमरे का इस्तेमाल पहले से ही किया जा रहा है. इसलिए, नया सेशन शुरू नहीं किया जा सकता. गड़बड़ी के इस कोड को एपीआई लेवल 2 में बंद कर दिया गया था. |
missingParameter |
एक या उससे ज़्यादा ज़रूरी पैरामीटर नहीं बनाए गए थे. |
invalidParameterName |
एक या उससे ज़्यादा इनपुट पैरामीटर या विकल्प के नाम की पहचान नहीं की जा सकी या इस नाम का इस्तेमाल नहीं किया जा सकता. |
invalidParameterValue |
पैरामीटर या विकल्प के नाम की पहचान हो गई थी, लेकिन एक या उससे ज़्यादा वैल्यू अमान्य हैं; उदाहरण के लिए, वैल्यू तय सीमा से बाहर है. |
उदाहरण |
अनुरोध (एपीआई 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
}
}
} |
अनुरोध (एपीआई 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"
} |
अनुरोध (एपीआई 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"
}
} |
अनुरोध (एपीआई 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
}
} |