소개

누구나 ORBRO Connect SDK를 통해 위젯과 앱 형태로 ORBRO 상에 하나의 통합된 UI로 배포할 수 있습니다. 배포된 앱들은 ORBRO를 사용하는 모든 기업/기관/사용자에게 공개하거나 본인이 소속한 조직에서만 활용할 수도 있습니다.

또한 Connect 앱은 ORBRO와는 별도로 타 개발자 또는 타 사의 인프라에서 개발/호스팅/운영이 되어도 무관하도록 인증 절차를 지원하기 때문에 기술 스택, 인프라의 선택이 자유롭습니다.

ORBRO에 배포된 Connect 앱 위젯

ORBRO에 배포된 Connect 앱 위젯

ORBRO에 배포된 Connect 앱 (Mid-size)

ORBRO에 배포된 Connect 앱 (Mid-size)

ORBRO에 배포된 Connect 앱 (Large-size)

ORBRO에 배포된 Connect 앱 (Large-size)

ORBRO 개발자 콘솔에 업로드 및 배포된 앱 목록

ORBRO 개발자 콘솔에 업로드 및 배포된 앱 목록

ORBRO 관리자 설정에서 설치 가능한 배포된 앱 목록

ORBRO 관리자 설정에서 설치 가능한 배포된 앱 목록

앱 Descriptor

ORBRO에 앱을 등록하거나 배포하기 위해서는 앱의 정보를 식별하기 위한 descriptor를 정의해야합니다. (보통 파일 이름은 orbro-connect.json으로 합니다.)

앱 배포 전 기본적인 앱 등록 절차는 Getting Started 문서를 참고해주세요.

아래는 앱 Descriptor json 파일에 명시 가능한 앱의 정보를 정의하는 명세입니다.

{
    "id": "com.mycompany.myfirstapp",
    "name": "My First App",
    "description": "나의 첫 앱입니다.",
    "vendor": {
        "name": "My Company",
        "url": "<https://mycompany.com>"
    },
    "baseUrl": "<https://myfirstapp.com>",
    "scopes": [
        "every", "transport"
    ],
    "modules": {
        "general": [
            {
                "type" : "Mid",
                "key": "my-first-weather-app",
                "url": "/my-first-weather-app",
                "name": "나의 첫 앱",
                "icon": {
                    "width": 16,
                    "height": 16,
                    "url": "/img/logo-white.png"
                },
                "favorite_button" : {
                  "border-color": "#A7A7A7",
                  "background-color": "#A7A7A7"
                },
                "setting_button": {
                  "url": "/setting"
                }
            }
        ],
        "widget": [
          {
            "type" : "Default",
            "key": "my-first-app-widget",
            "url": "/weather-widget",
            "name": "위젯 이름",
            "capabilities": ["Building", "BusStop", "CCTV"]
          }
        ],
        "mobile": [
          {
              "type" : "Mid",
              "key": "com.mycompany.mymobileapp",
              "name": "나의 첫 모바일 앱",
              "icon": {
                  "width": 16,
                  "height": 16,
                  "url": "/img/logo-white.png"
              }
              "splash_image" : {
                "url": "/img/splash.png"
              }
          }
        ],
        "webhooks": [
        {
          "event_name": "device:device_updated or alarm:alarm_occurred or alarm:alarm_cleared",
          "callback_api": "<full_path>",
          "property": "profile_id or device_id, alarm_code",
          "value": "<profile_id> or <device_id>, <alarm_code>"
        }
      ]
    },
    "version" : "0.1"
}

기본

속성 [타입] 필수 항목 여부 설명 값 예시
id [string] Required 앱의 고유한 ID. 값이 고유하지 않을 경우 앱의 배포 불가. “com.mycompany.myapp”
name [string] Required 앱의 이름 “My App”
description [string] Optional 앱의 설명 “첫번째 앱”
vendor [object] Optional name (Required)
→ 앱 개발사의 이름

url (Required) → 앱 개발사의 웹 사이트 URL | { name. : “ORBRO”, url : “https://orbro.ai” } | | baseUrl [string] | Required | 앱을 서비스 할 호스팅 도메인의 루트 URL | “https://my-service.com” | | scopes [array] | Required | 앱이 사용하는 서비스 권한

every → 모든 서비스 권한

user → /roles, /users, /organizations 등 사용자 연관 서비스 사용 권한

device → /devices, /alarms, /telemetries, /attributes 등 기기 연관 서비스 사용 권한 | [”every”] | | version | Optional | 앱의 버전 | “0.1” |

modules

general