로딩 중...

Haply 장치용 서비스 런타임 및 런타임 SDK입니다. 편리한 설치 프로그램으로 묶여 있습니다. "external" 서비스라고도 합니다.
API 재작성 이후 1년 만에 나온 가장 큰 규모의 릴리스입니다. 3.5.0에서는 통합 3D 수학 레이어, Minverse 전면 지원, 타입 지정 이벤트 스트림, 완전한 설정 API, 그리고 더 깔끔해진 HTTP 인터페이스가 도입되었습니다. 이와 함께 1년간의 버그 수정과 사용성 개선도 포함되어 있습니다.
basis, mount, preset, transform, filters, handedness, torque_scaling, gravity_compensation, home_return.{ok, error, data} 엔벨로프(?format=json), 와일드카드 세션 선택자를 제공합니다.POST /ports/{port}/reset으로 재설정할 수 있습니다.basis, preset, mount, force_gate, damping과 세션별 profile 및 basis가 이제 모두 configure에 포함됩니다. 출력 구성 맵과 맞춰져 있어, 전송한 내용을 나중에 읽어올 때 동일한 형태로 되돌아옵니다.defaults, arm_front, arm_front_centered, led_front, led_front_centered) 중 하나를 선택하거나 명시적 transform을 전송할 수 있습니다. 마운트를 수동으로 변경하면 프리셋이 자동으로 custom으로 전환됩니다.position, vector, angles, torques가 범용 values 배열을 대체합니다.set_angular_torques가 set_angular_torque를 대체합니다(단수형은 지원 중단됨).config, state, status 객체가 포함됩니다. 새로운 출력 필드에는 current_cursor_force, current_cursor_position, current_angular_torques, current_angular_position, control_domain, control_mode, transform, transform_velocity, 더 풍부해진 config.*, 그리고 status.safety(기본적으로 숨김)가 포함됩니다.position, rotation, scale)만 전송할 수 있습니다.GET / — 서비스 버전입니다.GET/POST/DELETE /settings 및 /settings/* — 전체 키-값 설정 API입니다.GET /sessions/{session} 및 GET/POST/DELETE /sessions/{session}/profile.GET /devices?session=<selector> — 장치 좌표를 지정된 세션의 애플리케이션 공간으로 변환합니다./inverse3/0/..., Inverse 계열의 모든 장치는 /inverse__ITALIC_italic-1__/...).command_data JSON 형식을 사용하므로, 한 전송 방식을 위해 작성한 코드는 다른 전송 방식에서도 동작합니다.?format=json으로 활성화할 수 있습니다. /settings* 및 GET /home_return은 기본적으로 {ok, error, data} 형식을 사용합니다. 원시 형식을 사용하려면 ?format=plain을 지정하세요.*(임의의 문자열)와 ?(단일 문자)를 사용할 수 있습니다.%2A, %3A 등은 라우팅 전에 디코딩됩니다.communication/events/port에서 제공되는 전용 WebSocket 이벤트 스트림입니다.configure.force_gate.gain으로 구성할 수 있으며, 영속적인 기본값을 지원합니다.position = 0, rotation = identity, scale = 1)는 기본적으로 출력에서 생략되어 페이로드 크기가 줄고, 구버전 Unity 패키지의 4 KB 메시지 제한과의 호환성이 복원됩니다. 두 가지 고급 설정(serialization/explicit_fields, serialization/force_complete_transforms)을 사용하면, 이 값이 필요한 소비자를 위해 모든 필드를 다시 포함시킬 수 있습니다.communication/bind_all_interfaces 설정으로 네트워크 접근을 명시적으로 허용할 수 있습니다.inverse*는 Inverse 계열의 모든 장치와 일치합니다).force_gate와 함께 configure 맵으로 이동했습니다.1년간 누적된 버그 수정 사항이며, 영향이 가장 큰 항목은 아래와 같습니다.
~/Library/Application Support/에 저장됩니다.probe_position 명령을 보내도 대기 중인 basis / preset / profile 변경 사항이 더 이상 조용히 덮어써지지 않습니다.0으로 직렬화되던 문제.--dev 옵션과 함께 사용하면 --log-level 옵션이 이제 올바르게 적용됩니다 (이전에는 조용히 debug 레벨로 재설정되었습니다).여전히 동작하지만 향후 메이저 버전에서 제거될 예정입니다. 해당되는 경우 응답에 deprecation_warning 필드가 포함됩니다.
| 사용 중단 항목 | 대체 항목 |
|---|---|
| POST /force_scale | POST /settings/devices/inverse*/filters/force_scale/gain |
| POST /gravity_compensation | POST /{device}/{id}/config/gravity_compensation |
| POST /torque_scaling | POST /{device}/{id}/config/torque_scaling |
| POST /device_handedness | POST /{device}/{id}/config/handedness |
| POST /serial_enable | POST /settings/communication/serial/enabled |
| POST /experimental/features/grip_dropped_simulation_stopper | Settings API |
| POST /experimental/features/screensaver_enable | Settings API |
| WebSocket command_data.values | position, vector, angles, torques |
| WebSocket set_angular_torque | set_angular_torques |
| WebSocket probe_cursor_position | probe_position |
| WebSocket set_coordinate_origin | configure.preset |
| WebSocket session-level set_basis | configure.basis |
3.4.19 대비 확실한 호환성 파괴 변경은 없습니다. 기존 연동을 위한 참고 사항은 두 가지입니다:
deprecation_warning 필드가 포함됩니다. 응답 스키마를 엄격하게 검증하는 클라이언트는 이 추가 필드를 허용해야 합니다.command_data의 values 필드는 사용 중단되었지만 여전히 파싱됩니다. 명명된 필드를 사용하는 것을 권장합니다.cpp-glz/)이 추가되었습니다.configure.preset, 명명된 명령 필드, print_state() 헬퍼)에 맞춰 재작성되었습니다.이 릴리스의 사용 가능한 전체 다운로드: