9.3. 사용자 정의 커넥터 생성


Fuse Online에서 사용자 지정 커넥터는 하나 이상의 연결 구성 매개 변수, 하나 이상의 연결 동작 및 각 작업에 대한 선택적 구성 매개 변수로 구성됩니다.

사용자 정의 커넥터를 개발하기 위한 작업의 개요는 다음과 같습니다.

  1. Fuse Online 확장 프로젝트를 만들고 확장 유형으로 Custom Connector 를 선택합니다.
  2. 확장에 대한 코드를 작성합니다. 기본 Camel 구성 요소, 커넥터 아이콘, 글로벌 커넥터 속성 및 커넥터 작업을 정의합니다.

9.3.1. 사용자 정의 커넥터 코드 작성

Fuse Online 확장 프로젝트를 생성한 후 Fuse Online 사용자가 제공하는 필수 기능에 대한 설명을 기반으로 사용자 지정 커넥터 요소를 정의하는 코드를 작성합니다. 표 9.1. “사용자 정의 커넥터 요소” 표는 Fuse Tooling에서 생성하는 사용자 지정 커넥터 요소가 Fuse Online의 요소에 해당하는 방법을 보여줍니다.

Expand
표 9.1. 사용자 정의 커넥터 요소
Fuse Tooling 요소Fuse Online 요소설명

Global (top-level) 속성

연결 구성 매개변수

Fuse Online 사용자가 이 커넥터에서 연결을 만들 때 사용자는 연결 구성의 일부로 이 속성의 값을 지정합니다.

동작

연결 작업

Fuse Online에서는 이 커넥터에서 생성된 연결을 위해 Fuse Online 사용자가 이러한 작업 중 하나를 선택합니다.

작업에 정의된 속성

작업 구성 매개변수

Fuse Online 사용자가 연결에서 수행하는 작업을 구성할 때 Fuse Online 사용자는 작업 구성의 일부로 이 속성의 값을 지정합니다.

Fuse Online용 사용자 지정 커넥터를 구현하는 코드를 작성하려면 다음을 수행합니다.

  1. 편집기 보기에서 syndesis-extension-definition.json 파일을 열고 전역 속성을 정의하는 코드, 사용자 지정 커넥터에서 수행할 수 있는 작업 및 각 작업의 특성을 작성합니다.Open the syndesis-extension-definition.json file in the Editor view and write the code that defines the global properties, the actions that the custom connector can perform, and each action's properties.

    글로벌 속성 은 Fuse Online의 연결 구성 매개변수에 해당합니다. 각 action 속성은 Fuse Online 연결 작업 구성 매개변수에 해당합니다. Fuse Online에서 사용자가 사용자 지정 커넥터를 선택하면 Fuse Online에서 각 연결 구성 매개변수에 대한 값을 입력하라는 메시지가 표시됩니다. 사용자 지정 커넥터는 OAuth 프로토콜을 사용하는 애플리케이션에 사용할 수 있습니다. 이 경우 OAuth 클라이언트 ID에 대한 전역 속성과 OAuth 클라이언트 시크릿에 대한 다른 글로벌 속성을 지정해야 합니다. Fuse Online 사용자는 이 커넥터에서 작동하도록 생성된 연결에 대해 이러한 매개 변수의 값을 지정해야 합니다.

    커넥터 작업 은 기본 Camel 구성 요소 스키마를 선언합니다.

    New Fuse Online Extension Project 마법사에서 제공하는 예에서는 telegram Camel 구성 요소 스키마를 사용합니다.

    {
      "schemaVersion" : "v1",
      "name" : "Example Fuse Online Extension",
      "extensionId" : "fuse.online.extension.example",
      "version" : "1.0.0",
      "actions" : [ {
        "id" : "io.syndesis:telegram-chat-from-action",
        "name" : "Chat Messages",
        "description" : "Receive all messages sent to the chat bot",
        "descriptor" : {
          "componentScheme" : "telegram",
          "inputDataShape" : {
            "kind" : "none"
          },
          "outputDataShape" : {
            "kind" : "java",
            "type" : "org.apache.camel.component.telegram.model.IncomingMessage"
          },
          "configuredProperties" : {
            "type" : "bots"
          }
        },
        "actionType" : "connector",
        "pattern" : "From"
      }, {
        "id" : "io.syndesis:telegram-chat-to-action",
        "name" : "Send a chat Messages",
        "description" : "Send messages to the chat (through the bot).",
        "descriptor" : {
          "componentScheme" : "telegram",
          "inputDataShape" : {
            "kind" : "java",
            "type" : "java.lang.String"
          },
          "outputDataShape" : {
            "kind" : "none"
          },
          "propertyDefinitionSteps" : [ {
            "description" : "Chat id",
            "name" : "chatId",
            "properties" : {
              "chatId" : {
                "kind" : "parameter",
                "displayName" : "Chat Id",
                "type" : "string",
                "javaType" : "String",
                "description" : "The telegram's Chat Id, if not set will use CamelTelegramChatId from the incoming exchange."
              }
            }
          } ],
          "configuredProperties" : {
            "type" : "bots"
          }
        },
        "actionType" : "connector",
        "pattern" : "To"
      } ],
      "properties" : {
        "authorizationToken" : {
          "kind" : "property",
          "displayName" : "Authorization Token",
          "group" : "security",
          "label" : "security",
          "required" : true,
          "type" : "string",
          "javaType" : "java.lang.String",
          "secret" : true,
          "description" : "Telegram Bot Authorization Token"
        }
      }
    }
    Copy to Clipboard Toggle word wrap
  2. 사용자 지정 커넥터에 추가 종속 항목이 필요한 경우 프로젝트의 pom.xml 파일에 추가합니다. 종속성의 기본 범위는 런타임입니다. Red Hat이 제공하는 종속성을 추가하는 경우, 제공된 범위(예:)를 정의합니다.

    <dependencies>
        <dependency>
              <groupId>org.apache.camel</groupId>
              <artifactId>camel-telegram</artifactId>
              <scope>provided</scope>
        </dependency>
          </dependencies>
    Copy to Clipboard Toggle word wrap

사용자 정의 커넥터의 코드 작성을 마치면 9.5절. “Fuse Online extension JAR 파일 빌드” 에 설명된 대로 .jar 파일을 빌드합니다.

맨 위로 이동
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

Theme

© 2025 Red Hat