사용자 지정 페이로드

사용자 지정 페이로드를 사용하면 MQTT 게시자가 기본 페이로드 구조를 사용하지 않는 시스템에 데이터를 보낼 수 있습니다.

기본 및 사용자 지정 페이로드

기본 페이로드는 고정된 JSON 구조를 사용합니다. 사용자 지정 페이로드는 문자열 포맷터 템플릿을 사용하여 필드 이름, 중첩 또는 일반 텍스트 출력을 변경합니다.
기본 및 사용자 지정 페이로드 비교
측면
기본 페이로드
사용자 지정 페이로드
사용 사례
수신 시스템이 내장 JSON 구조를 수락할 때 사용합니다.
수신 시스템에 다른 필드 이름, 중첩 또는 일반 텍스트가 필요할 때 사용합니다.
구조
페이로드 구조는 고정되어 있습니다. 예시는 MQTT에서 참조하십시오.
머리글, 레코드 또는 둘 다 문자열 포맷터 템플릿을 사용합니다.
게시자 구성
PF Enabled
를 비활성화된 상태로 둡니다.
PF Enabled
를 활성화한 다음
PF Header
를 정의하고, 필요한 경우
PFRecord
를 정의합니다.
구독자 호환성
MQTT 구독자는 기본 JSON 페이로드를 예상합니다. 기본 JSON 구독 항목을 참조하십시오.
이 항목에서는 게시자 서식에 대해서만 설명합니다.
배열 및 복합 데이터 유형
배열은 기본 페이로드 형식에서만 지원됩니다. 자세한 내용은 복합 데이터 유형 게시 항목을 참조하십시오.
배열을 게시할 때 기본 페이로드 형식을 사용합니다.
중요: MQTT 구독자는 기본 JSON 페이로드를 예상합니다. 이 주제에서는 MQTT 게시자의 사용자 지정 서식에 대해 설명합니다.
사용자 지정 페이로드에는 머리글, 레코드 또는 둘 다 포함될 수 있습니다. 예:
{ "timestamp": "...", "sensors": [ { "name": "MyVariableA", "value": 23 }, { "name": "MyVariableB", "value": true }, { "name": "MyVariableC", "value": "abc" } ] }
일반 페이로드 구조
페이로드의 구조를 나타내는 설명선으로, 고유한 헤더와 레코드 패턴이 표시됩니다.
FactoryTalk® Optix™
문자열 포맷터 동적 링크를 MQTT 게시자 페이로드 포맷터 속성과 함께 사용합니다.
PF Enabled
,
PF Header
및
PFRecord
.
팁: 문자열 포맷터에서 레코드에 여러 데이터 유형이 포함된 경우 JSON 규정 준수 형식을 선택합니다. 자세한 내용은 문자열 포맷터 데이터 유형 항목을 참조하십시오.

페이로드 포맷터 구성 요소

PF Header
:
  • 페이로드의 머리글 부분을 정의합니다.
  • 문자열 포맷터를 사용하여 JSON, 일반 텍스트 또는 동적 값이 있는 혼합 텍스트를 정의합니다.
  • 타임스탬프 또는 생산 라인 번호와 같은 하나 이상의 변수를 포함할 수 있습니다.
  • 머리글이 레코드 출력을 삽입할 때
    #PFRecord
    자리 표시자를 사용합니다.
  • 여러 변수가 JSON 배열을 형성할 때
    #PFRecord
    앞뒤로 대괄호를 사용합니다.
  • 폴더에 여러 변수가 있는 경우
    FactoryTalk Optix
    는 페이로드를 만드는 동안 변수를 반복합니다.
PFRecord
:
  • 페이로드의 반복되는 레코드 부분을 정의합니다.
  • 문자열 포맷터 동적 링크를 사용하여 찾아보기 이름 및 값과 같은 별칭 항목 속성을 매핑합니다.
  • 페이로드가 반복 레코드를 사용하지 않는 경우 비워 둘 수 있습니다.
팁: 문자열 포맷터에서는 구문 오류를 방지하기 위해 첫 번째 여는 중괄호를 이스케이프합니다. 중괄호를 두 번 입력하여 이스케이프합니다. 예:
{{{0}

사용자 지정 페이로드 예시

이러한 예시에서는 문자열 포맷터 형식과
PF 머리글
및
PF 레코드
에 대한 동적 링크를 보여 줍니다.
  • PF 머리글
    문자열 포맷터 형식:
    {"timestamp":"{0:o}","sensors":[#PFRecord]}
    동적 링크(0):
    MQTT/MQTTClient/MQTTPublisher/PayloadUpadteTimestamp
    . 자리 표시자
    {0:o}
    은 이 링크에 매핑됩니다.
    자리 표시자
    #PFRecord
    는 형식이 지정된
    PF 레코드
    출력을 센서 배열에 삽입합니다.
  • PF 레코드
    문자열 포맷터 형식:
    {"name":"{0}","value":{1}},
    동적 링크(0):
    {Item}@BrowseName
    . 자리 표시자
    {0}
    은 이 링크에 매핑됩니다.
    동적 링크(1):
    {Item}@Value
    . 자리 표시자
    {1}
    은 이 링크에 매핑됩니다.
고정된 기본 페이로드 구조는 MQTT를 참조하십시오. 기본 페이로드 형식의 배열 및 복합 데이터 유형에 대해서는 복합 데이터 유형 게시를 참조하십시오.
의견을 작성 부탁드립니다.
이 자료에 대한 문의사항이나 요청사항이 있습니까? 여기에 요청사항을 작성 부탁드립니다.
Normal