Axxon One 구성 설정은 ConfigurationService.proto 프로토 파일에 설명되어 있습니다.
사용되는 메서드는 2가지입니다.
- Changeconfig.
- ListConfig.
ChangeConfig 메서드
ChangeConfig 메서드는 시스템의 모든 객체를 생성, 편집 및 삭제할 수 있게 합니다.
이후, 모든 시스템 객체나 요소는 단위라고 불립니다.
입력 데이터
- added – 추가해야 할 단위 배열
- changed – 변경해야 할 단위 배열
- remove – 삭제해야 할 단위 배열
단위 구조
type 필드는 단위가 무엇인지를 결정합니다.
단위는 서브단위를 포함할 수 있습니다(units 필). 예를 들어, VideoChannel.0 단위는 하위 단위인 Streaming.0을 가질 수 있습니다.
각 단위는 uid 필드를 가집니다. 이는 단위 식별자로, 단위의 모든 "부모"들을 "/" 기호로 구분하여 구성됩니다. 예를 들어, Streaming.0 단위의 uid 필드는 다음과 같습니다: hosts/Node1/DeviceIpint.1/VideoChannel.0/Streaming.0.
여기서
- uid 는 "hosts"로 시작합니다.
- Node1 은 노드 이름입니다.
- DeviceIpint.1 은 장치 이름입니다.
- VideoChannel.0 은 카메라의 첫 번째 비디오 채널입니다.
- Streaming.0 은 채널의 첫 번째 비디오 스트림입니다.
추가적으로, 단위는 properties 필드에 설정을 여러 개 포함할 수 있습니다.
출력 데이터
메서드에 대한 응답으로, 다음 데이터가 반환됩니다.
- failed – 추가할 수 없었던 단위
- added – 성공적으로 추가된 단위의 uid
ListConfig 메서드
이 메서드는 단위 목록을 가져오는 기능을 제공합니다.
입력 데이터
unit_uids는 가져올 단위들의 uid 배열입니다.
출력 데이터
- units는 성공적으로 찾은 단위들의 목록입니다.
- unreachable_objects는 일시적으로 사용할 수 없는 단위들의 목록입니다.
- not_found_objects는 찾을 수 없는 단위들의 목록입니다.
units 필드는 UnitDescriptor 타입입니다.
데이터 매개변:
- uid는 단위 식별자로, 단위의 모든 "부모"들이 "/" 기호로 구분되어 구성됩니다. 예를 들어, Streaming.0 단위의 uid 필드는 다음과 같습니다: hosts/Node1/DeviceIpint.1/VideoChannel.0/Streaming.0.
- display_id는 일반적으로 부모 범위 내에서 고유한 짧은 ID입니다. 예를 들어, DeviceIpint.1 단위의 경우, display_id == 1 (때로는 type과 함께 제공될 수 있음).
- type은 단위의 유형입니다. 예를 들어, DeviceIpint.1 단위의 경우, type == DeviceIpint.
- properties는 단위 설정의 목록입니다.
- units는 포함된 단위들로, 이들 중 일부는 전체 설명을 가질 수도 있고, 일부는 간략한 설명을 가질 수 있습니다. 간략한 설명인 경우, stripped == true 이며 설명에서 사용할 수 있는 필드는 display_id, type, uid 입니다.
- factory는 주어진 단위에 대해 생성할 수 있는 포함된 단위들입니다. 사용 가능한 필드는 다음과 같습니다.
- type – 생성할 수 있는 서브 단위의 유형
- properties – 서브 단위 설정 목록