- 인쇄
Tulip API와 함께 Node-RED 사용하기
자체 기기에서 Node-RED를 사용 중이고 데이터를 Tulip API로 전송하려는 경우, Tulip은 API 엔드포인트용 Node-RED 노드를 제공합니다.
이러한 노드는 Node-RED를 지원하는 Tulip 디바이스에 사전 설치되어 있지만, 자체 Node-RED 인스턴스를 실행하는 경우에도 Node-RED 라이브러리에서 @tulip/node-red-tulip-api
패키지를 설치하여 노드를 설치할 수 있습니다.
이 문서에서는 다음과 같은 방법을 배웁니다.
- Node-RED 설치에 Tulip API 노드 추가하기
- 튤립 머신 속성 API를 사용하여 튤립 머신으로 데이터 전송하기
- Tulip 테이블 API 노드를 사용하여 Tulip 테이블 읽기, 쓰기 및 구성하기
전제 조건:
- 로컬에 Node-RED가 설치되어 실행 중입니다.
Tulip의 Edge MC에서 Node-RED를 실행 중이신가요? 이 시작 가이드를 참조하세요.
설치
1. Node-RED 팔레트에 @tulip/node-red-tulip-api를
추가합니다.
Node-RED 에디터를 열고 메뉴 → 팔레트 관리로 이동합니다.
설치 탭을 클릭한 다음 @tulip/node-red-tulip-api를
검색합니다.
참고: 명령줄을 통해 패키지를 설치할 수도 있습니다. Node-RED 사용자 디렉토리(예: cd ~/.node-red/
)로 이동한 후 npm install @tulip/node-red-tulip-api를
실행합니다.
2. 설치가 성공했는지 확인합니다.
설치가 성공하면 팔레트(왼쪽 사이드바)의 Tulip 카테고리 아래에 tulip-machine-attribute
및 tulip-tables
노드가 표시됩니다.
튤립 머신 속성 노드 사용하기
전제 조건: 머신 속성 API 사용 방법을 읽었으며, 속성:쓰기
권한으로 구성된 API 토큰이 있고, 데이터를 전송하려는 특정 머신 속성이 있습니다.
1. Tulip 머신 속성 노드를 플로우로 끌어다 놓습니다.
참고: 오른쪽 사이드바에서 도움말 탭을 선택**하면 노드 사용 방법에 대한 설명서를 볼 수 있습니다.
2. 대상 머신 속성과 일치하도록 노드를 구성합니다.
다음 머신 속성을 예로 사용하겠습니다. 머신 데이터 소스는 Tulip API입니다.
튤립 머신의 정수 머신 속성 "예제 튤립 API 머신".
노드를 두 번 클릭하여 편집기를 연 다음, 이 머신 속성과 일치하도록 노드를 구성합니다. 예를 들어 다음과 같이 노드를 구성할 수 있습니다:
튤립 머신 속성 노드 구성.
Tulip API 인증 노드를 다음과 같이 구성합니다(인증 자격 증명 입력):
API 토큰에 대한 Tulip API 인증 구성.
3. 데이터 전송을 테스트합니다.
나머지 플로우를 생성하여 데이터를 머신 어트리뷰트 엔드포인트로 전송합니다.
간단한 테스트 흐름은 값 0을 Integer 엔드포인트로 전송하는 것입니다. 머신 속성 노드의 입력을 msg.payload=0으로
구성된 Inject 노드에 연결합니다(아래 그림 참조). 출력을 전체 메시지를
인쇄하는 디버그 노드에 연결합니다.
배포를 클릭하여 플로우를 배포합니다. 주입 노드를 클릭하면 상태 코드가 204인 디버그 메시지가 표시됩니다.
정수 값 0을 정수 머신 속성으로 전송하는 흐름을 테스트합니다.
데이터는 또한 Tulip 인스턴스의 머신 속성 아래에 표시되어야 합니다.
튤립 테이블 API 노드 사용하기
전제 조건: 테이블 API 사용 방법을 읽었으며, tables:read
및 tables:write
권한으로 구성된 API 토큰이 있고, 데이터를 전송하려는 특정 테이블이 있어야 합니다.
1. Tulip 테이블 노드를 플로우로 끌어다 놓습니다.
참고: 오른쪽 사이드바에서 도움말 탭을 선택**하면 노드 사용 방법에 대한 설명서를 볼 수 있습니다.
2. 특정 튤립 테이블 API 쿼리에 대한 노드를 구성합니다.
먼저 노드를 두 번 클릭하여 편집기를 엽니다. 테이블 쿼리가 읽기 작업인지 쓰기 작업인지에 따라 tables:read
및/또는 tables:write
권한이 있는 API 토큰의 세부 정보와 일치하도록 Tulip API 인증 구성 노드를 설정합니다(테이블 쿼리가 읽기 작업인지 쓰기 작업인지에 따라 다름):
테이블 API 토큰 구성
쿼리 유형을 실행하려는 쿼리로 설정합니다. 그러면 나머지 쿼리 옵션이 유형에 따라 표시됩니다.
이 예제에서는 레코드 나열 을 선택하여 상태 필드가 "검토"인 ID 9YHHckKcFTXHQpXEu
테이블의 테이블 레코드를 나열합니다.
테이블 API 노드 구성
테이블 API 노드 "필터" 필드에서 확장된 JSON을 선택합니다.
3. 데이터 전송 테스트.
나머지 플로우를 생성하여 데이터를 Tables API 엔드포인트로 전송합니다.
테스트 흐름의 예로 빈 Inject 노드를 Tables API 노드의 입력에 연결하여 API 요청 전송을 트리거할 수 있습니다. 구문 분석된 응답을 확인하기 위해 msg.payload를
인쇄하는 디버그 노드를 추가할 수도 있습니다.
아래에서 구성된 테이블 API 요청이 다음 테이블( your-subdomain.tulip.co/tables/9YHHckKcFTXHQpXEu
)로 전송될 때의 결과를 확인하세요. 응답은 상태 필드가 REVIEW로 설정된 두 개의 테이블 항목을 반환합니다.
여러 레코드로 쿼리할 테이블. 필터링할 수 있는 Status 필드를 포함합니다.
"레코드 나열" 테이블 API 요청을 Tulip 테이블로 보내는 흐름과 응답 페이로드입니다.
추가 자료
튤립/노드-빨간-튤립-api
패키지 README- 테이블 API 사용 방법
- 머신 속성 API 사용 방법