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"
        }
      }
    }
  2. 사용자 지정 커넥터에 추가 종속 항목이 필요한 경우 프로젝트의 pom.xml 파일에 추가합니다. 종속성의 기본 범위는 런타임입니다. Red Hat이 제공하는 종속성을 추가하는 경우, 제공된 범위(예:)를 정의합니다.

    <dependencies>
        <dependency>
              <groupId>org.apache.camel</groupId>
              <artifactId>camel-telegram</artifactId>
              <scope>provided</scope>
        </dependency>
          </dependencies>

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

Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 소개

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

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

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

Red Hat 문서 정보

Legal Notice

Theme

© 2026 Red Hat
맨 위로 이동