305.4. Cryostat 끝점으로/에서 메시지 전송


305.4.1. Camel Cryostat publisher 생성

아래 예제에서 Cryostat publisher는
사용자 "agent@localhost:5152"에 로 전송하도록 생성됩니다. 이 주소는 Cryostat 게시자와 구독자 사이의 브로커 역할을 하는 Presence Agent의 주소입니다.

  • 클라이언트 이름이 지정된 Cryostat 스택 사용
  • evtHdrName이라는 레지스트리 기반 이벤트Header 사용
  • evtId라는 레지스트리 기반 eventId 사용
  • Listener가 있는 Cryostat Stack에서 user2@localhost:3534로 설정
  • 게시되는 이벤트는 gRPCENT_A입니다.
  • REQUEST_METHOD라는 중간 헤더가 Request.Publish로 설정되어 있어 끝점을 이벤트 게시자로 설정합니다.
producerTemplate.sendBodyAndHeader(
    "sip://agent@localhost:5152?stackName=client&eventHeaderName=evtHdrName&eventId=evtid&fromUser=user2&fromHost=localhost&fromPort=3534",
    "EVENT_A",
    "REQUEST_METHOD",
    Request.PUBLISH);

305.4.2. Camel Cryostat 구독자 생성

아래 예제에서는 "johndoe@localhost:5154" 사용자로
로 전송된 Cryostat 이벤트 게시를 수신하도록 생성된다.

  • 이름이 client로 이름이 지정된 HEAD 스택 사용
  • agent@localhost:5152라는 Presence 에이전트 사용자에게 등록
  • evtHdrName이라는 레지스트리 기반 이벤트Header 사용 evtHdrName에는 이벤트가 "Event_A"에 포함되어 있습니다.
  • evtId라는 레지스트리 기반 eventId 사용
@Override
protected RouteBuilder createRouteBuilder() throws Exception {
    return new RouteBuilder() {
        @Override
        public void configure() throws Exception {
            // Create PresenceAgent
            from("sip://agent@localhost:5152?stackName=PresenceAgent&presenceAgent=true&eventHeaderName=evtHdrName&eventId=evtid")
                .to("mock:neverland");

            // Create Sip Consumer(Event Subscriber)
            from("sip://johndoe@localhost:5154?stackName=Subscriber&toUser=agent&toHost=localhost&toPort=5152&eventHeaderName=evtHdrName&eventId=evtid")
                .to("log:ReceivedEvent?level=DEBUG")
                .to("mock:notification");

        }
    };
}

Camel Cryostat 구성 요소에는 테스트 및 데모 목적으로만 사용할 수 있는 Presence 에이전트도 포함되어 있습니다. Presence Agent를 인스턴스화하는 예는 위에 나와 있습니다.

Presence Agent는 사용자 agent@localhost:5152로 설정되며 게시자와 구독자와 통신할 수 있습니다. publisher와 Subscriber와는 별도의 Cryostat stackName이 있습니다. Camel Consumer로 설정되어 있지만 실제로 경로를 따라 "mock:neverland" 엔드포인트로 메시지를 보내지 않습니다.

Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

Theme

© 2026 Red Hat
맨 위로 이동