HTTP
기본적으로 HTTP 서비스가 시작됩니다: http://localhost:10000.
이 포트는 서비스 설정에서 변경할 수 있습니다.
개요
이 섹션에서는 서비스에서 제공하는 HTTP 경로를 설명합니다.
아래의 모든 경로는 기본 기본 URL을 기준으로 합니다: http://localhost:10000.
버전
방법: GET
URL: http://localhost:10000/version
응답 예시:
{
"build_time": "2024-08-07T16:01:53Z",
"git_branch": "main",
"git_describe": "3.0.0-2-gce34c39e",
"git_hash": "ce34c39e",
"git_tag": "3.0.0",
"project_name": "haply-inverse-service",
"project_version": "3.0.0.0"
}
디바이스
방법: GET
URL: http://localhost:10000/devices
현재 장치 목록을 반환하며, 다음을 포함합니다. config, state및 status.
응답 예시:
{
"inverse3": [
{
"device_id": "04BA",
"config": { "...": "..." },
"state": { "...": "..." },
"status": { "...": "..." }
}
]
}
포스 스케일
방법: POST
URL: http://localhost:10000/force_scale
본문 예시:
{
"force_scale": 0.5
}
응답 예시:
{
"ok": true
}
중력 보정
방법: POST
URL: http://localhost:10000/gravity_compensation
본문 예시:
{
"device_id": "049D",
"enable": true,
"gravity_scaling_factor": 0.8
}
응답 예시:
{
"ok": true
}
토크 스케일링
방법: POST
URL: http://localhost:10000/torque_scaling
본문 예시:
{
"device_id": "049D",
"enable": true
}
응답 예시:
{
"ok": true
}
디바이스 휴대성
방법: POST
URL: http://localhost:10000/device_handedness
본문 예시:
{
"device_id": "049D",
"handedness": "right"
}
응답 예시:
{
"ok": true
}
구성 저장
Inverse3 디바이스에서만 작동합니다. 경고: 특정 디바이스에 적용할 수 있는 저장 횟수가 제한되어 있으므로 구성을 너무 자주 저장하지 마세요. 저장할 수 있는 횟수가 제한되어 있습니다.
방법: POST
URL: http://localhost:10000/save_configuration
본문 예시:
{
"device_id": "049D"
}
응답 예시:
{
"ok": true
}
직렬 사용
모든 시리얼 통신을 활성화하거나 비활성화합니다. 시리얼 통신이 비활성화되면 장치에 명령을 전송할 수 없습니다.
방법: POST
URL: http://localhost:10000/serial_enable
본문 예시:
{
"enable": true
}
응답 예시:
{
"ok": true
}
설정
다음 항목에 대해 설정 엔드포인트가 자동으로 생성됩니다:
- 모든 설정(메타데이터 포함) 나열
- 단일 설정값 읽기
- 설정 적용 (개별 또는 일괄)
- 키를 기본값으로 재설정하기
모든 설정 키에 대한 참조 정보는 여기에서 확인할 수 있습니다
노선
| 방법 | 경로 | 설명 |
|---|---|---|
| 받기 | /settings/ | 모든 설정 키, 값 및 메타데이터를 가져옵니다. |
| 게시물 | /settings/ | 여러 설정을 한 번에 일괄 적용합니다. |
| 받기 | /settings/{key} | 특정 설정 키의 현재 값을 가져옵니다. |
| 게시물 | /settings/{key} | 특정 키에 새로운 값을 할당합니다. |
| 삭제 | /settings/{key} | 키를 기본값으로 재설정합니다. |
응답 형태
받기 /settings/ (모든 설정)
지정된 키를 키로 하는 객체를 반환합니다. 각 항목에는 다음이 포함됩니다:
value: 현재 값metadata: 유형 + 제약 조건 + 잠금 상태
예시 항목:
{
"devices/detection/timeout": {
"metadata": {
"constraint": {
"range": {
"max": 15,
"min": 1,
"step": 0
}
},
"locked": false,
"type_hint": "INT"
},
"value": 5
}
}
받기 /settings/{key} (단일 설정)
요청된 키에 대한 값만 반환합니다(메타데이터는 포함되지 않음).
설정 적용
게시물 /settings/ (일괄 적용)
여러 키를 한 번에 일괄 적용합니다.
권장되는 데이터 형식: 키와 값을 매핑하는 JSON 객체.
{
"devices/detection/timeout": 5,
"devices/detection/advanced/wvg_description_filter": ["Haply USB Transceiver", "Haply Handle"]
}
게시물 /settings/{key} (단일 신청)
단일 키에 새로운 값을 적용합니다.
권장되는 데이터 형식: 원시 JSON 값 또는 래핑된 값(가독성을 위해 래핑된 값을 권장합니다).
{
"value": 5
}
설정 초기화
삭제 /settings/{key}
키를 기본값으로 재설정합니다.
이는 “기본값으로 초기화”하는 것과 같습니다.
타입 힌트
이 서비스는 추론하여 type_hint 자동으로. GENERIC 복합형에 대한 대체값으로 사용됩니다.
지원되는 힌트:
BOOLINTFLOATSTRINGVEC2VEC3VEC4TRANSFORMARR_INTARR_FLOATARR_STRINGGENERIC