viewimage.php?id=3eb0d134f1c630af60b8c5&no=24b0d769e1d32ca73dea82fa11d028318d8d127b7d4f8c0d97642086961d4aa32a2b7e81eb2e865f8023733704bf7c1924b3eed0bba58d060d8804a2995d714893ee


https://smartthings-developers-user-translation.fandom.com/ko/wiki/SmartThings%EC%9D%98_%EC%A7%9C%EC%9E%84%EC%83%88

SmartThings의 짜임새개발을 시작하기 전에 SmartThings 플랫폼의 기본 원리를 아는 것이 중요합니다. 여기서는 플랫폼의 몇 가지 주요 컴포넌트, 또는 밑바탕이 되는 개발의 요소를 살펴보겠습니다. SmartThings 플랫폼에는 SmartThings 생태계의 기능(Capabilities)을 쓰는 데에 있어야 하는 모든 것들이 있습니다. 여기에는 유저의 요청을 따르는 것, 기기와 클라우드 사이의 통신을 이뤄내는 것, 자동화를 켜고 돌리는 것, 유저의 집과 SmartThings Cloud에서 벌어지는 일을 모니터링 하는 것, 그리고 더 많은 게 있습니다. SmartThings Cloud는 복잡한 자동화가 잘 돌아 갈 수 있게 하고, 기기가 잘 돌아가는 지 살피고, SmartThings에 온보딩된 기기의 판올림을 돕고, 유저가 SmartThings 앱과 같은 SmartThings 클라이언트로 기기와 자동화를 원격으로 들어 가서 볼 수 있도록 하는 플랫폼의 일부입니다. SmartThings Cloud는 집smartthings-developers-user-translation.fandom.com







viewimage.php?id=3eb0d134f1c630af60b8c5&no=24b0d769e1d32ca73dea82fa11d028318d8d127b7d4f8c0d97642086961d4aa32a2b7e81eb2e865f8023737354e9141a9e0e21b51562212a8db6f01c6f86a140823551ca8cab



SmartThings 플랫폼


스마트싱스는 클라우드 위에 올라간 플랫폼의 여러 구성요소로 되어 있는 플랫폼의 형태를 띈다.

그래서 스마트싱스를 이해하려면, 스마트싱스 클라우드를 먼저 이해해야한다.





SmartThings 클라우드



스마트싱스는 API와 불러오기(Subscription)으로 이뤄져 있다.

API는 데이터들의 묶음 셋이고, ubscription은 구독이라는 뜻이 있는데, 정말로 구독의 뜻 대로 스마트싱스에서는 스마트앱스와 같은 프로그램을 쓸 때 구독형으로 불러온다.


구독은 구독을 시작할 수도 있지만, 해제할 수도 있지. 따라서 스마트싱스에 깔리는 모든 프로그램들은 될 때 부터 삭제될 때 까지의 모든 과정이 만들어져 있다.

구독의 의미대로, 스마트싱스안에서 돌아가는 모든 프로그램들은 앱이 깔려있는 기기 안에 항상 직접적으로 깔리지는 않는다. 그럼 이 건 어떻게 돌아가는 걸까?


보통 이 것들은 웹앱 플러그인의 형태를 가지고 있다. 스마트싱스에서는 ppk라는 확장자로 스마트싱스의 앱 안에 있는 구성 폴더 안에 존재할 수 있다.

웹앱 플러그인의 형태이기 때문에, 애드온, DLC와 같이 스마트싱스의 앱이랑 분리 된 구조를 가진다.



viewimage.php?id=3eb0d134f1c630af60b8c5&no=24b0d769e1d32ca73dea82fa11d028318d8d127b7d4f8c0d97642086961d4aa32a2b7e81eb2e865f8023737354e9141a9e0e21b51562212a8db6f3183ed4f444bac3186b059f

이 2개의 스크린샷은 하나의 앱 안에 있지 않다

왼쪽에 있는 화면이 플러그인이고, 오른쪽에 있는 화면이 스마트싱스 앱이다


즉, 스마트싱스 앱은 여러 개의 개별 플러그인 페이지들을 통합한 앱의 형태를 가지고 있다.





viewimage.php?id=3eb0d134f1c630af60b8c5&no=24b0d769e1d32ca73dea82fa11d028318d8d127b7d4f8c0d97642086961d4aa32a2b7e81eb2e865f8023737354e9141a9e0e21b51562212a8db6f31364dcf4427f5bf372be3a


기기와 허브


클라우드 연결 기기, 모바일 연결 기기, 직접 연결 기기, 허브 연결 기기는

스마트싱스에서 매우 중요해서 공지사항에 올려뒀다.

IoT 입문자가 가장 먼저 만나게 되는 개념이기도 하니 개발을 하지 않는 사람도 아는 게 좋다.




자동화



여기서는 루틴과 모드의 이름을 알아가는 게 좋다. 루틴은 영어로 Routine이고 모드는 영어로 Mode 이지만

이 건 어디까지나 앱에서만 그렇게 나타나는 거고 개발할 때는 루틴을 Rule, 모드를 Scene이라고 읽어야 한다. Rule과 Scene은 나중에 복잡한 자동화를 만들 때 매우 중요하다. 왜냐면 Rule API와 Scene API를 쓰기 때문이고 이게 완벽한 스마트홈을 만드는 데에 필요한 스마트앱스를 만들 때 쓰기 때문이다.




연결 서비스



연결 서비스는 Rules API와 Sence API를 써서 만드는 스마트앱스를 뜻한다. 스마트앱스는 코딩해서 만드는 자동화라고 이해하면 된다. 그 외에도 스마트앱스는 서버와 서버를 연결해서 다른 서버의 제품을 스마트싱스에 가져오는는 커넥터의 역할도 할 수 있다.





1ebec223e0dc2bae61abe9e74683776d34570313f9149b8a1e23da3dbb055b90ce3fce1a399483b64cca7abc0606e1422adc17db18566e15843799aed51a36356efd3016



눈으로 보는 플랫폼



직접 연결 제품(Direct connected devices), 클라우드 연결 제품(Cloud connected devices), 허브 연결 제품(Hub connected devices)의 개념의 이해가 어려우면 이 다이어그램을 보는 걸 추천한다.



a7681caa2402b36792ff5d66c25acec9dd126ea80cc70af747d64c609e676371dcc7c1fa3b7ad991361adc9e


예전에 이런 알고리즘을 그린 적이 있었는데 이 알고리즘에는 장소와 방의 개념은 포함을 하지 않았으니

장소와 방의 개념의 위계를 이해하는 데에도 도움이 될 수 있다.





스마트싱스 플랫폼에 대해 이해가 어느 정도 되었으면 다음에는 개발을 시작해요를 읽어 보면 서

개발을 시작하기 위해서 어떤 것이 있어야 하는 지 알아 보려고 한다.