커스텀 플러그인
Enterprise 플랜에서만 지원됩니다.
ProtoPie Connect는 IFTTT, Logitech G29 스티어링 휠, Arduino, blokdots 와 같은 내장 플러그인과 함께 제공됩니다. 무엇보다, Enterprise 플랜을 구독하는 사용자는 ProtoPie Connect를 통해 자신만의 커스텀 플러그인을 업로드한 뒤 Socket.IO를 지원하는 모든 하드웨어, API 또는 앱과 프로토타입을 연결할 수 있습니다.
커스텀 플러그인 제작하기
ProtoPie Connect의 커스텀 통합은 커스텀 플러그인과 Bridge 앱 모두 가능하지만, Bridge 앱 대신 커스텀 플러그인을 사용할 것을 권장합니다. 커스텀 플러그인 파일은 포터블 형식이므로 팀원들과 손쉽게 협업하고 공유할 수 있기 때문입니다.
커스텀 플러그인을 제작하는 방법은 다음과 같습니다.
1. 직접 코드를 작성하거나 기존 Bridge 앱을 재사용합니다.
2. pkg를 사용해 Bridge 앱을 단일 실행 가능 바이너리로 컴파일합니다.
Index.js 파일은 여러 대상에 대해 컴파일할 수 있습니다. (자세한 내용은 다음 페이지를 참조하세요).
- Mac ARM:
pkg -t node16-macos-arm64 index.js
- Mac Intel:
pkg -t node16-macos-x64 index.js
- Windows:
pkg -t node16-win-x64 index.js
3. 실행 파일을 빈 디렉터리에 복사하고 plugin
이라고 명명합니다. metadata.json 파일을 생성하고 플러그인 이름 { "name": "name of the plugin" }
을 추가합니다.
4. 파일을 압축합니다(.zip). 이제 커스텀 플러그인을 사용할 수 있습니다!
5. 커스텀 플러그인을 ProtoPie Connect로 가져와 터미널에서 실행합니다.
여기에서 커스텀 플러그인 예시 몇 가지를 확인할 수 있습니다.
Bridge 앱이란 무엇인가요?
Bridge 앱은 Socket.IO 및 ProtoPie Connect를 지원하는 모든 하드웨어, API, 앱 간의 통신을 가능하게 해 줍니다. Bridge 앱은 이벤트를 인식하고, 서버로부터 데이터를 수신할 수 있으며, 단일 애플리케이션으로 작동하기도 합니다.
GitHub에서 이 Bridge 앱을 그대로 사용하거나 커스터마이징할 수 있습니다.
Bridge 앱을 통해 하드웨어 연결하기
Bridge 앱의 주요 역할은 하드웨어의 신호를 ProtoPie 가 이해할 수 있는 언어인 Socket.IO 메시지로 변환하거나 메시지를 신호로 변환하는 것입니다.
1. Bridge 앱을 ProtoPie Connect에 연결합니다.
2. Bridge 앱은 ProtoPie가 해석할 수 있도록 하드웨어 신호를 Socket.IO 메시지로 변환합니다. 일반적으로 메시지 형식은 다음과 같습니다.
- {messageId: "HwEventName", value: "ValueAssociatedWithEvent"}
3. ProtoPie Connect를 통해 이러한 메시지를 수신한 프로토타입은 그에 맞추어 응답합니다. 일부 하드웨어는 양방향 통신을 지원하며, 이는 프로토타입이 하드웨어로 메시지를 전송할 수 있음을 의미합니다. 이는 Bridge 앱이 Socket.IO 메시지를 하드웨어가 해석할 수 있는 신호로 변환할 수 있을 때만 가능합니다.
Bridge 앱을 통해 API에 연결하기
Bridge 앱을 통해 API에 연결하는 경우, Bridge 앱은 API 리스폰스(예: JSON)를 개별 Socket.IO 메시지로 변환합니다.
예를 들어 프로토타입이 날씨 데이터를 API에서 동적으로 가져오는 경우, Bridge 앱은 다음 작업을 수행합니다.
1. JSON 리스폰스를 Socket.IO 메시지로 변환합니다.
- 예: {"weather": "sunny", "temperature-celsius": 30.5}
2. Socket.IO 메시지를 ProtoPie Connect로 전송한 다음, 해당하는 프로토타입으로 메시지를 전달합니다.
- {messageId: "weather", value: "sunny"}
- {messageId: "temperature", value: 30.5}
프로토타입에서 Receive 트리거가 'weather' 및 'temperature' 메시지를 모두 수신해야 합니다. Receive 트리거에 대해 자세히 알아보세요.
동일한 장치에서 Bridge 앱 실행하기
기본적으로, 이러한 Bridge 앱은 Bridge 앱과 ProtoPie Connect가 동일한 장치에서 실행된다고 가정하므로 대개 IP 주소 http://localhost:9981을 사용합니다.
서로 다른 장치에서 Bridge 앱 실행하기
Bridge 앱과 ProtoPie Connect가 서로 다른 장치에서 실행되는 경우, ProtoPie Connect의 서버에 일치하도록 IP 주소를 변경할 수 있습니다.
- ProtoPie Connect Desktop: 인터페이스의 왼쪽 하단에서 서버 주소를 찾습니다.
- ProtoPie Connect Embedded: 터미널을 실행한 직후 서버 주소를 찾습니다.