Keypose Store Current Pose
URL
/v1/bundle/{linkID}
Method
POST
Caution
The SDK does not support CORS, so when you send a request with "OPTIONS" method, the SDK returns an error because an HTTP request of "Content-Type" is always sent as "text/plain" NOT "application/json".
Payload
{
"command": "keyposeStoreCurrentPose",
"index": 0,
}
| Label | Type | Value | Description |
|---|---|---|---|
command |
string |
keyposeStoreCurrentPose |
command name |
index |
integer |
0 - 5 |
Keypose slot you want to store the current pose |
Return value
Note
Use this command to store your overall pose as a keypose. You can move your system to this location later by referencing with index.
Keypose Store by Numeric Data
URL
/v1/bundle/{linkID}
Method
POST
Caution
The SDK does not support CORS, so when you send a request with "OPTIONS" method, the SDK return a error because of HTTP request of "Content-Type" is sent always as "text/plain" NOT "application/json".
Payload
{
"command":"keyposeStoreWithNumericData",
"index":0,
"{axis name}":"{setpoint value}"
}
| Label | Type | Value | Description |
|---|---|---|---|
command |
string |
keyposeStoreWithNumericData |
command name |
index |
integer |
0 - 5 |
Keypose slot index you want to move |
axis name |
float |
In which axis direction you want to move |
| Axis Name | Type | Value Range |
|---|---|---|
headPan |
float |
-180.0 - +180.0 |
headTilt |
float |
-180.0 - +180.0 |
slide |
float |
It depends your calibrations. |
focus |
float |
|
jibPlusPan |
float |
|
jibPlusTilt |
float |
Example JSON You want to send command for three axes; Head Pan, Head Tilt and Slide;
{
"command":"keyposeStoreWithNumericData",
"index":0,
"headPan":0.0,
"headTilt":0.0,
"slide":0.0,
}
Return value
Keypose Move with Fixed Duration
URL
POST /v1/bundle/{linkID}
Caution !!! The SDK does not support CORS, so when you send a request with "OPTIONS" method, the SDK returns an error because an HTTP request of "Content-Type" is always sent as "text/plain" NOT "application/json".
Payload
{
"command":"keyposeMoveFixedDuration",
"index":0,
"duration":0.5,
"acceleration":0.0
}
| Label | Type | Value | Description |
|---|---|---|---|
command |
string |
keyposeMoveFixedDuration |
command name |
index |
integer |
0-5 |
Keypose slot index you want to move |
acceleration |
float |
0.0 - 1.0 |
Ease in / out amount. 0.0 is immediate move, 1.0 is most smooth |
duration |
float |
second |
Planned motion duration |
Note
System doesn't guarantee that every movement will be completed as requested. If requested duration is lower than what system can achieve with 100% speed, system moves with 100% speed.
Keypose Move with Fixed Speed
URL
POST /v1/bundle/{linkID}
Caution !!! The SDK does not support CORS, so when you send a request with "OPTIONS" method, the SDK returns an error because an HTTP request of "Content-Type" is always sent as "text/plain" NOT "application/json".
Method
POST
Payload
{
"command": "keyposeMoveFixedSpeed",
"index": 0,
"acceleration": 0.5,
"speed": 8.0,
}
| Label | Type | Value | Description |
|---|---|---|---|
command |
string |
keyposeMoveFixedSpeed |
command name |
index |
integer |
0-5 |
Keypose slot index you want to move |
acceleration |
float |
0.0 - 1.0 |
Ease in / out amount. 0.0 is immediate move, 1.0 is most smooth |
speed |
float |
-1.0 - +1.0 |
Speed ratio for motion |
Note
System doesn't guarantee that every movement will be completed as requested. If requested duration is lower than what system can achieve with 100% speed, system moves with 100% speed.
Loop Between Keyposes with Fixed Duration
URL
POST /v1/bundle/{linkID}
Method
POST
Caution !!! The SDK does not support CORS, so when you send a request with "OPTIONS" method, the SDK returns an error because an HTTP request of "Content-Type" is always sent as "text/plain" NOT "application/json".
Payload
{
"command":"keyposeLoopFixedDuration",
"index1":0,
"index2":1,
"duration":0.0,
"acceleration":0.0
}
| Label | Type | Value | Description |
|---|---|---|---|
command |
string |
keyposeMoveFixedDuration |
command name |
index1 |
integer |
0 - 5 |
|
index2 |
integer |
0 - 5 |
|
acceleration |
float |
0.0 - 1.0 |
Ease in / out amount. 0.0 is immediate move, 1.0 is most smooth |
duration |
float |
second |
Planned motion duration |
Note
System doesn't guarantee that every movement will be completed as requested. If requested duration is lower than what system can achieve with 100% speed, system moves with 100% speed.
Loop Between Keyposes with Fixed Speed
URL
POST /v1/bundle/{linkID}
Method
POST
Caution !!! The SDK does not support CORS, so when you send a request with "OPTIONS" method, the SDK returns an error because an HTTP request of "Content-Type" is always sent as "text/plain" NOT "application/json"..
Payload
{
"command": "keyposeLoopFixedSpeed",
"index1": 0,
"index2": 0,
"acceleration": 0.5,
"speed": 8.0,
}
| Label | Type | Value | Description |
|---|---|---|---|
command |
string |
keyposeLoopFixedSpeed |
command name |
index1 |
integer |
0 - 5 |
Keypose slot index you want to move |
acceleartion |
float |
0.0 - 1.0 |
Ease in / out amount. 0.0 is immediate move, 1.0 is most smooth |
speed |
float |
-1.0 - +1.0 |
Speed ratio for motion |
Note
System doesn't guarantee to move within you ask for it. If requested duration is lower than what system can achive with %100 speed, system moves with %100 speed.
Read Keypose Numeric Information
URL
POST /v1/bundle/{linkID}
Method
POST
Caution !!! The SDK does not support CORS, so when you send a request with "OPTIONS" method, the SDK returns an error because an HTTP request of "Content-Type" is always sent as "text/plain" NOT "application/json".
Payload
{
"command": "keyposeReadNumericValues",
"index": 0
}
| Label | Type | Value | Description |
|---|---|---|---|
command |
string |
keyposeReadNumericValues |
command name |
index |
integer |
0 - 5 |
Keypose slot index you want to get information about keypose |
Return value
{
"data": {
"{axis_name}": "{set_point}",
},
"result": "ok"
}
Example Return
{
"data": {
"focus": 0,
"headPan": 0.0,
"headTilt": 0.0,
"index": 0,
"jibPlusPan": -1.0,
"jibPlusTilt": -1.0,
"slide": 0.0
},
"result": "ok"
}
| Label | Type | Value | Description |
|---|---|---|---|
| data | string |
|
Update status |
| Axis Name | Type | Value Range |
|---|---|---|
headPan |
float |
-180.0 - +180.0 |
headTilt |
float |
-180.0 - +180.0 |
slide |
float |
It depends your calibrations. |
focus |
float |
|
jibPlusPan |
float |
|
jibPlusTilt |
float |
Delete Keypose
TO BE FILLED
URL
POST /v1/bundle/{linkID}
Method
POST
Caution !!! The SDK does not support CORS, so when you send a request with "OPTIONS" method, the SDK returns an error because an HTTP request of "Content-Type" is always sent as "text/plain" NOT "application/json".
Payload
{
"command":"keyposeDeletePose",
"index":1
}
| Label | Type | Value | Description |
|---|---|---|---|
command |
string |
keyposeDeletePose |
command name |
index |
integer |
0 - 5 |
Keypose slot index you want to get information about keypose |
Default Return Values
{
"result": "ok"
}
Given arguments are invalid.
{
"result": "invalid setup"
}
Given device is invalid